summary 1. the sortware product value chain

9
A Value-Chain Analysis or Sortware Productivity Components Barry W. Boehm, TRW Inc. Phillip N. Papaccio, TRW Inc. Summary This paper summarizes a recent value-chain analysis of software productivity components at TRW. It explains the various value chain components and per- centages, assesses their implications for improving software productivity, and elaborates on some further data analysis performed to address one of the major value chain components: rework costs. 1. The Sortware Product Value Chain The value chain, developed by Porter and his associates at the Harvard Busi- ness School [Porter, .1980; Porter, 1985], is a useful method of understanding and controlling the costs involved in a wide variety of organizational enter- prises. It identifies a canonical set of cost sources or value activities, represent- "ing the basic activities an organization can choose from to create added value for its products. Figure 1 shows a value chain for software development representative of experience at TRW. Definitions and explanations of the com- ponent value activities are given below. These are divided into what [Porter, 1985] calls primary activities (inbound logistics, outbound logistics, marketing and sales, service, and operations) and support activities (infrastructure, human resource management, technology development, and procurement). Primary Activities Inbound logisties covers activities associated with receiving, storing, and dissem- inating inputs to the products. This can be quite large for a manufacturer of, say, automobiles; Cor software it consumes less than 1 % of the development outlay. (For software, the related support activity of proeurement is also included here). Outbound logisties covers activities concerned with collecting, storing, and physi- cally distributing the product to buyers. Again, for software, this consumes less than 1 % of the total. 1

Upload: others

Post on 12-Sep-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Summary 1. The Sortware Product Value Chain

A Value-Chain Analysis or Sortware Productivity Components

Barry W. Boehm, TRW Inc.Phillip N. Papaccio, TRW Inc.

Summary

This paper summarizes a recent value-chain analysis of software productivitycomponents at TRW. It explains the various value chain components and per­centages, assesses their implications for improving software productivity, andelaborates on some further data analysis performed to address one of the majorvalue chain components: rework costs.

1. The Sortware Product Value Chain

The value chain, developed by Porter and his associates at the Harvard Busi­ness School [Porter, .1980; Porter, 1985], is a useful method of understandingand controlling the costs involved in a wide variety of organizational enter­prises. It identifies a canonical set of cost sources or value activities, represent-"ing the basic activities an organization can choose from to create added valuefor its products. Figure 1 shows a value chain for software developmentrepresentative of experience at TRW. Definitions and explanations of the com­ponent value activities are given below. These are divided into what [Porter,1985] calls primary activities (inbound logistics, outbound logistics, marketingand sales, service, and operations) and support activities (infrastructure, humanresource management, technology development, and procurement).

Primary Activities

Inbound logisties covers activities associated with receiving, storing, and dissem­inating inputs to the products. This can be quite large for a manufacturer of,say, automobiles; Cor software it consumes less than 1% of the developmentoutlay. (For software, the related support activity of proeurement is alsoincluded here).

Outbound logisties covers activities concerned with collecting, storing, and physi­cally distributing the product to buyers. Again, for software, this consumes lessthan 1% of the total.

1

Page 2: Summary 1. The Sortware Product Value Chain

I _

Figure 1. Software Development Value Chain

INF RASTRUCTURE•

HUMAN RESOURCE MANAGEMENT

•TECHNOLOGY DEVELOPMENT

3181

IT 1MANAGEMENT

7 I1

M

I I0A

N OA. CMUII

ITIt

0 30IEU

1 : liE WORK0

TN I U t SERVICEI D •

3 • N" L •I D5 IG 0 •G

1e••

L• 0I •GI S IA TROTS 13PRELIM. Sl I DESIGN

DET AILED 7TE C DESIGNCODE AND II S UNIT TESTINTEGRATIONC

AND TEST

S

2

Page 3: Summary 1. The Sortware Product Value Chain

Marketing and sales covers activities associated with providing a means bywhich buyers can purchase the product and inducing them to do so. A 5%figure is typical or government contract software organizations. Sortware pr~duct houses would typically have a higher figure; internal applications­programming shops would typically have a lower figure.

Service covers activities associated with providing service to enhance or main­tain the value or the product. For software, this comprises the activities gen­eral1y cal1ed sortware maintenance or evolution. For simplicity, Figure 1 avoidsincluding a service cost component in the development value chain; a life-cyclevalue chain is presented and discussed as Figure 2 below.

Operations covers activities associated with transforming inputs into the finalproduct rorm. For software, operations typical1y involves roughly rour-fifths ofthe total development outlay.

In such a case, the value-chain analysis involves breaking up a large componentinto constituent activities. Figure 1 shows such a breakup into management(7%), quality assurance and configuration management (5%), and the distribu­tion of technical effort among the various development phases. This phasebreakdown also covers the cost sources due to rework. Thus, for, example, ofthe 20% overall cost of the technical effort during the integration and testphase, 13% is devoted to activities required to rework deficiencies in or reorien­tations of the requirements, design, code, or documentation; the other 7%represents the amount or effort required to run tests, perform integration func­tions, and complete documentation even if no problems were detected in theprocess.

Support Activities

Infrastructure covers such activities as the organization's general managementplanning, finance, accounting, legal, and government affairs. The 8% figure istypical of most organizations.

Human resource management covers activities involved in recruiting, hiring,training, development, and compensation of all types of personnel. Given thelabor-intensive and technology-intensive nature of software development, the3% figure indicated here is a less-than-optimal investment.

Technology development covers activities devoted to creating or tailoring newtechnology to improve the organizations products or processes. The 3% invest­ment figure here is higher than many software organizations, but stilI less than

a

Page 4: Summary 1. The Sortware Product Value Chain

Figure 2. Software Life-Cycle Value Chain

,,,ID£VELONENTI REWORK

\~

•I \- I SERVICEI

C"MAINTENANCE".

III

I A• I:I••

R PO

DDca..,UT

~

j

"

Page 5: Summary 1. The Sortware Product Value Chain

optimal as an investment to improve software productivity and quality.

Margin and Service

Margin in the value chain is the difference between the value of the resultingproduct and the collective cost of performing the value activities. As thisdifference varies widely among software products, it is not quantitativelydefined in Figure 1. As discussed above, service is best quantified as a softwarelife-cycle value chain as shown as Figure 2, with roughly 70% of the valueactivity devoted to service or evolution-related activity. However, since thecomponent activities involved during evolution do not differ markedly fromthose which go on during software development, we will continue to focus onFigure 1 as a source of insights into understanding and controlling softwarecosts.

Software Development Value Chain Implications

The primary implication of the software development value chain is that the"Operations" component is the key to significant improvements. Not only is itthe major source of software costs, but also most. of the remaining componentssuch as "Human Resources" will scale down in a manner proportional to thescaling down of Operations cost.

Another major characteristic of the value chain is that virtually all of the com­ponents are still highly labor-intensive. Thus, there are significant opportunitiesin providing automated aids to make these activities more efficient and capital­intensive. Further, it implies that human-resource and management activitieshave much higher leverage than their 3% and 7% investment levels indicate.

The breakdown of the Operations component indicates that the leading stra­tegies for cost savings in software development involve:

• Making individual steps more efficient, via such capabilities asautomated aids to software requirements analysis or testing.

• Eliminating steps, via such capabilities as automatic programming orautomatic quality assurance.

• Eliminating rework, via early error detection, or via such capabilitiesas rapid prototyping to avoid later requirements rework.

6

Page 6: Summary 1. The Sortware Product Value Chain

In addition, further major cost savings can be achieved by reducing the .totalnumber of elementary Operations steps, by developing products requiring thecreation of fewer lines of code. This has the effect or reducing the overall sizeof the Value Chain itself. This source of savings breaks down into two pr~maryoptions: ;

• Building simpler products, via more insightful front-end activities suchas prototyping or risk management .

• Reusing software components, via such capabilities as fourth­generation languages or component libraries.

2. The Software Productivity Improvement Opportunity Tree

This breakdown of the major sources of software cost savings leads to theSoftware Productivity Improvement Opportunity Tree shown in Figure 3. Thishierarchical breakdown helps us to understand how to fit the various attractiveproductivity options into an overall integrated software productivity improve­men t strategy.

Further discussions of the various productivity options are provided in [Boehm,1986a]. As one example involving further data analysis, we studied the distribu­tion of rework costs on a sample of 1378 problem reports on two large TRWsoftware projects. These studies indicated that rework instances tend to followa Pareto distribution: 80% of the rework costs typically result from 20% of theproblems. Figure 4 shows some typical distributions of this nature from recentTRW software projects; similar trends have been indicated in [Rubey et aI,1975],[Formica, 1978], and [Basili-Weiss, 1981]. The major implication of thisdistribution is that software verification and validation activities should focuson identifying and eliminating the specific high-risk problems to be encounteredby a software project, rather than spreading their available early-problem­elimination effort uniformly across trivial and severe problems. Even morestrongly, this implies that a risk-driven approach to the software life-cycle suchas the spiral model [Boehm, 1986] is preferable to a more document-drivenmodel such as the traditional waterfall model.

8

Page 7: Summary 1. The Sortware Product Value Chain

Figure 3. Productivity Improvement Opportunity Tree

MAKEPEOPLE MOREEFFECTIVE

MAKE STEPSMOREEFFICIENT

EUMINA TESTEPS

EUMINA TEREWORK

BUILDSIMPLERPRODUCTS

REUSECOMPONENTS

INCENTIVES. STAFFING. TRAINING

FACILITIES

MANAGEMENT

SOFTWARE TOOLS. ENVIRONMENTS

WORKSTATIONS

OFFICE AUTOMATION

AUTOMATED DOCUMENTATION. QUALITY ASSURANCE

AUTOMATED PROGRAMMING

KNOWLEDGE·BASED SOFTWARE ASSISTANT

INFORMATION HIDING. MODERN PROGRAMMING PRACTICES

SOFTWARE COMPUTER AIDED DESIGN

FRONT -END LANGUAGES

IN CREMENT AL DEVELOPMENT

RAPID PROTOTYPING

PROCESS MODELS

COMPONENT UBRARIES

APPLICATION GENERATORS

FOURTH·GENERA TION LANGUAGES

7

Page 8: Summary 1. The Sortware Product Value Chain

Figure 4. Rework Costs are Concentrated in a Few High-Risk Items

.0

'" OF 10COSTTOFIXSPR', .0

20

oo

TRW PROJECT A1373 SPR',)

20 30 .0 50 .Q 70 10" OF SPR', (SOFTWARE PROBLEM REPORTS)

8

10 '00

Page 9: Summary 1. The Sortware Product Value Chain

{Basili-Weiss, 19S1]. V. R. BASILI and D. M. WEISS, "Evaluation of aSoftware Requirements Document by Means of Change Data", Proceedings,Fifth International Conference on Software Engineering, IEEE, March 19S1,pp. 314-323.

[Boehm, 19S6]. B. W. BOEHM, "A Spiral Model of Software Developmentand Enhancement", Proceedings, IEEE Second Software Process Workshop,ACM Software Engineering Notes, March 19S6.

[Boehm, 1986a]. B. W. BOEHM, "Understanding and Controlling SoftwareCosts", Proceedings, IFIP 86, North Holland, 1986.

[Formica, 1978]. G. FORMICA, "Software Management by the EuropeanSpace Agency: Lessons Learned and Future Plans", Proceedings, ThirdInternational Software Management Conference, AlAA/RAeS, London,

. October 1975, pp. 15-3S.

[Porter, 19S0]. M. E. PORTER, Competitive Strategy: Techniques forAnalyzing Industries and Competitors, New York: The Free Press, 1980.

[Porter, 1985]. M. E. PORTER, Competitive Advantage, New York: TheFree Press, 1985.

[Rubey et ai, 1975]. R. J. RUBEY, J. A. DANA, and P. W. BICHE, "Quan­. ~itative Aspects of Software Validation", IEEE Trans. Software Engineer­

ing, June 1975, pp. IS0-1SS.