Workshop: Use Cases in Software Development
Use Cases as the Focal Point
Use cases are an instrument for describing a system’s functional requirements as completely as possible from the user’s perspective. Particularly in quality assurance, they are considered a powerful visualization model for creating the corresponding test cases and ensuring adequate functional test coverage.
The Rational Unified Process (RUP) first introduced use cases as a formal visualization model for application in the software development process. In short, use cases serve as the focal point for a compact description of the requirements. The model has called for the graphical display of information from the start, but additional elements have since been added: e.g., list-based use case descriptions for a more precise definition of requirements. Most importantly, the techniques used to display the information are very helpful for maintaining an overview and writing clear, concise use case descriptions.
The workshop introduces and describes use case visualization techniques, and lets participants put them into practice. A key objective is to show that the best use case descriptions are those written in a collaborative effort between business users and the software development team.
The workshop targets software development, quality assurance and business domain staff involved in writing specifications. The following topics are covered:
- Overview and significance of use cases in software development processes
- Use case forms
- How to write use case descriptions
- Roles and use case descriptions
- Use case graphics
- Use case list descriptions
- Do’s and don’ts
- Use case management
Clearly written use case descriptions simplify the requirements management and quality assurance effort. Other benefits of good use cases include: they are an excellent means of depicting business processes and their content, they simplify the task of developing test cases, they facilitate writing user documentation, they provide a basis for developing and validating prototypes, and they enable improved system analysis. The workshop empowers participants to make use of these advantages in the client’s projects.