Modelling with Coloured Petri Nets Søren Christensen Department of Computer Science University of Aarhus.

Slides:



Advertisements
Similar presentations
Comparison of Several Meta-modeling Tools Yi Lu Computer Science Department McGill University
Advertisements

Kurt Jensen Lars M. Kristensen 1 Coloured Petri Nets Department of Computer Science Kurt Jensen ADA-220 Coloured Petri Nets Modelling.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Object-Oriented Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
CPN'021 Coloured Petri Nets in UML-Based SW Development – Designing Middleware for Pervasive Healthcare Jens Bæk Jørgensen Centre for Pervasive Computing.
Knowledge and Systems Research Group, University of Huddersfield B vs OCL: Comparing Specification Languages for Planning Domains Diane Kitchin, Lee McCluskey,
1 Modelling and Validation of Distributed Systems: Research Area and Thesis Opportunities Jens Bæk Jørgensen Department of Computer Science University.
1 SYSTEM and MODULE DESIGN Elements and Definitions.
1 Lecture 2: Elaboration Tasks and Domain Modeling.
HENRIK BÆRBAK CHRISTENSEN ASSOCIATE PROFESSOR AARHUS UNIVERSITY DEPARTMENT OF COMPUTER SCIENCE 1 Experimental Software Architecture Kandidat orientering.
Modeling State-Dependent Objects Using Colored Petri Nets
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
Ch5: Software Specification. 1 Overview  Use of specifications  Specification qualities  Classification of specification styles  Verification of specifications.
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Requirement engineering for an online bookstore system
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
A university for the world real R © 2009, Chapter 23 Epilogue Wil van der Aalst Michael Adams Arthur ter Hofstede Nick Russell.
The design process z Software engineering and the design process for interactive systems z Standards and guidelines as design rules z Usability engineering.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
Verification and Validation Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Margaret J. Cox King’s College London
1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,
INTELLIGENT AUTOMATION INC. Extending Rational Rose to support MAS design in UML Intelligent Automation Inc. 2 Research Place, Suite 202 Rockville, MD.
Chapter 1: Introduction to Systems Analysis and Design
Computer Systems & Architecture Lesson Software Architecture in the Future.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
1 Introduction to Software Engineering Lecture 1.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
University of Utah SoCCS Lecture 121 Dynamic Models in Design CS6961 – Lecture 12 Nathan Dykman.
Modeling as a Design Technique Chapter 2 Part 1: Modeling Concepts Object-Oriented Modeling and Design Byung-Hyun Ha
PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based.
16/11/ Semantic Web Services Language Requirements Presenter: Emilia Cimpian
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
International Telecommunication Union © ITU-T Study Group 17 Integrated Application of SDL Amardeo Sarma NEC Europe Ltd.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Meghe Group of Institutions Department for Technology Enhanced Learning 1.
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
A web based tool for estimation of Gage R&R and Measurement Uncertainty Siva Venkatachalam & Dr. Jay Raja Center for Precision Metrology The University.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
Chapter 1: Introduction to Systems Analysis and Design
Main issues: • What do we want to build • How do we write this down
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
WEB SERVICES.
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Systems Analysis and Design With UML 2
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Scenarios In System Development
M. Oveissi, D. Eckard*, A. Rose+, B. Shneiderman+, G. W. Rubloff
Chapter 7 –Implementation Issues
Chapter 1: Introduction to Systems Analysis and Design
Engineering Quality Software
Chapter 1: Introduction to Systems Analysis and Design
Software Development Process Using UML Recap
Presentation transcript:

Modelling with Coloured Petri Nets Søren Christensen Department of Computer Science University of Aarhus

2August 27, 2002Søren Christensen, MOCA’02 The Coloured Petri Nets group in Aarhus work with: Theory - models - basic concepts - analysis methods Tools - editing - simulation - verification Practical Use - specification - validation - verification - implementation

3August 27, 2002Søren Christensen, MOCA’02 Theory The Coloured Petri Nets formalism –Introduction of hierarchies Modelling primitives –Channels, inhibitor arcs, test arcs,... –Monitoring framework Analysis methods –Symmetry methods –Sweep-line method

4August 27, 2002Søren Christensen, MOCA’02 Tools Design/CPN ( ) –Editing, Simulation and State Space analysis CPN Tools (2003) –Editing, Simulation and State Space analysis

5August 27, 2002Søren Christensen, MOCA’02 Practical use of CP-nets More than 50 documented case stories on our web pages. A wide range of different projects with different aims, e.g.: –Protocol design and analysis –Workflow descriptions –Software design –Capture systems requirements

6August 27, 2002Søren Christensen, MOCA’02 Modelling What is a model? What are models used for? Why do we need models? How do we create models? How do we structure models?

7August 27, 2002Søren Christensen, MOCA’02 What is a model? model and modelling in painting, the use of light and shade to simulate volume in the representation of solids. In sculpture the terms denote a technique involving the use of a pliable material such as clay or wax. As opposed to carving, modelling permits addition as well as subtraction of material and lends itself to freer handling and change of intention. The technique is exemplified also by those works in cast metal and plaster that are made from the mold of a clay original. The mold is made by the process of cire perdue. The noun model is used to describe such an original and also any three-dimensional scale model for a larger or more elaborate project in architecture, landscaping, or industry. It also denotes a person or object used as an aid to representation in painting. The Columbia Encyclopaedia, Sixth Edition Abstract representation, scale model of future design

8August 27, 2002Søren Christensen, MOCA’02 What are models used for? Static Model –Modular architecture of systems –Data model –Class diagrams Dynamic Models –Behaviour of systems –Exchange of messages –State changes

9August 27, 2002Søren Christensen, MOCA’02 Why do we need models? We want to investigate properties of a system but, –The system does not exist yet –It is too dangerous to investigate the real system –It is too expensive to investigate the real system –We want to capture and test different designs –We want to learn more before finalising the systems design

10August 27, 2002Søren Christensen, MOCA’02 How do we create models? There is not a single ‘right’ way to create models! –Co-operation between different experts –Models mediate the discussions –Gradually refinement –Models can be used as ‘Prototypes’ of the system –Discarding a model is good!

11August 27, 2002Søren Christensen, MOCA’02 How do we structure models? The model should reflect the systems design –Easier to understand for domain experts –Easier to validate The model should reflect the functionality of the system –Easier to abstract from details –Easier to verify

12August 27, 2002Søren Christensen, MOCA’02 Choices specific for Coloured Petri Nets Petri Nets structure v.s. inscriptions Instances of modules v.s. folding Hierarchy v.s. expanded description Port/Socket v.s. place fusion Inscriptions v.s. declarations The possible choices depend on available tools

13August 27, 2002Søren Christensen, MOCA’02 To be successful you should: Try different alternatives Work both top-down and bottom-up Create building blocks Find a good balance between structure and inscriptions Start with the most important aspect, and then refine the model gradually

14August 27, 2002Søren Christensen, MOCA’02 CPN Tools Pre-releases exists, installed on the machines used for It is free, but you need to register Get a version from: The work will continue: –New state space tool –Integration with other tools and formalisms

15August 27, 2002Søren Christensen, MOCA’02 Coloured Petri Nets is not sufficient Capture Static aspects –Class diagrams –Data structuring –Database layout Illustrate dynamics –Message Sequence Diagrams –Domain specific graphics System dynamics is captured using CP-nets

16August 27, 2002Søren Christensen, MOCA’02 A new kind of systems Mobile systems Multi-modal systems Context dependant systems Pervasive Computing “The X Internet” [Forrester, may 2001] Executable Internet: “Intelligent applications that execute code near the user to create rich, engaging conversation via the Net”. Extended Internet: “Internet devices and applications that sense, analyse, and control the real world”.

17August 27, 2002Søren Christensen, MOCA’02 Model Driven Systems Development UML is good to model static information Dynamics of systems is of increasing importance –Pervasive Computing –Mobile, context dependant systems –Capture user requirements Centre for: “Model Driven System Development”

18August 27, 2002Søren Christensen, MOCA’02 The Coloured Petri Nets group in Aarhus - still - work with: Theory - models - basic concepts - analysis methods Tools - editing - simulation - verification Practical Use - specification - validation - verification - implementation