Use cases have become an integral part of modeling software requirements, but many software developers are discovering that writing effective use cases is more difficult than they had anticipated. An understanding of the basic principles of use cases is not enough. Software developers need a source of objective criteria by which to judge quality and effectiveness.
Patterns for Effective Use Cases provides this set of objective criteria. Written by experienced use case practitioners, this book fills a critical information gap by presenting a pattern language that contains over thirty patterns, providing simple, elegant, and proven solutions to the most common problems in use case development. These patterns distill and define the properties and characteristics of quality use cases. As such, they facilitate the development of original use cases and provide a diagnostic tool for evaluating existing ones.
The book opens with a review of use cases and pattern fundamentals, along with a discussion of the requirements-gathering team. These patterns address the use case development process, the internal structure of use cases, and the relationships among use cases within the system as a whole. Examples of patterns include:
Each pattern discussion includes at least one example demonstrating its real-world application, highlighting both the benefits of using the pattern and the consequences of not doing so. In addition, the book presents guidelines for the effective use of UML with relevant patterns.
Anyone involved in use case writing or requirements gathering will find Patterns for Effective Use Cases an indispensable handbook and reference.
Table of contents
- Structure: The Use Case Set
- Structure: The Use Case
- Structure: The Scenario
- Structure: The Step
1. What Is a Quality Use Case?
- 1.1. Why Use Cases at All?
- 1.2. What's So Hard about Telling Good Stories?
- 1.3. Why a Use Case Pattern Language?
- 1.4. What Are Patterns?
- 1.5. How Should I Use This Pattern Language?
- 1.6. What Is the Use Case Pattern Form?
- 1.7. Organization of the Pattern Language
- 1.8. Supplement: A Brief Tutorial on Writing Use Cases
2. The Team
- 2.1. Team Organizational Issues
- 2.2. SmallWritingTeam
- 2.3. ParticipatingAudience
- 2.4. BalancedTeam
- 2.5. Trade-offs and Collaborations
3. The Process
- 3.1. BreadthBeforeDepth
- 3.2. SpiralDevelopment
- 3.3. MultipleForms
- 3.4. TwoTierReview
- 3.5. QuittingTime
- 3.6. WritersLicense
- 3.7. Trade-offs and Collaborations
4. The Use Case Set
- 4.1. SharedClearVision
- 4.2. VisibleBoundary
- 4.3. ClearCastOfCharacters
- 4.4. UserValuedTransactions
- 4.5. EverUnfoldingStory
- 4.6. Trade-offs and Collaborations
5. The Use Case
- 5.1. CompleteSingleGoal
- 5.2. VerbPhraseName
- 5.3. ScenarioPlusFragments
- 5.4. ExhaustiveAlternatives
- 5.5. Adornments
- 5.6. PreciseAndReadable
- 5.7. Trade-offs and Collaborations
6. Scenarios and Steps
- 6.1. DetectableConditions
- 6.2. LeveledSteps
- 6.3. ActorIntentAccomplished
- 6.4. ForwardProgress
- 6.5. TechnologyNeutral
- 6.6. Trade-offs and Collaborations
7. Use Case Relationships
- 7.1. CommonSubBehavior
- 7.2. InterruptsAsExtensions
- 7.3. PromotedAlternative
- 7.4. Trade-offs and Collaborations
- 7.5. CapturedAbstraction—A Pattern for Applying UML Generalization, by Dan Rawsthorne
- 8. Editing Existing Use Cases
- Photo Credits
- Title: Patterns for Effective Use Cases
- Release date: August 2002
- Publisher(s): Addison-Wesley Professional
- ISBN: 9780201721843
You might also like
Software Architecture in Practice, Third Edition
The award-winning and highly influential has been substantially revised to reflect the latest developments in the …
Expanded Edition (August 2018) Updated with Design Patterns episodes from the Clean Code series from Clean …
Design Patterns: Elements of Reusable Object-Oriented Software
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a …
Test Driven Development: By Example
Clean code that works--now. This is the seeming contradiction that lies behind much of the pain …