Software By Numbers

Strategies for High Return, Low Risk Application Development
By Mark Denne and Jane Cleland- Huang
First edition, 208 pages
ISBN 0-13-140728-7


buy now »


Active Tab Table of Contents

Table of Contents

Preface - xiii

Chapter 1
Software Development after dot.com - 1
Software Development Is Easy - 1
There’s a Method to the Madness - 3
If History Teaches Us Anything . . . - 3
Minimum Marketable Feature - 5
MMF Selection - 6
Opening the Black Box of Software Development - 7
Risk Control - 8
Sigma Techniques - 9
Measurable Customer Requirements - 10
Data-Backed Decision Making - 10
Incorporating the Voice of the Customer - 10
Challenging the Status Quo - 10
Span Organizational Structures - 10
Continuously Measurable Progress - 11
Summary - 11
References - 12

Chapter 2
The New ROI - 13
Applications and ROIs - 13
Why ROIs Matter - 14
The Business Case - 15
Cash Flow Projections - 15
Payback Time - 16
Present Value of Future Money - 17
Net Present Value - 17
Breakeven Time - 18
Internal Rate of Return - 18
Summary of the Terms - 19
An Example - 19
Incorporating MMFs into the Financial Case - 22
Comparing the MMF-based ROI with the Classic ROI - 24
Taking the Risks into Account - 24
The Impact of MMF Ordering - 25
Summary - 25
References - 25

Chapter 3
Identifying and Valuing Marketable Features - 27
Incremental Funding Methodology - 27
Minimum Marketable Features - 28
Candidate MMFs - 30
Determining the Value of an MMF - 31
Development and Delivery Precursors - 37
The MMF Precedence Graph - 38
Architectural Precursors - 40
Summary - 40
References - 40

Chapter 4
Incremental Architecture - 43
The Place of Architecture - 43
Architecture versus Rules - 44
The Problem with Architecture - 45
Pieces of the Pattern - 46
A Value-Driven Approach - 47
The Codependency of Architecture - 48
Taking Architecture in Easy Stages - 49
A Different Decomposition - 50
One-to-Many Dependencies in Architecture - 53
Architectural Coherency - 54
Multiple Inheritance in Architecture - 55
Spiral Architecture - 57
Summary - 58
References - 58

Chapter 5
IFM Sequencing Strategies - 61
Delivering Valued Features - 61
Cost versus Value Analysis - 62
Cost-Benefit Analysis of an MMF Delivery Sequence - 63
The Complexity of the Task - 66
MMF Sequencing Strategies - 67
The Greedy Approach - 67
A Simple Look-Ahead Approach - 69
The Weighted Look-Ahead Approach - 73
Sequencing MMFs and AEs - 74
Risk Mitigation - 76
Iterating the Sequencing Decision - 76
Summary - 77
References - 77

Chapter 6
MMF Categories and Parallel Development - 79
The Impact of MMF Behavior - 79
Time-Sensitive Delivery - 81
Exponential Growth Patterns - 82
Concurrent Development - 83
Summary - 88
References - 88

Chapter 7
Managing Intangibles - 89
Apples and Oranges: Dealing with Intangibles - 89
Managing Intangibles - 90
A Pairwise Approach to Quantifying Intangibles - 92
Step 1: Identify a Set of Gauges - 92
Step 2: Construct a Pairwise Comparison Table - 94
Step 3: Make Pairwise Comparisons - 94
Step 4: Calculate Equivalent SANPVs - 95
Hybrid MMFs - 97
The Impact of Intangibles on the Cost-Benefits Analysis - 97
Baseline NPV - 99
Potential NPV - 99
Lost Opportunity Costs - 100
Summary - 101
References - 102

Chapter 8
IFM and the Unified Process - 103
Introduction - 103
Inception - 105
Define the Vision Statement - 106
Define the Business Case - 106
Elicit MMFs - 106
Decompose MMFs into Use Cases - 107
Construct an MMF Graph - 108
Identify Major Risks Associated with Each MMF - 108
Develop a Project Glossary - 109
The Lifecycle Objective Milestone - 109
Elaboration - 110
Architectural Selection - 110
Cost and Effort Estimation - 111
The Lifecycle Architecture Milestone - 112
MMF Development and Delivery - 113
MMF Sequencing - 113
NPV Milestone - 114
MMF Design - 114
Elicit Requirements - 115
Design - 115
MMF Project Plan - 115
Feature Design Milestone - 116
MMF Construction - 116
Feature Operational Capability - 117
MMF Transition - 118
Feature Release Milestone - 118
MMF Selection Revisited - 119
Summary - 119
References - 119

Chapter 9
IFM and Agile Development - 121
The Challenges - 121
Incremental Development the Agile Way - 123
Clustering User Stories into MMFs - 124
Release Planning: Bundling User Stories in Releases - 127
Assessing the NPV of the Release Plan - 129
Release Planning Meeting - 131
The Architecture Question - 132
Simplest versus Look-Ahead Solution - 134
Other Agile Development Environments - 139
Feature-driven Development - 140
SCRUM - 142
Summary - 143
References - 143

Chapter 10
Informed Decision Making - 145
A Collaborative Approach - 145
Getting a Project Funded - 146
Manipulating Project Characteristics - 149
The IFM Window - 151
Implementing IFM Processes - 152
The Impact of IFM Strategies on Commercial Frameworks - 153
How Management Benefits from IFM - 155
When Projects Go Wrong - 155
Where Next? - 157
Summary - 157
References - 158

Chapter 11
A Case Study: IFM in Action - 159
Introduction - 159
IFM Element Definition Phase - 160
Selecting MMFs - 160
Defining MMF Strands - 161
Eliciting Architectural Elements - 161
Defining Architectural Dependencies - 163
Construct IFM Precedence Graph - 163
Financial Phase - 164
Computation Phase - 166
Sequence-Adjusted NPVs - 166
Sequence Selection - 168
The Greedy Heuristic - 168
The IFM Heuristic - 170
Measuring the Effectiveness of the IFM Heuristic - 173
ROI Analysis - 175
Cash Flow and Breakeven Time - 176
Concurrent Development - 177
Summary - 180

Appendix A - 183

Appendix B - 186

Index - 187