Business Analysis for Information Technology
Books and Selected Products
Addison–Wesley Professional
August 2003
Paperback, 272 pages
ISBN: 0321154983

Description
This timely second edition describes a process based on employing use cases to gather and define software requirements. Use cases, roughly defined, involve the process of figuring out exactly how end–users will “use” a software system when it is completed before coding begins. Both the process and its presentation have been thoroughly revised based on the authors‘ more recent consulting experience and on feedback gathered from readers of the first edition over the past three years. Of particular note, the authors have added or enhanced coverage of topics not addressed in other books, even though these topics are vital to successful use case application in industry: for example, project management in a use case driven lifecycle, and use case maintenance or change over time.
Features
Thoroughly updated and revised, the second edition of a popular tutorial on how to apply use cases effectively in determining requirements.
° An excellent introduction to this increasingly popular topic that assumes no prior knowledge of uses cases or requirements
° Shows how use cases can be applied to solve the most challenging requirements issues faced daily in industry
° Expanded coverage, including thorough treatment of iterative/incremental use case driven project management
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.
0201657678P04062001 ––This text refers to an alternate Paperback edition.
Backcover Copy
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:
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."
Author Bios
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.
0321154983AB04012003