Build the Right Thing
One of the hardest things to do when creating sophisticated software systems is to build the right
thing.
Projects that have incomplete or difficult to understand requirement specifications end up
with scope creep, expensive rework, delayed releases, or even abandonment.
Use case modeling is a proven
method to effectively describe the behavior of a software system. It builds a shared vision of the
problem at hand by bridging the gap between the people who understand the problem and the people who
understand how to build a solution.
Why consider use cases?
In a traditional Software Requirements Specification (SRS), features are presented without context.
For example:
The system shall log credit payments to the accounts receivable system.
The lack of context makes room for ambiguity.
When does this event happen? Is
the order relative to other events significant? Who triggers the event? What happens when the accounts
receivable system is unavailable?
In addition, a traditional SRS tends to devolve into a a numbered list of detail that drones on page after page -
very difficult for the system's stakeholders to absorb. Use cases break requirements down into short "stories" that
readers can more easily understand.
Benefits of use case modeling
Use cases focus on the users of the system, not the system itself, thus the real system
needs are brought to light early on. Since a use case consists mainly of narrative text, it is easily
understandable by all stakeholders, including customers, users and executives, not just developers and
testers. By including all the stakeholders during the early planning stages of a project, you bring in
people who best understand the problems at hand, promote a sense of buy-in from end users, and eliminate
surprises when the system is deployed.
Each use case describes one way the system is used, but one of the big benefits of use case modeling is
that it also describes all of the things that might go wrong. Identifying exceptions to a
successful scenario early in the project saves a lot of time by finding subtle requirements.
Finally, once a use case model has been developed, it can be used to drive many other aspects of software
development, including project planning (cost, complexity and timing estimates), object models, test case
definitions, and user documentation.
The best way to create use cases
CaseComplete is a tool that makes it fast and easy to gather, organize, and communicate requirements with use cases.
It's quick to get started and easy to learn as CaseComplete guides you each step of the way while you create use cases.
Learn more: Take a tour or get the free 30-day trial.
“I find CaseComplete a fantastic product, not only for the functionality, but also because usability is one of the top priorities ...and you provide great support.”
Linda, Getronics
Used by Companies Big and Small