Use Cases. Your System at a Glance.
What is a use case, what is it used for and what benefits are offered by use case diagrams?
What are Use Cases?
Use Cases document the functionality of a planned or existing system using simple models. A use case describes the visible behavior of a system from the user’s point of view. A user may be a person or a neighboring system and is knows as an actor; he or she interacts with the system in order to achieve a specific goal. A single use case gets its name from the goal the actor wants to achieve and is a series of actions performed in a defined order. Use cases are popular because they are relatively easy to set up and because they substantially increase the interaction between the actors and systems. They are often used in product and software development.
How do I create use cases?
Two concepts that need to be implemented together form the basis of the use case approach:
Use case specifications contain information about how use cases interact with actors in an environment. The information is created with the help of templates, it is documented in text and should contain data points such as the: name (including identifier), description, participating actors, priority, criminality, responsibility, conditions, status, other use cases, standard and alternative procedures. Even conditions that are not subject to change, not even when an error has occurred, should be described.
Sure, you could capture use cases with a pen and paper, but it’s much better to do so with software. Software offers you the big advantage of making several pieces of information related to use cases immediately available.
The tabs in a form aid in the navigation. Users can orient themselves and find information easily. Below you can see the flow of steps as well as alternative steps.
A standard procedure and an alternative flow (with poor Wi-Fi reception). Described step by step, optically and in an easy to understand way.
Use cases diagrams from UML (Unified Modeling Language) are graphical models that help you visualize the functionality of a system as well as their relationships with its environment. The important model elements include:
- Use case
- Actors (persons and systems)
- System partitions
- Relationships (extend, include and communicate)