560 likes | 701 Views
Decision Making Under Uncertainty Extracted from: ICSE’ 2002 Tutorial on Software Economics. Hakan Erdogmus Warren Harrison. Economic Analysis and Decision Making. Economic Analysis of Software Engineering is driven by the need to make decisions
E N D
Decision Making Under UncertaintyExtracted from: ICSE’ 2002 Tutorial on Software Economics Hakan Erdogmus Warren Harrison
Economic Analysis and Decision Making • Economic Analysis of Software Engineering is driven by the need to make decisions • Common problems encountered by decision-makers include: • decision deferral • inability to defend the decision • inconsistent judgement • Traditional software engineering decision-making is based on technical outcomes
Components of a Decision • Choice involves selecting the “best” alternative under consideration • A decision has four components: • Actions • States of Nature • Outcomes • Choice Criterion
Components of a Decision: Actions • Actions are alternative things you can do in response to the decision • Properties of candidate actions: • mutually exclusive • enumerable • initial level of objectivity need not be great, but must come to pass eventually – start out with subjective description, refine later
Components of a Decision:States of Nature • External events that can affect the efficacy of the alternatives – we can’t control them! • Events that will certainly occur or events that have no impact on the alternatives should not be considered. • States of nature are mutually exclusive. • Initial level of objectivity need not be great, but must come to pass eventually.
An Example • A new income tax package is being planned. • The product needs an installation feature. • We can either license a commercial installation package or we can build our own. • To develop our own will cost $10,000. • To license a commercial package will entail a $1.00/unit royalty,but no up front costs.
Technical Evaluation • The effort required to develop the interface software versus the effort required to custom develop all the code • The maintainability of the COTS software • The reliability of the COTS software • The quality and reliability of vendor support from NASA Software Management Guidebook, NASA-GB-001-96 More on COTS in Segment 5!
Economic Evaluation • Breakeven Analysis • Expected Cost to Build • Expected Cost to License • Discounted Cash Flow • Buying Options
Breakeven Analysis • $10,000 fixed cost vs. $1/unit variable cost • at 10,000 units Building breaks even
Outcomes • For each action, what will the outcome be for each state of nature? • Action: License • Action:Build Our Own • State of Nature: We sell less than 10,000 units • State of Nature: We sell more than 10,000 units • Outcomes: ...
Outcome Basis • The outcome is based on the cost of the action and the benefit of the action • Costs • Build our own – cost of development • License commercial package – royalty • Benefits • Product gets installed – does not matter which choice
Choice Criterion • Rules we might use to decide which action to choose: • pick the action with the lowest cost for the most likely state of nature • pick the action that never results in the highest cost • pick the action with the lowest expected cost
Expected Cost • Viability of expected cost is dependent on the assessment of the likelihood of each state of nature • Garbage-in Garbage-out! • Information is not free – how much is it worth? • How can we measure the worth of more accurate information?
Time Value of MoneyMoney Received or Spent in the Future • We must spend the money now to build • Royalties are paid out in the future • If we invest the $10,000 rather than spending it on creating an installation feature at 10%: • 2003: $1,000 interest $11,000 • 2004: $1,100 interest $12,100 • 2005: $1,210 interest $13,310 • 2006: $1,331 interest $14,641
A Dollar in the Future is Not Equalto a Dollar Today • Foregone interest: $10,000 today, in a year at 10% interest is $11,000 • Risk: the longer before an investment starts paying off, the more likely conditions can change • Liquidity: people value the flexibility to use their funds whenever they want – the longer funds are tied up, the less utility a person receives Time Value of Money =Opportunity Cost (foregone benefits)+ Risk+ Inflation + Liquidity
Present Value and Discounting • Today’s value of a sum of N periods in the future: Present Value = (Future Value) / (1 + k)N Where • k: discount rate per period • N: number of periods • To fairly compare $10,000 spent today against royalties to be paid out in one year we must discount the cost of the royalties • Apply to benefits in a similar fashion
Net Present Value • Evaluating Investment Opportunities: • NPV = Investment – PV(income stream) • Use “cost of capital” as the discount rate • NPV Decision Rule: If NPV > 0 then invest • Internal Rate of Return (IRR) – the discount rate that drives the NPV to zero …
Keeping Our Options Open • It is financially desirable to build our own installation feature if sales rise above 10,000 units • We can insert “hooks” into the application that will allow us to quickly add our own installation feature if sales turn out to be high. • Should we invest in adding “hooks”? How much can we afford to invest?
Handling Uncertainty • Models for evaluating process and project management choices under uncertainty: • Should we buy or build? …Decision Tree Analysis illustrated • Why are iterative processes viable? … Real Options Analysis illustrated • Should we implement this feature now? … More options thinking • Should we develop a prototype? • Should we invest in infrastructure (product line, framework, component libraries)?
Build vs. License Example RevisitedHow Much to Invest to Add the “Hooks”? LOW = .75 MED = .22 HIGH = .03 • ½ of projected sales in Q2; rest in Q4 • Decision to build taken at Q2 after based upon Q2 sales figures
Build vs. License Example RevisitedConditional Sales Projections and Probabilities LOW MED HIGH Q4 sales projections based on Q2 sales
Build vs. License DecisionDecision Tree for Option to Build Q2 Q4 Action Time Build Prob.of State High:25K < units Q0 High: . 50K units .33 Med: 37.5 units .33 License .03 Action Node Low: . 25K units .33 Add Hooks;Start with Licensing Build Med:10K < units 25K .22 High: 15K units .1 Med: 12.5K units .45 License Low: 10K units .45 State Node .75 Build Low:units 10K High: 5K units .27 Descriptionof State Med: 2.5K units .33 License Low: .5K units .40
Decision Tree AnalysisCaluculating Cost of Option to Build Q2 Q4 B: $10K Q0 50K .33 + $37.5K L: $35.6K 37.5K .33 PV L: $37.5K 25K .33 .03 PV B: $10K $9.6K $9.2K .22 15K .1 + $11.6K L: $11K 12.5K .45 PV L: $11.6K 10K .45 .75 B: $10K + $2.4K .27 5K L: 2.3K E[license cost for Q2] 2.5K .33 PV L: $2.4K .40 .5K Fold back DT using dynamic programming
Decision Tree AnalysisDT for Cost of “Licensing All the Way” Q2 Q4 + $37.5K Q0 50K .33 L: $35.6K 37.5K .33 PV L: $37.5K 25K .33 .03 PV $10.6K $10.2K + $11.6K .22 15K .1 L: $11K 12.5K .45 PV L: $11.6K 10K .45 .75 + $2.4K .27 5K L: 2.3K E[license cost for Q2] 2.5K .33 PV L: $2.4K .40 .5K
Build vs. Buy DecisionHow Much to Invest to Add the “Hooks”? Up to this amount can be invested now to add the hooks to match the min cost alternative; otherwise build now!
Build vs. Buy Decision… from an Options Perspective Expiration Date OptionValue Q2 Q0 Low sales: Continue licensing D A Real Option High sales:Build feature C Small investment:Add hooks toacquire the optionto build installationfeature later Exercise Price Q4 UnderlyingAsset(uncertain) Uncertainty partiallyresolved Large investment:Build feature Receive benefit: Cost savingsNo license cost
What is an Option? • An option is a future discretionary action with an uncertain benefit. CALL OPTION This contractgives you theright to buy one unit ofXYZ stock for $15on or before Jan 5, 2000. • Financial Options • option contracts written on financial securities (stocks, commodity prices, exchange rates) • Real Options • options defined on uncertain benefits of a real asset, for example future cash flows of a project
Options in Software Development • Developing a prototype before the full application to resolve technical and user uncertainty. • Development of a framework for a future product line to allow cost-efficient generation of multiple applications. • Development of a flexible architecture that accepts components for future extensibility and easy replacement of functionality. • Waiting to see whether Java gains acceptance before migrating a stable application to Java. Reusable, flexible architectures: See also Segment IV
Call Option Why Are Options Valuable? 75 Exercise price = $45 6 months to expiration Current Price = $50 35 If stock rises to $75 If stock falls to $35 Payoffs atexpiration $75 – $45 = $30 $35 – $45 = –$10 RationalExercise Option valueat expiration $30.00Option Exercised $0.00Option Forgone Option Pricing: How much should I pay to acquire this option now?
Value of an Option Dependson Five Factors proportional to factor inversely proportionalto factor The exercise price is not paid until expiration. Until then, that money can be earning interest! The larger the difference between the exercise price and current asset value, the more the asset value has to move to surpass it. RationalExerciseRegion InterestRates 5 4 ExercisePrice 3 1 2 Time toExpiration Present Valueof Underlying Asset Volatility ofUnderlying Asset The more time passes, the more chance for the asset value to wander up or down. The more volatile the asset is, the more likely its value to move up or down over time.
Flexibility, Value & Iterative Processes Less focus on planningTighter iterationsMore frequent releases Why tighter iterations and frequent releases? ScrumDSDMCrystal Extreme ProgrammingFeature-Driven DevelopmentAdaptive Software DevelopmentAgile Modeling Spiral
Value Realization Models:Waterfall vs. Iterative Waterfall: Delivers complete system. Realizes value late. Deploy End Rework Develop Late Benefit $ PV = Iterative: Delivers incomplete system. Maximizes value by delivering early and frequently. Deploy Deploy Deploy Deploy Deploy Deploy Deploy $ $ $ + + + + + = $ PV = Sum of Incremental Benefits $ $ $
Black Hole:Large Investment, Single Release Release Projectcancelled! Largeinvestment • Uncertainty resolved at the end • No learning Receivebenefit(uncertain)
Small Investments, Small Releases Each subsequentrelease is anoption on the previous release! Release Smallinvestment Multiple options: stop, continue, modify? Stop => preserve value from previous stages Release Receivebenefit Release Release • Uncertainty resolved gradually in multiple stages • Learning benefits
Value in the Black Hole • No schedule slips • Benefit is uncertain • Cost and Expected Benefit already in PV terms (already discounted with a risk- adjusted discount rate) Single-State Project Cost 110 Expected Benefit 100 NPV –10 Net Present Value rule says: Don’t do it! Benefit is uncertain because business, technology, customer/user requirements, or market may change!
Release 1 (R1) Release 2 (R2) Overall FlexibilityPurposeUncertainty Mandatory LearningMore uncertain Optional CompletionLess uncertain Cost 55 55 110 Benefit(uncertain) 50 R1outcome ? Volatility(per release) 40% ? ? Duration(months) 2 2 4 Risk-free rate(per month) .8% .8% .8% Alternative:Two-Stage Project with Learning Same as before Half the benefit High; same as before Same as before
What is Volatility? • Planned Features (PF): features to be included in the next release • Feature Backlog (FB): extra features yet to be implemented in future releases • Realized Features: RF PF FB • Feature implemented during the release • Customer still wants and values the feature • P: Customer’s assessment of a feature’s value at planning time • R: Customer’s assessment of a feature’s value after release relative its planned value • Total Planned Value (TPV) = f PF P(f) • Total Realized Value (TRV) = f RF R(f) • ROI = (TRV – TPV) TPV • Volatility = StDev(ROI)
Value of Two-Stage Project ExpectedR1Benefit ExpectedR2Benefit PayoffAfterR2 NPV +OptionValue R1Outcome R1Cost PV ofPayoff (R1 Outcome) + E[R2 Benefit] – (R2 Cost) 88 88 122 Cont 67 93 50 50 50 50 71 -55 16 X Stop 38 41 R1 Outcome 28 28 28 X Stop Fold back decision tree using risk-free rate& risk-adjusted probabilities Discrete model of uncertaintyas a Binomial DT: Use volatility of benefit to generate a set of possible outcomes
Valuation Using a Replication Strategy • The valuation method used in the previous example is called risk-neutral valuation. • The valuation assumes that the payoffs the DT can be replicated by a trading strategy involving an imaginary asset whose uncertainty is correlated with that of the strategy being valued. • The trading strategy represents the opportunity cost of the strategy being valued => they must have the same present value.
Risk-Neutral Valuation 2 Calculate up & down factors using volatility estimate 4 Calculate risk-adjusted probabilities from u & d 3 Calculate optimal payoffs @ decision points 50(1.33) 88 122 … 67 93 u = 1.33 p = .6 50 50 50 71 1 Choose granularity: N = 3 states 1 – p = .4 38 41 d = .75 50(.6) + 28(.4)–––––––––-–- 1 + .008 28 28 50(.75) 5 Fold back Binomial Tree using risk-adjusted probabilities & discounting back at the risk-free rate 3 Construct a Binomial Tree using u & d factors
Valuation Using a Replication StrategyConstructing the Binomial Tree Inputs • : estimated volatility per release • N: desired granularity • number of different states representing possible benefits of a release • rf: risk-free rate • for 1/(N – 1)th of the duration of a release • observed in the markets or can be set to 0 Outputs • u: upward factor = exp(sqrt(1/(N – 1))) • d: downward factor = 1/u
Valuation Using a Replication StrategyFolding Back the Decision Tree Inputs • u: upward factor • d: downward factor • rf: risk-free rate Output • risk-adjusted probabilities to calculate expected values • risk-adjusted probability for an upward move:p = (1 + rf – d)/(u – d) • risk-adjusted probability for downward move:1 – p
Valuation Using a Replicating StrategyParameters for Build-Buy Example Inputs • s= 40% per release • N = 3 • rf= 0.8% per month Outputs • u = exp(0.4 sqrt(1/(3 – 1))) = 1.33 • d = 1/u = .75 • p = (1 + rf – d)/(u – d) = (1 + .008 – .75)/(1.33 – .75) = .6 • 1 – p = 1 – .6 = .4
DTA Needs probability estimates for each state Discount rates should reflect changing risk No traded twin asset More flexible Risk-Neutral Valuation Needs only a volatility estimate Can use risk-free rate throughout Assumes traded twin asset Less flexible DTA vs. Risk-Neutral Valuation The two techniques are fully compatible andcan easily be combined (Smith & Nau, 1995).
The more uncertain the benefits are, the more valuable staging is… Net Present Value + Option Value
Value of Delaying Decisions Traditional Assumption Cost of Change? Reqt’s Design Coding Test Production But, what if it were flat? Time