Document 7184335

Download Report

Transcript Document 7184335

Integrated COCOMO Suite Tool for Education
Ray Madachy
[email protected]
24th International Forum on COCOMO and Systems/Software Cost Modeling
November 3, 2009
Agenda
•
•
•
•
Introduction to COCOMO Suite
Education Usage
Implementation
Next Steps
2
Background
• The COCOMO suite of models collectively estimate systems
and software engineering effort and schedule, software
defects, dependability return-on-investment, and productivity
improvement.
– Other special extensions also estimate program risk.
• They are all primarily derived from the COCOMO II software
cost estimation model and share some common inputs,
algorithmic approaches, and output types.
• However there are distinct differences and reconciling them
for single program application is sometimes problematic.
• The web-based COCOMOSuite tool unifies them in a single
application to explore their interactions and refine the models.
• COCOMOSuite also lowers barriers for education usage
3
Model Unification Goals
• Allow more
comprehensive cost
exploration with respect to
– Development decisions
– Investment decisions
– Established project budget and
schedules
– Client negotiations and
requested changes
– Cost, schedule, performance,
and functionality tradeoffs
– Risk management decisions
– Process improvement decisions
• Provide a single unified tool to
allow users to
– Specify
• System and software
components comprising the
software system of interest
• Composition and characteristics
of components
– Receive
• A set of comprehensive outputs
for system engineering, software
development, and system-ofsystems integration
• Adjusted using the appropriate
special-purpose extensions
4
COCOMO Suite Quantities
Estimated
Effort
Effort
by
Phase
Schedule
COCOMO II
X
X
X
COQUALMO
X
Model
X
iDAVE
Defects
ROI
Improvement
Graphs
X
X
COPLIMO
X
CORADMO
X
X
COPROMO
X
X
COCOTS
X
COSYSMO
X
COSOSIMO
X
X
X
X
5
Typical Model Usage
Use…
When scope of work to be performed is…
COCOMO II
Development of software components (software development)
COCOTS
Assessment, tailoring, and integration of COTS products
COSYSMO
Design, specification, and integration (system engineering) of system components to
be separately developed for a single system
COSOSIMO
Specification, procurement, and integration of two or more separately systemengineered and developed systems
COCOMO II with COCOTS
Development of software components (software development), and a software
system including assessment, tailoring and glue-code for integration of COTS
COSYSMO and COCOMO II
System engineering and software development for a single system with softwareintensive components
COSYSMO and COSOSIMO
System engineering of individual systems and integration of the multiple systems
COCOMO II, COSYSMO,
COCOTS, and COSOSIMO
System engineering, software development, and integration of multiple softwareintensive systems and COTS products
6
Long Term Vision
COSOSIMO
COSYSMO
Unified
Interface
COCOMOII/
COQUALMO
COCOTS
COCOMOII extensions
•RAD, security
•Incremental, phase/activity
•Agile, risk, Monte Carlo
•ROI (product line,
dependability)
•Maintenance
Output
Analysis
and Report
Generation
Unified Model
7
Agenda
•
•
•
•
Introduction to COCOMO Suite
Education Usage
Implementation
Next Steps
8
NPS Classroom Environment and
Constraints
• Distance learning
– Internet necessary for class
• Abundance of tools to install and learn
– Administrative and engineering applications
– Exacerbated by multiple tools for COCOMO Suite
– Exacerbated by multiple vendor tools provided
• NMCI security constraints
– Downloads and program installation of non-approved tools
frequently impossible
• Windows installation problems and impossibilities or
incompatible Macs
• Problems duly noted in student course evaluations 9
Homework Streamlining
• Student homework estimate backups provided
in many formats (estimate files using different
tools, spreadsheet exports, screen captures in
Powerpoint, …)
– Sometimes painstaking to capture electronically
– Often painstaking to read and sometimes
unreadable by Professor
• Single tool archive file saves steps and hassle
– Students provide URL
– Professor easily views inputs and outputs
10
Current Users
• Education
– NPS, USC, TU Munich
– Others per email notices
• Internet public (industry, researchers)
– Hundreds of data files per day on CSSE server
– Many email queries
• Protected space usage
– Selected Navy programs
– Research institution colleagues
11
Agenda
•
•
•
•
Introduction to COCOMO Suite
Education Usage
Implementation
Next Steps
12
COCOMO Suite Models in
Current Tool
COCOMO Suite
COSYSMO
System size
Systems cost drivers
Systems
Effort
Model
Risk
Model*
COCOMO II
Software size
Software cost and defect
introduction drivers
Defect removal capability
levels
Software
Effort and
Schedule
Model
COQUALMO
Defect
Introduction
Model
Defect
Removal
Model
Systems engineering effort by
phase/activity
Systems engineering risk
management advice
Integrated systems and
software effort by
phase/activity
Software development effort
and schedule by
phase/activity
Software defect levels by type
* Expert COSYSMO
13
Screen 1
14
Screen 2
15
Screen 3
16
Screen 4
17
Screen 5
18
Screen 6
19
Archive File
20
Tool Software Measures
• 73% PHP, 27% HTML
• 4267 Physical Lines of Code
• 3375 Logical Lines of Code
• physical/logical ratio = 1.26
21
Where?
• Tool available at:
https://diana.nps.edu/MSAcq/tools/COCOMOSuite.php
http://csse.usc.edu/tools/COCOMOSuite.php
google “cocomo suite tool”, “cocomosuite.php” (#1)
“cocomo suite” (#2)
22
Agenda
•
•
•
•
Introduction to COCOMO Suite
Education Usage
Implementation
Next Steps
23
Upcoming
• Multiple module estimation
• Decision support modes (go/no-go, lifecycle analysis, reuse tradeoff, etc.)
• Local file save and open
– Open XML format supports data collection, analysis and cost model data transfer
• Additional cost models
• A COCOMO Suite “service” like Google maps
– A few lines of HTML/JavaScript or PHP to call it
24
References
•
•
•
•
•
•
•
•
•
•
•
Abts C., “Extending The COCOMO II Software Cost Model To Estimate Effort And Schedule For
Software Systems Using Commercial-off-the-shelf (COTS) Software Components: The COCOTS
Model”, USC PhD dissertation, May 2004
Boehm B., Abts C., Brown W., Chulani S., Clark B., Horowitz E., Madachy R., Reifer D., Steece B.,
Software Cost Estimation with COCOMO II, Prentice-Hall, 2000
Boehm B., Valerdi R., Lane J., Brown W., “COCOMO Suite Methodology and Evolution”,
Crosstalk, 2005
Chulani S., Boehm B., “Modeling software defect introduction and removal: COQUALMO
(COnstructive QUALity MOdel)”, University of Southern California Center for Software
Engineering, USC-CSE Technical Report 99-510, 1999
Lane J. “Constructive Cost Model for System-of-System Integration,” 3rd ACM-IEEE International
Symposium on Empirical Software Engineering, Redondo Beach, CA, August, 2004
Madachy R., “Heuristic Risk Assessment Using Cost Factors”, IEEE Software, May 1997
Madachy R., Valerdi R., “Knowledge-Based Systems Engineering Risk Assessment”, University of
Southern California Center for Systems and Software Engineering Technical Report, USC-CSSE2008-818, 2008
Madachy R., Boehm B., “Assessing Quality Processes with ODC COQUALMO”, Proceedings of the
2008 International Conference on Software Process, Liepzig, Germany, 2008
Madachy R., “COCOMO Suite”, CS510 Presentation, University of Southern California, September
2005
Valerdi R., Systems Engineering Cost Estimation with COSYSMO, Wiley, 2009
Yang Y., Boehm B., Madachy R., “COPLIMO: A Product-Line Investment Analysis Model,
Proceedings of the Eighteenth International Forum on COCOMO and Software Cost Modeling”,
USC, Los Angeles, CA, October 2003
25