Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements."— Presentation transcript:

1 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 27 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Relationships Among OO Models Figure 7-23

28 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 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 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 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 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 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 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 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 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


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

Similar presentations


Ads by Google