7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.

Slides:



Advertisements
Similar presentations
Week 2 The Object-Oriented Approach to Requirements
Advertisements

Requirements Diagrams With UML Models
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Object-Oriented Analysis and Design
System Sequence Diagrams (SSD). Recap Concepts of Action, Pins and Activity Description of activity nodes and activity edges New notations – Activity.
Robert B. Jackson Brigham Young University John W. Satzinger
Objectives Detailed Object-Oriented Requirements Definitions
Object-Oriented Analysis
Systems Analysis and Design in a Changing World, Fourth Edition
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Unified Modeling Language (UML) Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Unified Modeling Language (UML)
Sequence Diagrams By Zvika Gutterman Adam Carmi. Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control Information Examples.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System sequence diagram Updated: 2014.
Sequence Diagrams By Zvika Gutterman Adam Carmi. Sequence Diagrams2 Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control.
Unified Modeling Language (UML)
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Systems Analysis and Design in a Changing World, 6th Edition
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
Detailed Object-Oriented Requirements Definitions
Sequence Diagrams By Zvika Gutterman Adam Carmi. Sequence Diagrams2 Agenda Interaction Diagrams A First Look at Sequence Diagrams Objects Messages Control.
Slide 1 Use Case Sequence Diagram. Slide 2 Interaction Diagrams l Interaction diagrams model the behavior of use cases by describing the way groups of.
Object-Oriented Analysis and Design
Chapter 7: The Object-Oriented Approach to Requirements
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
State Diagrams / System Sequence Diagrams (SSDs)
程建群 博士(Dr. Jason Cheng) 年03月
Chapter 4 System Models A description of the various models that can be used to specify software systems.
Detailed Object-Oriented Requirements Definitions
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Objectives Detailed Object-Oriented Requirements Definitions
The Object-Oriented Approach to Requirements
4 2009/10 Object Oriented Technology 1 Topic 4: The Object-Oriented Approach to Requirements Adopted from: Ch.7 The Object-Oriented Approach to Requirements.
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 3rd Edition
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
2 Object-Oriented Analysis and Design and the Unified Process Objectives  Explain the purpose and objectives of object- oriented design  Develop design.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
M Taimoor Khan Sequence Diagrams Illustrates how objects interacts with each other. Emphasizes time ordering of messages.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
Drawing System Sequence Diagrams
COMP-350 Object-Oriented Analysis and Design Drawing System Sequence Diagrams Reference: Larman, Chapter 9.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
System sequence diagram M Taimoor Khan
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 5 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH CHAPTER.
Systems Analysis and Design in a Changing World, Fourth Edition
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Chapter 3: Introducing the UML
 System Sequence Diagrams Sheridan SYST Engineering Quality Systems 11.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Project 2: Phase 1 Submission 7 Late submissions 10% 10 No submissions 14% Better than project 1 phase 3 submissions 10-point bonus: If you catch the deadline.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Business Process and Functional Modeling
Systems Analysis and Design in a Changing World, 6th Edition
Sequence Diagrams Mimi Opkins CECS 493 Fall2016
Unified Modeling Language
Sequence Diagrams.
Systems Analysis and Design in a Changing World, 6th Edition
CIS 375 Bruce R. Maxim UM-Dearborn
Unified Modelling Language
Engineering Quality Software
Sequence Diagrams.
CIS 375 Bruce R. Maxim UM-Dearborn
Presentation transcript:

7

2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use Case/Scenario View  Identifying Inputs and Outputs—The System Sequence Diagram  Identifying Object Behavior—The Statechart Diagram  Integrating Object-Oriented Models

3Object-Oriented Analysis and Design with the Unified Process Object-Oriented Requirements Definitions  Use case diagram: table of contents for business events  System sequence diagrams (SSDs)  Define and order sequence of inputs and outputs  Information flows referred to as messages  Class diagrams  Identify real-world “things”  Determine the structure of the programming classes  Statechart diagram describes collection of object states

4Object-Oriented Analysis and Design with the Unified Process System Processes—A Use Case/Scenario View  Define use cases into two tiers:  Overview level derived from: ◘Event table and use case diagrams  Detailed level derived from combination of: ◘Use case description ◘Activity diagram ◘Sequence diagram

5Object-Oriented Analysis and Design with the Unified Process Use Cases and Actors  Source  Person or thing initiating the business event  Must be external to the system  Actor  Person or thing that touches the system  Lies outside of automation boundary  Identifying actors at the right level of detail  Assume actors (even non-human types) have hands  Use case is a goal that the actor wants to achieve

6Object-Oriented Analysis and Design with the Unified Process A Simple Use Case with an Actor The Use Case Diagram

7Object-Oriented Analysis and Design with the Unified Process A Use Case Diagram of the Order-Entry Subsystem for RMO, Showing a System Boundary

8Object-Oriented Analysis and Design with the Unified Process A Use Case Diagram of the Customer Support System (by Subsystem)

9Object-Oriented Analysis and Design with the Unified Process An Example of the Order-entry Subsystem With «Includes» Use Cases

10Object-Oriented Analysis and Design with the Unified Process Brief Description of Create New Order Use Case Developing a Use Case Diagram: (level 1-brief description)

11Object-Oriented Analysis and Design with the Unified Process Intermediate Description of Telephone Order Scenario for Create New Order Use Case Developing a Use Case Diagram: (level 2- Intermediate description)

12Object-Oriented Analysis and Design with the Unified Process Fully Developed Description of Telephone Order Scenario for Create New Order Use Case Developing a Use Case Diagram: (level 3- Fully developed description)

13Object-Oriented Analysis and Design with the Unified Process Identifying Inputs and Outputs— the System Sequence Diagram  System sequence diagram (SSD)  Describes flow of information  Identifies interaction between actors and system  Message oriented

14Object-Oriented Analysis and Design with the Unified Process SSD Notation  Actor “interacts” with the system via input/output  SSDs use object notation  Box (rectangle) refers to individual object  Name of the object underlined  Messages sent/received by objects, not classes  Lifeline  Extension of object or actor for duration of the SSD  Indicates sequence of the messages sent/received

Sequence Diagrams 15 A Sequence Diagram member: LibraryMember book:Book :Book Copy borrow(book) ok = mayBorrow() [ok] borrow(member) setTaken(member) X-Axis (objects) Y-Axis (time) Object Life Line message Activation box condition

16Object-Oriented Analysis and Design with the Unified Process Sample System Sequence Diagram

17Object-Oriented Analysis and Design with the Unified Process Developing a System Sequence Diagram  Begin with detailed description of use case  Fully developed form  Activity diagrams  (4) step process for turning activity diagram into SSD  [1] Identify the input messages  [2] Describe messages from external actor to system  [3] Identify/apply special conditions to input messages  [4] Identify and add the output return messages

18Object-Oriented Analysis and Design with the Unified Process Developing a System Sequence Diagram (continued)  Names of messages reflect services performed  Important principle for identifying data parameters  Base the list on the class diagram  Attributes from the classes listed as parameters  Iteratively define input/output parameters around workflows  Objective: discovery and understanding

19Object-Oriented Analysis and Design with the Unified Process An SSD of the Simplified Telephone Order Scenario for the Create New Order Use Case

Sequence Diagrams 20 Developing a System Sequence Diagram - Control information (con’t)  Condition  syntax: ‘[‘ expression ’]’ message-label  The message is sent only if the condition is true  example:  Iteration  syntax: * [ ‘[‘ expression ‘]’ ] message-label  The message is sent many times to possibly multiple receiver objects. [ok] borrow(member)

Sequence Diagrams 21 Indicating selection and loops  frame: box around part of a sequence diagram to indicate selection or loop  if -> (opt) [condition]  if/else -> (alt) [condition], separated by horiz. dashed line  loop -> (loop) [condition or items to loop over]

Sequence Diagrams22 Exercise !!! Create a sequence diagram depicts on the following program:

23Object-Oriented Analysis and Design with the Unified Process Identifying the Object Behavior  the Statechart Diagram  A state in a statechart similar to status condition  Spans many business events  Developed for complex problem domain classes  Statechart diagram  Composed of ovals representing status of object  Arrows represent transitions

24Object-Oriented Analysis and Design with the Unified Process Identifying the Object Behavior  the Statechart Diagram (continued)  Guidelines to help identify states  Check naming convention for status conditions  Simple states reflect simple conditions such as “On”  Complex states labeled with gerunds or verb phrases ◘Example: “Being shipped”  Active states usually not labeled with nouns  Describe only states of being of the object itself  Status conditions reported to management/customers ◘Example: “Shipped”

25Object-Oriented Analysis and Design with the Unified Process Rules for Developing Statecharts  [1] Select the classes that will require statecharts  [2] List all the status conditions for each group  [3] Specify transitions that cause object to leave the identified state  [4] Sequence state-transition combinations in correct order

26Object-Oriented Analysis and Design with the Unified Process Rules for Developing Statecharts (continued)  [5] Identify concurrent paths.  [6] Look for additional transitions  [7] Expand each transition as appropriate  [8] Review and test each statechart

button1&2Pressed button1Pressed button2Pressed button1Pressed button1&2Pressed Increment Minutes Increment Hours Blink Hours Blink Seconds Blink Minutes Increment Seconds Stop Blinking State Diagram : Example1 State Initial state Final state Transition Event

State Diagram : Example2 28Object-Oriented Analysis and Design with the Unified Process

29Object-Oriented Analysis and Design with the Unified Process Relationships among OO Requirements Models OO requirements models

30Object-Oriented Analysis and Design with the Unified Process Summary  OOA family of models documents users’ needs and defines system requirements  Use case detailed models (descriptive or activity)  Sequence diagrams (SSDs)  Domain model class diagrams  Statechart diagrams

31Object-Oriented Analysis and Design with the Unified Process Summary (continued)  Use case: single system function responding to an event  Actors: human users or system interfaces that initiate system response  System function decomposed into workflows  SSDs, domain models, statecharts emulate routines and object interaction  Software engineering terms signal transition into design phase