03/12/2001 © bennett, mcrobb and farmer 2002 1 activity diagrams based on chapter 5 of bennett,...

21
03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (2 nd Edition), McGraw Hill, 2002.

Post on 21-Dec-2015

219 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

03/12/2001 © Bennett, McRobb and Farmer 2002 1

Activity DiagramsActivity Diagrams

Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML, (2nd Edition), McGraw Hill, 2002.

Page 2: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 2

In This Lecture You Will In This Lecture You Will Learn:Learn:

The purpose of activity diagrams The notation of activity diagrams How to draw activity diagrams

Page 3: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 3

Drawing Activity DiagramsDrawing Activity Diagrams

Purpose– to model a task (for example in

business modelling)– to describe a function of a system

represented by a use case– to describe the logic of an operation– to model the activities that make up

the life cycle in the Unified Process

Page 4: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 4

Notation of Activity Notation of Activity DiagramsDiagrams

Activities– rectangle with rounded ends– meaningful name

Transitions– arrows with open

arrowheads

Add a New Client

Assign StaffContact

Page 5: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 5

Notation of Activity Notation of Activity DiagramsDiagrams

Start state– black circle

Decision points– diamond

Guard conditions– in square brackets

Final state– black circle in white circle

[campaign to add]

[no campaign to add]

Add a New Client

Assign StaffContact

Add New Campaign

Page 6: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 6

Notation of Activity Notation of Activity DiagramsDiagrams

Alternative notation for branching:– alternative transitions

are shown leaving theactivity with guardconditions

Note that guard conditions do not have to be mutually exclusive, but it is advisable that they should be

[campaign to add]

[no campaign to add]

Add a New Client

Assign StaffContact

Add New Campaign

Page 7: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 7

Notation of Activity Notation of Activity DiagramsDiagrams

Object flows– dashed arrow

Objects– rectangle– with name of object

underlined– optionally shows

the state of the object in square brackets

Record completionof a campaign

:Campaign

[Active]

:Campaign

[Completed]

Page 8: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 8

Notation of Activity Notation of Activity DiagramsDiagrams

Swimlanes– vertical columns – labelled with the

person, organisationor departmentresponsible for theactivities in thatcolumn

Record Completionof a campaign

Issue invoice

CampaignManager

ClientAccountant

Pay invoice

Record clientpayment

Page 9: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 9

Drawing Activity DiagramsDrawing Activity Diagrams

What is the purpose?– This will influence the kind of

activities that are shown What is being shown in the

diagram?– What is the name of the business

process, use case or operation? What level of detail is required?

– Is it high level or more detailed?

Page 10: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 10

Drawing Activity DiagramsDrawing Activity Diagrams

Identify activities– What happens when a new client is

added in the Agate system? Add a New Client Assign Staff Contact Add New Campaign Assign Staff to Campaign

Organise the activities in order with transitions

Page 11: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 11

Drawing Activity Drawing Activity DiagramsDiagrams Add a New

Client

Assign StaffContact

Add New Campaign

Assign Staff to Campaign

Page 12: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 12

Drawing Activity DiagramsDrawing Activity Diagrams

Identify any alternative transitions and the conditions on them– sometimes there is a new campaign

to add for a new client, sometimes not– sometimes they will want to assign

staff to the campaign, sometimes not Add transitions and guard

conditions to the diagram

Page 13: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 13

Drawing Activity Drawing Activity DiagramsDiagrams

[no staff to assign]

Add a New Client

Assign StaffContact

Add New Campaign

[campaign to add]

[no campaign to add]

Assign Staff to Campaign

[staff to assign]

Page 14: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 14

Drawing Activity DiagramsDrawing Activity Diagrams

Identify any processes that are repeated– they will want to assign staff to the

campaign until there are no more staff to add

Add transitions and guard conditions to the diagram

Page 15: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 15

Drawing Activity Drawing Activity DiagramsDiagrams

[no staff to assign]

[no more staff to assign]

Add a New Client

Assign StaffContact

Add New Campaign

[campaign to add]

[no campaign to add]

Assign Staff to Campaign

[staff to assign]

[more staff to assign]

Page 16: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 16

Drawing Activity DiagramsDrawing Activity Diagrams

Are all the activities carried out by the same person, organisation or department?

If not, then add swimlanes to show the responsibilities

Name the swimlanes Show each activity in the

appropriate swimlane

Page 17: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 17

[no staff to assign]

Add a New Client

Assign StaffContact

Add New Campaign

[campaign to add]

[no campaign to add]

Assign Staff to Campaign

[staff to assign]

Campaign ManagerAdministrator

Page 18: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 18

Drawing Activity DiagramsDrawing Activity Diagrams

Are there any object flows and objects to show?– these can be documents that are

created or updated in a business activity diagram

– these can be object instances that change state in an operation or a use case

Add the object flows and objects

Page 19: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 19

[no staff to assign]

Add a New Client

Assign StaffContact

Add New Campaign

[campaign to add]

[no campaign to add]

Assign Staff to Campaign

[staff to assign]

Campaign ManagerAdministrator

:Campaign

[Commissioned]

:Client[New]

Page 20: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 20

SummarySummary

In this lecture you have learned about:

The purpose of activity diagrams The notation of activity diagrams How to draw activity diagrams

Page 21: 03/12/2001 © Bennett, McRobb and Farmer 2002 1 Activity Diagrams Based on Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and

© Bennett, McRobb and Farmer 2002 21

ReferencesReferences

Booch, Rumbaugh and Jacobson (1999)

Rumbaugh, Jacobson and Booch (1999)

(For full bibliographic details, see Bennett, McRobb and Farmer)