SE-565 Software System Requirements More UML Diagrams.

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

Activity Diagrams in UML. Definition Activity diagrams represent the dynamics of the system. They are flow charts that are used to show the workflow of.
ESE Einführung in Software Engineering 7. Modeling Behaviour Prof. O. Nierstrasz.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
7M701 1 Activity Diagram. 7M701 2 Example 7M701 3 Activity Diagram: what is it? Describes activities and flows of data or decisions between activities.
Object-Oriented Analysis and Design
SE 555 Software Requirements & Specification 1 Activity Diagrams.
1 © Wolfgang Pelz UML2 UML Part Two. 2 © Wolfgang Pelz UML2 Chapters Four & Twelve Interaction Diagrams.
Essentials of interaction diagrams Lecture 23 & 24.
Essentials of state and activity diagram Lecture 24.
The Need for Packages How do you break down a large system into smaller systems? Structured methods use functional decomposition Functions represent something.
Sequence Diagram. What is Sequence Diagram?  Sequence Diagram is a dynamic model of a use case, showing the interaction among classes during a specified.
Object-oriented design Part 4: More UML. Interfaces An interface is a language construct specific to Java Java does not support multiple inheritance Interfaces.
An Introduction to Rational Rose Real-Time
Unified Modeling Language
State and Sequence Diagrams Modelling dynamic information So far we have seen: Use Case Diagrams – requirements capture, interface.
CS3773 Software Engineering
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
Interaction diagrams Sequence and collaboration diagrams.
Interaction Models (2): Sequence Diagrams Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh 1.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Activity diagrams. Introduction ● Activity diagrams are a behavioural model that represent the dynamics of the system. ● An activity diagram is essentially.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
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.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Interaction and Communication Diagrams Patrick Bailey Keith Vander Linden Calvin College.
What to remember from Chap 13 (Logical architecture)
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
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)
Information System Design IT60105
Interaction Diagrams Interaction Diagrams allow the designer to show how groups of objects collaborate in some behavior. –Interaction Diagrams will show.
Design Jon Walker. More UML ● What is UML again?
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.
CSCI-383 Object-Oriented Programming & Design Lecture 12.
Chapter 11 Activity Diagrams. 2 “Activity diagrams are a technique to describe procedural logic, business processes, and work flows” - M. Fowler An activity.
Object Oriented Analysis & Design & UML (Unified Modeling Language)1 Part VI: Design Continuous Activity Diagams State Diagrams.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
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
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Project 2: Phase 1 Submission 7 Late submissions 10% 10 No submissions 14% Better than project 1 phase 3 submissions 10-point bonus: If you catch the deadline.
Introduction to UML.
Systems Analysis and Design in a Changing World, Fourth Edition
Appendix 3 Object-Oriented Analysis and Design
Analysis Classes Unit 5.
UML Diagrams By Daniel Damaris Novarianto S..
Standard UML: Communication and Dynamic Behavior
Unified Modeling Language
Activity and State Transition Diagram
Visit for more Learning Resources
UML Diagrams Jung Woo.
Business System Development
UML dynamic Modeling (Behavior Diagram)
Dynamic Modeling: Defining Classes
Software Engineering Chapter 5 (Part 3) System Modeling Dr.Doaa Sami.
Requirements To Design In This Iteration
Week 12: Activity & Sequence Diagrams
State Diagrams.
CIS 375 Bruce R. Maxim UM-Dearborn
Interaction diagrams Interaction diagrams are models that describe how groups of objects collaborate in some behavior. Typically, an interaction diagram.
CHAPTER 2 Object-Oriented Modeling Using UML (Continued)
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

SE-565 Software System Requirements More UML Diagrams

2 Activity diagrams Deployment diagrams Interaction diagram –Sequence diagrams –Collaboration diagrams Package diagrams State diagrams

3 Activity Diagrams - Topics What is an Activity? Activity Diagrams – Notation Activity Diagrams – 5 Examples

4 What is an Activity? Two definitions –In a conceptual diagram, an activity is some task that needs to be done, whether by a human or a computer –In a specification-perspective diagram or an implementation- perspective diagram, an activity is a method on a class Activity arrangement –Sequential – one activity is followed by another –Parallel – two or more sets of activities are performed concurrently, and order is irrelevant Interleaving is permitted – we can jump between the parallel flows

5 What is an Activity? (concluded) Activity Diagrams are used to describe activities –Activity Diagrams are useful for describing complicated methods –Activity Diagrams are useful for describing use cases, since, after all, a use case is an interaction, which is a form of activity Using Activity Diagrams with Use Cases –Start with a coarse-grained use case, which is composed of subordinate use cases –For the complicated subordinate use cases, use Activity Diagrams rather than Use Case Diagrams Activity Diagrams are like Flow Charts, but Flow Charts are usually limited to sequential activities while Activity Diagrams can show parallel activities as well

6 Activity Diagrams - Notation  Start at the top black circle  If condition 1 is TRUE, go right; if condition 2 is TRUE, go down  At first bar (a synchronization bar), break apart to follow 2 parallel paths  At second bar, come together to proceed only when both parallel activities are done

7 Activity Diagrams – Notation (concluded)  Activity – an oval  Trigger – path exiting an activity  Guard – each trigger has a guard, a logical expression that evaluates to “true” or “false”  Synchronization Bar – can break a trigger into multiple triggers operating in parallel or can join multiple triggers into one when all are complete  Decision Diamond – used to describe nested decisions (the first decision is indicated by an activity with multiple triggers coming out of it)

8 Activity Diagrams – Example 1 of 5 Use Case: Receiving an Order

9 Activity Diagram – Example 2 of 5 Use Case: Receiving a Supply

10 Activity Diagram – Example 3 of 5 Use Case: Receiving an Order and Receiving a Supply

11 Activity Diagram – Example 4 of 5 Swimlanes - Activity Diagrams that show activities by class  Arrange activity diagrams into vertical zones separated by lines  Each zone represents the responsibilities of a particular class (in this example, a particular department)

12 Activity Diagram – Example 5 of 5 Decomposing an Activity  An activity can be decomposed into a further Activity Diagram  When an Activity Diagram represents a decomposition of a higher-level activity, there can be only one start point

13 Deployment Diagrams - Topics What is a Deployment Diagram? Deployment Diagrams – Notation and Example

14 What is a Deployment Diagram? Deployment Diagram – a diagram that shows the physical relationships among software and hardware components in a system –Components – physical modules of code –Connections – show communication paths –Dependencies – show how components communicate with other components –Nodes – computational units, usually a pieces of hardware

15 Deployment Diagrams – Notation and Example

16 Interaction Diagrams - Topics What is an Interaction Diagram? What is a Sequence Diagram? Sequence Diagrams – Notation Sequence Diagrams – 2 Examples What is a Collaboration Diagram? Collaboration Diagrams – Notation Collaboration Diagrams – 2 Examples

17 What is an Interaction Diagram? Interaction Diagrams – models that describe how groups of objects collaborate in some behavior –Typically, an Interaction Diagram captures the behavior of a single use case –The Interaction Diagram shows a number of objects and the messages that are passed between these objects within the use case 2 kinds of Interaction Diagrams –Sequence Diagrams –Collaboration Diagrams

18 What is a Sequence Diagram? Sequence Diagram – shows object interactions –Contains 2 or more objects Some objects are static (shown in boxes at the top) Some objects are created dynamically (shown in boxes lower in the diagram) –Contains each object’s lifeline (shown as a dashed line extending down from the objects’ boxes) –Show messages passed from one object to another, and the conditions which trigger messages to be sent –Show self-delegations (messages sent from an object to itself) –Show returns from messages

19 Sequence Diagrams - Notation

20 Sequence Diagrams – Example 1 of 2 Concurrent Processes  Activations - show when a method is active – either executing or waiting for a subroutine to return  Asynchronous Message – (half arrow) a message which does not block the caller, allowing the caller to carry on with its own processing; asynchronous messages can:  Create a new thread  Create a new object  Communicate with a thread that is already running  Deletion – an object deletes itself  Synchronous Message – (full arrow) a message that blocks the caller

21 Sequence Diagrams – Example 2 of 2

22 What is a Collaboration Diagram? Collaboration Diagrams – show objects as icons (rectangular boxes) with numbers on the messages to show their sequence; 2 numbering schemes: –Simple (e.g., 1, 2, 3, …) –Decimal (e.g., 1.1.1, 1.1.2, 1.2, …) Objects are named using the syntax ObjectName : ClassName Sequence versus Collaboration Diagrams –Sequence Diagrams emphasize sequence –Collaboration Diagrams emphasize how objects are connected

23 Collaboration Diagrams - Notation

24 Collaboration Diagrams – Example 1 of 2 Simple Numbering

25 Collaboration Diagrams – Example 2 of 2 Decimal Numbering

26 Package Diagrams - Topics What is a Package? Package Diagrams – Notation Package Diagrams – 2 Examples

27 What is a Package? Package – a grouping of classes (a conventional Package - a unit above a class in the abstraction hierarchy) and other packages (a Domain Package) Package Diagram – a UML diagram that shows packages of classes and the dependencies among them –A dependency exists between two elements if changes to the definition of one element may cause changes to the other Classes have dependencies for several reasons, including: –One class sends a message to another –One class has another as part of its data –One class mentions another as a parameter to an operation

28 Package Diagrams - Notation Package – contains classes Dependency – changes to the definition (interface) of one package may cause changes in the other package Reference: UML Distilled, Inside Cover

29 Package Diagrams – Example 1 of 2

30 Package Diagrams – Example 2 of 2 Domain Package – a collection of related packages

31 State Diagrams - Topics What are State Diagrams? State Diagrams – Notation State Diagrams – 3 Examples

32 What are State Diagrams? State Diagrams – describe all the possible states an object can assume and how the object’s state changes as a result of events that affect the object –State Diagrams are drawn for a single class to show the lifetime behavior of a single object –State Diagrams are good for describing the behavior of an object across several use cases In UML, State Diagrams –Support superstates (states which contain other states) –Support concurrency

33 State Diagrams - Notation Action – processes associated with transitions that occur quickly and are not interruptible Activity – processes associated with states that may take a while and my be interrupted by events Event – a stimulus that causes a transition or a self- transition to take place from one state to another Guard – a logical condition that returns “true” or “false” Superstate – a state that is itself a collection of states Reference: UML Distilled, Inside Cover

34 State Diagrams – Notation (concluded)

35 State Diagrams – Example 1 of 3 State Diagram without Superstates

36 State Diagrams – Example 2 of 3 State Diagram with a Superstate

37 State Diagrams – Example 3 of 3 Concurrent State Diagram

38 Using Microsoft Visio Visio can be used to draw UML diagrams –It is component of Microsoft Office

39 Using Microsoft Visio (continued) Available Sets of Shapes in the UML Collection  Activity Diagrams  Collaboration Diagrams  Components  Deployment Diagrams  Sequence Diagrams  State Diagrams (Statecharts)  Static Structures (shown) – include Packages and Classes  Use Case Diagrams

40 Using Microsoft Visio (concluded) UML symbols can be displayed as icons with names or icons with descriptions Both forms of display for the Use Case shape set are shown Now, on to the demo!