University of Southern California Center for Systems and Software Engineering
1
Systems Engineering Reuse Principles
Jared Fortune, USC
Ricardo Valerdi, MIT
COSYSMO Workshop @ COCOMO Forum 2010
Los Angeles, CA
University of Southern California Center for Systems and Software Engineering
Need to Estimate Effect of Systems Engineering Reuse
• Practitioners noted large errors between model estimates and actuals– Variations discovered to be attributable to programs with reuse
• Systems engineering reuse – The utilization of systems engineering products from previous efforts– Ex: architectures, requirements, test plans, interfaces– Means of reducing cost, schedule, and/or risk
• Current version of the model assumes all systems engineering products will be “built from scratch”– Unable to account for the impact of systems engineering reuse
…COSYSMO 2.02
University of Southern California Center for Systems and Software Engineering
COSYSMO 2.0 Operational Concept
3
University of Southern California Center for Systems and Software Engineering
Model Form
4
Where:PMNS = effort in Person Months (Nominal Schedule)A = calibration constant derived from historical project data wr = weight for reuse category r = {New, Designed for Reuse, Modified, Deleted, Adopted,
Managed}wx,k = weight for size driverx = {Easy, Nominal, Difficult}k = {Requirements, Interfaces, Algorithms, Scenarios}
Φ = quantity of “k” size driver E = represents (dis)economies of scaleEM = effort multiplier for the jth cost driver
University of Southern California Center for Systems and Software Engineering
Reuse CategoriesCategory Sub-Category Definition
I) New Products that are completely new
i) Designed for Reuse
Products that require an additional upfront investment to improve the potential reusability
II) Modified Products that are inherited, but are tailored
ii) Deleted Products that are removed from the system
III) Adopted Products that are incorporated unmodified (a.k.a. “black box” reuse)
iii) Managed Products that are incorporated unmodified and with minimal testing
5
University of Southern California Center for Systems and Software Engineering
Reuse Category Weights
6
University of Southern California Center for Systems and Software Engineering
COSYSMO 2.0 Implementation Results• Across 44 projects at 1
diversified organization• Using COSYSMO:
– PRED(.30) = 14%– PRED(.40) = 20%– PRED(.50) = 20%– R2 = 0.50
• Using COSYSMO 2.0:– PRED(.30) = 34%– PRED(.40) = 50%– PRED(.50) = 57%– R2 = 0.72
• Result: 36 of 44 (82%) estimates improvedSeptember 10, 2009 7
University of Southern California Center for Systems and Software Engineering
Reuse Framework
8
University of Southern California Center for Systems and Software Engineering
9
Academic COSYSMO 2.0(without reuse)
University of Southern California Center for Systems and Software Engineering
September 10, 2009 10
Academic COSYSMO 2.0(with reuse)