Phase Distribution of Software Development Effort

Slides:



Advertisements
Similar presentations
Cost as a Business Driver 1 John Brown C Eng MIEE mr_ Software Cost Estimation.
Advertisements

Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
Early Effort Estimation of Business Data-processing Enhancements CS 689 November 30, 2000 By Kurt Detamore.
Copyright 2000, Stephan Kelley1 Estimating User Interface Effort Using A Formal Method By Stephan Kelley 16 November 2000.
Software Life Cycles ECE 417/617: Elements of Software Engineering
W5HH Principle As applied to Software Projects
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
Integration of Software Cost Estimates Across COCOMO, SEER- SEM, and PRICE-S models Tom Harwick, Engineering Specialist Northrop Grumman Corporation Integrated.
University of Southern California Center for Systems and Software Engineering An Investigation on Domain-Based Effort Distribution Thomas Tan 26 th International.
Smi COCOMO II Calibration Status COCOMO Forum October 2004.
University of Southern California Center for Software Engineering CSE USC ©USC-CSE 10/23/01 1 COSYSMO Portion The COCOMO II Suite of Software Cost Estimation.
10/25/2005USC-CSE1 Ye Yang, Barry Boehm USC-CSE COCOTS Risk Analyzer COCOMO II Forum, Oct. 25 th, 2005 Betsy Clark Software Metrics, Inc.
University of Southern California Center for Systems and Software Engineering Assessing the IDPD Factor: Quality Management Platform Project Thomas Tan.
Software Defect Modeling at JPL John N. Spagnuolo Jr. and John D. Powell 19th International Forum on COCOMO and Software Cost Modeling 10/27/2004.
Measuring process attributes. Good Estimates Predictions are needed for software development decision-making (figure 12.1) A prediction is useful only.
April 13, 2004CS WPI1 CS 562 Advanced SW Engineering General Dynamics, Needham Tuesdays, 3 – 7 pm Instructor: Diane Kramer.
Measuring Dollar Savings from Software Process Improvement with COCOMO II Betsy Clark Software Metrics Inc. October 25, 2001 Acknowledgment: This presentation.
Local Bias and its Impacts on the Performance of Parametric Estimation Models Accepted by PROMISE2011 (Best paper award) Ye Yang, Lang Xie, Zhimin He (iTechs)
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 An Analysis of Changes in Productivity and COCOMO Cost.
University of Southern California Center for Systems and Software Engineering Improving Affordability via Value-Based Testing 27th International Forum.
Cost Management Week 6-7 Learning Objectives
A Survey on Software Cost Estimation in the Chinese Software Industry Da Yang, Qing Wang, Mingshu Li, Ye Yang, Kai Ye, and Jing Du Institute of Software,
Manufacturer’s Outsourcing to Employment Services Matthew Dey, BLS Susan Houseman, Upjohn Institute Anne Polivka, BLS Presentation for 2008 World Congress.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Error reports as a source for SPI Tor Stålhane Jingyue Li, Jan M.N. Kristiansen IDI / NTNU.
Software Estimation and Function Point Analysis Presented by Craig Myers MBA 731 November 12, 2007.
Chapter 6 : Software Metrics
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
By K Gopal Reddy.  Metrics in software are of two types.direct and indirect.  Function points as indirect metrics.  Function points are used to measure.
Software Estimation How hard can it be? Peter R Hill.
Software cost estimation Predicting the resources required for a software development process 1.
Using error reports in SPI Tor Stålhane IDI / NTNU.
Lecture 4 Software Metrics
The System and Software Development Process Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Introduction to Software Project Estimation I (Condensed) Barry Schrag Software Engineering Consultant MCSD, MCAD, MCDBA Bellevue.
Chapter 3: Software Project Management Metrics
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 26Slide 1 Software cost estimation l Predicting the resources required for a software development.
SFWR ENG 3KO4 Slide 1 Management of Software Engineering Chapter 8: Fundamentals of Software Engineering C. Ghezzi, M. Jazayeri, D. Mandrioli.
University of Southern California Center for Systems and Software Engineering © 2010, USC-CSSE 1 Trends in Productivity and COCOMO Cost Drivers over the.
Empirical Estimation Models Based upon historic data Basic Structure E = A + B * (ev) C where A, B, c are empirical constants ‘ev’ is the effort in terms.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
1 Experience from Studies of Software Maintenance and Evolution Parastoo Mohagheghi Post doc, NTNU-IDI SEVO Seminar, 16 March 2006.
Smi COCOMO II Calibration Status USC-CSE Annual Research Review March 2004.
Cost Estimation Cost Estimation “The most unsuccessful three years in the education of cost estimators appears to be fifth-grade arithmetic. »Norman.
Project Planning Goal 1 - Estimates are documented for use in tracking and planning project. Goal 2 - Project Activities and commitments planned and documented.
Chapter 5: Software effort estimation
بشرا رجائی برآورد هزینه نرم افزار.
COCOMO Software Cost Estimating Model Lab 4 Demonstrator : Bandar Al Khalil.
Estimate Testing Size and Effort Using Test Case Point Analysis
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Transforming Organizations
Determining How Costs Behave
Understanding Results
COCOTS Life Cycle Estimation: Some Preliminary Observations
An Empirical Study of Requirements-to-Code Elaboration Factors
Chapter 10 Verification and Validation of Simulation Models
SOFTWARE PROJECT MANAGEMENT AND COST ESTIMATION
SLOC and Size Reporting
Predict Failures with Developer Networks and Social Network Analysis
Gerald Dyer, Jr., MPH October 20, 2016
Software Metrics “How do we measure the software?”
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
Software Process Models
Based on Chapter 5 of the book [McConnell 2006]
A Survey on Software Cost Estimation in Chinese Software Industry
Center for Software and Systems Engineering,
Qi Li,Qing Wang,Ye Yang and Mingshu Li
Presentation transcript:

Phase Distribution of Software Development Effort Ye Yang, Mei He, Mingshu Li, Qing Wang, Barry Boehm Institute of Software, Chinese Academy of Sciences (ISCAS) & USC-CSSE COCOMO Forum’08 October 28, 2008

Outline Background Subject and approach Results Discussions and Conclusions 11/28/2018 2 2

Background 1950’s: Norden observed Rayleigh Curve to be a good staffing level Approximation to most hardware development projects Main criticism: slow early build-up and long-tail effects COCOMO 81, the Detailed COCOMO Model Phase-sensitive cost multipliers enable more accurate, phase-wise estimation Allows to track down the effect of individual cost driver rating on phase distribution variation COCOMO 2000 Phase neutral cost multipliers due to lack of calibration data Two simplified schemes to facilitate phase/activity distribution: waterfall & RUP Challenges Lack of studies on causes of distribution variation Lot of estimation methods but lack of insightful allocation guidelines Our study Empirical analysis towards developing more in-depth understanding on factors impacting on the degree of intensity of different development phases/activities Cocomo 81 e.g. more focus on integration and test phase and less on code as the software size grows (i.e. 16% for small projects and 25% for large projects) 11/28/2018 3 3

Recent Studies Heijstek and Chaudron (2007) Milicic and Wholin (2004) Analyzed data from model-based development projects Confirmed the similarity with RUP hump-chart Milicic and Wholin (2004) Studied characteristics affecting estimating accuracy & proposed a lean approach to improve estimation based on distribution patterns of estimation errors Yiftachel et al. (2006) Proposed an economic model for optimal allocation of resources among development phases Lucia et al. (2003), Yang et al. (2008): High correlation between the effort of subsequent activities for maintenance projects 11/28/2018 4 4

Different Phase Definitions Estimation Model Phases covered COCOMO 81 Plan and requirement, preliminary design, detailed design (25%), code (33%), Integration & Test (25%) COCOMO II Option 1(Waterfall): Plan and requirement (7%), preliminary design (17%), detailed design (25%), code (33%), Integration & Test (25), deployment & maintenance (12%); Option 2(MBASE/RUP): Inception(6%), Elaboration(24%), Construction(76%), Transition (12%) RUP Inception(5%), Elaboration(20%), Construction(65%), Transition(10%) COCOTS Assessment, Tailoring, Gluecode & Integration. SLIM Concept Definition, Requirement & Design, Construct & Test, Perfective Maintenance SEER-SEM Early specification, design, development, delivery & maintenance 11/28/2018 5 5

Outline Background Subject and approach Results Discussions and Conclusions 11/28/2018 6 6

Subject CSBSG (China Software Benchmarking Standard Group) Established in 2006 Consistent with ISBSG Supported by the Government and software industry association of China 1012 projects from 141 organizations and 15 regions Phase/Activity definition in CSBSG database: Roughly waterfall; transforming guidelines were provided during data collection Phase Activities Included Plan Plan, Preliminary Requirement Analysis Requirement Requirement Analysis Design Product Design, Detailed Design Code Code, Unit Test, Integration Test System Test Transition Installation, Transition, Acceptance Test, User Training, Support 11/28/2018 7 7

Approach of the study Data Collection Data Selection and Cleaning Web-based questionnaire Sent out by CSBSG staff, completed by leading companies Simple automatic checking spelling and inconsistency errors Expert group check Determined for data quality and candidacy Data Selection and Cleaning Select the minimum set of attributes considered in the study Clean the data through several steps 11/28/2018 8 8

Summary of Attributes Considered Metric Unit Description Size SLOC Total Lines of Code Effort Person-Hour Summary Work Effort Plan phase effort Work Effort of plan phase Reqt’s phase effort Work Effort of reqt’s phase Design phase effort Work Effort of design phase Code phase effort Work Effort of code phase Test phase effort Work Effort of test phase Transition phase effort Work Effort of transition phase Development life cycle Nominal Waterfall, iterative, rapid prototyping Team Size # Person Maximum size of the development team Development Type New development, Enhancement, Re-development 11/28/2018 9 9

Data Selection Step ID # of proj. excluded # of proj. remained Reason for exclusion 1 115 Do not contain phased-related effort records 2 14 101 there are two or more phases’ effort data missing 3 100 the sum of its 5 recorded phased effort is greater than the total effort 4 if only 1 of the 5 phase effort value is missing, it is filled up by subtracting the other 4 phases from the total effort 5 25 75 one or more than one phase’s effort data recorded as zero 11/28/2018 10 10

Outline Background Subject and approach Results Discussions and Conclusions 11/28/2018 11 11

Summary of the project data Mean Median Min Max Size (KSLOC) 136.4 45.7 0.77 2340 Effort (Person-hours) 8969 4076 568 134840 11/28/2018 12 12

Dataset Comparison Mean Median Min Max CSBSG Size (KSLOC) 136.4 45.7 0.77 2340 Effort (Person-hours) 8969 4076 568 134840 COCOMO Size(KSLOC) 127 47 3 1293 Effort(Person-Months) 714 195 6 11400 Effort(Person-hours) 108528 29640 912 1732800 15.2 LOC/man-hour 1.2 LOC/man-hour 11/28/2018

Overall phase distribution pattern Overall phase distribution profile Comparison of CSBSG and COCOMO II Distribution 11/28/2018 14 14

Comparison by life cycle models Classifications: waterfall, iterative, rapid prototyping # of projects: 57, 15, 2 respectively Mean software size (KSLOC): Waterfall: 103 Iterative: 259 Rapid: 89 Explanation from the paper 11/28/2018

Comparison by Development type Enhancement projects have more focus on Test phase, Re-development has the greatest emphasis on Code phase 11/28/2018 16 16

Comparison by Development type Totally, New development has lower estimation error All phased effort for Code are underestimated, and for Transition, over-estimated Comparison of estimation accuracy RE = (Estimated phase effort – Actual phase effort)/Actual phase effort 11/28/2018 17 17

Comparison by Size scale Distribution of software size 11/28/2018 18 18

Comparison by Size scale Ascending trend for Code Descending trend for Test Comparison among difference software sizes scale in LOC 11/28/2018 19 19

Comparison by Team Size Average phase distribution for different team size 11/28/2018 20 20

Outline Background Subject and approach Results Discussions and Conclusions 11/28/2018 21 21

Factors influencing phased distribution ANOVA analysis is used to examine to what a degree the variance of each phase effort distribution percentage is explained by class variables Phase Distribution DevType Software size Team size P&R% 3.96% 14.80% 5.50% Design% 2.57% 3.67% 0.62% Code% 12.22% 7.93% 0.02% Test% 7.47% 7.16% 3.05% Trans.% 2.72% 9.36% 1.52% 11/28/2018 22 22

Guidelines for phased distribution Analysis on determining reasonable phase effort distribution quantities should be performed in the cost estimation process. CSBSG data analysis shows a waterfall-based phase distribution scheme as: 16.14% for plans and requirements phase, 14.88% for design phase, 40.36% for code phase, 21.57% for test phase, and the other 7.06% for transition phase. Software size and development type are two major factors to be considered when adjusting effort allocation. CSBSG dataset shows that for enhancement type of projects, percentage of development effort in code phase decreases by 10.67%, and that for test phase increases by 5.4%. CSBSG dataset indicates that as software size dramatically grows, distribution has an intensive focus on both code and test phases. CSBSG dataset indicates that team size is not a significant factor which may cause phase effort distribution variation. However, it shows a distinguishable emphasis on Test phase with the growth of team size 11/28/2018 23 23

Limitations Applicability of empirical findings Size metric All projects from domestic organizations in China Size metric SLOC vs. FP Selected influencing factors Correlation among factors not considered 11/28/2018 24 24

Conclusions and Future Work Empirical analysis towards developing more in-depth understanding on factors impacting on the phases/activities distribution Providing empirically-based suggestions for Chinese software industry Next steps Consider other influencing factors such as system complexity, number of concurrent users Strengthening the findings through more thorough statistical analysis 11/28/2018 25 25

Thank You! Contact info: ye@itechs.iscas.ac.cn 11/28/2018