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
© Copyright 2026 Paperzz