Succeeding with Use Cases: Working Smart to Deliver Quality

Richard Denney

  • 出版商: Addison Wesley
  • 出版日期: 2005-05-06
  • 售價: $1,950
  • 貴賓價: 9.5$1,853
  • 語言: 英文
  • 頁數: 336
  • 裝訂: Paperback
  • ISBN: 0321316436
  • ISBN-13: 9780321316431
  • 海外代購書籍(需單獨結帳)
    無現貨庫存(No stock available)



Table of Contents:




1. An Introduction to QFD: Driving Vision Vertically.

    Through the Project

    The Language Gap

    QFD in Use Case-Driven Projects

      Business Drivers in QFD

      The "Chaos" of Projects and the Importance of Prioritization

    Running a QFD Workshop: Mega Motors Example

      Workshop Overview

      Identify Use Cases

      Analyze Relationship of Use Cases to Business Drivers

      Analyze Correlations Between Use Cases

      First Matrix Complete; QFD Workshop Status Check

      "Flipping the Matrix": Deployment to Quality Requirements

      Flipping the Matrix: Deployment to Vehicle Components

      Workshop Conclusion and Summary

    Chapter Review

2. Aligning Decision Making and Synchronizing Distributed Development Horizontally in the Organization.

    Using QFD to Align Decision Making Horizontally Across a Company

      A Brief Overview of Oil and Gas Exploration

      The Problem: Selecting A Shared Earth Modeling Development Kit

      O&G's QFD Road Map

      Matrix 1: Prioritize Use Cases

      Matrix 2: Prioritize Non-Functional Requirements

      Matrix 3: Prioritize Earth Modeling Techniques

      Matrix 4: Prioritize Shared Earth Modeling Dev Kits

      Example Conclusion and Summary

    Using QFD to Synchronize Distributed Development Horizontally Across Component Teams

      Entropy Happens in Distributed Software Development

      Planning the Length of Iterations and Number of Use Cases per Iteration in Distributed Software Development

    Chapter Review


3. Operational Profiles: Quantifying Frequency of Use of Use Cases.

    Operational Profile of Use Case Scenarios

      Decision Graphs

      Pareto Principle and Guesstimates

    Working Smarter: Scenarios of a Use Case

      Time-Boxing an Inspection

      Bottom-Up Estimation of Tests Needed per Scenario

    Operational Profile of a Use Case Package

      Sanity Check Before Proceeding

      Use Case Relationships

      Sales Order Example

      Probability that Include/Extend Use Cases Are Actually Used

      Concluding Thoughts About Use Case Relationships

    Working Smarter: Use Case Packages

      Time-Boxing for a Package of Use Cases

      Transitioning from High-Level to Low-Level Planning

      Air Bags and Hawaiian Shirts

    Extending Operational Profiles to Address Critical Use Cases

      What Does "Critical" Mean?

      It's a Calculated Risk

      Hardware Widget Example

      Profiling Risk in Use Cases

      What Have You Got to Lose?

    Chapter Review

4. Reliability and Knowing When to Stop Testing.

    What Is "Reliability"?

      Software Reliability is User-Centric and Dynamic

      Software Reliability Is Quantifiable

      Reliability: Software Versus Hardware

    Failure Intensity

      Visualizing Failure Intensity with a Reliability Growth Curve

      Selecting a Unit of Measure for Failure Intensity

      Setting a Failure Intensity Objective

      But What's the Right Failure Intensity Objective?

    The Swamp Report

      Dashboard Layout

      Establish Planned Test Coverage as per Operational Profile

      Initialize Dashboard Before Each Test Iteration

      Update the Dashboard at the End of Each Test Iteration

      Tracking the Swamp Through Time

    Determining the Effectiveness of Your SRE-Based Test Process

      Final Notes on DDE

    Chapter Review


5. Use Case Preconditions, Postconditions, and Invariants: What They Didn't Tell You, But You Need to Know!

    Sanity Check Before Proceeding

    A Brief History of Preconditions and Postconditions

    Calculating Preconditions from Postconditions

      Use Case Overview

      Step 1. Find a "Risky" Postcondition: Model as an Equation

      Step 2. Identify a Potential Failure: State an Invariant

      Step 3. Compute the Precondition

    Why Does This Work?!

    Modeling State Change

    Model-Based Specification

    Reasoning About State Through Time

      Use Case Overview

      Step 1. Find "Risky" Postconditions: Model as Equations

      Step 2. Identify a Potential Failure: State an Invariant

      Step 3. Calculate Preconditions

    Exploring Boundary Condition Failures

      Step 1. Identify Postconditions Associated with Boundaries of Operation

      Step 2. State an Invariant the Postconditions Should Not Violate

      Step 3. Calculate Preconditions

    Further Thoughts: Preconditions, Postconditions, and Invariants in Use Cases

      Preconditions and Postconditions of Individual Operations Versus the Use Case as a Whole

      Scope of Preconditions and Postconditions: Scenario Versus Whole Use Case

      Postconditions Can Have More than One Precondition

      Weak and Strong Preconditions

      Types of Invariants in Use Cases

    Working Smart in How You Apply What You've Learned

      Prioritize Where You Apply Model-Based Specification

      Stick to Numeric Problems

      The Absolute Least You Need to Know: One Fundamental Lesson and Three Simple Rules

    Chapter Review

6. Triple Threat Test Design for Use Cases.

    "Triple Threat" Test Cases?

      Threat #1-The Precondition

      Threat #2-The Postcondition

      Threat # 3-The Invariant

    Applying the Extended Use Case Test Design Pattern

      Step 1. Identify Operational Variables

      Step 2. Define Domains of the Operational Variables

      Step 3. Develop the Operational Relation

      Step 4. Build Test Cases

    Closing Thoughts

    Chapter Review


7. Calculating Your Company's ROI in Use Case Configuration Management.

    Overview of ROI

    Requirements Management Tools

    Calculating the ROI

    Conventions and Starting Assumptions

      Assumptions About Cost of a Fully Burdened Employee

      Initial Actual Data about Use Cases

    The Cost

      Cost of Tools, Training, Consulting, and Rollout Team

      Cost of Tool Use Overhead

      Cost of Added Review and Rigor

    The Benefits

      Savings from Staff Working more Efficiently

Savings from Avoiding the Cost of Lost Use Cases from Staff Churn

      Savings from Avoiding Cost of Unnecessary Development

      Savings from Reducing the Cost of Requirements-Related Defects

    Bottom Line: Benefit to Cost Ratio

    Dealing with Uncertainty in the Model

    Chapter Review

8. Leveraging Your Investment in Use Case CM in Project Portfolio Management.

    What this Chapter Is (and Isn't) About

    The Good Thing About Use Cases...

    Use Case Metadata (Requirements Attributes)

    How Are You Currently Invested?

      Inventory of Projects

      Metadata Needed for Use Cases

      Assign Use Case to Project and Estimate Effort

      Checking the Mix

    Managing the Pipeline

      Full Time Equivalent (FTE) Models of the Project Portfolio

      Run Chart of FTEs Through Time

    Tracking the Status of the Portfolio via Use Cases

      Status of Use Cases

      Tracking the Progress of Projects with the Status of Use Cases

    Chapter Review


Appendix A: Sample Use Case.

Appendix B: Bare-Bones Project Portfolio Database and Use Case Metadata.

    Bare-Bones Portfolio Database

      Use Case Metadata

      Checking the Mix of Project Types

Appendix C: Run Chart of FTEs Required by Project Portfolio.

    Query to Sum Use Case Effort by Project Code

      Query to Prepare Data for Import to Microsoft Project

Appendix D: Reports for Tracking Progress of Projects in Portfolio.

    Metadata for Use Case Status

      Report for Tracking Status of Projects in the Portfolio by Use Case Status