Swimlanes (Activity Partitions)

All this time, it wasn’t very clear where a certain action takes place. Was the action performed by an actor or which subsystem performed the action? To help us with this problem, we can use swimlanes (Chad le Clos, move over!).

Swimlanes partition a diagram into the different actors and subsystems that make up a specific activity. They are simple columns with the name of the actor or subsystem in the header, as shown here.

Consider this diagram:

Let’s make it more clear by partitioning the activity into swimlanes.

Now you can now clearly see who (that is, which actor or subsystem) is performing a certain action.

Case Study

Considering this Use Case Description.

Use Case: Update Individual Marks
1. Lecturer selects student
2. System displays relevant student’s current marks
3. Lecturer changes one or more marks
4. System validates marks
5. System stores marks

Extensions
4a. Invalid mark entered
1. System notifies Lecturer of invalid mark
2. Lecturer can fix mark or cancel

It is now easier to see exactly which actor and subsystem performs which action. Note the decision node after “Notify Lecturer”; it is in the Lecturer’s swimlane, as it is the lecturer that needs to make the decision.