Star Wars Sale

Special Offers see all

Enter to WIN!

Weekly drawing for $100 credit. Subscribe to for a chance to win.
Privacy Policy

More at Powell's

Recently Viewed clear list

Original Essays | June 20, 2014

Lisa Howorth: IMG So Many Books, So Many Writers

I'm not a bookseller, but I'm married to one, and Square Books is a family. And we all know about families and how hard it is to disassociate... Continue »
  1. $18.20 Sale Hardcover add to wish list

    Flying Shoes

    Lisa Howorth 9781620403013


Succeeding with Use Cases: Working Smart to Deliver Quality

Succeeding with Use Cases: Working Smart to Deliver Quality Cover


Synopses & Reviews

Publisher Comments:

Build on Use Cases to Deliver Higher-Quality, Higher-Value Software

You can dramatically improve software quality and value by integrating use cases with best-practice software quality engineering disciplines.

Richard Denney presents practical, cost-effective techniques that help your entire development organization deliver superior software.

Using realistic examples, Denney demonstrates how to complement use cases with Quality Function Deployment (QFD), Software Reliability Engineering (SRE), Model-Based Specification (preconditions, postconditions, and invariants), Requirements Configuration Management, and Project Portfolio Management. Denney's techniques address challenges faced by project and product managers, team leads, developers, designers, software engineers, and testers alike. These techniques offer immense value no matter what methodology you use—from the Unified Process to Extreme Programming.

  • Use QFD to make sure you release products that are true to your business drivers

  • Drive your project's vision vertically, from senior management and marketing to the development team

  • Align/synchronize distributed development horizontally across component teams, product teams, and business groups

  • Use SRE to maximize reliability and customer satisfaction—while minimizing engineering costs

  • Build use case operational profiles that help you spend development dollars more intelligently

  • Get solid metrics that tell you when it's time to stop testing

  • Use Model-Based Specification to sharpen your analysis of potential failures

  • Understand precondition and postcondition realities they never mentioned in "Use Case 101"

  • Design effective test cases using preconditions, postconditions, and invariants

  • Use Configuration Management of Use Cases to help your company work smarter

  • Leverage use cases in Project Portfolio Management—quite possibly the most valuable process improvement you can make

  • Calculate ROI on your company's investments in a requirements management tool and process

© Copyright Pearson Education. All rights reserved.

About the Author

Richard Denney is a software quality consultant with more than twenty-five years of experience in software development and process management. Denney has been a principal in process improvements for the oil industry's two largest suppliers of software solutions, Schlumberger and Landmark Graphics (a Halliburton company), and as an affiliate consultant with TeraQuest Metrics, Inc. (part of Borland Software Corporation). Based in Austin, TX, Denney holds B.A. and M.S. degrees in Computer Science from the University of Texas at Austin, and is certified through the Product Development and Management Association (PDMA). For supplemental information or to contact the author, visit

© Copyright Pearson Education. All rights reserved.

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



Product Details

Addison-Wesley Professional
Programming - Object Oriented Programming
Denney, Richard
Application software
Programming / Object Oriented
Application software -- Development.
Software patterns.
Software Engineering-Object Oriented Programming
Edition Description:
Trade paper
The Addison-Wesley Object Technology Series
Publication Date:
May 2005
Grade Level:
Professional and scholarly
9.38x6.98x.82 in. 1.38 lbs.

Related Subjects

Computers and Internet » Computers Reference » General
Computers and Internet » Software Engineering » General
Computers and Internet » Software Engineering » Object Oriented Programming

Succeeding with Use Cases: Working Smart to Deliver Quality
0 stars - 0 reviews
$ In Stock
Product details 336 pages Addison-Wesley Professional - English 9780321316431 Reviews:
  • back to top
Follow us on...

Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at