Presentation is loading. Please wait.

Presentation is loading. Please wait.

© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams.

Similar presentations


Presentation on theme: "© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams."— Presentation transcript:

1 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams

2 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 2 Objectives  To read and write UML activity diagrams  To know when and how to use activity diagrams

3 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 3 Topics  Processes and process descriptions  Activity diagram notation  Activity diagram execution model  Making activity diagrams

4 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 4 Processes and Their Description Process description notations describe design processes as well as computational processes we design. A process is a collection of related tasks that transforms a set of inputs into a set of outputs. An activity diagram shows actions and the flow of control and data between them.

5 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 5 Activities and Actions An activity is a non-atomic task or procedure decomposable into actions. An action is a task or procedure that cannot be broken into parts. An activity is a non-atomic task or procedure decomposable into actions. An action is a task or procedure that cannot be broken into parts.

6 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 6 Activity Graph Elements activity symbol action node activity edge initial node activity final node

7 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 7 Execution Model  Execution is modeled by tokens that are produced by action nodes, travel over action edges, and are consumed by action nodes.  When there is a token on every incoming edge of an action node, it consumes them and begins execution.  When an action node completes execution, it produces tokens on each of its outgoing edges.  An initial node produces a token on each outgoing edge when an activity begins.  An activity final node consumes a token available on any incoming edge and terminates the activity.

8 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 8 Branching Nodes guards merge node decision node

9 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 9 Branching Execution  If a token is made available on the incoming edge of a decision node, the token is made available on the outgoing edge whose guard is true.  If a token is available on any incoming edge of a merge node, it is made available on its outgoing edge.  Guards must be mutually exclusive.

10 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 10 Deadlock RunDrier cannot execute: when the activity begins, there is a token on the edge from the initial node but not on the other incoming edge.

11 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 11 Forking and Joining Nodes fork node join node

12 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 12 Forking and Joining Execution  A token available on the incoming edge of a fork node is reproduced and made available on all its outgoing edges.  When tokens are available on every incoming edge of a join node, a token is made available on its outgoing edge.  Concurrency can be modeled without these nodes.

13 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 13 Object Nodes Data and objects are shown as object nodes. object node object node state

14 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 14 Control and Data Flows  Control tokens do not contain data, data tokens do.  A control flow is an activity edge that is a conduit for control tokens.  A data flow is an activity edge that is a conduit for data tokens.  Rules for token flow through nodes apply to both control and data tokens, except that data is extracted from consumed tokens and added to produced tokens.

15 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 15 Control and Data Flow Example control flow data flows

16 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 16 Activity Parameters  Activity parameters are object nodes placed on activity symbol boundaries to indicate data or object inputs or outputs.  Activity parameters contain the data or object name.  Activity parameter types are specified in the activity symbol beneath the activity name.

17 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 17 Activity Parameter Example output activity parameter input activity parameter activity parameter types

18 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 18 Activity Diagram Heuristics  Flow control and objects down the page and left to right.  Name activities and actions with verb phrases.  Name object nodes with noun phrases.  Don’t use both control and data flows when a data flow alone can do the job.  Make sure that all nodes entering an action node can provide tokens concurrently.  Use the [else] guard at every branch.

19 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 19 When to Use Activity Diagrams When making a dynamic model of any process. Design processes (what designers do) Designed processes (what designers create)  During analysis  During resolution

20 © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 20 Summary  A process is a collection of related tasks that transforms a set of inputs to a set of outputs.  UML activity diagrams model processes by depicting actions and the flow of control and data between them.  Activity symbols contain activity graphs consisting of action nodes action edges data nodes special nodes for starting and stopping activities, branching, forking, and joining  Activity diagrams can represent any process and are useful throughout software design.


Download ppt "© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 UML Activity Diagrams."

Similar presentations


Ads by Google