Skip to content

Mastering the Requirements Process

Best in textbook rentals since 2012!

ISBN-10: 0321419499

ISBN-13: 9780321419491

Edition: 2nd 2006 (Revised)

Authors: Suzanne Robertson, James C. Robertson

List price: $74.99
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Written by two internationally acclaimed experts on requirements, this text provides software engineers with the insights, techniques and templates to discover exactly what their customers desire for their systems.
Customers also bought

Book details

List price: $74.99
Edition: 2nd
Copyright year: 2006
Publisher: Addison Wesley Professional
Publication date: 3/17/2006
Binding: Hardcover
Pages: 592
Size: 7.75" wide x 9.50" long x 1.00" tall
Weight: 2.464
Language: English

Preface to the Second Edition
Foreword to the First Edition
Acknowledgments
What Are Requirements?
Requirements Gathering and Systems Modeling
Agile Software Development
Why Do I Need Requirements?
What Is a Requirement?
Functional Requirements
Nonfunctional Requirements
Constraints
Evolution of Requirements
The Template
The Shell
The Volere Requirements Process
The Requirements Process
Agility Guide
Requirements Process in Context
The Process
A Case Study
Project Blastoff
Trawling for Requirements
Prototyping the Requirements
Scenarios
Writing the Requirements
The Quality Gateway
Reusing Requirements
Reviewing the Specification
Iterative and Incremental Processes
Requirements Retrospective
Your Own Requirements Process
In Conclusion
Project Blastoff
Agility Guide
IceBreaker
Scope, Stakeholders, Goals
Setting the Scope
Domains of Interest
First-Cut Work Context
Stakeholders
The Client
The Customer
The Users: Get to Know Them
Other Stakeholders
Consultants
Management
Subject Matter Experts
Core Team
Inspectors
Market Forces
Legal
Negative Stakeholders
Industry Standard Setters
Public Opinion
Government
Special-Interest Groups
Technical Experts
Cultural Interests
Adjacent Systems
Finding the Stakeholders
Goals: What Do You Want to Achieve?
Keeping Track of the Purpose
Requirements Constraints
Solution Constraints
Project Constraints
Naming Conventions and Definitions
How Much Is This Going to Cost?
Risks
To Go or Not to Go
Blastoff Alternatives
Summary
Event-Driven Use Cases
Agility Guide
Understanding the Work
Use Cases and Their Scope
The Work
The Context of the Work
The Outside World
Business Events
Time-Triggered Business Events
Why Business Events and Business Use Cases Are a Good Idea
Finding the Business Events
Business Use Cases
The Role of Adjacent Systems
Active Adjacent Systems
Autonomous Adjacent Systems
Cooperative Adjacent Systems
Business Use Cases and Product Use Cases
Actors
Summary
Trawling for Requirements
Agility Guide
Responsibility
The Requirements Analyst
Trawling and Business Use Cases
The Role of the Current Situation
Apprenticing
Observing Structures and Patterns
Interviewing the Stakeholders
Asking the Right Questions
Getting to the Essence of the Work
Solving the Right Problem
Innovative Products
Business Use Case Workshops
Outcome
Scenarios
Business Rules
Creativity Workshops
Brainstorming
Personas
Mind Maps
Wallpaper
Video and Photographs
Wikis, Blogs, and Discussion Forums
Document Archeology
Some Other Requirements-Gathering Techniques
Family Therapy
Soft Systems and Viewpoints
Determining What the Product Should Be
The True Origin of the Business Event
Does Technology Matter?
Choosing the Best Trawling Technique
Summary
Scenarios and Requirements
Agility Guide
Scenarios
Normal Case Scenarios
Diagramming the Scenario
Alternative Cases
Exception Cases
What If? Scenarios
Misuse Cases and Negative Scenarios
Scenario Template
Product Use Case Scenarios
Summary
Functional Requirements
Agility Guide
Functional Requirements
Finding the Functional Requirements
Level of Detail or Granularity
Exceptions and Alternatives
Avoiding Ambiguity
Technological Requirements
Requirements, Not Solutions
Grouping Requirements
Alternatives to Functional Requirements
Summary
Nonfunctional Requirements
Agility Guide
Nonfunctional Requirements
Use Cases and Nonfunctional Requirements
The Nonfunctional Requirements
Look and Feel Requirements: Type 10
Usability and Humanity Requirements: Type 11
Performance Requirements: Type 12
Operational and Environmental Requirements: Type 13
Maintainability and Support Requirements: Type 14
Security Requirements: Type 15
Confidentiality
Availability
Integrity
Auditing
... And No More
Cultural and Political Requirements: Type 16
Legal Requirements: Type 17
Sarbanes-Oxley Act
Other Legal Obligations
Standards
Finding the Nonfunctional Requirements
Blogging the Requirements
Use Cases
The Template
Prototypes and Nonfunctional Requirements
The Client
Don't Write a Solution
Summary
Fit Criteria
Agility Guide
Why Does Fit Need a Criterion?
Scale of Measurement
Rationale
Fit Criteria for Nonfunctional Requirements
Product Failure?
Subjective Tests
Look and Feel Requirements
Usability and Humanity Requirements
Performance Requirements
Operational Requirements
Maintainability Requirements
Security Requirements
Cultural and Political Requirements
Legal Requirements
Fit Criteria for Functional Requirements
Test Cases
Use Cases and Fit Criteria
Fit Criterion for Project Purpose
Fit Criteria for Solution Constraints
Summary
Writing the Requirements
Agility Guide
Turning Potential Requirements into Written Requirements
Knowledge Versus Specification
The Volere Requirements Specification Template
The Purpose of the Project
The User Business or Background of the Project Effort
Goals of the Project
The Client, the Customer, and Other Stakeholders
The Client
The Customer
Other Stakeholders
Users of the Product
Mandated Constraints
Solution Constraints
Implementation Environment of the Current System
Partner or Collaborative Applications
Off-the-Shelf Software
Anticipated Workplace Environment
Schedule Constraints
Budget Constraints
Naming Conventions and Definitions
Definitions of All Terms, Including Acronyms, Used in the Project
Data Dictionary for Any Included Models
Relevant Facts and Assumptions
Facts
Assumptions
The Scope of the Work
Work Partitioning
The Scope of the Product
Product Boundary
Product Use Case List
Individual Product Use Cases
The Shell
Snow Cards
Automated Requirements Tools
The Atomic Requirements
Requirement Number
Requirement Type
Event/Use Case Number
Description
Rationale
Originator
Fit Criterion
Customer Satisfaction and Customer Dissatisfaction
Priority
Conflicts
Supporting Materials
History
Writing the Specification
Functional Requirements
Description
Nonfunctional Requirements
Project Issues
Open Issues
Off-the-Shelf Solutions
New Problems
Tasks
Migration to the New Product
Risks
Costs
User Documentation and Training
Waiting Room
Ideas for Solutions
Summary
The Quality Gateway
Agility Guide
Requirements Quality
Using the Quality Gateway
Testing Completeness
Are There Any Missing Components?
Meaningful to All Stakeholders?
Testing Traceability
Consistent Terminology
Relevant to Purpose?
Testing the Fit Criterion
Viable within Constraints?
Requirement or Solution?
Customer Value
Gold Plating
Requirements Creep
Requirements Leakage
Implementing the Quality Gateway
Alternative Quality Gateways
Summary
Prototyping the Requirements
Agility Guide
Prototypes and Reality
Low-Fidelity Prototypes
High-Fidelity Prototypes
Storyboards
Object Life History
The Prototyping Loop
Design and Build
Testing in the User Environment
Analyzing the Results
Summary
Reusing Requirements
What Is Reusing Requirements?
Sources of Reusable Requirements
Requirements Patterns
Christopher Alexander's Patterns
A Business Event Pattern
Context of Event Response
Processing for Event Response
Data for Event Response
Forming Patterns by Abstracting
Patterns for Specific Domains
Patterns Across Domains
Domain Analysis
Trends in Reuse
Reuse and Objects
Reuse Is Now a Job?
Summary
Reviewing the Specification
Agility Guide
Reviewing the Specification
Inspections
Find Missing Requirements
Have All Business Use Cases Been Discovered?
Define the Scope
Identify Business Events and Non-Events
Model the Business Use Case
Define the Business Data
CRUD Check
Check for Custodial Processes
Repeat Until Done
Customer Value
Prioritizing the Requirements
Prioritization Factors
When to Prioritize
Requirement Priority Grading
Prioritization Spreadsheet
Conflicting Requirements
Ambiguous Specifications
Risk Analysis
Project Drivers
Project Constraints
Functional Requirements
Measure the Required Effort
Summary
Whither Requirements?
Adapting the Process
What About Requirements Tools?
Mapping Tools to Purpose
Publishing the Requirements
Contractual Document
Management Summary
Marketing Summary
User Review
Reviewing the Specification
Requirements Traceability
Tracing a Business Event
Dealing with Change
Changes in the World
Requirements Feedback
Requirements Retrospective
What to Look For
Running the Retrospective
Retrospective Report
Your Notebook
The End
Volere Requirements Process Model
The Volere Requirements Process Model
Making This Work for You
Finding More Information
Define Blastoff Objectives (Process Notes 1.1.1)
Plan Physical Arrangements (Process Notes 1.1.2)
Communicate with Participants (Process Notes 1.1.3)
Determine Project Purpose (Process Notes 1.2.1)
Determine the Work Context (Process Notes 1.2.2)
Do First-Cut Risk Analysis (Process Notes 1.2.3)
Identify the Stakeholders (Process Notes 1.2.4)
Partition the Context (Process Notes 1.2.5)
Consider Non-Events (Process Notes 1.2.6)
Determine Business Terminology (Process Notes 1.2.7)
Define Project Constraints (Process Notes 1.2.8)
Identify Domains of Interest (Process Notes 1.2.9)
Write Blastoff Report (Process Notes 1.3.1)
Review Blastoff Results (Process Notes 1.3.2)
Hold Follow-Up Blastoff (Process Notes 1.3.3)
Make Initial Estimate (Process Notes 1.3.4)
Review Current Situation (Process Notes 2.1.1)
Apprentice with the User (Process Notes 2.1.2)
Determine Essential Requirements (Process Notes 2.1.3)
Brainstorm the Requirements (Process Notes 2.1.4)
Interview the Users (Process Notes 2.1.5)
Do Document Archaeology (Process Notes 2.1.6)
Make Requirements Video (Process Notes 2.1.7)
Run Use Case Workshop (Process Notes 2.1.8)
Build Event Models (Process Notes 2.1.9)
Build Scenario Models (Process Notes 2.1.10)
Run Creativity Workshop (Process Notes 2.1.11)
Study the Adjacent Systems (Process Notes 2.2.1)
Define Use Case Boundary (Process Notes 2.2.2)
Gather Business Event Knowledge (Process Notes 2.3.1)
Choose Appropriate Trawling Techniques (Process Notes 2.3.2)
Ask Clarification Questions (Process Notes 2.4)
Identify Potential Requirements (Process Notes 3.1)
Identify Functional Requirements (Process Notes 3.2)
Identify Composite Requirements (Process Notes 3.3)
Formalize Requirement (Process Notes 3.4)
Formalize System Constraints (Process Notes 3.5)
Identify Nonfunctional Requirements (Process Notes 3.6)
Write Functional Fit Criteria (Process Notes 3.7)
Write Nonfunctional Fit Criteria (Process Notes 3.8)
Define Customer Value (Process Notes 3.9)
Identify Dependencies and Conflicts (Process Notes 3.10)
Review Requirement Fit Criteria (Process Notes 4.1)
Review Requirement Relevance (Process Notes 4.2)
Review Requirement Viability (Process Notes 4.3)
Identify Gold-Plated Requirements (Process Notes 4.4)
Review Requirement Completeness (Process Notes 4.5)
Plan the Prototype (Process Notes 5.1)
Build Low-Fidelity Prototype (Process Notes 5.2.1)
Build High-Fidelity Prototype (Process Notes 5.2.2)
Test High-Fidelity Prototype with Users (Process Notes 5.3.1)
Test Low-Fidelity Prototype with Users (Process Notes 5.3.2)
Identify New and Changed Requirements (Process Notes 5.3.3)
Evaluate Prototyping Effort (Process Notes 5.3.4)
Conduct Private Individual Reviews (Process Notes 6.1.1)
Conduct Separate Meetings with Groups (Process Notes 6.1.2)
Facilitator Reviews Facts (Process Notes 6.1.3)
Hold Retrospective Review Meeting (Process Notes 6.2.1)
Produce Retrospective Report (Process Notes 6.2.2)
Retrospective Report on Requirements Specification
Identify Filtration Criteria (Process Notes 6.3.1)
Select Relevant Requirement Types (Process Notes 6.3.2)
Add New Filtration Criteria (Process Notes 6.3.3)
Identify Missing Requirements (Process Notes 7.1.1)
Identify Customer Value Ratings (Process Notes 7.1.2)
Identify Requirement Interaction (Process Notes 7.1.3)
Identify Prototyping Opportunity (Process Notes 7.1.4)
Find Missing Custodial Requirements (Process Notes 7.1.5)
Look for Likely Risks (Process Notes 7.2.1)
Quantify Each Risk (Process Notes 7.2.2)
Identify Estimation Input (Process Notes 7.3.1)
Estimate Effort for Events (Process Notes 7.3.2)
Estimate Requirements Effort (Process Notes 7.3.3)
Design Form of Specification (Process Notes 7.4.1)
Assemble the Specification (Process Notes 7.4.2)
Dictionary of Terms Used in the Requirements Process Model
Volere Requirements Specification Template
Contents
Project Drivers
Project Constraints
Functional Requirements
Nonfunctional Requirements
Project Issues
Preamble
Volere
Requirements Types
Testing Requirements
Requirements Shell
The Purpose of the Project
The User Business or Background of the Project Effort
Goals of the Project
The Client, the Customer, and Other Stakeholders
The Client
The Customer
Other Stakeholders
Users of the Product
The Hands-On Users of the Product
Priorities Assigned to Users
User Participation
Maintenance Users and Service Technicians
Mandated Constraints
Solution Constraints
Implementation Environment of the Current System
Partner or Collaborative Applications
Off-the-Shelf Software
Anticipated Workplace Environment
Schedule Constraints
Budget Constraints
Naming Conventions and Definitions
Definitions of All Terms, Including Acronyms, Used in the Project
Data Dictionary for Any Included Models
Relevant Facts and Assumptions
Facts
Assumptions
The Scope of the Work
The Current Situation
The Context of the Work
Work Partitioning
The Scope of the Product
Product Boundary
Product Use Case List
Individual Product Use Cases
Functional and Data Requirements
Functional Requirements
Data Requirements
Look and Feel Requirements
Appearance Requirements
Style Requirements
Usability and Humanity Requirements
Ease of Use Requirements
Personalization and Internationalization Requirements
Learning Requirements
Understandability and Politeness Requirements
Accessibility Requirements
Performance Requirements
Speed and Latency Requirements
Safety-Critical Requirements
Precision or Accuracy Requirements
Reliability and Availability Requirements
Robustness or Fault-Tolerance Requirements
Capacity Requirements
Scalability or Extensibility Requirements
Longevity Requirements
Operational and Environmental Requirements
Expected Physical Environment
Requirements for Interfacing with Adjacent Systems
Productization Requirements
Release Requirements
Maintainability and Support Requirements
Maintenance Requirements
Supportability Requirements
Adaptability Requirements
Security Requirements
Access Requirements
Integrity Requirements
Privacy Requirements
Audit Requirements
Immunity Requirements
Cultural and Political Requirements
Cultural Requirements
Political Requirements
Legal Requirements
Compliance Requirements
Standards Requirements
Open Issues
Off-the-Shelf Solutions
Ready-Made Products
Reusable Components
Products That Can Be Copied
New Problems
Effects on the Current Environment
Effects on the Installed Systems
Potential User Problems
Limitations in the Anticipated Implementation Environment That May Inhibit the New Product
Follow-Up Problems
Tasks
Project Planning
Planning of the Development Phases
Migration to the New Product
Requirements for Migration to the New Product
Data That Has to Be Modified or Translated for the New System
Risks
Costs
User Documentation and Training
User Documentation Requirements
Training Requirements
Waiting Room
Ideas for Solutions
Function Point Counting: A Simplified Introduction
Measuring the Work
A Quick Primer on Counting Function Points
Scope of the Work
Data Stored by the Work
Business Use Cases
Counting Function Points for Business Use Cases
Counting Input Business Use Cases
Counting Output Business Use Cases
Counting Time-Triggered Business Use Cases
Counting the Stored Data
Internal Stored Data
Externally Stored Data
Adjust for What You Don't Know
What's Next After Counting Function Points?
Project Sociology Analysis Templates
Stakeholder Map Template
Stakeholder Analysis Template
Glossary
Bibliography
Index