1 Modeldrevet softwareudvikling – 16. november 2004 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Software Specification Methods Jens Bæk.

Slides:



Advertisements
Similar presentations
Modeling Main issues: What do we want to build How do we write this down ©2008 John Wiley & Sons Ltd. vliet.
Advertisements

Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
Object-Oriented Analysis
Object-Oriented Analysis and Design
Systems Analysis and Design in a Changing World, Fourth Edition
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Specification of IT Systems – Introduction. 2 Book and web pages zIn the course we use the following litterature: yDesign Methods for Reactive Systems.
Communication Notation Part V Chapter 15, 16, 18 and 19.
1 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Behavior Notations Jens Bæk Jørgensen, University of Aarhus.
1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2000Software Engineering, 6/e, Chapter 71 System models l Abstract descriptions of systems whose requirements are being analysed.
1 CPN Models as Enhancements to a Traditional Software Specification for an Elevator Controller Jens Bæk Jørgensen Department of Computer Science University.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
1 Specification of IT Systems – Introduction. 2 Book and web pages zIn the course we use the following litterature: yDesign Methods for Reactive Systems.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations Jens Bæk Jørgensen, University of Aarhus.
Object Oriented Concepts. Movement toward Objects Instead of data-oriented or process-oriented Analysis, many firms are now moving to object-oriented.
1 Modeldrevet softwareudvikling – 7. september 2004 Design Methods for Reactive Systems, R.J. Wieringa Part II: Function Notations Jens Bæk Jørgensen,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 1.
Chapter 7: System models
Chapter 7: The Object-Oriented Approach to Requirements
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 2: Approaches to System Development
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Introduction to the Unified Modeling Language “The act of drawing a diagram does not constitute analysis or design. … Still, having a well-defined and.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
Unified Modeling Language, Version 2.0
Systems Analysis and Design in a Changing World, Fifth Edition
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Chapter 7 System models.
Slide 1 System models. Slide 2 Objectives l To explain why the context of a system should be modelled as part of the RE process l To describe behavioural.
System models l Abstract descriptions of systems whose requirements are being analysed.
Pertemuan 19 PEMODELAN SISTEM Matakuliah: D0174/ Pemodelan Sistem dan Simulasi Tahun: Tahun 2009.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
UML-1 8. Capturing Requirements and Use Case Model.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis and Design in a Changing World, Fourth Edition
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
MADALINA CROITORU Software Engineering week 4 Practical Madalina Croitoru IUT Montpellier.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
 To explain why the context of a system should be modelled as part of the RE process  To describe behavioural modelling, data modelling and object modelling.
Fall 2007 Week 9: UML Overview MSIS 670: Object-Oriented Software Engineering.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
UML AN OVERVIEW. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis and Design With UML 2
Abstract descriptions of systems whose requirements are being analysed
Unified Modeling Language
Members: Keshava Shiva Sanjeeve Kareena
Presentation transcript:

1 Modeldrevet softwareudvikling – 16. november 2004 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Software Specification Methods Jens Bæk Jørgensen, Aarhus Universitet

2 Postmodern structured analysis – notations zEnvironment yContext diagram yERD of subject domain yEvent-action lists of desired subject domain behaviour yEvent-action lists of assumed subject domain behaviour zRequirements yMission statement yFunction refinement tree yService descriptions yStimulus-response list of desired system behaviour zSuD decomposition yDFD SuD decomposition ySTTs or STDs of control processes zDictionary

3 Postmodern structured analysis – coherence rules zEnvironment models yContext diagram shows relevant communication paths between SuD and subject domain yEvent-action pairs refer to subject domain entities involved zRequirement specifications yMission statement = root of function refinement tree yService descriptions = leaves of function refinement tree yEach function is triggered by stimulus in stimulus-response list yEach stimulus-response pair is part of a function z SuD decomposition specifications yEach control process is specified by a behavior description yEach behavior description describes a process in the DFD

4 Postmodern structured analysis – coherence example Statechart behaviour description Part of DFD (control process)

5 Postmodern structured analysis – coherence across models zEnvironment and requirements yEvent -> stimulus -> response -> action yEach of these chains is a path in the context diagram zRequirements and SuD decomposition yFor each stimulus-response pair, there is a path through the DFD zSuD decomposition and environment. yContext diagram is abstraction from DFD zDictionary yDefines at least the relevant subject domain terms for entities and events

6 UML (Unified Modeling Language) – basics zAttempted unification of notations for object-oriented software design zBooch, Rumbaugh, Jacobson 1997 zIndustrial standard defined by the OMG zStandard is still being updated; UML 2.0 coming soon zWieringa treats only a light-weight version, expected to be consistent with future versions

7 UML – notations zUse case diagrams zActivity diagrams zStatic structure diagrams zStatecharts zSequence diagrams zCollaboration diagrams zComponent diagrams zDeployment diagrams

8 UML – activity diagrams zUsed to describe workflows zDiagram constructs to represent yWait states and activity states ySequence yHierarchy yParallelism yChoice

9 UML – activity diagram example

10 UML – static structure diagrams (SSDs) zAlso known as class diagrams zSSDs have notable similarities with ERDs, but usage and terminology are different zAn SSD shows which classes of objects can exist in the software system, and how many of them can exist zAttributes represent the observable state of an object zServices can be operations or signal receptions yOperation = computation performed by object ySignal = named data structure that can be sent as a message to objects zAssociations are access paths

11 UML – SSD for heating controller

12 UML – ERD for heating controller (to compare with SSD)

13 UML – statechart for heating controller

14 UML – coherence between SSD and statechart for heating controller

15 UML – guidelines for finding an SSD zStart from yContext diagram ySubject domain ERD yCommunication diagram of requirements-level architecture zThe SDD adds additional information to the communication diagram about object identification and access

16 UML – SDD guidelines; elevator controller communication diagram

17 UML – SDD guidelines; elevator controller SSD

18 UML – sequence diagram example Collaboration diagrams are an alternative

19 Not Yet Another Method (NYAM) – notations

20 Not Yet Another Method – possible use of specification techniques

21 Not Yet Another Method – flyweight to heavyweight use of notations

22 Not Yet Another Method – ordering of design decisions

23 Not Yet Another Method – engineering arguments zPredict properties of a product before it is built zFeed-forward versus feedback loop zPossible ways to argue yEngineering knowledge / experience yThrow-away prototyping yModel execution yModel checking yTheorem-proving

24 Not Yet Another Method – formality and precision zA description is precise if it expresses as briefly as possible what is intended zIt is formal if it uses a language for which formal, meaning-preserving manipulation rules have been defined zFormal descriptions can be very imprecise: Statechart with superfluous transitions and states zPrecise descriptions can be very informal: Function descriptions zThe attempt to be precise has priority over the attempt to be formal

25 Summary zPostmodern structured analysis zUML zNot Yet Another Method