Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slide 6B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with.

Similar presentations


Presentation on theme: "Slide 6B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with."— Presentation transcript:

1 Slide 6B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with UML and the Unified Process McGraw-Hill, 2004 Stephen R. Schach srs@vuse.vanderbilt.edu

2 Slide 6B.2 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. CHAPTER 6 — Unit B THE ANALYSIS WORKFLOW I

3 Slide 6B.3 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Continued from Unit 6A

4 Slide 6B.4 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Fifth Iteration of the Initial Class Diagram (contd)

5 Slide 6B.5 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Dynamic Modeling l Dynamic modeling is the third step in object-oriented analysis l A statechart is constructed that reflects all the operations performed by or to the information system l The operations are determined from the scenarios

6 Slide 6B.6 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. The Concept of State l The state of an information system is a particular set of values of the attributes of that system –The state is often represented by a specific screen l Each event causes the system to move from state to state, that is, it causes a transition between states l Example: Microsoft Word –The state is the current screen –An event is to select (say) Font from the Format Menu –The Font screen is then the new state

7 Slide 6B.7 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby l Initial statechart

8 Slide 6B.8 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby (contd) l The solid circle (top left) represents the initial state l The white circle with the small black circle inside (top right) represents the final state l States other than the initial and final states are represented by rectangles with rounded corners l The arrows represent transitions from state to state –Example: The arrow from the initial state to the state labeled Osbert Oglesby Information System Loop

9 Slide 6B.9 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby (contd) l In state Osbert Oglesby Information System Loop, one of five events can occur: –Osbert can choose one of five options: buy a painting, sell a painting, print a report, update a fashionability coefficient, or quit l These possibilities are indicated by the five events: –buy painting selected –sell painting selected –print report selected –update fashionability selected –quit selected

10 Slide 6B.10 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby l The initial main menu in the target Osbert Oglesby information system

11 Slide 6B.11 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby (contd) l Suppose that Osbert clicks on Buy a painting in the menu –The event buy painting selected has now occurred –The system moves from its current state, Osbert Oglesby Information System Loop, to the state Buying a Painting l In Buying a Painting state, Osbert can –Buy a masterpiece, masterwork, or other painting

12 Slide 6B.12 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Dynamic Model: Osbert Oglesby (contd) l The Osbert Oglesby information system moves from state to state when an event occurs –In each state, Osbert performs one of the operations supported by that state l This continues until Osbert clicks on option Quit while the system is in state Oglesby Information System Loop –At this time the information system enters the final state (represented by the white circle containing the small black circle) –This terminates execution of the statechart

13 Slide 6B.13 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Dynamic Modeling (contd) l Traditionally there is a dynamic model for each class, rather than for the system as a whole, as in this case study –However, objects in information systems rarely move from one class to another class l Accordingly, a dynamic model for the information system as a whole is appropriate

14 Slide 6B.14 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Extracting Boundary Classes l It is usually easy to extract boundary classes –Each input screen, output screen, and printed report is generally modeled by a boundary class

15 Slide 6B.15 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby l One screen should be adequate for all four Osbert Oglesby use cases: –Buy a Painting –Sell a Painting –Print a Report –Modify a Fashionability Coefficient l Thus there is one initial boundary class –User Interface Class

16 Slide 6B.16 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l Consider again the first iteration of the main menu of the user-interface screen l The five commands correspond precisely to the five events in the statechart

17 Slide 6B.17 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l This is a graphical interface, which needs special software

18 Slide 6B.18 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l However, a textual interface runs on all computers

19 Slide 6B.19 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l There are three reports: –The purchases report –The sales report –The future trends report l Each of these has to be modeled by a separate boundary class because the content of each report is different

20 Slide 6B.20 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l There are thus three report boundary classes –Purchases Report Class –Sales Report Class –Future Trends Report Class

21 Slide 6B.21 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Boundary Classes: Osbert Oglesby (contd) l There are therefore four boundary classes

22 Slide 6B.22 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Extracting Control Classes l It is also usually easy to extract control classes –Each nontrivial computation is generally modeled by a control class

23 Slide 6B.23 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Control Classes: Osbert Oglesby l In the case study there are four computations –Determining the maximum price that Osbert should offer for a »Masterpiece »Masterwork, or »Other painting –Determining if there is a new trend in art purchases

24 Slide 6B.24 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Control Classes: Osbert Oglesby l There are thus four initial control classes: –Compute Masterpiece Price Class –Compute Masterwork Price Class –Compute Other Painting Price Class –Compute Future Trends Class

25 Slide 6B.25 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Initial Control Classes: Osbert Oglesby (contd) l Here are the initial control classes

26 Slide 6B.26 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Refining the Use Cases: Osbert Oglesby l The class diagram reflects that the pricing algorithm treats the three types of paintings differently l Accordingly, use case Buy a Painting needs to be refined into three separate use cases –Buy a Masterpiece –Buy a Masterwork –Buy Other Painting l Therefore, the description of the Buy a Painting use case must be split into three separate descriptions

27 Slide 6B.27 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. l The Produce a Report use case also needs to be refined –The purchases report and the sales report use simple data extraction — the future trends report involves computation –All three reports use their own boundary classes Refining the Use Cases: Osbert Oglesby (contd)

28 Slide 6B.28 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. l For both these reasons, the Produce a Report use case must be refined into three use cases –Produce a Purchases Report –Produce a Sales Report –Produce a Future Trends Report l The description of the use case must be split into three separate descriptions Refining the Use Cases: Osbert Oglesby (contd)

29 Slide 6B.29 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Third Iteration of the Use-Case Diagram

30 Slide 6B.30 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. l The description of class extraction is complete l We now therefore return to the Unified Process Class Extraction (contd)

31 Slide 6B.31 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Use-Case Realization l The process of extending and refining use cases is called use-case realization

32 Slide 6B.32 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Use-Case Realization (contd) l The verb “realize” is used at least 3 different ways: –Understand (“Harvey slowly began to realize that he was in the wrong classroom”); –Receive (“Ingrid will realize a profit of $45,000 on the stock transaction”); and –Accomplish (“Janet hopes to realize her dream of starting a computer company”) l In the phrase “realize a use case,” the word “realize” is used in this last sense –It means to accomplish (or achieve) the use case

33 Slide 6B.33 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Use-Case Realization (contd) l The realization of a specific scenario of a use case is depicted using an interaction diagram –Either a sequence diagram or collaboration diagram l Various versions of the use case Buy a Masterpiece appear in the following slides

34 Slide 6B.34 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case l Use case diagram

35 Slide 6B.35 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l Description of the use case

36 Slide 6B.36 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l Class diagram (classes that enter into the use case)

37 Slide 6B.37 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l The four classes that enter into this use case are: –User Interface Class »This class models the user interface –Compute Masterpiece Price Class »This class models the computation of the price Osbert should offer –Masterpiece Class »The computation involves comparing the masterpiece being considered with the masterpieces that have been previously auctioned –Auctioned Painting Class »These masterpieces are all instances of Auctioned Painting Class

38 Slide 6B.38 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l The Seller does not interact directly with the information system –Instead, the Seller provides data that Osbert enters into the information system l This is indicated in the note (the rectangle with the top right-hand corner turned over) –There is a dashed line from the note to the item to which it refers, the Seller in this case

39 Slide 6B.39 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l Scenario (one possible instance of the use case)

40 Slide 6B.40 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l A working information system uses objects, not classes –Example: A specific masterpiece is not represented by Masterpiece Class but rather by an object, a specific instance of Masterpiece Class l Such an object is denoted by : Masterpiece Class

41 Slide 6B.41 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l A class diagram shows the classes in the use case and their relationships –It does not show the objects nor the sequence of messages as they are sent from object to object l Something more is needed

42 Slide 6B.42 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l Collaboration diagram (of the realization of the scenario of the use case)

43 Slide 6B.43 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Buy a Masterpiece Use Case (contd) l The collaboration diagram shows the objects as well as the messages, numbered in the order in which they are sent in the specific scenario l The direction of the arrow shows the direction in which the information flows

44 Slide 6B.44 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. Continued in Unit 6C


Download ppt "Slide 6B.1 Copyright © 2004 by The McGraw-Hill Companies, Inc. All rights reserved. An Introduction to Object-Oriented Systems Analysis and Design with."

Similar presentations


Ads by Google