Analysis Classes Unit 5.

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Interaction Diagrams Activity Diagram State Machine Diagram
Object-Oriented Analysis and Design
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.
Modern Systems Analysis and Design Fifth Edition Jeffrey A
SE-565 Software System Requirements More UML Diagrams.
Unified Modeling Language
Class, Sequence and UML Model.  Has actors and use cases.
BPMN By Hosein Bitaraf Software Engineering. Business Process Model and Notation (BPMN) is a graphical representation for specifying business processes.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
Chapter 7 Structuring System Process Requirements
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.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Interaction Models (2): Sequence Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh 1.
Conceptual Modelling – Behaviour
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
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.
An Introduction to the Unified Modeling Language
TAL7011 – Lecture 4 UML for Architecture Modeling.
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)
Chapter 11 Activity Diagrams. 2 “Activity diagrams are a technique to describe procedural logic, business processes, and work flows” - M. Fowler An activity.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
INFO 620Lecture #71 Information Systems Analysis and Design Design Class Diagrams and others INFO 620 Glenn Booker.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Chapter 3: Introducing the UML
Analysis Classes. What Is an Analysis Class?  A class that represents initial data and behavior requirements, and whose software and hardware-oriented.
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Introduction to UML.
Systems Analysis and Design in a Changing World, Fourth Edition
Business Process and Functional Modeling
UML Chapter 17.
Appendix 3 Object-Oriented Analysis and Design
UML Diagrams By Daniel Damaris Novarianto S..
Business System Development
The Movement To Objects
Object-Oriented Analysis and Design
Sequence Diagrams.
Unified Modeling Language
Activity and State Transition Diagram
Visit for more Learning Resources
Software Engineering: A Practitioner’s Approach, 6/e Chapter 11 Component-Level Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
UML Diagrams Jung Woo.
Sequence Diagrams.
Activity Diagrams Activity diagrams describe the workflow behavior of a system.  The diagrams describe the state of activities by showing the sequence.
Business System Development
Chapter 9 Structuring System Requirements: Logic Modeling
Process Modeling: Activity/Swimlane Diagrams
Unified Modeling Language
Week 12: Activity & Sequence Diagrams
Chapter 14: Activity Diagrams
Chapter 20 Object-Oriented Analysis and Design
Activity Diagrams.
Chapter 9 Structuring System Requirements: Logic Modeling
Appendix A Object-Oriented Analysis and Design
BPMN - Business Process Modeling Notations
Chapter 14: Activity Diagrams
Chapter 7: Data Flow Diagram Structuring System Process Requirements
Chapter 5.
Design Yaodong Bi.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

Analysis Classes Unit 5

Key Concepts Analysis class diagram overview Analysis class stereotypes Sequence diagrams Communication diagrams Adding behaviors to an analysis class Activity diagrams State diagrams Business rules

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

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

What Is a Sequence Diagram? 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 Boundary Objects send messages to Actors Other boundary classes

Messages are passed between objects, and may contain parameters

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.

Typically, actors interact with boundary classes, which in turn interact with control classes, which in turn interact with entity classes.

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

Visio Sequence Diagram

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.

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.

Operations (behaviors) are depicted in the lower third of a class box. Operations fulfill the class’s responsibilities.

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

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 group1 group2

Activity diagram with the decision points and three swimlanes

Activity diagram with synchronization bars Top synchronization bar is a fork. Bottom synchronization bar is a join.

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

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

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.

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

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 Pseudocode

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

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

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

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

OCL Expressions