Applying System Dynamics to Scenario
Based Software Project Management
Marcio de Oliveira Barros, crac. Res. Assistant
Claudia Maria Lima Werner, Assoc. Prof.
Guilherme Horta Travassos, Assoc. Prof.
{marcio, werner, ght}@cos.ufij.br
&
ra
COPPE / UFRJ
Federal University of Rio de Janeiro
e “., most software projects use more resources than planned,
take more time to be concluded, have less functionality and
less quality than expected.” (Pressman, 1992)
¢ Current management techniques require a project to have:
— Clear and well defined objectives
— Atleast one viable and known solution
— Previsible schedule and resource needs
— Well known operational environment
- Predefined quality metrics
¢ Complex software projects break these basic assumyptions:
Innovative application domains
High requirement volatility
Ambiguity /-
Complexity age . e
Discontinuity & <s
Diseconomy of scale Cy
Non linearity
There is a growing demand for new
management techniques !!!
“west Work Proposal
¢ Scenario based software project management paradigm
— Project manager defines an expected project behavior
— The behavior may be affected by unexpected events
— Project behavior is studied in the light of these events
¢ Supporting technologies
— Software risk management “9
— Dynamic modeling &
- Continuous time simulation
te
HBT soa
¢ Scenario based management uses two fundamental artifact types
— A project model: documents known facts about a project
— Scenario models: document actions that can affect the project
¢ Potential events
¢ Management theories, policies, and procedures
¢ Strategic and tactical actions
¢ Scenarios models combinations are integrated to a project model
to evaluate project behavior sensibility to scenarios
GIG erciece oct
Based on an extended version of Abdel-Hamid and Madnick’ s
system dynamics model and descriptive project models
(DPM)
DPM provides a high level representation for a project
— A project is described in terms of its activities, artifacts,
developer roles and resources
The high level representation is translated to system dynamics
constructors to allow project behavior simulation
— The project model is a concrete model
— It can be integrated to scenario models
“west Soenario Models
e Represent actions that can affect the expected project behavior
e The expected project behavior is analyzed through project
model simulation
¢ Scenarios are integrated to the project model, allowing the
simulation of their inypact upon expected project behavior
— Scenario models are associated to project model elements
— Project model elements publish their properties
— Scenario models can manipulate these properties and their
instantaneous variation in each simulation iteration
“west Example - Project Model
¢ Telecommunications project (five activities, two developers)
D1
v
Physical
Devices
Design (20)
D1
Testing (20)
“west Project - Scenario Model
¢ Commumication overhead scenario
- Associated to project activities (project element)
— Access activity properties (duration and role count)
— Affects activity property (duration)
TABLE COMMOVH 0, 0.015, 0.06, 0.135, 0.24, 0.375, 0.54;
RATE (SOURCE, <ACT:Duration> COMMRATE
VAR<ACT:Duration>*
LOOKUP (COMMOVH, <ACT:RolesCount>, 0, 30);
e Manager selects the elements that are affected by the scenario
— The project manager indicates that the communication
overhead scenario affects all activities
¢ Scenario equations are translated to system dynamics
- Activity properties are represented by stocks
— Scenario models can consult and change these stocks
— Scenarios commands are translated to “pure system dynamics”
e A project-&-scenario model is generated and simulated
Project Behavior Without Soenario Model
Project Behavior With Scenario Model
- A high level project representation that can be translated
to system dynamics constructors
— Separating facts from suppositions within a system
dynamics software project model
— Defining an integration interface among project model
and scenario models