University of Southern California Center for Systems and Software Engineering (c) 2004-2010 USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial1 577a 2010.

Slides:



Advertisements
Similar presentations
Software Cost Estimation
Advertisements

COST ESTIMATION TECHNIQUES AND COCOMO. Cost Estimation Techniques 1-)Algorithmic cost modelling 2-)Expert judgement 3-)Estimation by analogy 4)-Parkinsons.
Cocomo II Constructive Cost Model [Boehm] Sybren Deelstra.
CSCI COCOMO Tutorial1 CS “Tutorial” Presentation: Software Cost Estimation Tools – COCOMO II and COCOTS A Winsor Brown and Ye.
University of Southern California Center for Software Engineering CSE USC COSYSMO: Constructive Systems Engineering Cost Model Barry Boehm, USC CSE Annual.
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
Introduction Wilson Rosa, AFCAA CSSE Annual Research Review March 8, 2010.
COCOMO II 資管研一 張永昌. Agenda Overall Model Definition COCOMO II Models for the Software Marketplace Sectors COCOMO II Model Rationale and Elaboration Development.
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 Reuse and Maintenance Estimation Vu Nguyen March 17, 2009.
April 13, 2004CS WPI1 CS 562 Advanced SW Engineering General Dynamics, Needham Tuesdays, 3 – 7 pm Instructor: Diane Kramer.
University of Southern California Center for Software Engineering CSE USC 9/14/05 1 COCOMO II: Airborne Radar System Example Ray Madachy
COCOTS Presentation for CSCI 577 Fall 2006 Jesal Bhuta
April 27, 2004CS WPI1 CS 562 Advanced SW Engineering Lecture #3 Tuesday, April 27, 2004.
University of Southern California Center for Systems and Software Engineering © 2009, USC-CSSE 1 An Analysis of Changes in Productivity and COCOMO Cost.
Chapter 23 – Project planning Part 2. Estimation techniques  Organizations need to make software effort and cost estimates. There are two types of technique.
Information System Economics Software Project Cost Estimation.
BRUE Behavioral Reverse Engineering in UML as Eclipse Plugin MSE Presentation 1 Sri Raguraman.
COCOMO-SCORM: Cost Estimation for SCORM Course Development
RUP Fundamentals - Instructor Notes
Chapter 2 The process Process, Methods, and Tools
ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. Unification of systems and software engineering cost models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Estimation Why estimate? What to estimate? When to estimate?
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
University of Southern California Center for Systems and Software Engineering Cost Estimation with COCOMO II Barry Boehm CS 510, Fall 2015 v3: Slide 10.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
University of Southern California Center for Software Engineering C S E USC Using COCOMO for Software Decisions - from COCOMO II Book, Section 2.6 Barry.
10/27/20151Ian Sommerville.  Fundamentals of software measurement, costing and pricing  Software productivity assessment  The principles of the COCOMO.
Cost Estimation. Problem Our ability to realistically plan and schedule projects depends on our ability to estimate project costs and development efforts.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 26 Slide 1 Software cost estimation 2.
University of Southern California Center for Systems and Software Engineering © 2010, USC-CSSE 1 Trends in Productivity and COCOMO Cost Drivers over the.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
The COCOMO model An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
1 COCOMO II Estimation Example: Transaction Processing System (TPS) II Based on Chapter 3 of COCOMO II book Used for new microeconomics examples –Replaces.
1 Agile COCOMO II: A Tool for Software Cost Estimating by Analogy Cyrus Fakharzadeh Barry Boehm Gunjan Sharman SCEA 2002 Presentation University of Southern.
Project Cost Management
COCOMO III Workshop Summary
PROJECT LIFE CYCLE AND EFFORT ESTIMATION
Cost Estimation with COCOMO II
Tutorial: Software Cost Estimation Tools – COCOMO II and COCOTS
COCOMO II Overview CSCI 510 Fall 2013 (c) USC CSSE.
COCOMO II Overview Barry Boehm CSCI 510 Fall 2011 (c) USC CSSE
COCOMO II Overview Barry Boehm CSCI (c) USC CSSE 2018/9/19.
COCOMO II Overview A Winsor Brown (especially from page 50 on)
Software Processes.
Constructive Cost Model
Pongtip Aroonvatanaporn CSCI 577b Spring 2011 March 25, 2011
COCOMO II Overview Ray Madachy CSCI 510
SLOC and Size Reporting
Cost Estimation with COCOMO II
Software Systems Cost Estimation
Cost Estimation with COCOMO II
Cost Estimation with COCOMO II
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.
Introduction to Constructive COTS (COCOTS) Model and Tool
Cost Estimation with COCOMO II
COCOMO 2 COCOMO 81 was developed with the assumption that a waterfall process would be used and that all software would be developed from scratch. Since.
COCOMO II Overview LiGuo Huang Computer Science and Engineering
Chapter 23 Software Cost Estimation
Cost Estimation with COCOMO II
Cost Estimation with COCOMO II
Multi-Build Software Cost Estimation Using COINCOMO
Software cost estimation
COCOMO II Overview Marilee Wheaton CSCI 510.
Center for Software and Systems Engineering,
Presentation transcript:

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial1 577a 2010 Tutorial: Software Cost Estimation Tools – COCOMO II + COPSEMO and COCOTS A Winsor Brown Center for Systems and Software Engineering University of Southern California

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial2 Prepare Your Machine 1. "Install COCOMO II " If you are not running Windows 7/Vista (32 or 64 bit) and have enough rights but, download and install "CII2000.EXE" [3,161 KB] from SwCEwCII* Book's CD OR, otherwise, Download COCOMO_II_ from Class Website CSSE.USC.edu >> Courses >> Current >> CSCI 577 (AKA ) and Unzip it to C:\Program Files [the default installation location of download; although that is not what the "Choose Destination Folder" page of the Wizard says] 2. Download COCOMO_II_ from Class Website to the same folder in which you "installed" COCOMOII * Software Cost Estimation with COCOMO II

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial3 CS577ab Course/Project Characteristics Learn by Doing Real Projects for Real Clients Teaches Software Engineering of Medium-Sized systems using small e-services/tools projects 577A: most projects through preliminary DCR 577B: <½ as many projects—Construction, Transition 577C [someday soon]: Maintenance and Enhancement

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial4 Part I: COCOMO II Model and Demo If you haven’t done so already, Download COCOMO II on top of COCOMO II from the class Tools Website; Quietly, in parallel with next few slides, explore COCOMO II' on-line help; If doing this on your own computer, start the Help: Click on Help.html in “Help” folder; explore the Model Manual – find basic equation.Start COCOMO II ; Estimate a project with 2,000 lines of code

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial5 Software Cost Estimation Methods Cost estimation: prediction of both the person-effort and elapsed time of a project Methods: –Algorithmic = Parametric –Expert judgement –Estimation by analogy –Parkinsonian Best approach: a combination of at least two methods –compare and iterate estimates –AND reconcile differences COCOMO is the most widely used, thoroughly documented and calibrated cost model; and free –Price-to-win –Top-down –Bottom-up

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial6 COCOMO Background COCOMO - the “COnstructive COst MOdel” –COCOMOII is the update to COCOMO 1981 –Results from ongoing research with new data collection & model calibration (SFs; more data points; new ratings values; Bayesian calibration) Originally developed by Dr. Barry Boehm and published in 1981 book Software Engineering Economics COCOMO II [2000.0] described in new book Software Cost Estimation with COCOMO II COCOMO II can be used as a framework for cost estimation and related activities

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial7 RUP/ICM Anchor Points Enable Concurrent Engineering

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial8 COCOMO Black Box Model COCOMO II product size estimate product, process, platform, and personnel attributes reuse, maintenance, and increment parameters organizational project data development, maintenance cost and schedule estimates cost, schedule distribution by phase and activity (for Elaboration and Construction!) local recalibration to organizational data

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial9 COCOMO Sub-models Applications Composition involves rapid development or prototyping efforts to resolve potential high-risk issues such as user interfaces, software/system interaction, performance, or technology maturity. It’s sized with application points (weighted screen elements, reports and 3GL modules). The Early Design model involves exploration of alternative software/system architectures and concepts of operation using function points and a course-grained set of 7 cost drivers. The Post-Architecture model involves the actual development and maintenance of a software product using source instructions and / or function points for sizing, with modifiers for reuse and software breakage; a set of 17 multiplicative cost drivers; and a set of 5 factors determining the project's scaling exponent.

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial10 COCOMO Effort Formulation Quietly: Estimate a project with 2,000 lines of code using COCOMOII_ [following steps on next page]

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial11 1 st Run of COCOMO II Start COCOMO II Edit / Add Module Or Click on Set Size: Click on Select “SLOC” Method Enter SLOC Change "Project Name" to 1st run Save project in folder: “Single”

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial12 1 st Run of COCOMO II (cont.)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial13 Coverage of Different Processes COCOMO II provides a framework for tailoring the model to any desired process Original COCOMO was predicated on the waterfall process –single-pass, sequential progression of requirements, design, code, test Modern processes are concurrent, iterative, incremental, and cyclic –e.g. Rational Unified Process (RUP), or USC's IICSM-Sw process Effort and schedule are distributed among different phases and activities per work breakdown structure of chosen process

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial14 RUP /ICSM-Sw Anchor Points Enable Concurrent Engineering VCRVCR IRRIRR ACRACR LCOLCO DCRDCR LCALCA CCDCCD IOCIOC OCROCR PRRPRR VCR: Validation Commitment ReviewDCR: Development Commitment Review ACR: Architecting Commitment ReviewOCR: Operations Commitment Review COCOMO II covers ONLY E&C (A/F & D[C])

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial15 RUP & IICSM-Sw for Sw Phase Distributions RUP Phases*Lean ICM for Software Phase Effort %Schedule % InceptionExploration12.5 InceptionValuation510 ElaborationFoundations ConstructionICM Development: Code and Test TransitionICM Development: [System] Integration COCOMO Total100 Project Total * see COCOMO II book for complete phase/activity distributions

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial16 Part I: COCOMO II Model and Demo Quietly, in parallel with next few slides, copy folder with “Software Estimation” to the desktop; Download COCOMO II from the class Tools Website; Start the Help; Start COCOMO II ; Make estimate a realistic project with 2,000 lines of code: Add REVL! Save Project as 2ndRun

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial17 2 nd Run COCOMO II Set REVL to 15% (a good first guess)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial18 Cost Factors Significant factors of development cost: –scale drivers are sources of exponential effort variation –cost drivers are sources of linear effort variation product, platform, personnel and project attributes effort multipliers associated with cost driver ratings –Defined to be as objective as possible Each factor is rated between very low and very high per rating guidelines –relevant effort multipliers adjust the cost up or down

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial19 Scale Drivers Precedentedness (PREC) –Degree to which system is new and past experience applies Development Flexibility (FLEX) –Need to conform with specified requirements Architecture/Risk Resolution (RESL) –Degree of design thoroughness and risk elimination Team Cohesion (TEAM) –Need to synchronize stakeholders and minimize conflict Process Maturity (PMAT) –SEI CMM process maturity rating

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial20 Scale Factors Sum scale factors SF i across all of the factors to determine a scale exponent, B, using B =  SF i

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial21 Cost Drivers Product Factors –Reliability (RELY) –Data (DATA) –Complexity (CPLX) –Reusability (RUSE) –Documentation (DOCU) Platform Factors –Time constraint (TIME) –Storage constraint (STOR) –Platform volatility (PVOL) Personnel factors –Analyst capability (ACAP) –Program capability (PCAP) –Applications experience (APEX) –Platform experience (PLEX) –Language and tool experience (LTEX) –Personnel continuity (PCON) Project Factors –Software tools (TOOL) –Multisite development (SITE) –Required schedule (SCED)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial22 Example Cost Driver - Required Software Reliability (RELY) Measures the extent to which the software must perform its intended function over a period of time. Ask: what is the effect of a software failure?

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial23 Significant CSCI577a Scale Factors PREC RESL

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial24 Significant CSCI577A Effort Multipliers DATADOCUPCON

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial25 Significant CSCI577A Effort Multipliers (cont.) DATADOCUPCON

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial26 Part I: COCOMO II Model and Demo Exercise 3 Set Significant SF Set Significant EAFs Save Project as 3rdRun

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial27 3rd Run COCOMO II Set PREC to Low Set RESL to High

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial28 3rd Run COCOMO II (cont.) Set RELY to 50% of Nominal to High Set DATA to Low Set DOCU to High Set PCON to Very Low

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial29 3rd Run COCOMO II (cont.) NB: EAF should be 1.24, not 1.29 as above.

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial30 Add Reused Component: Realistic Estimates Define Re-Use Model Do another exercise

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial31 Reused and Modified Software Effort for adapted software (reused or modified) is not the same as for new software. Approach: convert adapted software into equivalent size of new software. NOT NDI unless Open Source

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial32 Nonlinear Reuse Effects The reuse cost function does not go through the origin due to a cost of about 5% for assessing, selecting, and assimilating the reusable component. Small modifications generate disproportionately large costs primarily due the cost of understanding the software to be modified, and the relative cost of interface checking.

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial33 COCOMO Reuse Model A nonlinear estimation model to convert adapted (reused or modified) software into equivalent size of new software:

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial34 COCOMO Reuse Model ( cont’d) ASLOC - Adapted Source Lines of Code ESLOC - Equivalent Source Lines of Code AAF - Adaptation Adjustment Factor DM - Percent Design Modified. The percentage of the adapted software's design which is modified in order to adapt it to the new objectives and environment. CM - Percent Code Modified. The percentage of the adapted software's code which is modified in order to adapt it to the new objectives and environment. IM - Percent of Integration Required for Modified Software. The percentage of effort required to integrate the adapted software into an overall product and to test the resulting product as compared to the normal amount of integration and test effort for software of comparable size. AA - Assessment and Assimilation effort needed to determine whether a fully- reused software module is appropriate to the application, and to integrate its description into the overall product description. See table. SU - Software Understanding. Effort increment as a percentage. Only used when code is modified (zero when DM=0 and CM=0). See table. UNFM - Unfamiliarity. The programmer's relative unfamiliarity with the software which is applied multiplicatively to the software understanding effort increment (0-1).

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial35 Sizing - Lines of Code Source Lines of Code (SLOCs) = logical source statements Logical source statements = data declarations + executable statements Executable statements cause runtime actions Declaration statements are non-executable statements that affect an assembler's or compiler's interpretation of other program elements CodeCount tool available on CSSE website

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial36 USC COCOMO II Exercise 4 Re-do COCOMO II Estimation –Size: 3300 Total SLOC in two modules; Re-Use 1,800 SLOC from Open Source "Library" treated as COTS –DM, CM = 0; IM = 50%; –Unfm=.80 1,500 new SLOC –SFs as appropriate based on earlier discussion PREC to Low RESL to High –EAFs as appropriate based on earlier discussion RELY to 50% Low to Nom DATA to Low DOCU to High PCON to Very Low Save project (4thRun) in new folder “2Modules”

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial37 4th Run COCOMO II

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial38 4th Run COCOMO II (cont.)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial39 Schedule and Effort Over Full SDLC* COCOMO II Covers Elaboration and Construction COPSEMO to spread Effort and Schedule over ALL phases –COPSEMO uses COCOMO_Charts.xls as a helper * Software Development Life Cycle (of a system Increment)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial40 RUP /ICM Anchor Points Enable Concurrent Engineering VCRVCR IRRIRR ACRACR LCOLCO DCRDCR LCALCA CCDCCD IOCIOC OCROCR PRRPRR VCR: Validation Commitment ReviewDCR: Development Commitment Review ACR: Architecting Commitment ReviewOCR: Operations Commitment Review COCOMO II covers ONLY E&C (F & D[C])

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial41 RUP & [Instructional] ICM for Sw Phase Distributions RUP Phases*Lean ICM for Software Phase Effort %Schedule % InceptionExploration12.5 InceptionValuation510 ElaborationFoundations ConstructionICM Development: Code and Test TransitionICM Development: [System] Integration COCOMO Total100 Project Total * see COCOMO II book for complete phase/activity distributions

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial42 COPSEMO Distributes Effort & Schedule

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial43 Physical COCOMO II PSE (CoPSEMo) Extension COCOMO_Charts.xls

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial44 Size Estimation By analogy with Wide-Band Delphi before FCR/LCO –Ask each team member what they think the size might be Apply personal experience, Look at completed projects, Guess (WAG), SWAG based on “modules” known to date –Collect and share in a meeting: discuss why/how different people made their estimate –Repeat –When stable, Size = (H + 4 X Ave. + L)/6

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial45 Size Estimation (cont.) By analogy with Wide-Band Delphi after LCO/FCR –Measure Size of Prototype Code (CodeCount, or other tools) –Measure Size of Reused Code (CodeCount, or other tools) –Ask each team member what they think the final size might be Extrapolate from prototype (apply personal experience) Guess (WAG), SWAG based on “modules” known to date –Collect and share in a meeting: discuss why/how different people made their estimate –Repeat –When stable, Size = (H + 4 X Ave. + L)/6

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial46 Size Estimation (cont.) By analogy with Wide-Band Delphi before DCR&RDCR/LCA –Measure Size of “final” Prototype Code; provide along with original prototype code measure –Measure Size of Reused Code (CodeCount, or other tools) –Ask each team member what they think the final size might be Extrapolate from prototypes (apply personal experience?) Guess (WAG), SWAG based on “modules” known to date –Collect and share in a meeting: discuss why/how different people made their estimate –Repeat –When stable, Size = (H + 4 X Ave. + L)/6

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial47 COCOMO II Estimates in 577A For Homework: “Homework 4: Cost Estimation”; For Project Before FCR/LCO (for ARB) After FCR/LCO ARB (for grading) Before DCR/LCA (for ARB) After DCR/LCA ARB (after re-scoping guidance) (for grading, “plan” for 577B, or actuals)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial48 Incremental Commitment Model in Software Engineering Class 06/24/08©USC-CSSE48

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial49 Part II: COCOTS Model and Demo

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial50 Outline Modeling Context COCOTS Cost Sources Current Status Tool Demo

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial51 COTS Modeling Problem Context 1 (COTS Components as Application Elements, Infrastructure, or Tools) COTS and Custom Applications Components New Modeling Problem COTS as Infrastructure COTS as Tools ( COCOMO IIparms PVOL,PLEX) ( COCOMO II parms LTEX, TOOL) Cost Modeling Currently Addressed Within COCOMO II: COTS as Infrastructure and Tools

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial52 COCOTS Cost Sources

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial53 About COCOTS Three Sub-models –Assessment sub-model –Tailoring sub-model –Glue code sub-model Mathematical form of each sub-model is different –However, a common feature is estimates based upon classes of COTS components being examined –Example COTS classes: GUI builders, operating systems, databases, word processors, etc –See demo later

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial54 COCOTS Architecture

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial55 Current Status Calibrated on 20 data points Project Domains –Air Traffic Management –Business (including databases) –Communication, Navigation, & Surveillance –Logistics –Mission Planning –Operations –Web-based Maps

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial56 COCOTS COCOTS is the acronym for the Constructive COTS integration cost estimation model A member of the USC COCOMO II suite of cost estimation models For estimating the expected initial cost of integrating COTS software into a new software system development Three sub-models: –COTS Assessment –COTS Tailoring –COTS Glue code development

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial57 COCOTS Demo Steps Get from Class Webpage--Tools Starting up (enable Macro's) Main Screen Focus on COCOTS Estimation: four worksheets opened –"COCOTSAssessment", –"COCOTSTailoring", –"GlueCodeInfo", –"COCOTSGlueCode" COCOTSAssessment: shows 23 COTS package types Two stage assessment: 3 to 2 using DBMS and CMS COCOTSTailoring COCOTSGlueCode

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial58 COCOTS Main Screen

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial59 COCOTS Effort Modeling

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial60 COCOTS Assessment

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial61 Assessment: DBMS & CMS

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial62 COCOTS DBMS Assessment

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial63 COCOTS DBMS Assessment

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial64 LAST

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial65 Aggregate ClueCode (B=1)

University of Southern California Center for Systems and Software Engineering (c) USC CSSECSCI 577a 2010 COCOMO + COCOTS Tutorial66 Questions and Answers Questions from you? Any Answers? Question from HHGG: “the great question of Life, the Universe and Everything”. Answer: 42! (= ???)