1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.

Slides:



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

Behavioral Modeling: State Diagrams CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons,
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Object-Oriented Analysis and Design
Objectives Detailed Object-Oriented Requirements Definitions
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.
Chapter 15: System Modeling with UML
Systems Analysis and Design in a Changing World, Fourth Edition
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
© 2005 Prentice Hall3-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
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
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
SE-565 Software System Requirements More UML Diagrams.
Chapter 7 Structuring System Process Requirements
6 Systems Analysis and Design in a Changing World, Fourth Edition.
Chapter 7: The Object-Oriented Approach to Requirements
Traditional Approach to Requirements Data Flow Diagram (DFD)
Chapter 6: The Traditional Approach to Requirements
Systems Analysis and Design in a Changing World, Fifth Edition
2 Approaches to Requierements Engineering Reference: Systems Analysis and Design in a Changing World, 3 rd Edition, chapter 2 and chapter 6.
Chapter 6 The Traditional Approach to Requirements
Modeling System Requirements:
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, Fifth Edition
Chapter 7 Structuring System Process Requirements
Detailed Object-Oriented Requirements Definitions
1 12 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 12 Designing Systems Interfaces, Controls, and Security.
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
Chapter 9 Moving to Design
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Systems Analysis and Design in a Changing World, 3rd Edition
6 Systems Analysis and Design in a Changing World, Fifth Edition.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 6 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 6 The Traditional Approach to Requirements.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
1 Structuring Systems Requirements Use Case Description and Diagrams.
1 ITEC 2010 Chapter 9 – Design The Structure Chart Structure chart –A hierarchical diagram showing the relationships between the modules of a.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
Systems Analysis and Design in a Changing World, 6th Edition
Chapter 7 The Object-Oriented Approach to Requirements.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 5 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH CHAPTER.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
6 Systems Analysis and Design in a Changing World, Fourth Edition.
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
1 Lecture 7 – Chapter 7 The Object-Oriented Approach to Requirements.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Systems Analysis and Design in a Changing World, Fourth Edition
Analysis Classes Unit 5.
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 6 The Traditional Approach to Requirements.
Systems Analysis and Design in a Changing World, 6th Edition
Business System Development
Systems Analysis and Design in a Changing World, 6th Edition
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements

2 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Objectives u Develop use case diagrams u Develop use case scenarios u Develop sequence diagrams u Develop collaboration diagrams u Develop statechart diagrams u Explain the way object-oriented diagrams work together to provide functional requirements

3 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Requirements Diagrams: Traditional and OO Figure 7-1

4 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Class Diagram u Provides definition of system components u Contains important structural information for the new system u Provides details describing database and object-oriented program u Consists of problem domain classes and implementation classes

5 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Use Cases and Actors u Use Case l Single function performed by system for those who use it u Actors l Role played by user l Outside automation boundary

6 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Simple Use Case with an Actor Figure 7-2

7 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Use Case Scenarios u Shows an actor interacting with a computer system to carry out a business activity u Scenario details sequence of activities within a use case u May have several scenarios

8 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Use Case Diagram u Graphical models that summarize information about actors and use cases u Looks at system as whole u Identifies major uses from event table u Identifies functions that must be supported by the new system u Organizes use cases

9 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Use Case Diagram with System Boundary Figure 7-7

10 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd > Relationships u Documents situation where one use case requires the services of another use case u In programming jargon, called a common subroutine

11 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Example of Order-Entry Subsystem with > Use Cases Figure 7-10

12 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Use Case vs. Structured Techniques u Use case l Defines system scope like a context diagram l Individual use cases are like DFD fragments l Use case begins with automation boundary l Actor interacts with system l Does not indicate data flows u DFD l Ends with scope l External entity is data source

13 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Development of a Use Case Diagram 1.Starting points l Use event table l Identify all actors 2.Develop a flow of activities as the starting point for identifying the various scenarios 3.Common internal use cases can be identified and separated into different use cases

14 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Object Interactions u Collaboration diagram l Emphasizes the objects that interact together to support a use case diagram l May be used alone or with sequence diagram u Sequence diagram l Focuses on message details l Bottom-up approach l More complex l Used more frequently in industry

15 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Sequence Diagrams u Shows sequence of interactions between objects that occurs during flow of events in a single use case u Consists of four basic symbols u Represents a specific set of messages and interactions between objects

16 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Symbols of a Sequence Diagram Figure 7-12

17 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Actors and Objects u Both are “things” l External u Actors u Role of Customer u Physical person l Internal u Objects u Computer artifacts u Both send and receive messages

18 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Lifelines u Vertical line under object or actor: shows passage of time u If dashed: creation and destruction of thing is not important for scenario u Long narrow rectangles: activation lifelines used to emphasize that an object is active only during part of a scenario for a sequence diagram

19 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Messages u Internal events identified by the flow of objects within a scenario u Requests from one actor or object to another to do some action u Invokes a particular method

20 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Partial Class Diagram for RMO Figure 7-15

21 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Sequence Diagram for Look Up Item Availability Figure 7-16

22 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Sequence Diagram Development 1. Identify all objects and actors involved in scenario 2. Identify each message required to carry out scenario 3. Determine whether each message is always sent or if only sent under certain conditions 4. Sequence messages correctly and attach to appropriate lifelines 5. Add formal syntax on messages

23 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Collaboration Diagram u Provides a quick overview of all objects that collaborate to support a given scenario u Uses same symbols as a sequence diagram u Shows relationships between two objects (links) u Cannot easily describe concurrent messages or creation/deletion of objects

24 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Symbols of a Collaboration Diagram Figure 7-20

25 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd RMO Collaboration Diagram for Look up Item Availability Figure 7-21

26 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Object Behavior u Final piece of information needed for describing functional requirements u Description of action the objects perform u Defines object responses to messages -- object behavior

27 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Relationships Among OO Models Figure 7-23

28 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Object States u Condition during an object’s life l Satisfies a criteria l Performs an action l Waits for an event u Semi-permanent conditions u External events cause object to move to a new condition

29 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Object State Naming Conventions u May be a simple condition such as ‘on’ or ‘off’ u May be active names consisting of gerunds or verb phrases u An action is an activity performed by an object in a particular state u Composite states have other states nested internally u A concurrent object can be in more than one state at a time

30 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Object Transitions u Mechanism that causes an object to leave one state and change to a new state u Guard-condition u Action-expression l Procedural statement describing action performed l Executes when the transition fires

31 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Statechart Diagram Development 1.Look at all sequence diagrams and list all relevant input and output messages 2.Develop states and transitions 3.Identify completion transitions and decision pseudostates

32 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Statechart Diagram for an Order Figure 7-31

33 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Concurrent Behavior u Object can do multiple things in parallel u Statechart diagram represents concurrent behavior with multiple paths called threads u Vertical bars indicate where concurrent behavior begins or ends

34 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd RMO Customer Statechart Diagram with Concurrent Threads Figure 7-34

35 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Statechart Development 1.Review class diagram and select classes needing statecharts 2.Identify input messages across all sequence diagrams for selected class 3.For each selected class in group, make a list of all states 4.Build statechart fragments and sequence fragments in correct order

36 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Statechart Development 5.Review paths and look for independent concurrent paths 6.Expand each transition with the appropriate message event, guard condition, and action expression 7.Review and test each statechart