Use Cases: Requirements in Context / Edition 1 by Daryl Kulak, Eamonn Guiney, Eamonn Guiney | | 9780201657678 | Paperback | Barnes & Noble
Use Cases: Requirements in Context / Edition 1

Use Cases: Requirements in Context / Edition 1

by Daryl Kulak, Eamonn Guiney, Eamonn Guiney

ISBN-10: 0201657678

ISBN-13: 9780201657678

Pub. Date: 05/05/2000

Publisher: Pearson Education

  • Reduce the incidence of duplicate and inconsistent requirements;
  • Communicate requirements that are understandable to both users and developers;
  • Communicate a vision of what the application needs to do without the distractions inherent in a coded prototype;
  • Document the entire requirements process clearly and efficiently.


  • Reduce the incidence of duplicate and inconsistent requirements;
  • Communicate requirements that are understandable to both users and developers;
  • Communicate a vision of what the application needs to do without the distractions inherent in a coded prototype;
  • 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 dedicate an entire chapter to the common mistakes made during requirements capture and specification, particularly those related to use case creation.

This detailed, hands-on 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 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 tools examined in this book include the stakeholder interview, use case name filters, the context matrix, user interface requirements, teamorganization, and quality assurance.

Product Details

Pearson Education
Publication date:
ACM Press Series
Edition description:
Older Edition
Product dimensions:
7.34(w) x 9.21(h) x 0.69(d)

Table of Contents

Preface to the First Editionxix
1The Trouble with Requirements1
1.1First and Least of All ...1
1.2What Is a Requirement?5
1.2.1Functional Requirements9
1.2.2Nonfunctional Requirements9
1.3Requirements Gathering, Definition, and Specification10
1.4The Challenges of Requirements Gathering12
1.4.1Finding Out What the Users Need12
1.4.2Documenting Users' Needs13
1.4.3Avoiding Premature Design Assumptions13
1.4.4Resolving Conflicting Requirements13
1.4.5Eliminating Redundant Requirements14
1.4.6Reducing Overwhelming Volume14
1.4.7Ensuring Requirements Traceability14
1.5Issues with the Standard Approaches15
1.5.1User Interviews15
1.5.2Joint Requirements Planning Sessions16
1.5.3Contract-Style Requirements Lists17
1.6Those Troublesome Requirements20
2Moving to Use Cases21
2.1It's All About Interactions25
2.2The Unified Modeling Language27
2.2.1Nine Diagrams28
2.2.2Extending the UML with Stereotyping34
2.3Introducing Use Cases, Use Case Diagrams, and Scenarios35
2.3.1The Goals of Use Cases36
2.3.2How Use Case Diagrams Show Relationships38
2.3.3The Use Case Template42
2.3.4Paths and Scenarios46
2.4Use Cases Apply Here49
2.4.1Use Cases for Inquiry-Only Systems49
2.4.2Use Cases for Requests for Proposals50
2.4.3Use Cases for Software Package Evaluation50
2.4.4Use Cases for Non-Object-Oriented Systems50
2.5Applying Use Cases to the Requirements Problem51
3A Use-Case-Driven Approach to Requirements Gathering53
3.1Requirements Specification Tools53
3.2Principles for Requirements Success53
3.3Three Steps for Gathering Requirements55
3.4The Role of the Mission, Vision, Values56
3.5The Role of the Statement of Work57
3.6The Role of the Risk Analysis57
3.7The Role of the Prototype57
3.8The Roles of Use Cases59
3.8.1Use Cases Are Effective Communication Vehicles59
3.8.2Use Cases Can Be Used for Functional and Nonfunctional Requirements59
3.8.3Use Cases Help Ensure Requirements Traceability59
3.8.4Use Cases Discourage Premature Design60
3.9The Role of the Business Rules Catalog60
3.10Managing Success62
4The Facade Iteration63
4.1.2Project Team64
4.1.3Industry Experts65
4.1.4IT Management Group65
4.1.5User Management Personnel66
4.1.6Owners of the Data66
4.2Steps in the Facade Iteration67
4.2.1Create the Mission, Vision, Values67
4.2.2Identify and Review Existing Documentation and Intellectual Capital67
4.2.3Get the Executive Sponsor's Unique Viewpoint69
4.2.4Review the Business Process Definitions71
4.2.5Identify the Users, Customers, and Related Groups71
4.2.6Interview the Stakeholders72
4.2.7Create a Stakeholders List73
4.2.8Find the Actors73
4.2.9Create the Use Case Survey (A List of Facade Use Cases)73
4.2.10Collect and Document Nonfunctional Requirements74
4.2.11Start the Business Rules Catalog81
4.2.12Create a Risk Analysis81
4.2.13Create a Statement of Work81
4.2.14Begin Experimenting with User Interface Metaphors81
4.2.15Begin User Interface Storyboards83
4.2.16Get Informal Approval from the Executive Sponsor84
4.3.1The Use Case Diagram84
4.3.2The Hierarchy Killer84
4.3.3Use Case Name Filters86
4.3.4Actor Filter86
4.3.5Verb Filter87
4.3.6Noun Filters88
4.3.7Packages as Placeholders for Functionality89
4.3.8Facade Filter89
4.3.9Peer Review89
4.3.10User Review90
5The Filled Iteration93
5.2.1Break Out Detailed Use Cases94
5.2.2Create Filled Use Cases96
5.2.3Add Business Rules101
5.2.4Test the Filled Use Cases102
5.2.5Put Some Things Off103
5.3.1The Stakeholder Interview104
5.3.2IPA Filter104
5.3.3White Space Analysis Filter105
5.3.4Abstraction Filter105
5.3.5Testing Use Cases with Scenarios105
5.3.7Additional Use Cases106
6Focused Iteration109
6.2What Are Focused Use Cases?110
6.3.1Merge Duplicate Processes110
6.3.2Bring Focus to Each Use Case111
6.3.3Manage Scope Changes During This Iteration112
6.3.4Manage Risks and Assumptions113
6.4.1Surplus Functionality Filter114
6.4.2Narrow the Focus of the System114
6.4.3Identify Surplus Functionality Inside the Use Case115
6.4.4Vocabulary Filter115
7Managing Requirements and People119
7.2Waterfall Lifecycle Management120
7.2.1Nell and the Coffee Shop121
7.2.2Disadvantages of Waterfall123
7.3Alternatives to Waterfall125
7.3.1Rapid Application Development (RAD)125
7.3.3Staged Delivery126
7.3.4Holistic Iterative/Incremental (HI/I)127
7.4Introducing the Holistic Iterative/Incremental Use-Case-Driven Project Lifecycle127
7.4.1The Meaning of Iterative128
7.4.2The Meaning of Incremental129
7.4.3The Meaning of Holistic130
7.4.4The Meaning of Adaptivity131
7.4.5Complex Adaptive Systems132
7.6Principles of the Holistic Iterative/Incremental Software Lifecycle135
7.6.1Manage Requirements Not Tasks136
7.6.2The Important Goals Are the Business Goals--Dates and Budgets137
7.6.3Think Like a Businessperson--What Have You Done for Me Lately?138
7.6.4Divide and Conquer138
7.6.5Cut the Job into Programs and Projects141
7.6.6Tie Everything Back to the Business144
7.6.7Create Demonstrable Deliverables145
7.6.8Learn the Art of "Good Enough" Quality145
7.6.9The Pieces Will Be Smaller Than You Think146
7.6.10Expect Negotiation, Not Specification146
7.6.11Forget about Baselines and Sign-offs147
7.6.12Estimate by Doing147
7.6.13Calculate Return-on-Investment in a New Way Using Portfolios148
8Requirements Traceability149
8.1Tracing Back to Use Cases152
8.1.1Analysis Model Traceability153
8.1.2Design Model Traceability153
8.1.3CRC Card Session Traceability154
8.1.4Test Model Traceability154
8.1.5User Interface Design Traceability154
8.1.6Application Architecture Traceability154
8.1.7Project Management Traceability155
8.1.8Documentation and Training Traceability155
8.1.9Product Marketing Traceability155
8.1.10Security Traceability155
8.1.11Release Planning155
8.2Tracing Back to Nonfunctionals156
8.3Tracing Back to Business Rules157
8.3.1Structural Facts157
8.3.2Action-Restricting and Action-Triggering Rules157
8.3.3Calculations and Inferences157
9Classic Mistakes159
9.1Mistakes, Pitfalls, and Bruised Knees159
9.2Classic Mistakes: Make Them and Move On160
10The Case for Use Cases173
10.1Why Did Use Cases Win?174
10.1.1Use Cases Are Sensible to Businesspeople174
10.1.2Use Cases Are Traceable175
10.1.3Use Cases Are an Excellent Scoping Tool175
10.1.4Use Cases Don't Use a Special Language175
10.1.5Use Cases Allow Us to Tell Stories175
10.1.6The Alternatives Are Awful176
10.2Use Cases Beyond Software176
10.2.1Service Use Cases176
10.2.2Business Use Cases178
AReal Estate Management System183
A.2The Use Cases184
A.2.1The Actors186
A.2.2Technical Requirements and Business Rules187
A.3Scope Decisions187
A.3.1List of Use Cases190
A.4Refining the Requirements212
A.4.1Investment Returns Calculation213
A.4.2Tightening Requirements215
BIntegrated Systems219
B.3Problem Description221
B.4Solution Analysis222
CInstant Messaging Encryption225
C.2The Use Cases226
DOrder a Product from a Catalog229

Customer Reviews

Average Review:

Write a Review

and post it to your social network


Most Helpful Customer Reviews

See all customer reviews >