PSM 2008 Workshop: Toward Integrating Systems Engineering and Software Engineering Estimation: Harmonizing COSYSMO and COCOMO John Gaffney 301-721-5710.

Slides:



Advertisements
Similar presentations
On Representing Uncertainty In Some COCOMO Model Family Parameters October 27, 2004 John Gaffney Fellow, Software & Systems.
Advertisements

COSYSMO 2.0 Workshop Summary (held Monday, March 17 th 2008) USC CSSE Annual Research Review March 18, 2008 Jared Fortune.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Ricardo Valerdi USC Center for Systems and Software.
Working Group Meeting (Outbrief) Ricardo Valerdi, Indrajeet Dixit, Garry Roedler Tuesday.
March 2002 COSYSMO: COnstructive SYStems Engineering Cost MOdel Ricardo Valerdi USC Annual Research Review March 11, 2002.
Some Experience With COSYSMOR At Lockheed Martin
COSOSIMO* Workshop 13 March 2006 Jo Ann Lane University of Southern California Center for Software Engineering CSE Annual.
1 COSYSMO 3.0: Future Research Directions Jared Fortune University of Southern California 2009 COCOMO Forum Massachusetts Institute of Technology.
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.
Extensions of COSYSMO to Represent Reuse 21 st International Forum on COCOMO and Software Cost Modeling November 9, 2006 Ricardo ValerdiJohn Gaffney Garry.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
1 Systems Engineering Reuse Principles Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2010 Los Angeles, CA.
1 Results of Reuse Survey Jared Fortune, USC Ricardo Valerdi, MIT Gan Wang, BAE COSYSMO COCOMO Forum 2008 Los Angeles, CA.
Ch8: Management of Software Engineering. 1 Management of software engineering  Traditional engineering practice is to define a project around the product.
(c) Copyright, Lockheed Martin Corporation, Looking At Schedule vs. Effort In Software Engineering, Systems Engineering and Systems John Gaffney.
COSYSMO Reuse Extension 22 nd International Forum on COCOMO and Systems/Software Cost Modeling November 2, 2007 Ricardo ValerdiGan Wang Garry RoedlerJohn.
System-of-Systems Cost Modeling: COSOSIMO July 2005 Workshop Results Jo Ann Lane University of Southern California Center for Software Engineering.
1 Discussion on Reuse Framework Jared Fortune, USC Ricardo Valerdi, MIT COSYSMO COCOMO Forum 2008 Los Angeles, CA.
Expert COSYSMO Update Raymond Madachy USC-CSSE Annual Research Review March 17, 2009.
Systems Engineering Reuse: A Report on the State of the Practice Jared Fortune, USC Ricardo Valerdi, MIT Gan Wang, BAE Systems COCOMO Forum 2008 Los Angeles,
1 COSYSMO 2.0: A Cost Model and Framework for Systems Engineering Reuse Jared Fortune University of Southern California Ricardo Valerdi Massachusetts Institute.
COSOSIMO* Workshop Outbrief 14 March 2006 Jo Ann Lane University of Southern California Center for Software Engineering CSE.
COSYSMO Reuse Extension COSYSMO Workshop – USC CSSE Annual Research Review March 17, 2008 Ricardo ValerdiGan Wang Garry RoedlerJohn Rieff Jared Fortune.
Towards COSYSMO 2.0: Update on Reuse Jared Fortune, USC Ricardo Valerdi, MIT USC ARR 2009 Los Angeles, CA.
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
Copyright © 2001, Software Productivity Consortium NFP, Inc. SOFTWARE PRODUCTIVITY CONSORTIUM SOFTWARE PRODUCTIVITY CONSORTIUM COSYSMO Overview INCOSE.
What is Business Analysis Planning & Monitoring?
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
ESD web seminar1 ESD Web Seminar February 23, 2007 Ricardo Valerdi, Ph.D. Unification of systems and software engineering cost models.
Project Management Estimation. LOC and FP Estimation –Lines of code and function points were described as basic data from which productivity metrics can.
Gan Wang BAE Systems Ricardo Valerdi University of Arizona Garry J. Roedler Lockheed Martin Mauricio Pena Boeing Systems Engineering Reuse Delphi – Workshop.
University of Southern California Center for Systems and Software Engineering COSATMO/COSYSMO Workshop Jim Alstad, USC-CSSE Gan Wang, BAE Systems Garry.
9/17/2002 COSYSMO Usage Experience Panel: What is Happening at Lockheed Martin Garry Roedler, Lockheed Martin Engineering Process Improvement Center
Harmonizing Systems and Software Estimation 23 rd International Forum on COCOMO and Systems/Software Cost Modeling and ICM Workshop USC Campus, Los Angeles,
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.
11/04/091 Some Topics Concerning The COSYSMOR Model/Tool John E. Gaffney, Jr Center For Process Improvement Excellence.
Overview of Addressing Risk with COSYSMO Garry Roedler & John Gaffney Lockheed Martin March 17, 2008.
11/03/091 Integrating Cost and Schedule Estimation In The COSYSMOR Model/Tool John E. Gaffney, Jr Center For Process Improvement.
 System Requirement Specification and System Planning.
Estimation Questions How do you estimate? What are you going to estimate? Where do you start?
Introduction for the Implementation of Software Configuration Management I thought I knew it all !
ITIL: Service Transition
Chapter 33 Estimation for Software Projects
Project Cost Management
Software Project Configuration Management
Chapter 1 The Systems Development Environment
COCOMO III Workshop Summary
CASE Tools and Joint and Rapid Application Development
(Additional materials)
Chapter 1 The Systems Development Environment
Level 1 Level 1 – Initial: The software process is characterized as ad hoc and occasionally even chaotic. Few processes are defined, and success depends.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
Constructive Cost Model
COSYSMO: Constructive Systems Engineering Cost Model
Towards COSYSMO 2.0: Update on Reuse
Chapter 13 Quality Management
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.
Project Management Process Groups
COCOMO Models.
Cost Estimation Van Vliet, chapter 7 Glenn D. Blank.
Chapter 33 Estimation for Software Projects
Software Engineering: A Practitioner’s Approach, 6/e Chapter 23 Estimation for Software Projects copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
HHS Child Welfare National IT Managers' Meeting
Working Group Meeting Report
University of Southern California Center for Software Engineering
Chapter 1 The Systems Development Environment
Chapter 26 Estimation for Software Projects.
Executive Project Kickoff
Generalized Reuse Model for COSYSMO Workshop Outbrief
Presentation transcript:

PSM 2008 Workshop: Toward Integrating Systems Engineering and Software Engineering Estimation: Harmonizing COSYSMO and COCOMO John Gaffney 301-721-5710 j.gaffney@lmco.com Garry Roedler 610-354-3625 garry.j.roedler@lmco.com Program Resource Center Corporate Engineering and Technology Lockheed Martin Corporation July 15-16, 2008 07/15-16/08

Workshop Premise It is highly desirable to integrate systems engineering estimation and software engineering estimation 07/15-16/08

Background/Observations This is the latest of a series of workshops on systems and software engineering estimation (COSYSMO and COCOMO) that have occurred over a number of years at PSM and in other venues such as the University of Southern California COSYSMO/COCOMO Workshops The COSYSMO systems engineering estimation model/tool and its risk and reuse extensions, the COSYSMOR tool developed by Lockheed Martin and endorsed in several venues including PSM 2007, and the COCOMO software engineering estimation model/tool have evolved somewhat independently, resulting in: A disjunction of the two sets of cost drivers, e.g., COCOMO can represent the affect on cost of schedule compression, but COSYSMO can not The need to relate and harmonize the tasks and the phases/portions of the product or system life cycle covered by each tool 07/15-16/08

Workshop Goals/Intended Products Obtain some degree of consensus about what changes (additions/deletions/definitions), if any, should be made to the COSYSMO and COCOMO cost drivers Obtain some degree of consensus about what the tasks or activities and life cycle phases in COSYSMO and COCOMO should be Identify other concerns and problems relating to harmonizing COSYSMO and COCOMO and identify the next steps to be taken 07/15-16/08

Review/Level Setting: COSYSMO and COCOMO Model Form Both COSYSMO and COCOMO are parametric models of the form K=A*SE*(Di) *, Where: K is the cost/effort estimated for the project; S is size or scope and the cost drivers, Di (i=1, 2, ...n) are selected for the project. The values for A, the productivity constant, and E are based on organizational experience The Di are presumed to be mutually independent Di modifies the productivity (actually, unit effort) for the domain/organization, e.g., sonar software coded in C++, for the particular situation,<product/project, process, personnel, tools>, being estimated * Note: This form is basically the same as the activity-based model where typically only one or a small set of activities is included and cost driver values (e.g., Di s) are not explicitly stated 07/15-16/08

Review/Level Setting: Cost Drivers The cost drivers, the Di, characterize attributes of: the product/project, the processes used to perform the task estimated, the personnel, the tools, and in the case of COCOMO at least one attribute of the processor, e.g., Main Storage Constraint Each driver value is selected with respect to the baseline’s value, captured in the constant A (see previous page). “Nominal” for driver Di is coded as Di=1.0, i.e., the project being estimated does not differ (at least not appreciably) from the baseline with respect to the attribute characterized by Di 07/15-16/08

COSYSMO and COCOMO Cost Driver Mapping Arrows indicate corresponding COSYSMO and COCOMO cost drivers 07/15-16/08

Some Suggestions For Consideration COCOMO Drivers, Attribute Representations, that COSYSMO Needs Does COSYSMO need a driver corresponding to Execution Time Constraint (TIME) ? Does COSYSMO need a driver corresponding to Storage Constraint (STOR) ? COSYSMO does need a a driver or some other way of representing schedule compression (SCHED)* Does COCOMO need Migration Complexity ? Does COCOMO need Technology Risk ? COSYSMO Drivers, Attribute Representations, that COCOMO Needs Requirements Understanding Architecture Understanding Process Capability *Note: The COCOMO SCHED driver values appear excessive, i.e., 1.14, 1.43; Another approach, e.g., estimate based on schedule vs. cost for a given size, may be better to represent the operative schedule/cost relationship 07/15-16/08

Harmonizing COSYSMO and COCOMO Results Briefing 07/15-16/08

Participants Lockheed Martin SAIC RCI General Dynamics Softstar Garry Roedler John Gaffney Elliott Reitz Greg Mazourek Howard Schimmoller Lloyd Carruso Liz Kung SAIC Chris Miller Shally Malhotra RCI Don Reifer General Dynamics Fran Marzotto Softstar Dan Ligett Raytheon Chris Leighton Air Force Lindsay Magala BAE Gan Wang Alex Shernoff Lori Saleski 07/15-16/08

Areas Considered in Analysis of Harmonization Overlap/Gaps of tasks Per WBS, work products, and combined activities Analysis of Cost Drivers Commonality of Terminology, Constructs, Life Cycle Phases, Units, … Compatibility issues from any findings or recommendations Consideration of common size drivers Base assumptions of the models 07/15-16/08

Approach to Analyze Overlaps and Gaps Reviewed example WBS for Electronic Systems from MIL-HDBK-881A Determined ownership by discipline and coverage by COSYSMO or COCOMO Identified potential areas of concern Analyzed whether potential overlap or gap Spreadsheet available Conducted additional brainstorming session Confirmed using: Documented guidance for the models Referenced the models were based on (e.g., EIA 632 and ISO/IEC 15288 for COSYSMO) 07/15-16/08

Analysis of Overlaps and Gaps Potential Overlaps PM, SE, SW, CM, QA outputs Labor distribution by phase in COCOMO Need to understand where these come from Algorithm Development E.g., coded algorithms 07/15-16/08

Analysis of Overlaps and Gaps Potential Gaps SRS Development System I&T Accounting for SW support as needed Accounting for subcontract or supplier mgt. Gap for SW in COCOMO This is accounted for in COSYSMO Additional costs for types of life cycle models Expect differences in cost based on type of LC model used Technical Process Strategy/Definition/Mgt 07/15-16/08

Analysis of Overlaps and Gaps Potential Gaps (Cont’d) Quality Management Does not appear to be accounted for in COCOMO or COSYSMO Testing Database Size COSYSMO does not account for variable costs for test data Development for Reusability COSYSMO does not account for additional costs to develop for reusability Schedule vs Cost COSYSMO does not address duration or schedule 07/15-16/08

Results of Other Analysis Analysis of Cost Drivers Most of the drivers have mappings between the models, albeit different in granularity or handling Potential concerns covered in Gaps or Recommendations Commonality of Terminology, Constructs, Life Cycle Phases, Units, … Additional commonality could improve concurrent usage, but is not essential Compatibility issues from any findings or recommendations No apparent compatibility issues (backward compatibility or with other models in COCOMO Suite) from recommendations Consideration of common size drivers No essential to harmonization, but may add utility to COCOMO Base assumptions of the models Need to document assumption for COSYSMO 07/15-16/08

Additional Recommendations Standard phase alignment for both models Per definitions used in ISO/IEC 15288 and 12207 Establish means to adequately account for recursion (at level of hands-off to SW) Needed to resolve gaps Add Guidance to COSYSMO Drivers TO: Account for constraints (e.g. Time & storage) as requirements in the size. Describe volatility covered in Requirements/Architecture understanding Look into ability to use COSYSMO size drivers in COCOMO for early estimates Add documented list of assumptions to COSYSMO 07/15-16/08

Next Steps Provide results and recommendations to USC team for these models Conduct 2-day workshop at USC in conjunction with COCOMO Forum 29-30 OCT 2008 Workshop to be led by Ricardo Valerdi, Garry Roedler, and Jared Fortune All PSM Workshop participants are invited 07/15-16/08

Backup 07/15-16/08

Parametric Cost Estimation “Parametric techniques focus on the cost drivers, not the miscellaneous details. The drivers are the controllable system design or planning characteristics and have a predominant effect on system cost. Parametrics uses the few important parameters that have the most significant cost impact on the product(s), hardware or software, being estimated.” Source: Parametric Cost Estimating Handbook, sponsored by a joint Government/Industry Committee formed in 1994 to study ways to enhance the use of parametric cost estimating techniques 07/15-16/08

Activity-Based Cost Models Activity Based Cost (ABC) Models: Estimate the costs for each activity or group of activities that compose project Ideally, derived from the work break-down structure (WBS) Enable the estimator to separately consider each activity in the process (e.g., software development process) Provides an intellectual framework for considering the effect of changes (relative to past experience) such as: a new tool, a process change, different skill mix, etc. Users need to identify all of the activities that compose the specific process whose cost is to be estimated Relate to WBS and potentially more specific staffing Cost elements may be driven by: Size of the product Proportions (percents) of the cost (effort) Examples: quality assurance, builds and controls, program office 07/15-16/08