| | | Copyright |
| | | Preface to the Second Edition |
| | | Foreword to the First Edition |
| | | | Acknowledgments |
| | | Chapter 1. What Are Requirements? |
| | | | Requirements Gathering and Systems Modeling |
| | | | Agile Software Development |
| | | | Why Do I Need Requirements? |
| | | | What Is a Requirement? |
| | | | Evolution of Requirements |
| | | | The Template |
| | | | The Shell |
| | | | The Volere Requirements Process |
| | | Chapter 2. The Requirements Process |
| | | | Agility Guide |
| | | | Requirements Process in Context |
| | | | The Process |
| | | | A Case Study |
| | | | 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 |
| | | Chapter 3. Project Blastoff |
| | | | Agility Guide |
| | | | IceBreaker |
| | | | Scope, Stakeholders, Goals |
| | | | Setting the Scope |
| | | | 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 |
| | | Chapter 4. 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 |
| | | | Summary |
| | | Chapter 5. Trawling for Requirements |
| | | | Agility Guide |
| | | | Responsibility |
| | | | Trawling and Business Use Cases |
| | | | The Role of the Current Situation |
| | | | Apprenticing |
| | | | Observing Structures and Patterns |
| | | | Interviewing the Stakeholders |
| | | | Getting to the Essence of the Work |
| | | | Solving the Right Problem |
| | | | Innovative Products |
| | | | Business Use Case Workshops |
| | | | Creativity Workshops |
| | | | Brainstorming |
| | | | Personas |
| | | | Mind Maps |
| | | | Wallpaper |
| | | | Video and Photographs |
| | | | Wikis, Blogs, and Discussion Forums |
| | | | Document Archeology |
| | | | Some Other Requirements-Gathering Techniques |
| | | | Determining What the Product Should Be |
| | | | Does Technology Matter? |
| | | | Choosing the Best Trawling Technique |
| | | | Summary |
| | | Chapter 6. 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 |
| | | Chapter 7. 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 |
| | | Chapter 8. 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 |
| | | | Cultural and Political Requirements: Type 16 |
| | | | Legal Requirements: Type 17 |
| | | | Finding the Nonfunctional Requirements |
| | | | Don't Write a Solution |
| | | | Summary |
| | | Chapter 9. Fit Criteria |
| | | | Agility Guide |
| | | | Why Does Fit Need a Criterion? |
| | | | Scale of Measurement |
| | | | Rationale |
| | | | Fit Criteria for Nonfunctional Requirements |
| | | | Fit Criteria for Functional Requirements |
| | | | Use Cases and Fit Criteria |
| | | | Fit Criterion for Project Purpose |
| | | | Fit Criteria for Solution Constraints |
| | | | Summary |
| | | Chapter 10. Writing the Requirements |
| | | | Agility Guide |
| | | | Turning Potential Requirements into Written Requirements |
| | | | Knowledge Versus Specification |
| | | | The Volere Requirements Specification Template |
| | | | Section 1. The Purpose of the Project |
| | | | Section 2. The Client, the Customer, and Other Stakeholders |
| | | | Section 3. Users of the Product |
| | | | Section 4. Mandated Constraints |
| | | | Section 5. Naming Conventions and Definitions |
| | | | Section 6. Relevant Facts and Assumptions |
| | | | Section 7. The Scope of the Work |
| | | | Section 8. The Scope of the Product |
| | | | The Shell |
| | | | The Atomic Requirement |
| | | | Writing the Specification |
| | | | Section 9. Functional Requirements |
| | | | Nonfunctional Requirements |
| | | | Project Issues |
| | | | Section 18. Open Issues |
| | | | Section 19. Off-the-Shelf Solutions |
| | | | Section 20. New Problems |
| | | | Section 21. Tasks |
| | | | Section 22. Migration to the New Product |
| | | | Section 23. Risks |
| | | | Section 24. Costs |
| | | | Section 25. User Documentation and Training |
| | | | Section 26. Waiting Room |
| | | | Section 27. Ideas for Solutions |
| | | | Summary |
| | | Chapter 11. The Quality Gateway |
| | | | Agility Guide |
| | | | Requirements Quality |
| | | | Using the Quality Gateway |
| | | | Testing Completeness |
| | | | Testing Traceability |
| | | | Consistent Terminology |
| | | | Relevant to Purpose? |
| | | | Testing the Fit Criterion |
| | | | Viable within Constraints? |
| | | | Requirement or Solution? |
| | | | Customer Value |
| | | | Gold Plating |
| | | | Requirements Creep |
| | | | Implementing the Quality Gateway |
| | | | Summary |
| | | Chapter 12. Prototyping the Requirements |
| | | | Agility Guide |
| | | | Prototypes and Reality |
| | | | Low-Fidelity Prototypes |
| | | | high-fidelity Prototypes |
| | | | Storyboards |
| | | | Object Life History |
| | | | The Prototyping Loop |
| | | | Summary |
| | | Chapter 13. Reusing Requirements |
| | | | What Is Reusing Requirements? |
| | | | Sources of Reusable Requirements |
| | | | Requirements Patterns |
| | | | A Business Event Pattern |
| | | | Forming Patterns by Abstracting |
| | | | Domain Analysis |
| | | | Trends in Reuse |
| | | | Summary |
| | | Chapter 14. Reviewing the Specification |
| | | | Agility Guide |
| | | | Reviewing the Specification |
| | | | Inspections |
| | | | Find Missing Requirements |
| | | | Have All Business Use Cases Been Discovered? |
| | | | Customer Value |
| | | | Prioritizing the Requirements |
| | | | Conflicting Requirements |
| | | | Ambiguous Specifications |
| | | | Risk Analysis |
| | | | Measure the Required Effort |
| | | | Summary |
| | | Chapter 15. Whither Requirements? |
| | | | Adapting the Process |
| | | | What About Requirements Tools? |
| | | | Mapping Tools to Purpose |
| | | | Publishing the Requirements |
| | | | Requirements Traceability |
| | | | Dealing with Change |
| | | | Requirements Retrospective |
| | | | Your Notebook |
| | | | The End |
| | | Appendix A. Volere Requirements Process Model |
| | | | The Volere Requirements Process Model |
| | | | 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) |
| | | | 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 |
| | | Appendix B. Volere Requirements Specification Template |
| | | | Contents |
| | | | Preamble |
| | | | Volere |
| | | | Requirements Types |
| | | | Testing Requirements |
| | | | Requirements Shell |
| | | | Section 9. Functional and Data Requirements |
| | | | Section 10. Look and Feel Requirements |
| | | | Section 11. Usability and Humanity Requirements |
| | | Appendix C. Function Point Counting: A Simplified Introduction |
| | | | Measuring the Work |
| | | | A Quick Primer on Counting Function Points |
| | | | Counting Function Points for Business Use Cases |
| | | | Adjust for What You Don't Know |
| | | | What's Next After Counting Function Points? |
| | | Appendix D. Project Sociology Analysis Templates |
| | | | Stakeholder Map Template |
| | | | Stakeholder Analysis Template |
| | | Glossary |
| | | Bibliography |
| | | Inside Front Cover |
| | | Index |