skip to content

How does partitioning a UML activity diagram by responsibility expose where a cross-team approval workflow stalls?

level: seniorimportance: should knowfreq 41%

answer

  1. Who does each step?
  2. Watch the arrows crossing lane boundaries
  3. Each crossing is a handoff and a queue
  4. Lanes attribute work; they do not order it

basics

~20 s

Partitions assign every action to the party that performs it, so each control flow that crosses a partition boundary is a handoff. Counting and timing those crossings shows where work waits, rather than where it is being worked on.

solid answer

~50 s

A **partition** — the labelled lane usually called a swimlane — groups actions by who is responsible for them. It is an attribution overlay and nothing else: moving an action to another lane changes who performs it, never when it happens, because ordering stays entirely in the control flow edges. That property is what makes the reading trick valid. **Every edge that crosses a lane boundary is a handoff**, and handoffs are where a workflow queues, because the receiving party is rarely sitting idle. So you count the crossings, then attach a measured wait to each one. A diagram with two lanes and seven crossings is telling you the process is not slow because any action is slow — it is slow because the work changes hands seven times. The fix that follows is usually to remove or condition a crossing, not to speed up an action.

go deeper

for a junior

Know that partitions are labelled lanes saying who performs each action, and that an arrow crossing a lane boundary means the work has changed hands.

for a middle

Explain that partitions attribute responsibility without affecting ordering, and that counting boundary crossings gives you the handoffs in a workflow rather than its workload.

for a senior

Bring measurement to the picture: pair each crossing with how long work actually waits there, and use it to argue for removing or conditioning a handoff instead of speeding up an action.

for a principal

Decide whether the answer is a redrawn process or a redrawn ownership boundary. Work that crosses the same two lanes repeatedly usually signals misplaced ownership, and no amount of process tuning will fix that.

## What a partition actually asserts A **partition** — drawn as a labelled lane, and commonly spoken of as a swimlane — groups the actions of an activity diagram by the party responsible for performing them: a team, a role, or an automated service. It is an attribution overlay and nothing more. Moving an action from one lane to another changes *who does it*; it never changes *when* it happens, because ordering lives entirely in the control flow edges between actions. Establish that distinction first, because it is what makes the rest of the reading legitimate. Since lanes carry no ordering, every fact you read off the lanes is a fact about responsibility — and the most useful one follows immediately: **every control flow edge that crosses a lane boundary is a handoff**, a point where work stops belonging to one party and starts belonging to another. Handoffs are where a workflow queues, because the receiving party is almost never idle and waiting for it. ## Reading the crossings The procedure is mechanical and takes minutes: 1. Draw the process with one lane per responsible party and every action in the lane that performs it. 2. Mark each control flow edge that crosses a boundary — those are the handoffs. 3. Attach a measured wait to each crossing from whatever record the work leaves behind. 4. Attach a count: how many items travel each crossing, and how many travel it more than once. 5. Read the picture for the two shapes that matter — the crossing with the longest wait, and the crossing that repeats. ## A worked reading A veterinary practice-management product routes discharge approvals through three parties: the attending clinician, the billing desk and the practice owner. Over one 3-week iteration the team traced 31 approval requests. | Crossing | Requests | Median wait | |---|---|---| | Clinician lane to billing lane | 31 | 1.6 days | | Billing lane to practice-owner lane | 27 | 4.3 days | | Practice-owner lane back to clinician lane (rework) | 12 | 2.9 days | Median end-to-end time was 8.8 days, of which 6.4 days was time spent *between* lanes rather than inside an action. No individual action took longer than about forty minutes of real work. The picture makes two things obvious that a prose procedure had hidden for a year. First, the expensive crossing is into the practice-owner lane, and 27 of 31 requests make it even though only high-value cases need that approval — a decision node with an honest guard would keep roughly nineteen of them inside two lanes. Second, the rework edge is a *backwards* crossing, and every item on it pays two waits, not one. The stress test came from a two-week holiday shutdown, when the practice-owner lane had nobody in it. Throughput did not degrade gracefully; the queue in front of that single boundary absorbed everything, and the diagram had predicted exactly which boundary would do that. ## What partitions do not tell you - **Effort.** An action drawn in a lane may be four minutes of work or four days of it; the box is the same size either way. - **Waiting.** The diagram says a crossing exists, not how long work sits at it. The wait is measurement you bring to the picture. - **Authority.** A lane says who performs an action, not who is allowed to decide it or who is accountable if it goes wrong. - **The artefact.** Control flow says 'then', not 'carrying what'; that is object flow's job. - **The org chart.** Two lanes can be the same team wearing two hats, and one lane can hide three teams. Keep the grain of the lanes consistent or the crossings are not comparable. ## Object flow: the layer that shows what moves An **object flow** routes an edge through an object node — a rectangle, or a pin drawn on the edge of an action — and shows the artefact that passes between two actions: a signed form, a record, a decision. Control flow says one action follows another; object flow says what it hands over. On a multi-party workflow that second layer is where the deep defects live: the same artefact created independently in two lanes, an artefact that arrives in a form the receiving lane cannot use, or a receiving action that genuinely needs two artefacts when the diagram shows only one arriving. ## When the diagram earns its place A partitioned activity diagram beats a written procedure when the process has more than two responsible parties, when routing is conditional or concurrent, or when the team argues about what the process even is — a picture that everyone can walk with a finger settles that in one meeting. Prose is the better medium when the process is linear with a single owner, or when the difficulty is in the *rules* rather than in the sequence: eligibility thresholds and legal wording read far better as text than as guards hung on edges.

  • When is a written procedure the better medium than a partitioned activity diagram?
    When the process is linear with a single owner, or when the difficulty lies in the rules rather than in the sequence — eligibility criteria, thresholds and legal wording read better as text than as guards on edges. Reach for the diagram when several parties are involved, when routing is conditional or concurrent, or when the team cannot agree on what the process actually is.
  • What does an object flow add that a control flow does not?
    Control flow says one action follows another; object flow says what passes between them, by routing the edge through an object node or a pin. On a multi-party workflow it exposes what lanes cannot: the same artefact created twice in different lanes, an artefact that arrives unusable, or a receiving action that needs two inputs when only one is drawn.
  • Should a lane ever represent a system rather than a person?
    Yes — a partition names whoever is responsible for the actions inside it, and an automated service is a legitimate responsible party. Boundaries between human and automated lanes are usually the slowest crossings and the easiest to attack. Keep the grain consistent, though: mixing one team with one component in the same diagram makes the crossings incomparable.

The lanes are a relay track: the runners are rarely the problem, the baton exchanges are, and a partitioned diagram is the picture that shows you every exchange at once.

saying these in an interview costs you the question

  • Treats the lanes as a drawing of the org chart
  • Says moving an action to another lane changes execution order
  • Counts actions per lane and calls it workload
  • Confuses a diagram partition with a lane on a work board
  • Assumes every crossing is waste and tries to remove them all
  • Reads waiting time off the picture without measuring it