This book describes how to gather and define software requirements using a process based on use cases. It shows systems analysts and designers how use cases can provide solutions to the most challenging requirements issues, resulting in effective, quality systems that meet the needs of users.
Use Cases, Second Edition: Requirements in Context describes a three-step method for establishing requirements-an iterative process that produces increasingly refined requirements. Drawing on their extensive, real-world experience, the authors offer a wealth of advice on use-case driven lifecycles, planning for change, and keeping on track. In addition, they include numerous detailed examples to illustrate practical applications.
This second edition incorporates the many advancements in use case methodology that have occurred over the past few years. Specifically, this new edition features major changes to the methodology's iterations, and the section on management reflects the faster-paced, more "chaordic" software lifecycles prominent today. In addition, the authors have included a new chapter on use case traceability issues and have revised the appendixes to show more clearly how use cases evolve.
The book opens with a brief introduction to use cases and the Unified Modeling Language (UML). It explains how use cases reduce the incidence of duplicate and inconsistent requirements, and how they facilitate the documentation process and communication among stakeholders.
The book shows you how to:
- Describe the context of relationships and interactions between actors and applications using use case diagrams and scenarios
- Specify functional and nonfunctional requirements
- Create the candidate use case list
- Break out detailed use cases and add detail to use case diagrams
- Add triggers, preconditions, basic course of events, and exceptions to use cases
- Manage the iterative/incremental use case driven project lifecycle
- Trace back to use cases, nonfunctionals, and business rules
- Avoid classic mistakes and pitfalls
The book also highlights numerous currently available tools, including use case name filters, the context matrix, user interface requirements, and the authors' own "hierarchy killer."
Daryl Kulak is the president and CEO of Water-Logic Software (www.water-logic.com), an Internet business and technology consulting firm based in Columbus, Ohio. He is a graduate of the Northern Alberta Institute of Technology (NAIT) in Edmonton, Alberta. During much of his seventeen-year career managing software development projects in the United States and Canada, Daryl has focused on use cases, iterative/incremental development, and component design. Eamonn Guiney is a consultant at NewtonPartners (www.newtonpartners.com), a company that provides management consulting and system integration services to the money management industry. He is based in Sacramento, California. Eamonn creates business systems using a variety of tools, particularly object-oriented methodologies and use cases.