Use Cases: Requirements in Context, Second Edition |
|
|
|
|
| Daryl Kulak , Eamonn Guiney |
| July 2003, Addison-Wesley Pub Co, Paperback, 272 pages, ISBN 0321154983
|
|
|
|
 |
|
Use Cases: Requirements in Context 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. Specifically, with
use cases, you can:
- Reduce the incidence of duplicate and inconsistent requirements;
- Communicate requirements that are understandable to both users and
developers;
- Prototype the right system well before the design phase is underway;
- Document the entire requirements process clearly and efficiently.
Use Cases: Requirements in Context first examines the difficulties
of requirements gathering and briefly introduces both use cases and the
Unified Modeling Language (UML). Using detailed examples that run through
the book, it then elaborates a four-step method for establishing requirements--an
iterative process that produces increasingly refined requirements. Drawing
on their own extensive experience, the authors offer practical advice
on how to manage this process, including guidance on planning, scheduling
and estimating. They also reveal common mistakes and pitfalls to avoid.
This detailed, hands-on book shows you how to:
- Describe object relationships and interactions with use case diagrams
and scenarios
- Specify functional and non-functional 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
Other topics include stakeholder interviews, use case name filters, the
context matrix, user interface requirements, team organization, and quality
assurance. --This text refers to an out of print or unavailable edition
of this title.
|
 |
|
Preface Second Edition.
Preface First Edition.
1. The Trouble with Requirements.
First and Least of All….
What Is a Requirement?
Requirements Gathering, Definition, and Specification.
The Challenges of Requirements Gathering.
Issues with the Standard Approaches.
Those Troublesome Requirements.
2. Moving to Use Cases.
It's All About Interactions.
The Unified Modeling Language.
Introducing Use Cases, Use Case Diagrams, and Scenarios.
Use Cases Apply Here.
Applying Use Cases to the Requirements Problem.
3. A Use-Case-Driven Approach to Requirements Gathering.
Requirements Specification Tools.
Principles for Requirements Success.
Three Steps for Gathering Requirements.
The Role of the Mission, Vision, Values.
The Role of the Statement of Work
The Role of the Risk Analysis.
The Role of the Prototype.
The Roles of Use Cases.
The Role of the Business Rules Catalog.
Managing Success.
4. The Facade Iteration.
Objectives.
Steps in the Facade Iteration.
Tools.
Deliverables.
Roles.
Context.
Summary.
5. The Filled Iteration.
Objectives.
Steps.
Tools.
Deliverables.
Roles.
Context.
Summary.
6. Focused Iteration.
Objectives'.
What Are Focused Use Cases?
Steps.
Tools.
Deliverables.
Roles.
Context.
Summary.
7. Managing Requirements and People.
Introduction.
Waterfall Lifecycle Management.
Alternatives to Waterfall.
Introducing the Holistic Iterative/Incremental Use Case Driven Project
Lifecycle.
Process.
Principles of the Holistic Iterative/Incremental Software Lifecycle.
8. Requirements Traceability.
Tracing Back to Use Cases.
Tracing Back to Nonfunctionals.
Tracing Back to Business Rules.
9. Classic Mistakes.
Mistakes, Pitfalls, and Bruised Knees.
Classic Mistakes: Make Them and Move On.
10. The Case for Use Cases.
Why Did Use Cases Win?
Use Cases Beyond Software.
Summary.
Appendix A. Real Estate Management System.
Appendix B. Integrated Systems.
Appendix C. Instant Messaging Encryption.
Appendix D. Order a Product from a Catalog.
Bibliography.
Index.
|
|
 |
|
Use Cases: Requirements in Context (Second Edition)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.
This book elaborates 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 planning, scheduling, and estimating. 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 last 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 begins with a brief introduction to use cases and the Unified
Modeling Language (UML). It shows how use cases reduce the incidence of
duplicate and inconsistent requirements as well as facilitate the documentation
process and communication among stakeholders.
The book then 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
Use Cases, Second Edition, also highlights numerous currently available
tools, including use case name filters, the context matrix, user interface
requirements, and the authors' own "hierarchy killer."
|
 |
|
Use Cases: Requirements in Context came about, as most books
probably do, as the result of a complaint. We felt that there weren't
any good books that addressed use cases for requirements gathering. It
seemed that a lot of people agreed that use cases were a perfectly good
tool to solve the requirements problem, but no one had put down on paper
any detailed process to help people understand how to use them this way.
In fact, even as we write today, in late 1999, there is no book of this
sort that we know of.
Requirements gathering has been a problem on almost every project we've
been involved with. The fuzzy nature of requirements makes working with
them slippery and unintuitive for most software analysts. Use cases are
the first tool we've seen that addresses the specification and communication
concerns usually associated with requirements gathering.
Although use cases in themselves are quite intuitive, the process around
them is often done poorly. The questions that people have--How many iterations
do I do? How fine-grained should a use case be?--are not answered or even
addressed in most texts. This is probably because they are hard questions
and the answers can vary greatly from one situation to another. However,
they are important questions, and we decided to describe our own best
practices as a first volley in what we hope will become a spirited industry
dialog on how to generate requirements that will address user needs.
Use Cases: Requirements in Context is a practical book for the
everyday practitioner. As consultants in the information technology industry,
we employ use cases to specify business systems as part of our daily lives.
We think we understand the issues facing people when they deliver software
using tools such as the Unified Modeling Language and use cases. Our main
intent is not to describe use case notation, although we do address that.
Instead, we show a requirements process that addresses requirements gathering
in a way that produces quality results. While writing, we considered the
factors that cause problems in requirements gathering, and we developed
a use case method for delivering a requirements-oriented set of deliverables.
The methodology breaks down the activity of producing requirements into
a series of steps, and it answers the questions that usually come up when
people employ use cases.
This book relates directly to the real work of delivering a specification,
managing that effort with a team, and getting the most bang for your buck.
The sample use cases and use case diagrams that appear throughout the
book are also presented in Appendixes B and C. These appendixes demonstrate
the development of the use cases and other requirements analysis artifacts
through each phase of their development. Appendix B documents a business
system for real estate, and Appendix C documents a business system for
the garment industry. We hope you enjoy this book. It was a labor of love
for us. This is a process that works well for us. If it works for you,
too, that's great. If it doesn't, perhaps you can adapt some of the tools,
ideas, or suggestions to your own way of addressing the requirements problem.
|
 |
|
| Daryl Kulak is the president and CEO of Water-Logic Software,
an Internet business and technology consulting firm. Throughout his extensive
career managing software development projects, he has focused on use cases,
iterative/incremental development, and component design.
Eamonn Guiney is a consultant at NewtonPartners, a company
that provides management consulting and system integration services to
the money management industry. Eamonn creates business systems using a
variety of tools, particularly object-oriented methodologies and use cases.
|
 |
|
From Book News, Inc.
Describes how to gather and define software requirements using a process
based on use cases. First examines difficulties of requirements gathering
and introduces both use cases and UML. Presents detailed ongoing examples
and a four-step method for establishing requirements, with practical advice
provided on planning, scheduling, estimating, and common mistakes. Other
tools examined include the stakeholder interview, team organization, and
quality assurance. Kulak is president and CEO of an Internet business
and technology consulting firm; Guiney works with a company that provides
management consulting and system integration services. --This text
refers to an out of print or unavailable edition of this title.
Book News, Inc.®, Portland, OR
|
|