Estimates and Measurement for a Software Product Line
In today’s environment where technology rapidly changes, an increasing number of companies, agencies and organizations are realizing that they can no longer afford to develop multiple software products one product at a time. They are being pressured to deploy new products or add functionality to existing ones at a rapid pace. Simultaneously, companies must develop high quality products that minimize the cost to maintain, make effective use of very limited resources, compensate for an inability to hire, and achieve mass customization. Many organizations are finding that the practice of building sets of related systems together can yield remarkable quantitative improvements in cost, productivity, time to market, product quality, flexibility, and customer satisfaction, as well as enable flexible responsiveness and provide a mass customization capability. The adoption of a product line approach for their software systems is quickly emerging as a viable and important new software development paradigm to accomplish these universal business goals. Organizations can achieve considerable economies of scale (savings) by using a product line approach for software system production.
This Paper discusses techniques to develop cost estimates and apply measurements for software product lines.
1. A process framework for Software Product Line Measurement and Cost Estimation. The framework discusses the inputs required for measurement and cost estimation. The workflow for creating effort and cost estimates. Tools utilized in producing the estimates. And the outputs from the process.
2. Because product lines involve configuring and tailoring core assets there are engineering differences between classic stand alone product engineering and product line implementations. The differences in the activity and resource models between classic software projects and product lines will be examined. Also discussed will be differences in the resources required as organizations achieve higher process maturity.
3. Product lines can contain a mix of developed core assets and Commercial Off The Shelf Software (COTS). The paper will discuss how to estimate the Size of involving this mix of component types. Options to be discussed are Use-Case base sizing options, Function Points, other functional size measures, Size for COTS, and Source Line of Code Sizing.
4. Estimation and measurement of Core Asset cost: including specific discussion of the effort and cost associated with building assets which are architected for re- use in a product line
5. Efforts and costs associated with re-using Core Assets in a product line
6. Custom development within a product line
Basis of Findings
The basis for this paper is the authors experience working with product line implementations over the past 8 years including;
Development of a product line for a web based customer account management applications utilized by customer, sales representative, and customer support representatives. Applications are utilized across 5 distinct corporations in the financial services industry.
Development of a product line for vendor of human resource and personnel benefits outsourcing service corporation. Products and services are provided to over 25 corporations.
Independent estimates for the US Navy for the CH53X heavy lift helicopter program which evaluated the Rockwell Collins Common Avionics Architecture System (CAAS).
Independent estimates for the US Navy for the Presidential helicopter program which evaluated the Rockwell Collins Common Avionics Architecture System (CAAS)
White paper for US Army on estimating the cost to install the Force XXI Battle Command, Brigade-and-Below (FBCB2 ) on Army Helicopters.
Tutorial for the US Army on estimating the cost of Software Product Lines
David Seaver is PRICE Systems Technical Director of Software Estimation Solutions. He has more than 20 years software estimation and measurement experience. He has supported:
• The Cost and Economics Division of the Office of the Deputy Assistant Secretary of the Army (DASA-CE)
• Computer Science Corporation
• ROI analysis of SAP ERP implementations
• Presidential Helicopter Program Office
• Heavy Lift Helicopter Program Office
• National Archives Electronic Record Archives modernization program
Prior to joining PRICE Systems he was with Fidelity Investments in Boston for 6 years where he was a member of the SEPG. While at Fidelity, Mr. Seaver assisted in the achievement of CMM level 2 in 1998. He implemented Fidelity’s IT Measurement Program.
Previous to Fidelity Investments, he spent two years in France at Alcatel Alsthom as a member of the Corporate SEPG in Paris.
Previous to Alcatel he spent 7 years at NASA Goddard Space Flight Center where he managed the project office for the Space Network Control Branch.
David P. Seaver is the Director of the Information Technology Practice at PRICE Systems. He is PRICE Systems subject matter expert on Software and IT Cost Estimation.
While at PRICE he created the process that is currently deployed to estimate the life cycle cost of IT projects. This process is utilized at the Internal Revenue Service, The National Archives, Department of Homeland Security, Computer Science Corporation, Credit Agricole, Total Oil, Fidelity Investments, and the United States Army. While at PRICE Mr. Seaver has also supported the US Navy on the acquisition of the new Presidential Helicopter as well as the implementation of Enterprise Resource Planning (ERP) applications.
Prior to PRICE Systems, he was the Director of Estimation and Measurement for Fidelity Investments and a member of the Software Engineering Process Group (SEPG). At Fidelity he created the “Fast Function Point” technique which is a streamlined software size estimation process designed for Agile Development.
Mr. Seaver was a member of the SEPG for Alcatel in its Paris office where he was the subject matter expert for Software Cost Estimation.
Prior to Alcatel me was managed the Project Office for the SPACE Network at NASA Goddard Space Flight Center. While at NASA Mr. Seaver was a member of the working group that developed the initial set of measurement guidelines for the Capability Maturity Model.
Mr. Seaver is a Certified Function Point Expert
He is a contributing member of the Center for Software and Systems Engineering working group on Systems Engineering Cost estimation.