41
www.ischool.drexel.edu INFO 631 Prof. Glenn Booker Week 1 – Chapters 1-3 1 INFO631 Week 1

Www.ischool.drexel.edu INFO 631 Prof. Glenn Booker Week 1 – Chapters 1-3 1INFO631 Week 1

  • View
    217

  • Download
    1

Embed Size (px)

Citation preview

www.ischool.drexel.edu

INFO 631Prof. Glenn Booker

Week 1 – Chapters 1-3

1INFO631 Week 1

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