Date post: | 19-Dec-2015 |
Category: |
Documents |
View: | 217 times |
Download: | 1 times |
www.ischool.drexel.edu
Introduction and Foundations
Chapters 1-2
INFO631 Week 1 2
Slides adapted from Steve Tockey – Return on Software
www.ischool.drexel.edu
• Goals• Harsh realities• Science vs. engineering• Relevance of engineering economy to
software• Business on purpose• Roadmap
Introduction and Foundations
Outline
3INFO631 Week 1
www.ischool.drexel.edu
Goals
• Understand the importance of addressing the business consequences of your technical decisions
• Know, and be able to use, sane and rational decision-making techniques for your technical decisions
• Understand the implications of “software engineering”
4INFO631 Week 1
www.ischool.drexel.edu
Harsh Realities
• 23% of software projects fail to deliver any working software at all
• Of projects that do deliver, they average– 63% late– 45% over budget– 67% of the features and functions delivered
• 40% of commercial applications of computers have been uneconomical
Reference: [Standish01], [Kidder81]
5INFO631 Week 1
www.ischool.drexel.edu
Harsh Realities (cont)
• Annual software budget in the US is about $275 billion– $63 billion/year in cancelled projects alone– As much as $149 billion/year in net money-
losing projects
Reference: [Standish01]
6INFO631 Week 1
www.ischool.drexel.edu
The Cost of Bad Decisions• Poor software project performance can almost always be
traced back to bad decisions (whether accidental or intentional), either by the customer, the development staff, or both– Which projects to do– Not getting good requirements– Not giving good requirements– Using inappropriate technology– Choosing the wrong design or architecture– Not giving the project team adequate resources– Not planning and/or managing the project– Not paying attention to quality– …
7INFO631 Week 1
www.ischool.drexel.edu
Not a New Issue
“Railway location obviously is a field in which many alternatives are likely to be available. Nevertheless, Wellington observed what seemed to him to be an almost complete disregard by many locating engineers of the influence of their decisions on the prospective costs and revenues of the railways. In his first edition (1877) he said of railway location, “And yet there is no field of professional labor in which a limited amount of modest incompetency at $150 per month can set so many picks and shovels and locomotives at work to no purpose whatsoever”
Reference: [Grant90]
8INFO631 Week 1
www.ischool.drexel.edu
Not a New Topic
• Recognized engineering degree programs usually require a course in Engineering Economy– Applied micro-economics
• Fundamental question of software professionals– “Is it in the organization’s best interest to
invest its limited resources in this technical endeavor, or would the same investment produce a higher return elsewhere?”
9INFO631 Week 1
www.ischool.drexel.edu
Science vs. Engineering
• Definition: Science“a department of systematized knowledge as an object of study; knowledge or a system of knowledge covering general truths or the operation of general laws esp. as observed and tested through the scientific method”
• Definition: Engineering
“the profession in which a knowledge of the mathematical and natural sciences gained by study, experience, and practice is applied with judgment to develop ways to utilize, economically, the materials and forces of nature for the benefit of mankind”
Reference: [Webster94], [ABET00]
10INFO631 Week 1
www.ischool.drexel.edu
Science vs. Engineering (cont)
• Demarco defines engineering as:– “Finding the balance between what is
technically feasible and what is economically acceptable”
• Wellington defines engineering as:• “The art of doing that well with one dollar
which any bungler can do with two”• In general
– Science – pursuit of knowledge– Engineering – application of that knowledgeReference: [DeGarmo93], [Wellington1887]
11INFO631 Week 1
www.ischool.drexel.edu
Science vs. Engineering (cont)
• So relationship between science and engineering is:
Engineering = Scientific Theory +
Practice +
Engineering Economy
12INFO631 Week 1
www.ischool.drexel.edu
Economics: the Science of Choice
“… software economics has often been misconceived as the means of estimating the cost of programming projects. But economics is primarily a science of choice, and software economics should provide methods and models for analyzing the choices that software projects must make”
Reference: [Levy87]
13INFO631 Week 1
www.ischool.drexel.edu
Software Engineering vs. Computer Science
Software Engineering = Computer Science +
Practice +
Engineering Economy
14INFO631 Week 1
www.ischool.drexel.edu
Software Engineering vs. Computer Science (cont)
• Computer Science“a department of systematized knowledge about computing as an object of study; a system of knowledge covering general truths or the operation of general laws of computing esp. as observed and tested through the scientific method”
• Software Engineering“the profession in which a knowledge of the mathematical and computing sciences gained by study, experience, and practice is applied with judgment to develop ways to utilize, economically, computing systems for the benefit of mankind”
15INFO631 Week 1
www.ischool.drexel.edu
Relevance of Engineering Economy to Software
• Every professional developer is affiliated with some public or private enterprise
• Every day, we make decisions that impact that enterprise– Staffing– Internally-developed software– Leased or purchased software– Operation of software systems
• As professionals, we had better be concerned with the impacts of our decisions– “… a limited amount of modest incompetency …”
16INFO631 Week 1
www.ischool.drexel.edu
Business on Purpose (Ch-2)
Why are companies in business?Because it’s fun? Educational? A way to have a positive impact on society?No: companies are in business to make a profit for the owners
Where does the money come from?
Where does the money go?
17INFO631 Week 1
www.ischool.drexel.edu
Where Does the Money Go?
Net Income Before Taxes
Gross Revenue
Investment-related Expenses Interest on loans
Depreciation
Income Taxes Federal State Local
Return On Equity Cash dividends on stock
Operating Income
Net Income After Taxes
Retained Earnings
Cost of Goods Sold Material Labor
Operating Expenses Selling expenses
General and administrative expenses Taxes (other than income)
18INFO631 Week 1
www.ischool.drexel.edu
PeopleSoft, 2003
Net Income Before Taxes
Gross Revenue
Investment-related Expenses Interest on loans
Depreciation
Income Taxes Federal State Local
Return On Equity Cash dividends on stock
Operating Income
Net Income After Taxes
Retained Earnings
Cost of Goods Sold Material Labor
Operating Expenses Selling expenses
General and administrative expenses Taxes (other than income)
$2,267M (100.0%)
$868M (38.3%)
$117M (5.2%)
-$22M (-0.9%)
$139M (6.1%)
$85M (3.8%)
$0M (0.0%)$85M (3.8%)
$1,282M (56.6%)
$53M (2.3%)
19INFO631 Week 1
www.ischool.drexel.edu
Profit Margin
• A key indicator of the health of a company
• Typically 2% to 10%
• How expensive is software?– Full Time Equivalent (FTE) is usually between $150k and $300k
(in year 2002)• Fully burdened salary
ueGrossReven
fterTaxesNetIncomeA in ProfitMarg
20INFO631 Week 1
www.ischool.drexel.edu
Decision-Making in For-Profit Organizations
“All other things being equal, the role of the technical person in a for-profit company should be to choose—from the set of technically possible solutions to a problem—the solution that maximizes the organization’s objective: profit”
21INFO631 Week 1
www.ischool.drexel.edu
Decision-Making in Not-For-Profit Organizations
“All other things being equal, the role of a technical person in a not-for-profit organization should be to choose—from the set of technically possible solutions to a problem—the solution that maximizes the organization’s objective: providing the greatest benefit at the least cost”
22INFO631 Week 1
www.ischool.drexel.edu
Decision-Making in Your Own Personal Finances
• You probably don’t have an unlimited supply of money– You work hard for the limited income you get– You want to get the most you can out of it
23INFO631 Week 1
www.ischool.drexel.edu
Key Points
• Software projects don’t perform very well• Science and engineering are related but
distinct• Companies don’t have a lot of money to
play around with– Neither do you
24INFO631 Week 1
www.ischool.drexel.edu
Fundamental Concepts of Business Decisions
Chapter 3
INFO631 Week 1 25
Slides adapted from Steve Tockey – Return on Software
www.ischool.drexel.edu
• Concepts to align technical decisions with business decisions.– Proposal– Cash-flow instance– Cash-flow stream– Cash-flow diagram– Developing cash-flow streams– Business case for agile projects
Fundamental Concepts of Business Decisions
Outline
26INFO631 Week 1
www.ischool.drexel.edu
Proposal
• A single, separate option that’s being considered
• Examples– Do project Alpha– Enhance product Beta– Use the NIFF algorithm in the Pack module– Use a doubly linked-list data structure for
messages
27INFO631 Week 1
www.ischool.drexel.edu
Proposal Con’t
• Each proposal represents a binary choice– Carry out or
– Reject• Purpose of decision making is to
– Figure out, given current business circumstances, which should be carried out and which ones shouldn’t.
• Each proposal should be evaluated from a business perspective
28INFO631 Week 1
www.ischool.drexel.edu
Cash-Flow• Cash-flow describes the business perspective of a proposal
• Cash-flow instance– A specific amount of money flowing into or out of the organization at a
specific time as a direct result of a proposal• Dev staff payroll in 3rd month of the Beta project• Separate payment on a loan
• Cash-flow stream– The set of cash-flow instances, over time, which would be caused by
carrying out some given proposal• Basically the complete financial picture of a proposal.• The financial view of the Beta project
29INFO631 Week 1
www.ischool.drexel.edu
Categories of Cash Flow• Initial investment
– One-time, non-recurring costs associated with starting up a proposal• Buying a new development environment so we can enhance product Beta
• Operating and maintenance costs– Costs occurring after the proposal is started that continue through its retirement
• Maintenance fees on the development environment for the Beta enhancement• Sales income
– Direct income generated by the proposal• Net increased sales on the enhanced Beta product
• Cost avoidance– Indirect income, caused by a reduction in costs instead of an increase in sales
• Reduced software maintenance costs on the enhanced Beta product• Salvage value
– Recoverable value in assets at the end of the proposal• What we could sell the development environment for at the end of the Beta project
30INFO631 Week 1
www.ischool.drexel.edu
Cash-Flow Diagram
• Picture of a cash-flow stream– Gives quick overview of financial picture
• Characteristics – Time runs left to right– Income shown above time-line– Expense shown below time-line– Arrow length proportional to $ amount– By convention, net cash-flow per period shown– Initial investment shown “at the end of period
zero”31INFO631 Week 1
www.ischool.drexel.edu
Example Cash-Flow Diagram
0 1
2 3 4 5 6 7
-$850
$650
$2900
$8150$5900
$3650
$1400
-$10,000
Time
Initial investment
Income
Expense
32INFO631 Week 1
www.ischool.drexel.edu
Cash-Flow Diagram Con’t
• Cash flow stream (cash-flow diagram)– Based on the specific perspective of the
organization– Changing perspective will change the cash
flow stream
33INFO631 Week 1
www.ischool.drexel.edu
Cash-Flow Diagram Perspectives
Borrower's view
01 2 3 4
$100
-$25 -$25 -$25 -$25
Lender's view
01 2 3 4
-$100
$25 $25 $25 $25
34INFO631 Week 1
www.ischool.drexel.edu
Developing Cash-Flow Streams
• The Work Breakdown Structure (WBS) is a useful tool– Typically a hierarchical decomposition of the
proposal– Decompose only until reasonable timing and
cost estimates can be made– All work necessary to complete the proposal
needs to be included– Only work necessary to complete the proposal
should be included– Income needs to be represented
See: [PMI02], [DoD98], or [Fleming00]
35INFO631 Week 1
www.ischool.drexel.edu
A Simple WBS Example• My Software Project
– Construct software [Big task #1]• Requirements [Smaller task #1.1]
– Part A Requirements [Tiny task #1.1.1]– Part B Requirements [Tiny task #1.1.2]– ...
• Design [Smaller task #1.2]– Part A Design [Tiny task #1.2.1]– …
• Construction [Smaller task #1.3]– Part A Code [Tiny task #1.3.1]– …
– Software quality assurance [Big Task #2]• Peer reviews [Smaller task #2.1]• Testing [Smaller task #2.2]• ...
36INFO631 Week 1
www.ischool.drexel.edu
An Example Project: Automated Test Equipment (ATE)
• One person-year = $125k
• Initial investment– $300k for test hardware and development equipment (Year 0)– 20 person-years of software development staff (Year 1)– 10 person-years of software development staff (Year 2)
• Operating and maintenance costs– $30k per year for test hardware and dev equipment (Years 1-10)– 5 person-years of software maintenance staff (Years 3-10)
• Sales income– None
• Cost avoidance– $1.3 million in reduced factory staffing (Years 2-10)
• Salvage value– Negligible
37INFO631 Week 1
www.ischool.drexel.edu
Automated Test Equipment (cont)
Year Dev Staff Equipment O & M Savings Total 0 0 -$300K 0 0 -$300K 1 -$2.5M 0 -$30K 0 -$2.53M 2 -$1.25M 0 -$30K $1.3M $20K 3 -$625K 0 -$30K $1.3M $645K 4 -$625K 0 -$30K $1.3M $645K 5 -$625K 0 -$30K $1.3M $645K 6 -$625K 0 -$30K $1.3M $645K 7 -$625K 0 -$30K $1.3M $645K 8 -$625K 0 -$30K $1.3M $645K 9 -$625K 0 -$30K $1.3M $645K 10 -$625K 0 -$30K $1.3M $645K
38INFO631 Week 1
www.ischool.drexel.edu
Cash-Flow Diagram for ATE
-$300K
-$2.53M
$20K
$645K
0 1
2 3 4 5 6 7 8 9 10
39INFO631 Week 1
www.ischool.drexel.edu
Business Case for Agile Projects
• Agile methods assume the project’s goals and/or requirements are inherently unstable– How can you build a WBS?
• An Agile project’s business case involves estimating how much business value can be returned (and when it’s returned) given the level of investment the customer is willing to make
40INFO631 Week 1
www.ischool.drexel.edu
Key Points
• A proposal is a single, separate option that’s being considered
• A cash-flow instance is an amount of money at a given time caused by a proposal
• A cash-flow stream is the financial view of a proposal• A cash-flow diagram is a picture of a cash-flow stream• The WBS can be a useful tool for developing cash-flow
streams• The business case for agile projects is different
41INFO631 Week 1