Modern Systems Analysis and Design Lect 7 Structuring

  • Slides: 28
Download presentation
Modern Systems Analysis and Design Lect 7: Structuring system process requirements - Activity diagram-

Modern Systems Analysis and Design Lect 7: Structuring system process requirements - Activity diagram-

Learning Objectives Discuss and understand activity diagrams n Understand the elements of activity diagrams

Learning Objectives Discuss and understand activity diagrams n Understand the elements of activity diagrams n Activity n Transition n Synch. Bar n Decision Diamond n Start & Stop Markers n Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 2

Activity Diagram n Describes how activities are coordinated. n Records the dependencies between activities,

Activity Diagram n Describes how activities are coordinated. n Records the dependencies between activities, such as which things can happen in parallel and what must be finished before something else can start. n Represents the workflow of the process. 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 3

Example: Activity Diagram of the Library member Librarian [borrower] Find book on shelf [returning]

Example: Activity Diagram of the Library member Librarian [borrower] Find book on shelf [returning] Wait in queue [borrowing] [returner] Record return Put book back of shelf Record borrowing Prepare for next member 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 4

Notation -1 2. Transition Activity 1() Activity 2() 1. Activities 12/26/2021 Chapter 7 Copyright

Notation -1 2. Transition Activity 1() Activity 2() 1. Activities 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 5

Notation - 2 [x>0] Activity 1()c [x=0] [x<0] 3. Decision Diamond 12/26/2021 Chapter 7

Notation - 2 [x>0] Activity 1()c [x=0] [x<0] 3. Decision Diamond 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 6

Notation - 3 4. 1 Synch. Bar (Join) 4. 2 Splitting Bar (Fork) A

Notation - 3 4. 1 Synch. Bar (Join) 4. 2 Splitting Bar (Fork) A join node has multiple incoming edges and one outgoing edge. A fork node has one incoming edge and multiple outgoing edges 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 7

Notation - 4 Start Marker Stop Marker Copyright © 2014 Pearson Education, Inc. Publishing

Notation - 4 Start Marker Stop Marker Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 8

Notation - 5 Developers Swimlane Testers Swimlane Markers Swimlane Application/Department/Group/Role Boundaries Copyright © 2014

Notation - 5 Developers Swimlane Testers Swimlane Markers Swimlane Application/Department/Group/Role Boundaries Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 9

Activity Diagrams (1) n To model the dynamic aspects of a system n It

Activity Diagrams (1) n To model the dynamic aspects of a system n It is essentially a flowchart ¨ Showing n flow of control from activity to activity Purpose ¨ Model business workflows Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 10

Activity Diagrams (2) n Activity diagrams commonly contain ¨Activity states and action states ¨Transitions

Activity Diagrams (2) n Activity diagrams commonly contain ¨Activity states and action states ¨Transitions ¨Objects 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 11

Action States and Activity States n Action states are atomic and cannot be decomposed

Action States and Activity States n Action states are atomic and cannot be decomposed ¨ Work n of the action state is not interrupted Activity states can be further decomposed ¨ Their activity being represented by other activity diagrams

Transitions (1) n When the action or activity of a state completes, flow of

Transitions (1) n When the action or activity of a state completes, flow of control passes immediately to the next action or activity state n A flow of control has to start and end someplace ¨ initial ¨ stop state -- a solid ball inside a circle

Transitions (2)

Transitions (2)

Activity Diagram: Example (1)

Activity Diagram: Example (1)

Branching (1) n A branch specifies alternate paths taken based on some Boolean expression

Branching (1) n A branch specifies alternate paths taken based on some Boolean expression n A branch may have one incoming transition and two or more outgoing ones

Branching (2)

Branching (2)

Activity Diagram: Example (2)

Activity Diagram: Example (2)

Forking and Joining n Use a synchronization bar to specify the forking and joining

Forking and Joining n Use a synchronization bar to specify the forking and joining of parallel flows of control n A synchronization bar is rendered as a thick horizontal or vertical line

Fork n A fork may have one incoming transitions and two or more outgoing

Fork n A fork may have one incoming transitions and two or more outgoing transitions ¨ each transition represents an independent flow of control ¨ conceptually, the activities of each of outgoing transitions are concurrent n either truly concurrent (multiple nodes) n or sequential yet interleaved (one node)

Join n A join may have two or more incoming transitions and one outgoing

Join n A join may have two or more incoming transitions and one outgoing transition ¨ above the join, the activities associated with each of these paths continues in parallel ¨ at the join, the concurrent flows synchronize n each waits until all incoming flows have reached the join, at which point one flow of control continues on below the join

Activity Diagram: Example (1) fork Join

Activity Diagram: Example (1) fork Join

Swimlanes (1) n A swimlane specifies a locus of activities n To partition the

Swimlanes (1) n A swimlane specifies a locus of activities n To partition the activity states on an activity diagram into groups ¨ each group representing the business organization responsible for those activities ¨ each n group is called a swimlane Each swimlane is divided from its neighbor by a vertical solid line 1999 – 2005 M. E. Fayad

Swimlanes (2) n Each swimlane has a name unique within its diagram n Each

Swimlanes (2) n Each swimlane has a name unique within its diagram n Each swimlane may represent some real-world entity n Each swimlane may be implemented by one or more classes n Every activity belongs to exactly one swimlane, but transitions may cross lanes 1999 – 2005 M. E. Fayad

Example: Activity Diagram of the Library member Librarian [borrower] Find book on shelf [returning]

Example: Activity Diagram of the Library member Librarian [borrower] Find book on shelf [returning] Wait in queue [borrowing] [returner] Record return Put book back of shelf Record borrowing Prepare for next member 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 25

Practice example 1 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as

Practice example 1 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 26

Practice example 2 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as

Practice example 2 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 27

Practice example 3 n Redraw the activity to allow for the choice between coffee

Practice example 3 n Redraw the activity to allow for the choice between coffee with milk and coffee without milk. 12/26/2021 Chapter 7 Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 28