Kurt Jensen Lars M. Kristensen 1 Coloured Petri Nets Department of Computer Science Coloured Petri Nets Modelling and Validation of Concurrent Systems.

Slides:



Advertisements
Similar presentations
Requirements Engineering Processes – 2
Advertisements

Chapter 5 Transfer of Training
1 Senn, Information Technology, 3 rd Edition © 2004 Pearson Prentice Hall James A. Senns Information Technology, 3 rd Edition Chapter 7 Enterprise Databases.
Cost Management ACCOUNTING AND CONTROL
Chapter 7 System Models.
Requirements Engineering Process
Chapter 24 Quality Management.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Chapter 6 Flowcharting.
UNITED NATIONS Shipment Details Report – January 2006.
Aviation Security Training Module 4 Design and Conduct Exercise II 1.
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
1 Validation & Measurement Methods for the PHARE Demonstrations R A Whitaker Validation Project Leader.
California Preschool Learning Foundations
1 DPAS II Process and Procedures for Teachers Developed by: Delaware Department of Education.
1 What Is The Next Step? - A review of the alignment results Liru Zhang, Katia Forêt & Darlene Bolig Delaware Department of Education 2004 CCSSO Large-Scale.
Module 2 Sessions 10 & 11 Report Writing.
SADC Course in Statistics Analysing Data Module I3 Session 1.
Probability Distributions
1 Statistical concepts Module 1, Session 1. 2 Objectives From this session participants will be able to: Outline the content of the set of modules in.
Raising Achievement. 2 Aims To explore approaches and materials to support the planning of learning. To consider strategies for preparing learners for.
Excel Functions. Part 1. Introduction 2 An Excel function is a formula or a procedure that is performed in the Visual Basic environment, outside the.
1 Implementing Internet Web Sites in Counseling and Career Development James P. Sampson, Jr. Florida State University Copyright 2003 by James P. Sampson,
Solve Multi-step Equations
1 SESSION 5- RECORDING AND REPORTING IN GRADES R-12 Computer Applications Technology Information Technology.
World-class Standards World Class Education Standards (WCES) are those standards that, when implemented through quality instruction and content, prepare.
Configuration management
Fact-finding Techniques Transparencies
Chapter 11: Models of Computation
DOROTHY Design Of customeR dRiven shOes and multi-siTe factorY Product and Production Configuration Method (PPCM) ICE 2009 IMS Workshops Dorothy Parallel.
Effectively applying ISO9001:2000 clauses 6 and 7.
Randomized Algorithms Randomized Algorithms CS648 1.
ECTS grade system in the curricula of Ruse University Principal Assist. Dr Desislava Atanasova.
OOAD – Dr. A. Alghamdi Mastering Object-Oriented Analysis and Design with UML Module 3: Requirements Overview Module 3 - Requirements Overview.
Detection Chia-Hsin Cheng. Wireless Access Tech. Lab. CCU Wireless Access Tech. Lab. 2 Outlines Detection Theory Simple Binary Hypothesis Tests Bayes.
Training Employees 8 Human Resources Management and Supervision OH 8-1.
1 Eksperter i team Experts in Teamwork Spring semester 2013 Experience-based course in interdisciplinary cooperation by Bjørn Sortland head of EiT
Kurt Jensen Lars M. Kristensen 1 Coloured Petri Nets Department of Computer Science Coloured Petri Nets Modelling and Validation of Concurrent Systems.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 28 Slide 1 Process Improvement 1.
31242/32549 Advanced Internet Programming Advanced Java Programming
1 Training Package Re-Design and its opportunities.
© 2012 National Heart Foundation of Australia. Slide 2.
1 of 35 Dr. Anne Adams Esteem Dissemination.
Science as a Process Chapter 1 Section 2.
Training Monday, February 04, Saturday, October 11, Welcome to the Accounts Payable Invoice Processing Course.
How creating a course on the e-lastic platform 1.
Requirements Analysis 1. 1 Introduction b501.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Introduction.
RTI Implementer Webinar Series: Establishing a Screening Process
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques
Maths Counts Insights into Lesson Study
Module 12 WSP quality assurance tool 1. Module 12 WSP quality assurance tool Session structure Introduction About the tool Using the tool Supporting materials.
Chapter 12 Analyzing Semistructured Decision Support Systems Systems Analysis and Design Kendall and Kendall Fifth Edition.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
1 Phase III: Planning Action Developing Improvement Plans.
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
Speaking and Listening Instruction: Identifying and Using Effective Approaches to Facilitating Classroom Discussions December 9, 2014 Katanna Conley Michelle.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 31 Slide 1 Service-centric Software Engineering 1.
Day 2: Learning and Teaching Session 2: Recording Evidence NYSED Principal Evaluation Training Program.
Introduction Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems September 9, 2010.
Educator Evaluation: A Protocol for Developing S.M.A.R.T. Goal Statements.
Foundation Skills for Assessment Tools
1 Programming Languages (CS 550) Mini Language Interpreter Jeremy R. Johnson.
Kurt Jensen Lars M. Kristensen 1 Coloured Petri Nets Department of Computer Science Kurt Jensen ADA-220 Coloured Petri Nets Modelling.
Modelling with Coloured Petri Nets Søren Christensen Department of Computer Science University of Aarhus.
EDU 550 Assignment 7.
Qualifications Update: Human Biology Qualifications Update: Human Biology.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
Presentation transcript:

Kurt Jensen Lars M. Kristensen 1 Coloured Petri Nets Department of Computer Science Coloured Petri Nets Modelling and Validation of Concurrent Systems Kurt Jensen & Lars Michael Kristensen Chapter 15: Teaching CP-nets

Kurt Jensen Lars M. Kristensen 2 Coloured Petri Nets Department of Computer Science Course on modelling and validation of concurrent systems at Aarhus University  The course introduces CP-nets as a formal modelling language for concurrency.  Students are introduced to the CPN modelling language, its analysis methods, and its supporting computer tools.  Students are exposed to the benefits of applying formal modelling to study the behaviour of concurrent systems.  We present four industrial projects where CP-nets have been used for the modelling and validation of systems.  We emphasise the practical use of modelling and validation and has less focus on the formal foundation of CP-nets.

Kurt Jensen Lars M. Kristensen 3 Coloured Petri Nets Department of Computer Science Course on modelling and validation of concurrent systems  After the course, the students will have a detailed knowledge of CP-nets and practical experience with modelling and validation of concurrent systems.  Slide sets, CPN models, and suggestions for exercises and projects are available via the web pages for the new CPN book:

Kurt Jensen Lars M. Kristensen 4 Coloured Petri Nets Department of Computer Science Course organisation  The course is divided into two parts.  Students may take both parts or only the first part.  Each part  lasts for seven weeks in which the students are expected to spend one-third of their study time on the course,  corresponds to 5 ECTS credit points,  has a separate exam.  The course is an optional advanced course.  Most participants are in their year of studies.  The course usually has 15–20 participants.

Kurt Jensen Lars M. Kristensen 5 Coloured Petri Nets Department of Computer Science  The organisation and contents of the course are based on the theory of constructive alignment by John Biggs. Constructive alignment Teaching methods Assessment methods Intended learning outcomes

Kurt Jensen Lars M. Kristensen 6 Coloured Petri Nets Department of Computer Science  Intended learning outcomes should be the focal point of the course.  Teaching methods and activities should be chosen so that they support the students in achieving the intended learning outcomes.  Exams must measure the degree to which the students have fulfilled the intended learning outcomes.  The goal is to encourage students to work actively with the topics instead of just using minimum effort to pass the exam. Constructive alignment

Kurt Jensen Lars M. Kristensen 7 Coloured Petri Nets Department of Computer Science Aims and prerequisites  The aim of the first part of the course is that the students will:  obtain a detailed knowledge of CP-nets,  gain experience in the modelling and validation of small concurrent systems.  At the beginning of the course, we assume that the students are familiar with conventional programming-language concepts such as variables, types, procedures, and modules.  We introduce the CPN modelling language in a way similar to that in which programming languages are introduced, i.e., through concrete examples that illustrate:  the constructs of the modelling language,  the more general concepts of concurrency, synchronisation, and communication.

Kurt Jensen Lars M. Kristensen 8 Coloured Petri Nets Department of Computer Science SOLO taxonomy  The intended learning outcomes are formulated using a taxonomy developed by John Biggs:  Level 1: No competences have been obtained.  Level 2: A minimalistic but sufficient understanding of each topic in isolation (memorise, identify, and recognise).  Level 3: Solid competences within each topic and a basic understanding of the boundaries of each topic (classify, describe, and list).  Level 4: Competences in orchestrating facts, theory, actions, and purposes (apply, integrate, analyse, and explain).  Level 5: Competences beyond what has been dealt with in the actual teaching (theorise, hypothesise, generalise, reflect, and generate).

Kurt Jensen Lars M. Kristensen 9 Coloured Petri Nets Department of Computer Science Intended learning outcomes of part 1 1.Explain 4 the constructs and concepts of the CPN modelling language. 2.Define 2 and explain 4 the syntax and semantics of non-hierarchical untimed CP-nets. 3.Define 2 and explain 4 properties used for characterising the behaviour of concurrent systems. 4.Explain 4 the basic concepts and techniques underlying state space analysis methods. 5.Explain 4 the basic concepts and techniques underlying simulation-based performance analysis. 6.Apply 4 CP-nets and CPN Tools to the modelling and validation of small concurrent systems. 7.Judge 4 the practical application of CP-nets to the modelling and validation of concurrent systems.

Kurt Jensen Lars M. Kristensen 10 Coloured Petri Nets Department of Computer Science 1.Explain 4 the constructs and concepts of the CPN modelling language  The students must learn the constructs and concepts of the CPN modelling language such as:  net structure,  CPN ML inscription language,  hierarchical and timed CPN models,  binding elements, steps, markings,  concurrency and conflict.

Kurt Jensen Lars M. Kristensen 11 Coloured Petri Nets Department of Computer Science 2.Define 2 and explain 4 syntax and semantics of non-hierarchical untimed CP-nets  The students must be able to formally define and explain the syntax and semantics of CP-nets.  We only demand that they know the formal definition of non-hierarchical and untimed CP-nets.  The purpose is to make the students understand that CP-nets rely on a formal foundation.  When introduced to the formal definitions, the students explore CP-nets from a different angle than the example- driven introduction to the language.  The formal definitions represent a complementary view of the modelling constructs that can help the students to consolidate their understanding.

Kurt Jensen Lars M. Kristensen 12 Coloured Petri Nets Department of Computer Science 3.Define 2 and explain 4 properties used for characterising the behaviour of concurrent systems  The students must be able to define and explain:  standard behavioural properties of CP-nets such as boundedness properties, dead markings, and live transitions,  quantitative performance properties such as delays, throughput, and utilisation.  These concepts are used when the students work with the analysis methods of CP-nets, which include state space analysis and simulation-based performance analysis.

Kurt Jensen Lars M. Kristensen 13 Coloured Petri Nets Department of Computer Science 4.Explain 4 basic concepts and techniques underlying state space analysis methods  The students must be able to explain:  the concepts of state spaces and SCC graphs,  the techniques used to check the standard behavioural properties of CPN models from the state space and the SCC graph,  basic ideas underlying advanced state space methods.

Kurt Jensen Lars M. Kristensen 14 Coloured Petri Nets Department of Computer Science 5.Explain 4 basic concepts and techniques underlying simulation-based performance analysis  The students must be able to explain:  techniques underlying simulation-based performance analysis such as workload generation, data collection monitors, and simulation replications,  statistical concepts related to discrete- and continuous-time statistics.

Kurt Jensen Lars M. Kristensen 15 Coloured Petri Nets Department of Computer Science 6.Apply 4 CP-nets and CPN Tools to modelling and validation of small concurrent systems  The students must be able to apply the modelling language and the analysis methods in practice.  They must have an operational knowledge of the topics taught in the course.  They must be able to use CPN Tools in an efficient way.

Kurt Jensen Lars M. Kristensen 16 Coloured Petri Nets Department of Computer Science 7. Judge 4 the practical application of CP-nets to the modelling and validation of concurrent systems  The students must be able to judge whether CP-nets constitute an appropriate choice for modelling and validating systems within a given application domain.  They must be able to determine whether:  CP-nets are suitable for the modelling of a concrete system,  validation of the properties of interest.

Kurt Jensen Lars M. Kristensen 17 Coloured Petri Nets Department of Computer Science SessionTopicMethodMaterialProjects 1Why modelling and validation?LectureChap. 1 2Non-hierarchical CP-netsLectureChap. 2 3CPN ML programmingLectureChap. 3 4Practical modellingWorkshopExercises 5Formal definition of CP-netsLectureChap. 4 6Practical modellingWorkshopProject 1 7Hierarchical CP-netsLectureChap. 5 8State space analysis (1)LectureChaps State space analysis (2)LectureChaps Practical state space analysisWorkshopProject 2 11Timed CP-netsLectureChap Performance analysisLectureChap Practical performance analysisWorkshopProject 3 14Industrial applicationsLectureChap. 14 Session = 2 * 45 min Course program for part 1 Modelling State space analysis Perfor- mance analysis

Kurt Jensen Lars M. Kristensen 18 Coloured Petri Nets Department of Computer Science Three mandatory projects  The projects are conducted in groups of 2-3 students and are documented in a 5–10 page written group report.  In project 1 the students extend the protocol model from Chap. 2 to model a sliding-window protocol. The model is validated using simulation.  In project 2 the students use state space analysis on the model developed in project 1 to verify the correctness of the protocol.  50–75% of the groups discover errors in their design; errors that they did not find by the simulation in project 1.  They experience the power of formal verification techniques.  In project 3 the students use performance analysis on the model developed in project 1 They compare the results to those described in Chap. 12.

Kurt Jensen Lars M. Kristensen 19 Coloured Petri Nets Department of Computer Science Four workshops  The students work in groups of 2-3 persons in front of a PC using CPN Tools to solve exercises and projects.  The lecturers are present to help with technical questions and other issues related to the projects and exercises.  The workshops enable face-to-face discussion with the students and are effective in highlighting issues that need to be discussed in more detail.  The workshops constitute an interactive teaching–learning environment.

Kurt Jensen Lars M. Kristensen 20 Coloured Petri Nets Department of Computer Science Examination for part 1  We have a 20-minute oral exam and the students have approximately one week for preparation.  Exam questions are very broad:  Non-hierarchical CP-nets (Chap. 2)  Formal definition of non-hierarchical CP-nets (Chap. 4)  Hierarchical CP-nets (Chap. 5)  State spaces and behavioural properties (Chap. 7)  Advanced state space methods (Chap. 8)  Timed CP-nets (Chap. 10)  Simulation-based performance analysis (Chap. 12)  Industrial applications (Chap. 14)

Kurt Jensen Lars M. Kristensen 21 Coloured Petri Nets Department of Computer Science Part 2 of the course (last 7 weeks)  The students conduct a larger modelling and validation project in groups of 2-3 persons.  The working methods are intended to train the students to plan and complete projects.  There are no conventional lectures or workshops.  The individual groups contact the lecturers when they need help ( or meetings).  There are two progress workshops where each group gives a 25-minute oral presentation of the current state of their project for the lecturers and the other students:  The first progress workshop focuses on modelling.  The second progress workshop focuses on validation and verification.

Kurt Jensen Lars M. Kristensen 22 Coloured Petri Nets Department of Computer Science Intended learning outcomes of part 2 8.Construct 3 and structure 3 CPN models of larger concurrent systems. 9.Apply 4 analysis methods for CP-nets to the validation of larger concurrent systems. 10.Discuss 5 the application of CP-nets to the modelling and validation of larger concurrent systems.

Kurt Jensen Lars M. Kristensen 23 Coloured Petri Nets Department of Computer Science 8.Construct 3 and structure 3 CPN models of larger concurrent systems  The students must be able to model concurrent systems of a size and complexity that appear in real system development projects.  They must be able to make well-structured hierarchical CP-nets.

Kurt Jensen Lars M. Kristensen 24 Coloured Petri Nets Department of Computer Science 9. Apply 4 analysis methods for CP-nets to the validation of larger concurrent systems  The students must be able to validate concurrent systems of a size and complexity that appear in real system development projects.  They must be able to validate hierarchical CP-nets.

Kurt Jensen Lars M. Kristensen 25 Coloured Petri Nets Department of Computer Science 10.Discuss 5 the application of CP-nets to modelling and validation of larger concurrent systems  The students must be able to discuss the results of their modelling and validation.  They must be able to present the results to colleagues.

Kurt Jensen Lars M. Kristensen 26 Coloured Petri Nets Department of Computer Science Projects in part 2  Each year we propose 5-10 different projects, but students may also choose other systems as a basis for their projects.  Many of the projects have focused on communication protocols and distributed algorithms, but it is possible to choose systems from other domains such as workflow systems, manufacturing systems, and embedded systems.  The assessment of part 2 consists of:  the evaluation of a written group report, which is required to have a length of 15–20 pages,  an individual oral exam, where each student is required to give a presentation of the group project.

Kurt Jensen Lars M. Kristensen 27 Coloured Petri Nets Department of Computer Science Examples of projects in part 2  Distributed file systems based on a chapter in a the textbook by Colouris et. al.  Dynamic Host Configuration Protocol (DHCP) based on an IETF Request for Comments document.  Data dissemination protocol based on a local research paper.  Dynamic MANET On-demand (DYMO) routing protocol based on an IETF Internet-Draft.  Internet Key Exchange (IKE) protocol based on an IETF Request for Comments document.  Mutual exclusion algorithms based on selected algorithms from a textbook by Raynal.  PathFinder scheduling mechanism based on a description in a paper by Holzmann et. al.

Kurt Jensen Lars M. Kristensen 28 Coloured Petri Nets Department of Computer Science Example of student project  A group modelled the Dynamic MANET On-demand (DYMO) protocol which is being developed by the IETF MANET working group.  The basis for the work was a 35-page Internet-Draft providing a natural-language specification of the protocol.  The constructed CPN model captured a large subset of the DYMO protocol specification.  The group discovered several ambiguities and missing parts in the DYMO specification.  They used state space analysis to investigate nontrivial issues related to the operation of the DYMO protocol.

Kurt Jensen Lars M. Kristensen 29 Coloured Petri Nets Department of Computer Science Excerpts from CPN model Most abstract module Less abstract module Module hierarchy

Kurt Jensen Lars M. Kristensen 30 Coloured Petri Nets Department of Computer Science Evaluation of the course  After each part of the course we spend 30 minutes with the students evaluating and discussing the course in an informal way.  This is supplemented by a more formal on-line evaluation.  In terms of achieving the course goals, content, and level of interest, the students are positive.  Students are also positive with respect to achieving learning outcomes and the quality of lectures, workshops, and textbook.  The students do not find the course difficult.  They are expected to spend 1/3 of their study time on the course, but they spend less.  This may be due the workshops, where the students work on their projects under our supervision.

Kurt Jensen Lars M. Kristensen 31 Coloured Petri Nets Department of Computer Science Important choices for the course  We introduce CP-nets directly without first introducing low-level Petri nets.  This enables us to motivate the students by using realistic model examples from the very beginning of the course.  The course relies heavily on the integrated use of CPN Tools encouraging the students to work actively with the topics.  We use considerable time to introduce the CPN ML programming language since it is crucial for the mastering of CPN modelling.

Kurt Jensen Lars M. Kristensen 32 Coloured Petri Nets Department of Computer Science Constructive alignment  As described above, we use the theory of constructive alignment and the SOLO taxonomy for describing course aims and learning outcomes of the course.  This is done for all courses at our faculty.  Very good and practically applicable framework for reflecting upon the teaching and assessment methods used in a course.  A fun and easy way to learn more about the SOLO taxonomy and the difference between surface learning and deep learning is to watch the award-winning 19-minute short film: “Teaching Teaching and Understanding Understanding”

Kurt Jensen Lars M. Kristensen 33 Coloured Petri Nets Department of Computer Science Questions