Presentation is loading. Please wait.

Presentation is loading. Please wait.

University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 1 October 18, 2012 Mauricio E. Peña Ricardo Valerdi Quantifying.

Similar presentations


Presentation on theme: "University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 1 October 18, 2012 Mauricio E. Peña Ricardo Valerdi Quantifying."— Presentation transcript:

1 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 1 October 18, 2012 Mauricio E. Peña Ricardo Valerdi Quantifying the Impact of Requirements Volatility on Systems Engineering Effort

2 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 2 Outline Motivation and Introduction Research Methods Model Development Results Cross-Validation and Sensitivity Analysis Conclusion Threats to Validity Future Research

3 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 3 Importance of Understanding Requirements Volatility Requirements volatility has been identified by numerous research studies as a risk factor and cost-driver of systems engineering projects 1 Requirements changes are costly, particularly in the later stages of the lifecycle process because the change may require rework of the design, verification and deployment plans 2 The Government Accountability Office (GAO) concluded in a 2004 report on the DoD’s acquisition of software-intensive weapons systems that missing, vague, or changing requirements are a major cause of project failure 3 System developers often lack effective methods and tools to account for and manage requirements volatility Source: 1- Boehm (1991), 2- Kotonya and Sommerville (1995), 3- GAO-04-393

4 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 4 Requirements Volatility is Expected Changes to requirements are a part of our increasingly complex systems & dynamic business environment –Stakeholders needs evolve rapidly –The customer may not be able to fully specify the system requirements up front –New requirements may emerge as knowledge of the system evolves –Requirements often change during the early phases of the project as a result of trades and negotiations Sources: Kotonya and Sommerville (1995); Reifer (2000) Requirements volatility must be anticipated and managed

5 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 5 CSSE Parametric Cost Models The Constructive Systems Engineering Cost Model (COSYSMO) was developed by the USC Center for Software and Systems Engineering (CSSE) in collaboration with INCOSE and Industry affiliates COSYSMO is the first generally-available parametric cost model designed to estimate Systems Engineering effort Built on experience from COCOMO 1981, COCOMO II During the development of COSYSMO, volatility was identified as a relevant adjustment factor to the model’s size drivers Source: 7th Annual Practical Software and Systems Measurement Conference. COSYSMO Workshop, Boehm

6 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 6 Research Methods Source: Boehm et al (2000) Literature Review & 6 Workshops completed Data gathered from 25 industry projects We are here

7 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Organizations that Participated in the Research The Aerospace Corporation Northrop Grumman Corporation The Boeing Company Raytheon United Launch Alliance BAE TI Metricas Ltda. IBM Distributed Management MIT USC Lockheed Martin Ericsson España Samsung SDS Rolls Royce Softstar Texas Tech The US Army The US Navy The US Air force The Australian Department of Defense 7

8 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 8 Observations from the Literature and Research Workshops 1.Requirements volatility is caused by an identifiable set of project and organizational factors 2.The level of requirements volatility is a function of the system life cycle phase 3.Requirements volatility leads to an increase in project size and cost 4.The cost and effort impact of a requirements change increases the later the change occurs in the system life cycle 5.The impact of requirements volatility may vary depending on the type of change: added, deleted, or modified Sources: Kotonya and Sommerville (1995); Hammer et al. (1998); Malaiya and Denton (1999); Stark et al. (1999); Houston (2000); Zowghi and Nurmuliani (2002); Ferreira (2002); Kulk and Verhoef 2008

9 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 9 COSYSMO Cost Estimating Relationships (CERs) SE_Hrs = Systems Engineering effort (hours) A = calibration constant derived from historical project data SIZE = measure of functional size of the system (number of requirements, interfaces, algorithms, operational scenarios) n = number of cost drivers (14) EM = effort multiplier for the i th cost driver The exponent ( E ) accounts for diseconomies of scale Source: Valerdi (2005)

10 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Model Form Incorporated volatility effects through a scale factor (SF) added to the diseconomies of scale exponent (E) Similar approach used to model volatility effects in Ada COCOMO Prior research points to the compounding or exponential effect of requirements volatility Linearized form: 10 Source: Boehm, B. and Royce, W. (1989); Kulk and Verhoef (2008); Wang, G. et al., (2008)

11 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Volatility Scale Factor Where –REVL = The % of the baseline requirements that is expected to change over the system lifecycle –C = Scale factor constant = 0.05 –w vl = aggregate lifecycle phase volatility weighting factor And: –w l = weighting factor for each life cycle phase 1 –Θ l = % of total requirements changes per life cycle phase –l = life cycle phases 11 Expected REVL is rated as Very Low, Low, Moderate, High, and Very High 1 Life Cycle Phases: Conceptualize, Development, Operational Test and Evaluation, and Transition to Operation

12 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 12 Data Collection Collected expert judgment on the causes of volatility, expected REVL, and life cycle weighting factors through surveys conducted at 6 workshops –Software and Systems Engineers with 20+ years of experience –Variety of industries represented with an emphasis on Aerospace and Defense Historical Data Collection –Data were collected from 25 projects from the Aerospace and Defense application domain –Collected COSYSMO size, effort, and cost driver data –Collected volatility data: added, modified, and deleted requirements over time

13 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Causes of Requirements Volatility (N = 37) 13

14 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Requirements Volatility (REVL) Rating Levels 14 Developed based on surveys of experienced S/W and Systems Engineers (N =37)

15 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Requirements Volatility Profile 15 Based on expert judgment collected through three workshops (N = 36) and historical project data (N = 25)

16 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 16 Model Calibration Historical data Mean and Variance Expert-judgment estimates Bayesian Analysis Source: Boehm et al. (2000); Nguyen (2010) Initial parameter mean and variance A Priori Model Data-determined Model Regression Analysis; OLS Formally combines expert judgment With sample data A Posteriori Model Optimized combination of data sources to increase precision Updated parameter mean and variance

17 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Regression and Bayesian Calibration The coefficient β 1 for the requirements volatility scale factor was calculated through linear regression analysis using data from the 25 projects The data-determined coefficient β 1 was formally combined with the a-priori expert judgment to develop the Bayesian calibrated model 1.96 2.01 2.09 Data Analysis A priori Expert Judgment A posteriori Bayesian Update Coefficient Standard Error t StatP-value Predictor1.9610.8512.3040.03 17 *

18 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 18 Model Performance Comparison Model performance evaluated using the baseline model and a model with local calibration The performance of COSYSMO improves by including the requirements volatility factor

19 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 19 Coefficient of Determination (n=25) Academic COSYSMO COSYSMO with Requirements Volatility Factor * Relative Scale

20 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 20 Scale Factor Correlation Matrix The correlation between the Requirements Volatility Scale factor and COSYSMO cost drivers that are potential sources of volatility was evaluated Volatility Scale Factor (SF) Requirements Understanding Personnel experience Technology Risk Volatility Scale Factor (SF) 1 Requirements Understanding 0.3878 1 Personnel experience 0.0074 0.48151 Technology Risk 0.4462 0.20600.02261 The correlations between predictors were below the correlation threshold of 0.66 used for COCOMO II and COSYSMO

21 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 21 Cross-Validation Results The 25 projects were randomly divided into K=6 subsets One of the subsets is excluded from the data set from which the model is built The resulting model is used to predict effort for the excluded cases This method is repeated for all subsets and the mean magnitude of relative errors (MMRE) and prediction accuracy PRED (l) across all K trials is calculated Calibrated Model Estimation Accuracy PRED(.15)PRED(.20)PRED(.30)MMRE Academic COSYMO 52%64%84%20% Req. Volatility Model 76%84%88%15% Cross-Validation 76%80%88%16%

22 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Sensitivity Analysis Evaluated the sensitivity of the model’s results to the variability of key parameters 2 Scenarios were developed based on the standard deviation in the volatility life cycle profile (Θ l ) Scenario 1: –None of the requirements changes occur in the conceptualize phase Scenario 2: –66% of the changes occur in the conceptualize phase 22 Development Conceptualize Operational Test & Eval Transition to Operations Development Conceptualize Operational Test & Eval Transition to Operations Scenario 2 Scenario 1 % Volatility per Life Cycle Phase Source: Guidelines for the Economic Analysis of Projects (1997)

23 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 23 Sensitivity Analysis Results The performance of the model scenarios was calculated using the K-fold cross-validation method The improvement in performance of the model with the requirements volatility scale factor over Academic COSYSMO remains largely unchanged Calibrated Model Estimation Accuracy PRED(.15)PRED(.20)PRED(.30)MMRE Academic COSYMO 52%64%84%20% Req. Volatility Model 76%84%88%15% Cross-Val Scenario 1 72%80%88%16% Cross-Val Scenario 2 72%80%88%16%

24 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 24 Conclusions The volatility of requirements throughout a system’s life cycle was found to be statistically significant predictor (p = 0.03) of systems engineering effort The prediction accuracy of Academic COSYSMO improved by incorporating a requirements volatility factor into the model Cross validation and sensitivity analyses were performed to demonstrate the robustness of the model in predicting effort for new projects

25 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 25 Threats to Validity Internal validity –Data collected from an engineering organization is influenced by many factors and all the relevant variables cannot be fully controlled as they would be in a true experiment External validity –Limited by the organizations that contribute data and the background of the industry experts that participate in the research –While a model calibrated to a single organization’s data can be useful, it is less than fully definitive for other organizations. Reliability –Potential inaccuracies in effort and requirements metrics due to changes in business systems and practices over the time span of the projects –Mitigated though: The use of consistent counting rules and involvement from personnel familiar with the projects Holding workshops to ensure survey respondents had a consistent understanding of the questions

26 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Future Research Increase the quantity and diversity of the data – calibrate the model using data from additional organizations Evaluate the potential interaction between requirements volatility and reuse Further investigation of the impact of systems engineering effort depending on the type of change: added, modified, and deleted 26

27 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 27 References Boehm, B., Abts, C., Brown, A.W., Chulani, S., Clark, B., Horowitz, E., Madachy, R., Reifer, D.J., and Steece, B. (2000). Software Cost Estimation with COCOMO II. Prentice Hall Department of Defense (2010). Quadrennial Defense Review Report Ferreira, S., Collofello, J., Shunk, D., and Mackulak, G. (2009). “Understanding the effects of requirements volatility in software engineering by using analytical modeling and software process simulation.” The Journal of Systems and Software. Vol. 82, pp 1568-1577. Wang, G., Boehm, B., Valerdi, R., and Shernoff, A. (2008). “Proposed Modification to COSYSMO Estimating Relationship.” Technical Report. University of Southern California, Center for Systems and Software Engineering. General Accounting Office (2004). Stronger Management Practices are Needed to Improve DOD’s Software-intensive Weapon Acquisitions (GAO-04-393). Defense Acquisitions. Hammer, T., Huffman, L., and Rosenberg, L. (1998). “Doing requirements right the first time.” Crosstalk, the Journal of Defense Software Engineering. Pp 20-25. Houston, Dan X. (2000). A Software Project Simulation Model for Risk Management, Ph.D. Dissertation, Arizona State University ISO/IEC (2008). ISO/IEC 15288:2008 (E) Systems Engineering - System Life Cycle Processes. Kotonya, G., Sommerville, I., (1998). Requirements Engineering: Processes and Techniques. John Wiley and Sons, Ltd. Malaiya, Y., and Denton, J. (1999). “Requirements Volatility and Defect Density.” Proceedings of the International Symposium on Software Reliability Engineering. MIL-STD-498. 1994. Software Development and Documentation. U.S. Department of Defense. Nguyen, V. and Boehm, B. (2010). A COCOMO Extension for Software Maintenance. 25th International Forum on COCOMO and Systems/Software Cost Modeling Valerdi, R. (2005). The constructive systems engineering cost model (COSYSMO). Doctoral Dissertation. University of Southern California, Industrial and Systems Engineering Department. Zowghi, D. and Nurmuliani, N. (2002). A Study of the Impact of Requirements Volatility on Software Project Performance. Proceedings of the Ninth Asia-Pacific Software Engineering Conference

28 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Back-up 28

29 University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum Cumulative Volatility 29 DevelopmentConceptualize Operational Test & Eval Transition to Operations REVL (% of baseline requirements changes) 6% 22% 38% 54% Back


Download ppt "University of Southern California Center for Systems and Software Engineering 2012 COCOMO Forum 1 October 18, 2012 Mauricio E. Peña Ricardo Valerdi Quantifying."

Similar presentations


Ads by Google