Chapters 16-18 Multiple-Goal Decision Analysis II

Fundamentals of
Software Engineering Economics (III)
Software Engineering Economics
Multiple Goal Decision Analysis II
(Chapters 16-18)
LiGuo Huang
Computer Science and Engineering
Southern Methodist University
1
Chapters 16-18
Multiple-Goal Decision Analysis II
• Goals as constraints
– TPS example
– Constrained optimization
– Linear programming
• System Analysis
• Dealing with unquantifiable goals
– Preference table
– Screening matrix
– Presentation techniques for mixed criteria
2
TPS Decision Problem 5
• Option A operating system:
– If one processor fails, system fails
• Processor reliability: 0.99/hour
• Mean time to repair: 30 min.
• System reliability for N processors:
– Rel (N) = (0.99)N
• System availability for N processors
–
AV(N) = 1 –
(prob. of failure per time period)(Avg. down time)
Length of time period
= 1 – (1-.99N)(30Min)/(60min) = 1–½ (1-.99N)
3
TPS Reliability, Availability, and Performance
E(N)
trans/sec
Rel, Av
1.00
E(N)
0.99
DSC =
(SC)(E(N))(Av(N))
2400
2000
1600
0.98
Av(N)
1200
0.97
800
0.96
400
0.95
Rel(N)
0.94
1
2
3
4
Number of processors, N
5
6
4
TPS Delivered System Capability
2400
2000
2196
2340
2328
1892
DSC(N) = 1600
E(N)*Av(N)
1426
1200
800
796
400
1
2
3
4
Number of processors, N
5
6
5
Goals as Constraints
Can’t afford availability <.98
– Choose N to maximize E(N) = 80N (11-N)
subject to AV(N) > .98
2. Can’t afford delivered capacity < 1800 TR/sec
– Choose N to maximize AV(N) subject to
E(N) > 1800
3. Comm. Line limits E(N) to < 1500 TR/sec; value
of TR/sec = $500 (a); $1000(b)
1.
6
Optimal Solution for TV = 0.5E
E=2TV
E < E(N)
1680
Av > 0.98
1620
NV = .5E – 40N – 450 = 200
1560
NV = 180
1500
E ≤ 1500
NV = 150
1440
NV = 190
1380
E ≤E(N)
2
530
3
570
4
610
N
C
7
Optimal Solution for TV = E
E=TV
E < E(N)
1680
Av > 0.98
1620
NV = E – 40N – 450 = 970
1560
NV = 930
1500
E < 1500
1440
NV = 910
NV = 870
1380
E < E(N)
2
530
3
570
4
610
N
8
C
General Optimal Decision
Problem With Constraints
• Choose values of the decision variables
– X1, X2, …, Xn
• So as to maximize the objective function
– f(X1, X2, …, Xn)
• Subject to the constraints
–
–
–
–
g1 (X1, X2, …, Xn) < b,
g2 (X1, X2, …, Xn) < b2
…
gm (X1, X2, …, Xn) < bm
9
Optimal Solution:
Necessary and Sufficient Conditions
•
•
•
The optimal solution (X1, X2, …, Xn)max
And the optimal value Vmax
Are characterized by the necessary and
sufficient conditions
1. (X1, X2, …, Xn)max is a feasible point on the
isoquant
f(X1, X2, …, Xn) = Vmax
2. If V> Vmax, then its isoquant f(X1, X2, …, Xn) = V
does not contain any feasible points
10
Geometric View
Objective function
isoquants
xn
(Decision
variable)
g1(x1, … , xn) = b1
Decision
space
Optimal
solution
Feasible set
Feasible point
g2(x1, … , xn) = b2
x1
Infeasible point
(Decision variable)
g3(x1, … , xn) = b3
11
The Linear Programming Problem
• Choose X1, X2, …, Xn
• So as to maximize
– C1X1 + C2X2 + … + CnXn
• Subject to the costraints
–
–
–
–
–
a11X1 + a12X2 + … + a1nXn < b1
a21X1 + a22X2 + … + a2nXn < b2
…
am1X1 + am2X2 + … + amnXn < bm
X1 > 0, X2 > 0, …, Xn > 0
12
Universal Software, Inc.
• 16 analysts, 24 programmers, 15 hr/day computer
• Text-processing systems
– 2 analysts, 6 prog’rs, 3 hr/day comp
$20K profit
• Process control systems
– 4 analysts, 2 prog’rs, 3 hr/day comp
$30K profit
• How many of each should Universal develop to maximize
profit?
13
Solution Steps
1. What objective are we trying to optimize?
2. What decisions do we control which affect the
objective?
3. What items dictate constraints on our range of
choices?
4. How are the values of the objective function
related to the values of the decision
variables?
5. What decision provides us with the optimal
value of the objective function?
14
Feasible Set: Universal Software
X
2
6
4
Feasible
Set
2
x
2
0
2
x
1
0
4
6x1 + 2x2
 24
6
3x1 + 3x2
 15
8
X1
2x1 + 4x2
 16
15
Optimal Solution: Universal Software
Optimal solution
4
3
2
1
Feasible
set
1
2
3
4
5
6
16
TPS Analysis Assumptions
• Programmers and analysts are
interchangeable
• No learning curve effects, or nonlinear
economies of scale
• Idle programmers can be immediately
relocated
17
Capabilities of Mathematical
Optimization
• Provide valuable knowledge
• Sensitivity analysis
• Provide a conceptual aid to problem
formulation, problem solution and decision
making
18
Limitations of Mathematical
Optimization
• Formulating practical problems is usually
based on assumptions hard to justify
• Determination of optimal solutions may be
expensive for large problems
• In practice, we may not want to choose the
optimal solution which may be the “cliff”
19
System Analysis
• Analyzing the likely consequences of
alternative decisions within the context of a
given system
• Used during feasibility phase of software lifecycle
• Constrained optimization process provides a
good conceptual framework
20
System Analysis Steps
• What objectives to optimize or satisfy?
– Develop system objectives, global objectives of
organization and global alternatives
• What decision do we control that affect our
objectives?
– Reduce the size of decision space
– Systems involve decisions we don’t control
– System features won’t much affect the objectives
• What items dictate constraints on our range
of choices?
– Interface conditions
– Objectives expressed as constraints
21
System Analysis Steps (Cont.)
• What criteria should we use to evaluate the
remaining alternatives?
• What decision provides us with the most
satisfactory value of the objective functions?
Sensitivity analysis
• Does the performance of any of the above
steps cause a reconsideration of the previous
steps? If so, iterate the affected steps.
22
Mathematical Optimization
System Analysis [Quade68]
Formulation
Formulation
What objectives are we trying to optimize or
satisfy?
Clarifying the objectives, defining the issues of
concern, limiting the problem.
Search
What decisions do we control which affect our
objectives? What items dictate constraints on our
range of choices?
Search
Looking for data and relationships, as well as
alternative programs of action that have some
chance of solving the problem.
Evaluation
What criteria should we use to evaluate the
alternatives? How are the values of the criterion
function related to the values of the decision
variables which define the alternatives? What
choice provides us with the best criterion value?
Evaluation
Interpretation
Interpretation
How sensitive is the decision to assumptions
made during the analysis? Are there alternative
decisions providing satisfactory results with less
sensitivity to these assumptions?
Using the predictions obtained from the models,
and whatever other information or insight is
relevant, to compare the alternatives further,
derive conclusions about them, and indicate a
course of action.
Iteration
Building various models, using them to predict the
consequences that are likely to follow from each
choice of alternatives, and then comparing the
alternatives in terms of these consequences.
Iteration
23
TPS Decision Problem 6
• Cost of option B OS with switchover, restart:
$150K
• Cost of option B OS from vendor: $135K
• Which should we choose?
– Key personnel availability
– Staff morale and growth
– Controllability
– Ease of maintenance
24
Presentation Techniques
• Unquantifiable criteria
# CRIT
#ALT’S
– Criterion summaries
– Preference table
– Screening matrix
2-10
2-3
2-20
2-5
5-30
2-10
• Mixed Criteria
– Tabular methods
– Cost vs. capability graph
– Polar graph
– Bar charts
25
Cautions in Presenting and
Interpreting Multivariate Data
• Choice of scale
Schedule (years)
Schedule (years)
Basic cost, $100K
Basic cost, $100K
0
1
2
3
4
0
Option 1
Schedule (months)
Basic cost, $1000K
Basic cost, $1000K
1
2
3
4
2
3
4
3
4
Option 2
Schedule (months)
0
1
5
0
1
2
26
Cautions in Presenting and
Interpreting Multivariate Data (Cont.)
• Double Counting
– Compare Schedule and Maintainability
– Compare Schedule, Maintainability, Flexibility and
Adaptability
27
Summary – Goals As Constraints II
• Adding constraints can simplify multiple-goal
decision problems
• System analysis approach very similar to
constrained optimization
– 6-step approach
– Sensitivity analysis
– Satisficing
• Unquantifiable goals require subjective resolution
– But effective presentation techniques can help
decision process
28