Dillon: CSE470:DYN & FUNC MODELLING1 Dynamic Model l Show the temporal order of operations l Control model »Show the sequence of operations that occur.

Slides:



Advertisements
Similar presentations
Nested state diagrams:Problems with flat state diagram
Advertisements

Behavioral Modeling: State Diagrams CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons,
UML State chart/machine diagram State machine diagram is a behavior diagram which shows discrete behavior of a part of designed system through finite state.
Dynamic Modeling. Dynamic Modeling with UML Interaction diagram –Dynamic behavior of a set of objects arranged in time sequence –Interaction between objects.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Ch 12: Object-Oriented Analysis
Object-Oriented Analysis
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 5, Analysis: Dynamic Modeling.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
THE OBJECT-ORIENTED DESIGN WORKFLOW Statechart Diagrams.
State Change Modelling. Aim: To introduce the concept and techniques for describing the changes in state that may occur to an object in its lifetime.
STD -- Development & Testing Procedures - Page L16-1 MEF-OOM&A-L16-1 Dr. M.E. Fayad Lesson 16: STD -- Development & Testing Procedures Object- Oriented.
Systems Analysis and Design in a Changing World, 6th Edition
2Object-Oriented Analysis and Design with the Unified Process Events and Use Cases  Use case  Activity the system carries out  Entry point into the.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 5, Analysis: Dynamic Modeling.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
State Machine Diagram Chapter 10. State Machine Diagram Used to describe system behavior.
Lecture 4 Finite State Machine CS6133 Software Specification and Verification.
Chapter 10 State Machine Diagrams
Systems Analysis and Design in a Changing World, Fifth Edition
Functional Modeling Joseph Valacich, Joey George and Jeff Hoffer, Essentials of System Analysis and Design, 4 th edition, Prentice Hall, 2009.
Data Flow Diagrams.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
System Specification Specify system goals Develop scenarios Define functionalities Describe interface between the agent system and the environment.
Functional Modeling Question How do you know if you have enough information to compute the necessary output values? How do you know if you have.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, 6th Edition
Behavioral diagrams Lecture p4 T120B pavasario sem.
CSIS3600 System Analysis and Design Statechart Diagrams.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 state charts 1 object states an object state is a condition or situation during the life.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 5 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH CHAPTER.
State Modeling. Introduction A state model describes the sequences of operations that occur in response to external stimuli. As opposed to what the operations.
Systems Analysis and Design in a Changing World, Fourth Edition
States.
CS3773 Software Engineering Lecture 06 UML State Machines.
Modeling Object Lifecycles and State-Dependent Behavior ©SoftMoore ConsultingSlide 1.
Wykład 4 Notacja modelu obiektowego - dodatek. Object Model Notation.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Module 2 OOMD.
1 After the scenarios are formulated Find all the use cases in the scenario Describe each of these use cases in more detail Participating actors Describe.
York University Department of Computer Science © Castro, Mylopoulos and Easterbrook Lecture 11: Modelling “State”  What is State?  statespace.
State Modeling. Introduction A state model describes the sequences of operations that occur in response to external stimuli. As opposed to what the operations.
1 Object Oriented Analysis System modeling = Functional modeling + Object modeling + Dynamic modeling Functional modeling = Use cases Object modeling =class.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Appendix 3 Object-Oriented Analysis and Design
Dynamic Modeling of Banking System Case Study - I
Object Oriented Modeling and Design
State Machine Diagrams
Business System Development
System models October 5, 2005.
States.
Advanced State Chart diagrams
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, Hans Van Vliet, Software Engineering:
Chapter 20 Object-Oriented Analysis and Design
States.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
CHAPTER 2 Object-Oriented Modeling Using UML (Continued)
Appendix 3 Object-Oriented Analysis and Design
UML State Diagrams (Ch. 29)
Presentation transcript:

Dillon: CSE470:DYN & FUNC MODELLING1 Dynamic Model l Show the temporal order of operations l Control model »Show the sequence of operations that occur in response to external stimuli »Do not worry about –what operations do –what they operate on –how they are implemented

Dillon: CSE470:DYN & FUNC MODELLING2 Dynamic Model l Consists of multiple state diagrams »One for each class with important dynamic behavior »Shows –states of objects and activities performed in states –conditions under which events cause transitions –transitions and actions produced by events

Dillon: CSE470:DYN & FUNC MODELLING3 Terminology l States - determined by the values of an object’s attributes and links »have a duration in time »may be associated with activities l Activities - operations performed by an object »take time to complete

Dillon: CSE470:DYN & FUNC MODELLING4 Terminology l Events - external stimuli »instantaneous »may produce state transitions »may produce actions l Conditions - boolean functions of object values »“guard” state transitions

Dillon: CSE470:DYN & FUNC MODELLING5 Terminology l Actions - instantaneous operations performed by an object Triggered by »an event that produces a state transition »entering a state »exiting a state »an event that does not cause a state transition –so entry and exit actions are not performed

Dillon: CSE470:DYN & FUNC MODELLING6 Graphical Notation Ordering of Actions l actions on incoming transition l entry action l activity and event action as appropriate l exit action l actions on outgoing transition State 1 do:activity entry/action2 exit/action3 event/action4 State 2... Event(attrs)[cond]/ action1

Dillon: CSE470:DYN & FUNC MODELLING7 Example: Helper_App Registering entry/Register(mimetype, this) do: monitor DDE msgs Ready do: monitor DDE msgs Ack/start_service WaitChanging URL Ack ChangeURL(file, url)/ Send_file(file, url) Spawn_viewer(appname, file) Ack IO_Exception Stop DDE_exception

Dillon: CSE470:DYN & FUNC MODELLING8 Nesting State Diagrams l Helps organize and modularize SDs »A way to manage complexity l Two forms of nesting »Refinement –add detail to a state –permits inheritance of transitions »Concurrency (aggregation) –aggregates objects, each with their own SDs

Dillon: CSE470:DYN & FUNC MODELLING9 Notation for Refinement Substate-1 Substate-2 Superstate event 3 event 1 event 2

Dillon: CSE470:DYN & FUNC MODELLING10 Example: Helper_App Registering entry/Register(mimetype, this) do: monitor DDE msgs Ready do: monitor DDE msgs Ack/start_service Wait Changing URL Ack ChangeURL(file, url)/ Send_file(file, url) Spawn_viewer(...) Ack IO_Exception Stop DDE_exception

Dillon: CSE470:DYN & FUNC MODELLING11 Example:Browser_Listener Registering entry/Register(this) Ready Ack/ start_service Wait Ack ChangeURL(file,url) [url=lastUrl or type/=HTML] Stop DDE_exception ChangeURL(file,url) [url/=lastUrl and type =HTML] / sendURL(url,frame)

Dillon: CSE470:DYN & FUNC MODELLING12 Notation for Concurrency Substate-1 Substate-2 Substate-3 Substate-4 Superstate event 1 event 2

Dillon: CSE470:DYN & FUNC MODELLING13 Example:Browser_Slave Registering entry/Register(this) Ready Ack/ start_service Ack ChangeURL(file,url) / UpdateFrameVector (frame) Stop DDE_exception Wait RecURL(url,frame) / B_activate Ack / B_OpenURL(url,frame) Ack Frame_managerRec_URL_manager

Dillon: CSE470:DYN & FUNC MODELLING14 Example: WEB Class Browser_WrapperMreceiverBrowser_Slave Web_Student Web_Instructor Browser_WrapperMsenderBrowser_Listener Helper_App1 Helper_App

Dillon: CSE470:DYN & FUNC MODELLING15 Dynamic Model: Creation Tips l Create SDs only for object classes with meaningful dynamic behavior l Check consistency between »SDs on shared activities »SDs and object model l Use scenarios to »Begin construction of SDs »Check completeness of SDs

Dillon: CSE470:DYN & FUNC MODELLING16 Dynamic Model: Creation Tips (cont.) l Let application determine granularity l Distinguish between activities and actions l Make use of entry and exit actions for multiple transitions l Make use of nested SDs to reduce complexity l Distinguish SDs for super and subclasses

Dillon: CSE470:DYN & FUNC MODELLING17 Functional Model l Describes computations within a system »Specifies what happens »Shows how output values are derived from input values »Is not concerned with when computations are performed l Consists of multiple data flow (DF) diagrams

Dillon: CSE470:DYN & FUNC MODELLING18 Terminology l Process - transforms data values l Data flow - connects output of a process or object to the input of another process or obj l Actor - active object that drives the DF by producing or consuming data values l Data store - passive object that stores data for later use

Dillon: CSE470:DYN & FUNC MODELLING19 Graphical Notation Data flow between Processes:Process: Process name data name Data store or file object: Name of data store Data flow that results in a data store:

Dillon: CSE470:DYN & FUNC MODELLING20 Graphical Notation (cont.) Actor objects (as source or sink of data: Process name Actor2Actor1 d2d1 Composition, duplication, and decomposition of data values: d1 d2 composited1composite d1 d2

Dillon: CSE470:DYN & FUNC MODELLING21 Example: Banking application Bank Select accounts Customer name Update Account request balance

Dillon: CSE470:DYN & FUNC MODELLING22 Functional Model: Creation Tips l Create FM only for objects/processes with meaningful data flow l Start simple » one process with correct inputs and outputs l Refine to next level by expanding the process l Continue to refine one process at a time l Check consistency between the inputs and outputs