Multiply or Divide? A Best Practice for Factor Analysis
Factors are commonly used in engineering build-up equations to derive cost estimates. For example, software development hours are often estimated based on an estimate of source lines of code (SLOC) divided by a productivity rate: SLOC per hour. To develop the productivity rate, the analyst collects software size (SLOC) and development time (hours) metrics from a variety of programs. Ideally, these programs have similar characteristics to the one being estimated, for instance, similar complexity, language, resources (people and tools) and environment. Once convinced the collected data is relevant to the estimate, the analyst has an important decision to make: develop a factor (hours per SLOC) that is multiplied by the size estimate (SLOC), or develop a factor (SLOC per hour) that is divided into the SLOC estimate. Both methods seem logical, but which method is more appropriate?
This paper discusses the pros and cons and examines the properties of these two methods. In particular, the development hour point estimate and its associated uncertainty may be quite sensitive to the method selected. The distributions that best fit the two factors (hours per SLOC and SLOC per hour) and their impacts on results are also explored. Realistic examples will be discussed using both methods. The results provide the analyst with a better understanding of the math behind each method and the impact of this very important choice: multiply or divide. The selection should not be arbitrary – there should be a sound basis and a “best practice” to follow. This study provides simple-to-follow examples, mathematical insight and general guidelines to help the analyst decide the best practice for their data and objectives.
While our central example focuses on software productivity rates, the analysis in this paper is applicable to any factor relationship. The software productivity factor is used as an illustrative example.
Tecolote Research, Inc.
Chief Statistician at Tecolote Research, Inc. Dr. Hu joined Tecolote in 1984 and serves as a company expert in all statistical matters. She has over 15 years of experience supporting Unmanned Space Vehicle Cost Model (USCM) CER development and the related database. She also has 23 years of experience in designing, developing, and validating statistical, learning, and regression algorithms in CO$TAT. In addition, Dr. Hu developed many of the distribution and correlation algorithms implemented in the ACE RI$K simulation tool. For over 20 years, she has been a regular presenter at major cost conferences, often receiving best paper awards for presenting advanced cost analysis techniques. She earned her Ph.D. in Mathematics, with an emphasis in Statistics, at the University of California, Santa Barbara.
Tecolote Research, Inc.
Alfred earned a Bachelor Mechanical Engineering degree from the Canadian Royal Military College and a Master of Science with Distinction in naval architecture from the University College, London, England. He spent 21 years in the Canadian Navy driving submarines (Navigator, Operations Officer) and ten years as a naval architect. He has over 20 years experience leading, executing or contributing to life cycle cost model development and cost uncertainty analysis for a wide variety of military, Coast Guard, NASA and foreign projects. He has been with Tecolote since 1995 and since 2000 has been the General Manager for Tecolote’s Software Products/Services Group, responsible for the development, distribution and support of a variety of web and desktop products including ACEIT. Alfred has delivered numerous papers on cost risk analysis topics and was the lead writer of the AFCAA Cost Risk and Uncertainty Handbook. He is a SCEA Certified Cost Estimator/Analyst (CCEA).