Originally published in PM Times on November 10, 2015.
This is the third article in our requirements modeling series and the second article in our use cases series. We had promised that in future articles we would show examples of use case diagrams, explain how to build them, and describe why we should create use case narratives. And yes, we’ll explain how use cases provide the same information as the Given—When–Then format. So here we go!
Use cases help our projects in two very different ways. Use case diagrams are immeasurably helpful in understanding scope and the use case narrative is invaluable for getting the detail needed to build the product or service. Although used primarily in software development, use cases are also helpful when creating processes and developing equipment. They work wherever there is interaction between people and what those people need to do.
Use case diagrams are one of several techniques we use to help with both the project and product scope. We find that the use case diagram structures our thinking and helps us remember functionality we might otherwise have forgotten.
In the last article, we said we would explain the terms reference in this use case diagram example.
In the use case diagram example above, there are terms labeled with five numbers. Each one of these numbers represents
Actors. As obvious as it sounds, the user role or function, and not names of individuals are preferred for the actors in the use case. For example, use “Accounting” instead of “Erik.” Although we know that we should not use names, we sometimes forget because everyone knows “Erik.” But what happens after “Erik” has left the organization? Not everyone will remember what his function was.
Use Cases. Remember that use cases are processes. Accordingly we name our use cases as we would any other process, with a strong verb and a noun, that is, an action and an object of the action. Instead of naming the use case “Deposit Function” or “Deposits,” for example, we would label it “Make Deposit” or “Deposit Funds.”
Expect your diagram to change over time. Eliciting requirements, regardless of the model used to record the requirements, is an iterative process. Not only will requirements change, but details of the elicited requirements emerge as we know more. Therefore, it is helpful to use stickies for actors, use cases, and interfaces during elicitation until your diagram stabilizes. It is far less frustrating to move stickies than to redraw the entire diagram every time a change occurs. Similarly, do not spend energy trying to align actors with use cases. That alignment will change as the diagram changes. If is far easier to group actors after the diagram stabilizes. Also, there are tricks for simplifying the diagram when the model becomes complex and with the use of dependent relationships, which we’ll discuss in a future article.
In the next article, we will discuss the importance of a use case narrative and how to create one.
How do you define success for your team? Take a moment to think about this…
Remote work has transformed how organizations operate, with virtual teams becoming the new normal across…
Effective leadership has never been more critical. Whether managing a team in a high-pressure corporate…
Remote work has transformed how organizations operate, with virtual teams becoming the new normal across…
The Business Analysis Body of Knowledge (BABOK® Guide v3) is a comprehensive guide to the…
A certified Business Analyst (BA) has successfully passed an International Institute of Business Analysis (IIBA.org)…