Benefits
Use cases provide some
very clear benefits to the Analysis Phase.
One important benefit of use case driven analysis is that it helps
manage complexity, since it focuses on one specific usage aspect at a time.
Use cases start from the very simple viewpoint that a system is built first
and foremost for its users. (12) Another benefit of use cases is that they provide
basic groundwork for the requirements document, user manual and test cases. Use cases also encourage designers to
envision outcomes before attempting to specify outcomes, and thereby they
help to make requirements more proactive in system development. (11) |
Risks
There are some drawbacks
and risks associated with use cases.
Use cases eschew description of user motivations and experiences, and
do not address usefulness and usability.
Although quality issues are often crucial to the success of a software
system, there are no systematic way to handle nonfunctional requirements with
use cases. Another drawback exists when trying to document interactions
between requirements. Use cases look at each requirement separately and does
not document the interaction between the requirements. (12) Many
developers often avoid use cases because of the time required to prepare a
complete set for an application.
Depending on the size of the system in question, it can take a significant
amount of time to complete a set of use cases. Others scorn the “boredom” of use cases, with their unnamed
actors and dry, generalized events. Finally use cases are criticized for not
capturing all the off the wall mishaps and events that can occur. (10) |