7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design: Activity Diagrams
Advertisements

© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Chapter 9 Structuring System Requirements: Logic Modeling
Chapter 8 Logic Requirements
Object-Oriented Analysis and Design: Object Modeling – Class Diagrams
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Interaction Diagrams Activity Diagram State Machine Diagram
Object-Oriented Analysis and Design
Chapter 15: System Modeling with UML
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
SE 555 Software Requirements & Specification 1 Activity Diagrams.
9-1 Chapter 9 (part I): Analysis Classes (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
9-1 © Prentice Hall, 2004 Chapter 9, Part II: System Behavior - Interactions (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
1 © Wolfgang Pelz UML2 UML Part 3. 2 © Wolfgang Pelz UML2 Chapter Ten State Machine Diagrams.
© Copyright Eliyahu Brutman Programming Techniques Course.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Modern Systems Analysis and Design Fifth Edition Jeffrey A
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
SE-565 Software System Requirements More UML Diagrams.
Unified Modeling Language
© 2005 by Prentice Hall Chapter 8 Structuring System Logical Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Class, Sequence and UML Model.  Has actors and use cases.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
14-1 © Prentice Hall, 2004 Chapter 14: OOSAD Implementation and Operation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
Chapter 5 Models and UML Notation for The Object-Oriented Approach.
7-1 © Prentice Hall, 2007 Week 5: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
9-1 © Prentice Hall, 2004 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
© 2008 Prentice Hall, Ovidiu Noran Lecture 7b 1 Modelling OO Logic Requirements: Sequence Diagrams and Activity Diagrams (Textbook Chapter 8, Appendix)
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
Chapter 7 Appendix B Object-Oriented Analysis and Design: Activity Diagrams Modern Systems Analysis and Design Seventh Edition Jeffrey A. Hoffer Joey F.
4-1 © Prentice Hall, 2007 Topic 4: Structuring Systems Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey.
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
13-1 © Prentice Hall, 2004 Chapter 13: Designing the Human Interface Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S.
© 2005 by Prentice Hall Chapter 9 Structuring System Requirements: Logic Modeling Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey.
Analysis Classes. What Is an Analysis Class?  A class that represents initial data and behavior requirements, and whose software and hardware-oriented.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 9 Structuring.
Systems Analysis and Design in a Changing World, Fourth Edition
UML Chapter 17.
Appendix 3 Object-Oriented Analysis and Design
Analysis Classes Unit 5.
Chapter 8 Structuring System Logical Requirements
Unified Modeling Language
Activity and State Transition Diagram
Business System Development
Chapter 9 Structuring System Requirements: Logic Modeling
Chapter 8 Logic Requirements
Process Modeling: Activity/Swimlane Diagrams
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Week 12: Activity & Sequence Diagrams
Chapter 20 Object-Oriented Analysis and Design
Object-Oriented Analysis and Design: Activity Diagrams
Chapter 9 Structuring System Requirements: Logic Modeling
Appendix A Object-Oriented Analysis and Design
Chapter 8 Structuring System Logical Requirements
Appendix 3 Object-Oriented Analysis and Design
Object-Oriented Analysis and Design: Activity Diagrams
Presentation transcript:

7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer

Topic © Prentice Hall, 2007 Chapter Objectives Af ter studying this chapter you should be able to: – Stereotype classes into entity, boundary, and control. – Draw a sequence diagram based on a use case description. – Translate a sequence diagram into a communication diagram.

Topic © Prentice Hall, 2007 Chapter Objectives (Continued) Af ter studying this chapter you should be able to: – Convert a communication diagram into analysis classes. – Draw an activity diagram and a state diagram. – Document business rules using Object. Constraint Language (OCL). – Develop decision tables of complex rules.

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 What Is an Analysis Class? A class that represents initial data and behavior requirements, and whose software and hardware-oriented details have not been specified Analysis class diagram – a UML diagram showing analysis classes and their relationships

Topic © Prentice Hall, 2007 Stereotypes of Analysis Classes Mostly corresponds to conceptual data model classes Encapsulates connections between actors and use cases Mostly performs behaviors associated with inner workings of use cases

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 What Is a Sequence Diagram? A UML diagram that shows the interaction between objects to perform critical pieces of use case behavior in a time-ordered manner Interactions are in the form of messages Behavioral responsibilities are assigned to message recipients

Topic © Prentice Hall, 2007 Messages are passed between objects, and may contain parameters

Topic © Prentice Hall, 2007 Symbols in a Sequence Diagram Box or class stereotype symbol represents objects. Dotted vertical line represents object’s lifetime. Thin bars represent focus of control, periods of time when object is behaving (fulfilling responsibilities). Labeled horizontal lines represent messages passing between objects.

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 Typically, actors interact with boundary classes, which in turn interact with control classes, which in turn interact with entity classes.

Topic © Prentice Hall, 2007 What Is Robustness Analysis? Involves analyzing the narrative text of each of the use cases and identifying a first-guess set of the objects into entity, boundary, and control classes Requires completeness checks and adherence to diagramming rules

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 What Is a Communication Diagram? A UML diagram that shows the interactions between objects to perform critical pieces of the use case behavior Unlike sequence diagrams, communication diagrams have no spatial representation of time; sequences of messages are shown by numbering.

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 Drawing Analysis Class Diagrams Analysis classes are completed by including operations, which fulfill the responsibilities taken by the analysis class. In addition, attributes and relationships from the conceptual data model are retained and refined.

Topic © Prentice Hall, 2007 Operations (behaviors) are depicted in the lower third of a class box. Operations fulfill the class’s responsibilities.

Topic © Prentice Hall, 2007 What Is an Activity Diagram? A diagram that emphasizes the flow of control from activity to activity in an object Similar to the traditional program flowchart Used to provide detail for complex algorithms

Topic © Prentice Hall, 2007 Elements of Activity Diagrams Activity – a behavior that an object carries out while in a particular state Transition – a movement from one activity or state to another Decision point – a diamond symbol containing a condition whose results provide transitions to different paths of activities Swimlanes – lanes that partition the diagram to show who does what activities Synchronization bar – horizontal or vertical bars denoting parallel or concurrent paths of activities

Topic © Prentice Hall, 2007 Activity diagram with the decision points and three swimlanes

Topic © Prentice Hall, 2007 Activity diagram with synchronization bars Top synchronization bar is a fork. Bottom synchronization bar is a join.

Topic © Prentice Hall, 2007 What is a State Diagram? A diagram that captures the behavior of an object by specifying the sequence of states it goes through during its lifetime in response to events, together with the responses to those events Also called statechart diagram -State – a condition or situation during the life of an object at which time it satisfies some condition, performs some activity, or waits for some event. -All activities are states

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 When to Use State Diagrams For describing object behavior across many use cases Not useful for describing behavior of many objects collaborating together Not for everybody…some analysts like them and others do not

Topic © Prentice Hall, 2007 What Is a Business Rule? A directive that is intended to influence or guide business behavior in support of business policy formulated in response to an opportunity or threat In information systems, business rules are implemented as data, constraints, and/or program code.

Topic © Prentice Hall, 2007 Types of Business Rules Constraints – restrictions, mainly in the form of permissible values, validation rules, and multiplicities Calculations – mathematical formulas or algorithms that produce some value Value inferences – establishing the value of an attribute based on a test condition Action enablers – deciding on an action based on a test condition

Topic © Prentice Hall, 2007 Approaches for Value Inferences and Action Enablers Decision Tables – Matrix representation of the logic of decisions, specifying possible conditions and resulting actions Decision Trees – Node-and link representation of the paths of choices and decisions Structured English – Verbal description of decision logic

Topic © Prentice Hall, 2007 Components of Decision Tables Condition stub – The part of the decision table that lists the conditions relevant to the decision Action stub – The part of the decision table that lists the possible actions or values of the decision Rule – The part of the decision table that specifies the specific mapping of conditions to actions or values

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 Reducing the Decision Table A complete decision table may have indifferent conditions for certain rules Therefore, rules can sometimes be combined to simplify the decision table

Topic © Prentice Hall, 2007

Topic © Prentice Hall, 2007 What is Object Contraint Language (OCL)? An formal, declarative language add-on to UML for writing expressions that unambiguously specify business rules OCL expressions consist of: – Context – the element for which the expression is defined – Invariant – A constraint that should be true for an object during its lifetime

Topic © Prentice Hall, 2007 Elements of OCL Expressions Context – the element for which the expression is defined For each context, you can specify – Initial values – Derivation rules – Constraints – Query optimizations – Invariants – Pre- and Post-conditions

Topic © Prentice Hall, 2007 OCL Expressions

Topic © Prentice Hall, 2007 Recap Af ter studying this chapter we learned to: – Stereotype classes into entity, boundary, and control. – Draw a sequence diagram based on a use case description. – Translate a sequence diagram into a communication diagram.

Topic © Prentice Hall, 2007 Recap (cont.) Af ter studying this chapter we learned to: – Convert a communication diagram into analysis classes. – Draw an activity diagram and a state diagram. – Document business rules using Object. Constraint Language (OCL). – Develop decision tables of complex rules.