CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.

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 State chart/machine diagram State machine diagram is a behavior diagram which shows discrete behavior of a part of designed system through finite state.
Activity Diagrams. Recap Activity Diagrams – When to use? – Where? – Nodes – Edges – More to come …. 2.
Software Design Process A Process is a set of related and (sequenced) tasks that transforms a set of input to a set of output. Inputs Outputs Design Process.
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.
Information System Design IT60105
Interaction Diagrams Activity Diagram State Machine Diagram
UML Activity Diagrams In UML an activity diagram is used to display the sequence of actions They show the workflow from start to finish Detail the many.
SE 555 Software Requirements & Specification 1 Activity Diagrams.
Ch5: Software Specification. 1 Dynamic modeling using UML  Static models:  Dynamic models:
THE OBJECT-ORIENTED DESIGN WORKFLOW UML2 Sequence Diagrams.
1 CS 426 Senior Projects Chapter 14: Activity Diagrams [Arlow and Neustadt, 2005] February 17, 2009.
Activity Diagrams. What is Activity Diagrams?  Activity diagrams are a technique to describe procedural logic, business process, and work flow.  An.
SE-565 Software System Requirements More UML Diagrams.
1 Lab Beginning Analysis and Design 4 Completion of first version of use case diagram initiates the processes of analysis and design. 4 UML provides.
Software Design Processes and Management
Unified Modeling Language
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
Software Engineering EKT 420. What is Activity Diagram Activity diagrams are graphical representations of workflows of stepwise activities and actions.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
CS 325: Software Engineering March 3, 2015 Activity Modeling for Transformational Systems Trtansformational Systems UML Activity Diagrams.
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 21. Review ANALYSIS PHASE (OBJECT ORIENTED DESIGN) Functional Modeling – Use case Diagram Description.
Interaction Models (2): Sequence Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh 1.
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
UML -Part 3. Dynamic Diagram Types Interaction Diagrams - Set of objects or roles and the messages that can be passed among them. – Sequence Diagrams.
Activity diagrams. Introduction ● Activity diagrams are a behavioural model that represent the dynamics of the system. ● An activity diagram is essentially.
9-1 © Prentice Hall, 2007 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Information Systems Engineering Interaction Diagrams: Sequence Diagram Collbortion Diagram.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Information System Design IT60105
10 October, 2007Information System Design IT60105, Autumn 200 Information System Design IT60105 Lecture 17 Collaboration Diagrams.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
UNIFIED MODELING LANGUAGE(UML) BY Touseef Tahir Lecturer CS COMSATS Institute of Information Technology, Lahore.
Chapter 11 Activity Diagrams. 2 “Activity diagrams are a technique to describe procedural logic, business processes, and work flows” - M. Fowler An activity.
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.
SYSTEM ANALYSIS AND DESIGN SAFAA S.Y. DALLOUL. DESIGN THE PROGRAM.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Business Process and Functional Modeling
Appendix 3 Object-Oriented Analysis and Design
Analysis Classes Unit 5.
Dynamic Modeling of Banking System Case Study - I
Unified Modeling Language
Activity Diagram.
Activity and State Transition Diagram
Rumbaugh’s Objectmodeling Technique
Visit for more Learning Resources
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
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
Software Engineering Chapter 5 (Part 3) System Modeling Dr.Doaa Sami.
UML Activity Diagrams & State Charts
Week 12: Activity & Sequence Diagrams
Chapter 14: Activity Diagrams
CIS 375 Bruce R. Maxim UM-Dearborn
BPMN - Business Process Modeling Notations
Interaction diagrams Interaction diagrams are models that describe how groups of objects collaborate in some behavior. Typically, an interaction diagram.
Activity diagram It supports visual representation of sequences of actions that target a certain result. May be built for one or many use cases or for.
Chapter 14: Activity Diagrams
Chapter 14: Activity Diagrams
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram

Recap of Lecture 33 Class diagram Sequence diagram Sequence diagram – ATM problem

Outline of Lecture 34 Sequence diagram – ATM problem Activity diagram Collaboration diagram

Example: Use Case Diagram of the Vending Machine

The Initial Object-Model Designate the Actor objects with the > stereotype above the object label >

Deposit Money Use Case

Make Selection Use Case

Cancellation Use Case

Update Database Use Case

What is an Activity Diagram? It represent the dynamic (behavioral) view of a system Typically used for business (transaction) process modeling and modeling the logic captured by a single use-case or usage scenario Used to represent the flow across use cases To represent flow within a particular use case

What is an Activity Diagram? Object oriented equivalent of flow chart and data flow diagrams in function-oriented design approach It contains activities, transitions between activities, decision points, synchronization bars, swim lanes and many more…

Example: Student Enrollment

Different activities during enrollment Enrollment form by student Verification Data entry Fees payment Verification Approval Hostel allotment Allotment Fees payment Allot room Medical checkup Create record Enter record Issue cards Library card ID card

Activity Diagram and its components Initial node Final node Action Flow/ edge Fork Join Merge

Basic Components Initial node The filled circle is the starting point of the diagram Final node The filled circle with a boarder is the ending point. An activity diagram can have zero or more activity final state. Action The rounded circle represents action. Actions are considered atomic Flow/ edge The arrows in the diagram. The order of execution of the actions. Control flow vs. object flow.

Basic Components Fork A black bar ( horizontal/vertical ) with one flow going into it and several leaving it. This denotes the beginning of parallel activities Join A block bar with several flows entering it and one leaving it. this denotes the end of parallel activities Merge A diamond with several flows entering and one leaving. The implication is that all incoming flow to reach this point until processing continues

Join vs. Merge A join is different from a merge in that the join synchronizes two inflows and produces a single outflow. The outflow from a join cannot execute until all inflows have been received A merge passes any control flows straight through it. If two or more inflows are received by a merge symbol, the action pointed to by its outflow is executed two or more times

Basic Components Decision A diamond with one flow entering and several leaving. The flow leaving includes conditions as yes/ no state Flow final The circle with X though it. This indicates that Process stop at this point Swim lane A partition in activity diagram by means of dashed line, called swim lane. This swim lane may be horizontal or vertical

Detailed Activity Diagram

Activity Diagram with Swim Lane

Partition

Sending arguments

Object and Object Flow An object flow is a path along which objects can pass. An object is shown as a rectangle An object flow is shown as a connector with an arrowhead denoting the direction the object is being passed.

Input and Output Pin An object flow must have an object on at least one of its ends. A shorthand notation would be to use input and output pins

Data Store A data store is shown as an object with the «datastore» keyword

Expansion Region It is a structured activity region that executes multiple times. Input and output expansion nodes They are drawn as a group of three boxes Each box represents a multiple selection of items. The keyword iterative, parallel or stream is shown in the top left corner of the region

Exception Handling The action safeguarded by the exception handler points to the exception handler with a lightning bolt arrow

Event-Based Actions Enable objects and signals to be transmitted to receiver objects Accept event action to model an action that waits for the occurrence of a specific event Accept time event action to model a time-based event Send signal actions to send signals to another action

Event based Action: Example

Interruptible Activity Region It surrounds a group of actions that can be interrupted. E.g. the Process Order action will execute until completion, when it will pass control to the Close Order action, Unless a Cancel Request interrupt is received which will pass control to the Cancel Order action

An Example Identify the business logic in the activity diagram shown below

Importance of Activity Diagram It can depict a model in several ways It can also depicts “Basic course of action” as well as “detailed courses” It can also be drawn that cross several use cases, or that address just a small portion of use case Normally employed in business process modeling. This is carried out during the initial stages of requirement analysis and specification Very useful to understand the complex processing activities involving many components

Collaboration Diagram It is the second form of the interaction diagram Shows both the structural and behavioral aspects, explicitly. The structural aspect consists of object and the links existing between them The behavioral aspect is described by a set of messages exchanged among the different collaborations An object is also called collaborator

Components of Collaboration Diagram It contains the following things: Objects drawn as rectangles Links between the objects shown as lines connecting as lines connecting the linked objects Messages shown as text and an arrow that points from a client object to a respondent object

Example: Collaboration Diagram

Example

Note: Collaboration Diagram The sequence indicated by numbering the messages Here, we have used the simple numbering scheme. The UML also allows decimal scheme [as in DFD] to document the hierarchical messaging

Sequence vs. Collaboration There are two basic features by which Sequence diagram differs from the Collaboration diagram Object life time In sequence diagram, there is a object line represent the existence of an object over a period of time. There is no object life time in collaboration diagram Focus of control In sequence diagram, there is the focus of control to show the period of time during which object is performing an action. There is no focus of control in collaboration diagram

Sequence vs. Collaboration Sequence diagram provides a way to look at scenario in a time based order – what happen after what etc. Customer easily can read and understand this type of diagram. Hence, they are very useful in the early analysis phases as well as in coding phase Collaboration diagram tend to provide the big picture for a scenario since the collaborations are organized around the object links to one another. These diagrams seem to be used more in the design phase of development

A Roadmap from Modelling to Coding

Thank you Next Lecture: Modeling using UML