Download presentation
Presentation is loading. Please wait.
1
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Chapter 8: Moving on to Design
2
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Objectives Understand the verification and validation of the analysis models. Understand the transition from analysis to design. Understand the use of factoring, partitions, and layers. Be able to create package diagrams. Be familiar with the custom, packaged, and outsource design alternatives. Be able to create an alternative matrix.
3
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Key Ideas The purpose of the analysis phase is to figure out what the business needs. The purpose of the design phase is to figure out how to provide it. The steps in both analysis and design phases are highly interrelated and may require much “going back and forth”
4
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Avoiding Classic Design Mistakes Reducing design time Feature creep Silver bullet syndrome Switching tools in mid-project
5
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. VERIFYING AND VALIDATING (V&V) THE ANALYSIS MODELS
6
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Walkthroughs Peer reviews of models and diagrams created during analysis – Conducted by teams of analysts, designers, and clients – Main purposes: Test the fidelity of the models Uncover errors or faults Potential danger is that analysts be punished for errors uncovered
7
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Functional Model V&V 1.Events in Use Case descriptions should map to activities in the Activity Diagram 2.Object node in an activity diagram must be mentioned in Use Case descriptions 3.Sequential ordering within the Use Cases should match ordering in Activity Diagram 4.There must be a one-to-one correspondence of Use Cases in the Use Case Diagram and Use Case descriptions.
8
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Functional Model V&V (cont’d) 5.All actors listed in a use case description must be portrayed on the use-case diagram 6.Include stakeholders listed in the use case description as actors in the use-case diagram 7.All relationships listed in a use-case description must be portrayed on a use-case diagram
9
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Interrelationships Among Functional Models
10
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Structural Model V&V 1.Every CRC card should be associated with a class on the class diagram 2.Responsibilities listed on the CRC card must be operations in a class on a class diagram 3.Collaborators on the CRC card imply some type of association on the class diagram 4.Attributes listed on CRC cards must be attributes in a class on a class diagram
11
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Structural Model V&V (cont’d) 5.Class attributes with a type that is another class imply a relationship between classes 6.Relationships on the CRC cards must show up on the class diagram 7.Use association classes only if the association has unique attributes not on either class
12
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Interrelationships with Structural Models
13
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Behavioral Model V&V 1.Actors & objects on sequence diagrams must be included on communication diagrams 2.Messages on sequence diagrams require associations on communications diagrams 3.Every message on a sequence diagram must appear as a message on an association in the corresponding communication diagram 4.Guard conditions messages in sequence diagrams require equivalent guard conditions on the corresponding communication diagrams
14
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Behavioral Model V&V (cont’d) 5.The sequence number on message labels in communications diagrams must correspond to the top-down ordering of the messages being sent on the sequence diagram 6.State machine transitions must be associated with a messages on sequence & communication diagrams 7.All entries in a CRUD matrix imply a message being sent between an actor or object and another
15
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Interrelationships Between Behavioral Models
16
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Intra Model Consistency
17
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Between Functional and Structural
18
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Between Functional and Behavioral
19
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Between Structural and Behavioral
20
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. EVOLVING THE ANALYSIS MODELS INTO DESIGN MODELS
21
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Factoring Creating modules that account for similarities and differences between units of interest New classes – Generalization – Aggregation Abstracting Refinement
22
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Partitions and Collaborations Creating “subsystems” or larger units Grouping units that collaborate May have collaboration among units or partitions The more messages or contracts between objects, the more likely they are in the same partition
23
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Layers Consider system environment information to help evolve the analysis model Model-view-controller (MVC) architecture Separating application logic from user interface logic
24
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. 5 Layers Foundation Problem Domain Data Management Human-Computer Interaction Physical Architecture
25
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. PACKAGES AND PACKAGE DIAGRAMS
26
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Package A general construct that groups units together Used to reduce complexity of models A package diagram shows packages only
27
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Package Diagram for 5 Layers
28
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Building Package Diagrams 1.Set the context 2.Cluster classes together based on shared relationships 3.Model clustered classes as a package 4.Identify dependency relationships among packages 5.Place dependency relationships between packages
29
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. DESIGN STRATEGIES
30
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Custom Development Allows for meeting highly specialized requirements Allows flexibility and creativity in solving problems Easier to change components Builds personnel skills May tax firm’s resources May add significant risk
31
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Packaged Software Software already written May be more efficient May be more thoroughly tested and proven May range from components to tools to whole enterprise systems Must accept functionality provided May require change in how the firm does business May require significant “customization” or “workarounds”
32
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. System Integration The process of combining packages, legacy systems, and new software Key challenge is integrating data Write data in the same format Revise existing data formats Develop “object wrappers”
33
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Outsourcing Hire external firm to create system May have more skills May extend existing resources Never outsource what you don’t understand Carefully choose vendor Prepare contract and payment style carefully
34
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Selecting a Design Strategy Business need In-house experience Project skills Project management Time frame
35
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Selecting a Design Strategy
36
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. DEVELOPING THE ACTUAL DESIGN
37
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Types of Design Classes Entity Class - contains business related information and implements analysis classes. Interface Class - provides the means by which an actor interacts with the system. – A window, dialogue box, or screen. – For nonhuman actors, an application program interface (API). Control Class - contains application logic. Persistence Class - provides functionality to read and write to a database. System Class - handles operating system-specific functionality.
38
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Design Relationships - Dependency A dependency relationship is used to model the association between two classes: – To indicate that when a change occurs in one class, it may affect the other class. – To indicate the association between a persistent class and a transient class. Interface classes typically are transient – Illustrated with a dashed arrow
39
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Design Relationships - Navigability Classes with associations can navigate (send messages) to each other. By default the associations are bidirectional. Sometimes you want to limit the message sending to only one direction. Illustrated with an arrow pointing in the direction a message can be sent.
40
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. The Process of Object-Oriented Design Refining the use case model to reflect the implementation environment. Modeling class interactions, behaviors, and states that support the use case scenario. Updating the class diagram to reflect the implementation environment.
41
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Refining The Use Case Model Step 1: Transform the “Analysis” Use Cases to “Design” Use Cases – Implementation details – Controls – Window/web page names – Navigation instructions Step 2: Update the Use Case Model Diagram and Other Documentation to Reflect any New Use Cases 1 2 3 4
42
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Design Use Case
43
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. 18-43 Design Use Case (continued)
44
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. 18-44 Design Use Case (continued)
45
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. 18-45 Design Use Case (concluded)
46
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Modeling Class Interactions, Behaviors, and States Step 1: Identify and Classify Use-Case Design Classes Step 2: Identify Class Attributes Step 3: Identify Class Behaviors and Responsibilities Step 4: Model Object States Step 5: Model Detailed Object Interactions
47
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Step 1: Identify and Classify Use- Case Design Classes Interface, Control, and Entity Classes of Place New Order Use Case Interface ClassesController ClassesEntity Classes W00-Member Home Page W02-Member Profile Display W03-Display Order Summary W04-Display Order Confirmation W09-Member Account Status Display W11-Catalog Display W15-Product Detail Display Place New Order HandlerBilling Address Shipping Address Email Address Active Member Member Order Member Ordered Product Product Title Audio Title Game Title Video Title Transaction
48
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Step 2: Identify Class Attributes Many attributes already identified during object-oriented analysis. Revised use cases may mention additional attributes. Must update class diagram to include new attributes.
49
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Step 3: Identify Class Behaviors and Responsibilities Analyze use cases to identify required system behaviors – Search for verb phrases – Some will reflect manual actions, others automated Associate behaviors and responsibilities with classes Model classes that have complex behavior Examine class diagram for additional behaviors Verify classifications
50
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Step 4: Model Object States Object state – a condition of the object at one point in its lifetime. State transition event –occurrence that triggers a change in an object’s state through updating of one or more of its attribute values. State machine diagram – a UML diagram that depicts: – the combination of states that an object can assume during its lifetime, – the events that trigger transitions between states, – the rules governing the objects in transition.
51
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Updating Object Model to Reflect Implementation Environment Design class diagram – a diagram that depicts classes that correspond to software components that are used to build the software application. Includes: – Classes – Associations and gen/spec and aggregation relationships – Attributes and attribute-type information – Methods with parameters – Navigability – Dependencies
52
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Transforming Analysis Class Diagram to Design Class Diagram Add design objects to diagram Add attributes and attribute-type information to design objects Add attribute visibility Add methods to design objects Add method visibility Add association navigability Add dependency relationships
53
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. 18-53 Partial Design Class Diagram
54
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights reserved. Summary Verifying and Validating the Analysis Models Evolving the Analysis Models into Design Models Packages and Package Diagrams Design Strategies Developing the Actual Design
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.