1
Activity Diagram
Activity diagram is basically a flow chart to
represent the flow from one activity to another
activity.
The activity can be described as an operation
of the system.
This flow can be sequential, branched or
concurrent.
2
Purpose
Activity diagrams are not only used for visualizing
dynamic nature of a system but they are also used to
construct the executable system by using forward and
reverse engineering techniques.
It does not show any message flow from one activity
to another.
3
So the purposes can be described as to:
•Draw the activity flow of a system.
•Describe the sequence from one activity to
another.
•Describe the parallel, branched and concurrent
flow of the system.
4
How to draw Activity Diagram
Before drawing an activity diagram we must have a
clear understanding about the elements used in
activity diagram.
First we should identify the following elements :
1. Activities
2. Association
3. Conditions
4. Constraints
Once the above mentioned parameters are identified we need
to make a mental layout of the entire flow. This mental layout is
then transformed into an activity diagram.
5
Example of an order management system
The diagram is drawn with the four main activities :
•Send order by the customer
•Receipt of the order
•Confirm order
•Dispatch order
After receiving the order request condition checks are
performed to check if it is normal or special order.
After the type of order is identified dispatch activity is
performed and that is marked as the termination of
the process.
6
Activity Diagram for order management system
7
Activity Diagram 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.
8
Activity
The rounded rectangle represents activities that occur. An
activity is not necessarily a program, it may be a manual
thing also.
Flow/ edge
The arrows in the diagram. No label is necessary.
9
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
10
Merge
A diamond with several flows entering and one leaving.
The implication is that all incoming flow to reach this point
until processing continues
Sub-activity indicator
The rake in the bottom corner of an activity, indicates
that the activity is described by a more finely detailed
activity diagram.
11
Difference between Join and 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.
12
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 through it. This indicates that
Process stop at this point.
13
Accept Event Action
Accept Event Action is an action that waits for
the occurrence of an event meeting
specified condition.
14
Send Signal Action
Send Signal Action is an action that creates a
signal instance from its inputs, and transmits it to
the target object, where it may cause the firing of
a state machine transition or the execution of an
activity.
15
Swim lane
A partition in activity diagram by means of dashed
line, called swim lane. This swim lane may be
horizontal or vertical.
Vertical Swimlane Horizontal
Swimlane
16
Swimlane Activity Diagram
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.
(for example a particular
department).
17
Activity diagram: Online Shopping Process
18
Exercise 2: Ticket Vending Machine
Scenario:
“Activity is started by Commuter actor who needs to buy a
ticket. Ticket vending machine will request trip information
from Commuter. This information will include number and
type of tickets, e.g. whether it is a monthly pass, one way
or round ticket, route number, destination or zone number, etc.
Based on the provided trip info ticket vending machine will
calculate payment due and request payment options.
Those options include payment by cash, or by credit or debit
card. If payment by card was selected by Commuter,
another actor, Bank will participate in the activity by
authorizing the payment. “
19
Activity diagram: Ticket Vending Machine
Ramakant Soni @ BKBIET 20
Pilani
Exercise 3: Resolving issues in Software
Scenario:
“Prepare an activity diagram which shows how to
resolve an issue in a software design. After ticket is
created by some authority and the issue is
reproduced, issue is identified, resolution is
determined, issue is fixed and verified, and ticket is
closed, if issue was resolved.”
21
Activity diagram: Resolving issues in Software
22
References:
1 [Link]
2 [Link]
3 [Link]
4 [Link] html
5 [Link]