Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini VIII. Specifications (II)

Slides:



Advertisements
Similar presentations
1 SE-561 Formal Methods in Software Petri Nets - I.
Advertisements

Course: Software Engineering II academic year: Course Web-site: [ Lecturer: Catia Trubiani.
An Introduction to Petri Nets
Introduction to Petri Nets Hugo Andrés López
Based on: Petri Nets and Industrial Applications: A Tutorial
Interaction Modeling for Testing We would generate the test cases based on our understanding of the interactions that may happen. The source is, again,
Modelling Class T05 Conceptual Modelling – Domain References: –Conceptual Modeling of Information Systems (Chapters 1.2.1, 2, 3) –A practical Guide to.
Discrete Interaction Design Specification Prof. Dr. Matthias Rauterberg Faculty Industrial Design Technical University of Eindhoven
10. Petri Nets Prof. O. Nierstrasz. Roadmap  Definition: —places, transitions, inputs, outputs —firing enabled transitions  Modelling: —concurrency.
Petri Nets Overview 1 Definition of Petri Net C = ( P, T, I, O) Places P = { p 1, p 2, p 3, …, p n } Transitions T = { t 1, t 2, t 3, …, t n } Input.
CSC 402 Requirements Engineering 1 Requirements Techniques, cont. Formal requirements analysis techniques include: – DFD (covered) – ERD (covered) – Finite.
CP — Concurrent Programming 12. Petri Nets Prof. O. Nierstrasz Wintersemester 2005 / 2006.
1 Petri Nets H Plan: –Introduce basics of Petri Net models –Define notation and terminology used –Show examples of Petri Net models u Calaway Park model.
Data and Knowledge Representation Lecture 6 Qing Zeng, Ph.D.
12/07/2007Jiacun Wang1 SE-561 Math Foundations Petri Nets - II Dr. Jiacun Wang Department of Software Engineering Monmouth University.
Lecture 6 & 7 System Models.
Requirements Techniques, cont. Brief review Formal Requirements Techniques –Finite State Machines –Petri Nets.
Ch5: Software Specification. 1 Overview  Use of specifications  Specification qualities  Classification of specification styles  Verification of specifications.
PETRINETS Nipun Devlekar Zauja Lahtau. PETRINETS DEFINITION : DEFINITION :  PETRINET (place/ transition net): a formal, graphical, executable technique.
Chapter 5: Specification Yuanfang Cai CS751 Jan 29, 2003.
System Models Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn Lecture 6 & 7.
Requirements Definition and Specification. Outline Definition and specification Natural language Semi-formal techniques –Program description languages.
An Introduction to Petri Nets Marjan Sirjani Formal Methods Laboratory University of Tehran.
CY2003 Computer Systems Lecture 7 Petri net. © LJMU, 2004CY2003- Week 72 Overview Petri net –concepts –Petri net representation –Firing a transition –Marks.
Virtual Storytelling Adam Abonyi Daniel Balaš. Agenda 1.Introduction to virtual storytelling 2.Petri Nets 3.Our improvements in Petri Nets 4.Example.
Stochastic Activity Networks ( SAN ) Sharif University of Technology,Computer Engineer Department, Winter 2013 Verification of Reactive Systems Mohammad.
Entity Relationship Diagram. Introduction Definition: Entity-relationship diagram is a data-modeling technique that visualises entities, the attributes.
Generalized stochastic Petri nets (GSPN)
Petri Nets Lecturer: Roohollah Abdipour. Agenda Introduction Petri Net Modelling with Petri Net Analysis of Petri net 2.
Petri Nets Invented by Carl Adam Petri in 1962 Concurrent systems with timing problems  Synchronization, race problem, deadlock A petri net consists of.
Modelling by Petri nets
Ch5: Software Specification. 1 Petri Nets  Introduced by C. Adams Petri in  Widely used in the modeling and analysis of computer systems.  Basic.
Specification Techniques. System models are abstract descriptions of systems whose requirements are being analyzed Objectives  To explain why specification.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
School of Computer Science & Software Engineering
CAP 4800/CAP 5805: Computer Simulation Concepts
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
Review n System dynamics : A sequence of state transition n model : A set of rules for state transition System S X Y Discrete event system FSM (Automata)
Petri-Nets and Other Models
From requirements to specification Specification is a refinement of requirements Can be included together as Software Requirements Specifications (SRS)
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini VII. System Specification (I)
Requirements Analysis -- Conceptual Modeling Class Notes.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XIV. From Requirements to Design in the UP.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini II. Software Life Cycle.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVII. Verification and Validation.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini IX. System Models (III)
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini XVIII. Software Testing.
Structured Analysis Methods and Tools
Entity Relationship Modeling
Modeling for Testing Interactions
Requirements Techniques, cont.
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
Concurrent Systems Modeling using Petri Nets
Main issues: • What do we want to build • How do we write this down
Software Specification Tools
System Design and Modeling
2. Specification and Modeling
Clockless Computing COMP
Model-Based Testing Model the system
Discrete Event Models.
CAP 4800/CAP 5805: Computer Simulation Concepts
CSCI1600: Embedded and Real Time Software
Dynamic Modeling Lecture # 37.
Review of Week 1 Database DBMS File systems vs. database systems
An Introduction to Petri Nets
Entity-Relationship Diagram (ERD)
CAP 4800/CAP 5805: Computer Simulation Concepts
CSCI1600: Embedded and Real Time Software
Petri Nets Laurie Frazier.
Presentation transcript:

Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini VIII. Specifications (II)

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 2 Objectives To describe the Petri Nets formalism To discuss the Entity Relationship (ER) formalism To provide examples

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 3 A resume from previous lesson Operational and descriptive model specifications DFD FSM FSM characteristics and problems when general concurrency need to be represented.

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 4 Operational Specification - PN Petri nets are a formalism for specifying systems that contain parallel or concurrent activities. Mathematical model: A Petri Net is defined by a quadruple (P, T, F, W) where: P is a finite set of places T is a finite set of transitions P ∪ T ≠ Ø F  {P x T} ∪ {T x P} is the flow relation W: F --> N - { Ø } is the weight function which associate a non zero natural value to each element of F (default value is 1) M: P-->N marking function

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 5 PN generics

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 6 PN generics Input and Output places A transition is said enabled if each of its input places contains a number of token equal or greater to the weight of the flow element connecting the input place to the transition Transition with no input places are always enabled PN are generally non-deterministic automata

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 7 PN examples

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 8 PN generics PN does not impose any policy to avoid starvation of processes Places can be considered resources and token represent the availability of the resource PN can obviously show

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 9 PN producer/consumer/buffer

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 10 PN producer/consumer/buffer composed

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 11 Limitations and Extensions of Petri Nets Token are not content based Timing issues – time is not explicitly managed by the model Non determinism can be reduced defining priority functions Timed Petri nets – transitions have associated times of execution Coloured Petri Nets – introduce typed tokens and content management Stochastic Petri Nets – TPN with associate exponential distribution (isomorphic to Markov Chain)

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 12 Exercices A Mutual exclusion component Elevator Traffic Light Dining Philosopher (deadlock) Dining Philosopher (deadlock free) C:\Documents and Settings\pc\Desktop\PN\philosopher4.swf

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 13 Descriptive Models Descriptive specification provide a specification of the system in terms of the properties of a system and not of its behaviour We will introduce three main approaches: Semi-formal – Entity Relationship Diagrams Formal based on logic Formal based on algebraic formalism

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 14 Descriptive Models – ER Conceptual description of the structure of the data and their relations DFD focus on the flow but does not specify structure Which one to model first? Widely used notation for describing information systems Three main concepts are represented: Entity Attributes Relations

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 15 ER graphical notation

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 16 ER limitation ER expressive power are rather limited and more complex concepts cannot be expressed e.g. Relation on the cardinality of the relation (only one or many) In general ER are complemented with comments using formal logic or informal statement Class diagrams and ER ER are widely used given their simplicity

Ingegneria del Software I – A.A. 2006/2007 Andrea Polini 17 Key Points Operational specifications Petri Nets Descriptive Specification Entity relationship diagrams