- 1 - © Houman Younessi 2010 MGMT 6170 - Advanced Systems Analysis and Design A dvanced S ystems A nalysis and D esign Fall 2010 Convener: Houman Younessi.

Slides:



Advertisements
Similar presentations
CS6133 Software Specification and Verification
Advertisements

1 Design a Simple Two Telephone System Concentrating on the control aspects (not data). Requirements Each phone has a handset that may be picked up and.
Activity Diagrams in UML. Definition Activity diagrams represent the dynamics of the system. They are flow charts that are used to show the workflow of.
Activity Diagrams. Recap Activity Diagrams – When to use? – Where? – Nodes – Edges – More to come …. 2.
- 1 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Convener: Houman Younessi Lecture 4 A dvanced.
Sequence Diagrams.
SoD via BSG S oftware E ngineering M anagement Software Engineering Management - © 2010 Houman Younessi Service Oriented Development using Base Structure.
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.
1ISM - © 2010 Houman Younessi Lecture 5 Convener: Houman Younessi Information Systems Spring 2011.
Lecture 9 ISM- © 2010 Houman Younessi Information Systems Spring 2011 Convener: Houman Younessi
MGMT ASAD HO 8 © HY 2006 Lecture 8 A dvanced S ystems A nalysis and D esign Fall 2006 Convener: Houman Younessi
- 1 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design A dvanced S ystems A nalysis and D esign Fall 2010 Convener: Houman Younessi.
MGMT ASAD HO 7 © HY 2006 Lecture 7 A dvanced S ystems A nalysis and D esign Fall 2006 Convener: Houman Younessi
L26-S1 Interactions 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
- 1 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design A dvanced S ystems A nalysis and D esign Fall 2010 Convener: Houman Younessi.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
1 © Wolfgang Pelz UML2 UML Part 3. 2 © Wolfgang Pelz UML2 Chapter Ten State Machine Diagrams.
Lecture 10 ISM - © 2010 Houman Younessi Convener: Houman Younessi Information Systems Spring 2011.
MGMT ASAD HO 9 © HY 2006 Lecture 9 A dvanced S ystems A nalysis and D esign Fall 2006 Convener: Houman Younessi
Advanced Behavioral Modeling
SE-565 Software System Requirements More UML Diagrams.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Chapter 2 (Horstmann’s Book) – Part 2 The Object-Oriented Design Process Hwajung Lee.
Sequence Diagram Tutorial
CS3773 Software Engineering
Object-Oriented Design & Patterns Cay S
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
- 1 - © Houman Younessi 2006 MGMT Advanced Systems Analysis and Design A system is identified in terms of the single goal it is to achieve. A system.
Fall 2010 CS4310 Requirements Engineering UML: Dynamic Modeling Dr. Guoqiang Hu Department of Computer Science UTEP 1.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
Interaction Modeling. Overview The class model describes the objects in a system and their relationships, the state model describes the life cycles of.
Interaction Modeling. Introduction (1) Third leg of the modeling tripod. It describes interaction within a system. The class model describes the objects.
10/17/01H-1 © 2010 T. Horton CS 4240: Principles of SW Design Interaction Diagrams Examples of Collaboration and Sequence Diagrams Phone modeling exercise.
UML basics UML distilled, a brief guide to the standard Modeling language, by Martin Fowler, 2000.
Behavioral diagrams Lecture p4 T120B pavasario sem.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
CSC 395 – Software Engineering Lecture 13: Object-Oriented Analysis –or– Let the Pain Begin (At Least I’m Honest!)
ECS 152A 4. Communications Techniques. Asynchronous and Synchronous Transmission Timing problems require a mechanism to synchronize the transmitter and.
For accurate communication, since a project can have several participants, each from different background. Represent a given aspect of the system We will.
1 The UAX13 - Dialling the First Digit The UAX13 Group Selector is seized by a calling earth from the associated linefinder and returns a holding earth.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Interaction and Communication Diagrams Patrick Bailey Keith Vander Linden Calvin College.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Information Systems Engineering Interaction Diagrams: Sequence Diagram Collbortion Diagram.
1 An Introduction to UML Interaction (Sequence and Communication) Diagrams Georgia State University CIS 3300 Spring, 2009.
OO Methodology Elaboration Iteration 3 – Part 2 Refining Models.
1 Kyung Hee University Statecharts Spring Kyung Hee University Specifying Objects’ Behaviour  Interaction diagrams show message-passing behaviour.
UNIFIED MODELING LANGUAGE(UML) BY Touseef Tahir Lecturer CS COMSATS Institute of Information Technology, Lahore.
CSCI-383 Object-Oriented Programming & Design Lecture 12.
Dynamic Models. Outline Dynamic Models Statecharts –States –Transitions –Composite states Interaction Diagrams –Sequence Diagrams The time order of interactions.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
Dynamic Models Sequence Diagrams Collaboration Diagrams Activity Diagrams.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 26. Review UML behavioral Diagrams – Sequence diagram.
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.
Dynamic Models - Page L M.E. Fayad Lesson 30: Dynamic Models Object- Oriented Modeling & Application s.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
ITEC1301 Object-Oriented Systems Construction Lecture Notes #4 1.
Analysis Classes Unit 5.
Activity Diagrams.
Standard UML: Communication and Dynamic Behavior
UML Modeling Sequence diagram
Chapter 11: Collaboration Diagram - PART1
Visit for more Learning Resources
UML Diagrams Practical Tutorial
Object Oriented Modeling and Design
Object Oriented Modeling and Design
UML State Diagrams.
UML Diagrams: Sequence Diagrams Dynamic Analysis Model
Presentation transcript:

- 1 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design A dvanced S ystems A nalysis and D esign Fall 2010 Convener: Houman Younessi Lecture 5

- 2 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Event State A relevant punctuation in time The arrival of a message A stimulus received by an object A relevant interval in time Response of an object to a message or event A response to a stimulus Events take no time States are held in time

- 3 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design coin is inserted(amount) flight leaves(airline,number) mouse_button_clicked(button, location) item_select_mode cruising edit_mode Event State Events carry information from an object to another (a message), objects receive that information and may change state

- 4 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Event State Events can be thought of as a feature call on the target object. States can be thought of as an abstraction of the attribute values of the target object between two relevant events.

- 5 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design SEQUENCE DIAGRAMS A sequence diagram captures the order of events and the direction of the messages passed. There are two forms of sequence diagrams: Simple sequence diagrams (Event Traces) Full sequence diagrams with concurrency

- 6 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design caller:Person callee:Person Modem1:Modem modem2:Modema_line:Connection wake connect sound_dial_tone acknowledge accept_dial_ sequence ringing_tone disconnect dial_tone dial sound_ring_tone connect stop_ring_tone disconnect_signal break_connect stop_ring connect picked_ up ring_phone routed receive_call_ signal dial_tone phone_ringing connected sound_dial_tone

- 7 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design modem1:Modem a_Line:Connection connect() sound_dial_tone() *[n]dial(n:Digit) modem2:Modem sound_ring_tone() ring_tone() picked_up() connect() [while caller not hang_up()] disconnect signal() break_connection() [while caller not hang_up()] *[n]dial(n:Digit)5 Asynch. Event Synch. Event Activation Continuation Condition Iteration Condition Object life termination routed() receive_call_signal() stop_ ringing_tone() stop_ ringing() break_connection() sound_dial_tone()

- 8 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design modem1:Modem a_Line:Connection connect() sound_dial_tone() *[n]dial(n:Digit) modem2:Modem sound_ring_tone() ring_tone() picked_up() connect() [while caller not hang_up()] disconnect signal() break_connection() routed() receive_call_signal() stop_ ringing_tone() stop_ ringing() break_connection() sound_dial_tone() caller:Person callee:Person wake acknowledge ringing_tone connected disconnect dial_tone phone_ringing connected dial_tone dial

- 9 - © Houman Younessi 2010 MGMT Advanced Systems Analysis and Design modem1:Modem a_Line:Connection connect() sound_dial_tone() *[n]dial(n:Digit) modem2:Modem sound_ring_tone() ring_tone() picked_up() connect() [while caller not hang_up()] disconnect signal() break_connection() routed() receive_call_signal() stop_ ringing_tone() stop_ ringing() break_connection() sound_dial_tone() wake acknowledge ringing_tone connected disconnect dial_tone Phone_ringing connected dial_tone caller callee dial

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design COLLABORATION DIAGRAMS Collaboration diagrams also show the message exchange (collaboration) between several objects. They do so by depicting the message exchange between object icons through numbering the messages traveling between these objects.

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Modem:modem_2 Connection:aLine 1- connect() 3- *[n] dial(n:Digit) 10- disconnect_signal() 2- sound_dial_tone () 6a- ringing_tone() 8a- stops_ring_tone() 9a-connect( ) 11a- break_connection() 12a- sound_dial_tone 4- receive_call_signal() 6b- sound_ring_tone() 8b- stop_ringing() 9b- connect() 11b-break_connection() 12b- sound_dial_tone() 5- routed() 7-picked_up() Modem:modem_1 EXAMPLE COLLABORATION DIAGRAM

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design STATE DIAGRAMS A state diagram relates events and states. State diagrams may be drawn from the perspective of the whole system as a single object, or from the perspective of any single object at any level of granularity. State diagrams may show concurrency or may be nested Usually it is best to draw the state diagram of only one object in the system at a time

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design idle dial tone do/sound_dial_tone() connecting do/receive_call_signal() ringing do/sound_ring_tone() do/ring_phone() connected disconnect_signal() picked_up() dial() routed() connect() disconnected reset() State Diagram of a modem communication line, normal case, successful connection. connected do/stop_ring_tone() do/stop_ring() do/connect() do/break_connection() do/sound_dial_tone()

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design idle dial tone do/sound_dial_tone() connecting do/receive_call_signal() ringing do/sound_ring_tone() do/ring_phone() connected disconnect_signal() picked_up() dial() routed() connect() disconnected reset() connected do/stop_ring_tone() do/stop_ring() do/connect() do/break_connection() do/sound_dial_tone() time-out do/ beep() time_out() busy tone do/ slow_tone() busy_num() fast busy tone do/fast_tone() busy_trunk() message do/play() message-done() invalid_num() reset() State Diagram of a modem communication line, with normal, and a number of non-normal cases.

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design ringing do/sound_ring_tone ( ) idle connect do/connect ( ) acknowledge. do/acknowledge ( ) dial. do/dial( ) data ex. disconnecting do/disconnect_signal() wake() sound_dial_ tone() dial() stop_ringing() connect( ) disconnect() break_connection() sound_ringing_tone() sound_dial_tone()

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design trans. Ends modem_1 trans. modem_2 trans start EOT modem_2EOS modem 1EOS making change idle do/ dispense item do/give change ready item takenchange taken dispense modem_1 trans. modem_2 trans start EOT modem_2EOS modem 1EOS data exchange

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Transformations This is the third modeling view. It answers the question “how”. Depending on level of granularity there are many techniques. Including: High Level: Activity Diagrams Low Level: Pseudocode Flowcharts etc. Not part of UML

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Activity diagrams depict the processing aspects of the system. They are similar to flowcharts except: ACTIVITY DIAGRAMS Activity charts allow synchronization They are similar to dataflow diagrams except: Communication between activities is via messages carrying data not the data itself Activity charts allow synchronization

© Houman Younessi 2010 MGMT Advanced Systems Analysis and Design Order Processing Finance Stock Manager Receive Order Receive Supply Select Outstanding order item Assign Goods to Order Assign Item to Order Reorder Item Add Remainder to Stock Check Line Item Cancel Order Check order Authorize payment [failed] [succeeded] Dispatch Order [Stock assigned to all line items and payment authorized] *[for each line item on order] * [for each chosen order item] [in stock] [all outstanding order items filled] [notify supply] [out of stock]