applying cocomo ii effort multipliers to simulation models 16th international forum on cocomo and...
Post on 20-Dec-2015
219 views
TRANSCRIPT
Applying COCOMO II Effort Multipliers to Simulation Models
16th International Forum on COCOMO and Software Cost Modeling
Jongmoon Baik and Nancy EickelmannSoftware and System Engineering Research Laboratory
Motorola Labs
Oct 25, 2001
Outline
• Problems
• What is Model & Simulation?
• Simulation Model Comparison
• Why COCOMO II Parameters?
• Example– System Test Process – DSD (Distributed Software Development)
• Future Work
Problems
• Most Critical Decision Early in the lifecycle– Little information available to assess the
proposed process changes and technology insertions
• Difficult to understand problems in the current complex processes
Model and Simulation
• Model“ An abstraction or simplified representation of a real or
conceptual complex system. It is designed to display significant features and characteristics of the system under study.”
• Simulation“Computerized model that possesses the characteristics
described above and that represents some dynamic system or phenomenon.”
Primary Benefits of Simulation
• Process Characterization• Quantitative Analysis for Proposed Process
Changes and Technology Insertions– Support Decision Making and Risk Assessment
• Support to achieve Higher CMM levels– Quantitative process Management and software Quality
Management (CMM-Level 4)– Process/Technology Change Management and
Continuous Process Improvement (CMM_Level 5)
• Project Planning including Effort/Schedule/Cost Estimation
Change Process Comparison
Proposed Plan for Process Changes and Technology Insertions
Process Manager, Team, or Cost Estimators
Implementation of Process Changes and Technology
Insertions
Refine
Feed Back
Analysis
Proposed Plan for Process Changes and Technology
Insertions
Simulation Model
Simulation Model
Implementation of Process Changes and Technology
Insertions
Process Manager, Team, or Cost
Estimators
Feed Forward
Refine Quantitative Control Feed Back
Simulation Model Comparison
Continuous Model Discrete Event Model
Advantages -Continuous changes of process & product attributes-Captures stable or unstable feedback loops-Predict the unanticipated side effects from changes of process and product attributes
-Easy to represent queues-Delay b/w activities based on available resources-Unique attributes for each entity-Capture the effects of variation in the entities for each activity-Capture inter-dependencies b/w activities
Disadvantages
-Difficult to describe process steps
(Explicit mechanism for controlling the discrete activity sequence)-No individual entity and attributes-Same rate for each model run
-Variable changes only at the event times-Difficult to represent simultaneous activities
Common Use Economics, System Dynamics, Scientific (biology, Chemistry, Physic) processes, Electronics, Control Systems
Business Process Reengineering, Networks, Systems Engineering, Manufacturing
Why COCOMO II Parameters?
• Widely accepted public cost model – Calibrated with 161 actual project data
• Objective impact analysis for each factor- If There is no data available for the parameter
• Can be calibrated from the organization’s historical data
• Dynamic effect can be added into simulation model– Different rating values over time (COCOMO81
Detailed COCOMO)
COCOMO II EMs to Simulation
Product:RELY, DATA, DOCU,CPLX, RUSE
Platform:TIME, STOR, PVOL
Personnel:ACAP, APEX, PCAP,PLEX, LTEX, PCON
Project:TOOL, SITE, SCED
System Test Process Simulation
• Baseline a current System Test Process• Predict impact of process change and technology
insertion on schedule, quality, effort
SystemRequirements
SystemArchitecture
RequirementsSystemDetailedDesign
BoxRqmts
BoxDesign
SystemFunctional
Requirements
Box(auto)Coding
BoxUnit Test
BoxSystem
Test
SystemEarly SDLIntegration
testing
SystemEarly
Integrationtesting
System
IntegrationTest
System
SystemTest
SubsystemIntegration
Test
SubsystemSystem Test(host/target)
BoxIntegration
Test
SystemBetaTest
TextText
TextText
eMSCeMSC
SL + SDLSL + SDL
TextText
eMSCeMSC
SDL(process), CSDL(process), CBox Validation ActivitiesBox Validation ActivitiesSystem Validation ActivitiesSystem Validation Activities
eMSCeMSCExtended Message Sequence ChartsExtended Message Sequence ChartsSDLSDL Specification and Design LanguageSpecification and Design LanguageSLSL “SL”, data language“SL”, data language
eMSC, SDL(blocs)eMSC, SDL(blocs)
SDL (blocs)SDL (blocs)
Example: LTEX
• Used to assess the impact of SDL/MSC insertion into a system test process
• Map SDL Ranks (1-5) to LTEX ratings (VL to VH)
START
-
always takes too long
MEETING
PRESENT ARGUMENTS
COMPANY X OPINION
MOTOROLA OPINION
THROW OUT IDEA
COMPANY Y OPINION
AGREESUPERIOR ARGUMENT
COFFEE BREAK
where the real work is done
PROPOSE DECISION
MEETING AGREES
LUNCHwell deserved
MOTOROLAWITH
SDL
Test Planning
Test Development
Test Execution
Defect Tracking
Schedule Saving by LTEXMeeting Duration
0
0.5
1
1.5
1 2 3 4 5 6 7 8 9 10 11 12
Build
Du
rati
on
(D
ays)
VH
H
N
L
VL
Defect Tracking Duration
0
0.5
1
1.5
2
1 2 3 4 5 6 7 8 9 10 11 12
Build
Du
rati
on
(D
ays)
VH
H
N
L
VL
• Total Savings– Nominal (N to VH) 10.05 Days– Maximum (VL to VH) 24.51 Days
System Test Duration
0
5
10
15
1 2 3 4 5 6 7 8 9 10 11 12
Build
Du
rati
on
(D
ays)
VH
H
N
L
VL
DSD [Distributed Software Development]
• Communication Breakdown• Coordination Breakdown• Geographical Dispersion• Loss of Team Cohesiveness• Cultural DifferencesSource: IEEE Software March/April 2001, Robert D. Battin et. al.
“Leveraging Resources in Global Software Development”
SITE
PMAT
TEAM
PREC TOOL