Introduction - The Evolution of
the Metrics
- Computing Nuclear Weapons Effects
- Computer Budgets
in the Pentagon
- Applying the Rayleigh Concept to New Projects
- The
Rayleigh Concept Leads to the Software Equation
- Second Key Relationship:
Manpower Buildup Equation
- The Rayleigh Curve As a Process Control Vehicle
Part
I What Software Stakeholders Want Chapter
1 Some Software Organizations Are Doing Very Well - Maturity
Assessments Reflect Hope
- Has Software Development Mired Down?
- Way
Down Low
- Intelligence Can Guide Us
Chapter 2
A Finite Planet Makes Measurement Essential - What Makes Metrics Effective?
- What
the Right Metrics Are
- How the Core Metrics Relate
- The
Management of Software Projects Is Very Difficult
- Specifications
-
Capability Maturity Model
- Process
- Measure What Has Been
Done
- These Five Metrics Work Together
Chapter
3 Integrate Metrics with Software Development - Metrics Meter Limited
Resources
- What Is the Process?
- Phase One: Inception
- Phase
Two: Elaboration
- Phase Three: Construction
- Phase Four: Transition
Chapter
4 "I Want Predictability" - The Software Situation Is Serious
- Department of Defense Calls for Predictability
- The Underlying
Reasons Are Complex
- Competition Stirs the Pot
- The Limits of
the Possible
- There Are Certain Limits
Part
II The Metrics Needed for Effective Control Chapter
5 The Measurement View - The Profound Difference
- One
Fact Is Minimum Development Time
- The Core Measurements Underlie "Getting
Work Done"
- The Key Concepts
- Expressing the Key Concepts
in Metrics
- Time
- Effort
- Quality
- Amount of Work
- Process Productivity
Chapter 6 Estimating
Size as a Measure of Functionality - Shannon's Path
- Representing
the Amount of Functionality
- Sizing Functionality by Calibration
- Sizing
Implications of Reuse
- Estimate Size
- Get the Facts
- Get
the People
- Get the Data
- Allow Time
- Employ an Estimating
Method
Chapter 7 Penetrating the Software
Productivity Jungle - Finding the Right Relationship
- The Relationship
of Time to Size
- The Relationship of Effort to Size
- The Software
Equation
- The Effect on Productivity
- Conventional Productivity
Varies Widely
- Schedule Is a Factor in Productivity
- How Conventional
Productivity Behaves
- How Process Productivity Behaves
- Obtain
Process Productivity by Calibration
- Don't Do It This Way!
- Do
It with Process Productivity
Chapter 8 Defect Rate Measures
Reliability - The Fifth Core Metric
- Software Development Is
in Trouble
- Why Do We Commit Errors?
- Plan Projects to Minimize
Error-Making
- Limit Functionality
- Allow Sufficient Schedule Time
- Allow Sufficient Effort
- Improve Process Productivity
- Find
Defects
- Some Defects Remain at Delivery
Part
III Control at the Project Level Chapter 9 Do the Hard Stuff
FirstEstablish Feasibility - The Vision Comes First
-
What to Build
- Risk
- Economic Constraints
- An Endless Task
- How
We Got into This Leaky Boat
- The Inception Phase Establishes Feasibility
- Delimit Scope
- Select an Architecture Possibility
- Mitigate
Critical Risk
- A Feasibility Decision, 150 Years Later
- Make
the Business Case
- Where Do the Resources Come From?
- Were Our
Ancestors Shrewder?
Chapter 10 Do the Tough
Stuff NextFunctional Design - The Tough Stuff
- Meshing
the Activities
- Formulating Requirements Is No Longer Simple
- Difficulties
Fixing Requirements
- What We Need to Do
- Key Requirements
Lead to Functional Design
- Identify Significant Risks?
- The Business
Case at Phase Two
- Supporting Phase Two Itself
- Nearing the Bid
Decision
Chapter 11 The Power of the Trade-Off -
Avoid the Impossible Region
- Stay Out of the Impractical Region
- Trade-Off
Time and Effort
- Trade-Off Time and Defects
- Small Is Beautiful
- Once More with Emphasis: Small Is Beautiful!
- Selecting the
Software Relationship
- There Must Be a Relationship
- The Relationship
Must Be Reasonably Accurate
- Management Must Use the Relationship
- The
Bid Is Different from the Estimate
Chapter 12 Turning
Your Range Estimate Into Your Client's Point Bid - The Uncertainty Drivers
- The Time-Effort Curve Is Uncertain
- Estimators Face Constraints
- Manage Estimating Risk
- Get Out of the Uncertainty Trap
- Work
with Uncertainty, Not in Defiance of It
Chapter
13 The Main Build Leads to Operational Capability - Staff Allocation
- Projecting Functionality
- Detecting Defects in Test
- Apply
Statistical Control to the Core Metrics
- Track System Size
- Track
Defects
- The Essential Point: Control
Chapter
14 The Operation and Maintenance Phase - Where Does Phase Four Begin?
- What Goes On in the Phase?
- Find and Fix Defects
- Improve
Reliability
- Adapt the System
- Modify the System
- When
Does the Phase End?
- How to Estimate the Phase
Chapter
15 Replan Projects in Trouble - The Award Differs from the Original
Estimate
- The Award Reflects the Estimate
- Replan Troubled Projects
- Replan Periodically
Part IV Control at the
Organization Level Chapter 16 A Telecommunications Company
Evaluates Its Software Suppliers - Lessons from Construction
- Lack
of Facts Leads to Pain
- Lower Tier, the Same
- PTT Telecom BV Gets
Real
- The PTT Faces Competition
- The Telecom Considers What to
Do
- How to Do It?
- Purchasing Alerts Management
- The Telecom
Gets Results
- Results on Sample Projects
Chapter
17 Evaluate Bids on the Facts - The Reality Is Research and Development
- Getting to the Facts
- The Bidder Cooperates
- The Evaluators
Consider Schedule
- The Evaluators Consider Effort
- The Evaluators
Consider Reliability
- The World of Wild Bidding
- The
Vendor Tries to Buy In
- The Vendor Gold Plates
- Experience
Supports the Factual Approach
- Who Needs the Facts?
Chapter
18 Managing a Portfolio of Projects - A Senior Manager Can Master-Plan
- Good Project Plans Underlie a Good Master Plan
- What a Master
Plan Does
- The Master Curve Shows Declining Staff
- The Master Curve
Shows Increasing Staff
- Control of Project Backlog
- Coping with
Powerful Project Managers
- Planning Staff at the Enterprise
Level
Chapter 19 Improving the Software Development
Process - Performance Comes from the Entire Process
- Pre-Phase:
Needs
- Inception Phase (or Feasibility)
- Elaboration Phase (or
Functional Design)
- Construction Phase (or Main Build)
- Transition
(or Operation and Maintenance)
- Phases Are Implemented by Workflows
-
Process Improvement Comes Hard
- Process Productivity Rises Slowly
-
Process Productivity Extends Over a Great Range
- Why Has Process
Improvement Been Hard?
- Trapped in the Economy
- Need for Client
Participation
- Software Development Is Difficult
-
Some Organizations Are Improving Their Process
- The Place to Start Is
Where You Are
Chapter 20 Managing Reusable Components
- The Five Stages of Reuse
- Hip-Pocket Reuse
- Reuse
from a Repository
- Product-Line Reuse
- ERP Systems Are a Form
of Reuse
- Architecture-Wide Reuse
- What Are the Essential
Supports for Reuse?
- Architecture Accommodates Components
- Interfaces
Enable Inter-Component Communication
- Variation Mechanisms Multiply Adaptability
- Process Provides Locations for Selection
- Modeling Language
Provides the Means
- Tools Implement These Needs
- Internet-Hosted
Services
- Estimating in the Age of Reuse
- Components
from a Repository
- Product-Line and ERP Reuse
- Any
Metric Measuring Functionality Will Do
- Finding That Metric
-
Calibration to the Rescue
- Fundamental Principle Reinforced
-
Architecture-Wide Components Increase Reuse
- Functionality or Process
Productivity?
- Size Adjustment Seeks "Effective" Size
-
Second Approach Adjusts Process Productivity
Chapter 21 Metrics Backstop Negotiation - Negotiation Bridges Gaps
- The Principal Gaps
- Different Interests at Stake
- A
Job for Negotiation Man!
- The Core Metrics Support Negotiation
- Software Development Depends on Negotiation
- Negotiation Depends
Upon Metrics
Chapter 22 Motivating Participants
in the Software Development Process - People Are the Ultimate Resource
- Hire Good People
- Build Organizations
- Keep People
- Give People Time
- Five Essential Motivating Factors
- Extending Estimating Wisdom More Widely
- Ten Great Truths
-
The Five Great Truths About Metrics
- The Five Great Truths About Software
Development
Appendix A Good Enough Is Better
Than Floundering Appendix B Behavior of the Core Metrics
- Study Results
- Size
- Effort
- Time
-
Staff
- Process Productivity
- Mean Time To Defect
-
Will the Next Period Reverse Again?
Bibliography
Index |