Software Project Management

Download Report

Transcript Software Project Management

Introduction to Information
Systems Analysis
Feasibility and Cost/Benefit Analysis
INFO 503
Glenn Booker
INFO 503
Lecture #8
1
Feasibility Analysis
• Must consider using feasibility analysis to
justify the expenditure of time and effort to
develop and implement a new system, just
like any other business function must do
• Feasibility is a measure to describe how
beneficial something would be
– “If it ain’t worth it, don’t do it!”
INFO 503
Lecture #8
2
Feasibility
• Feasibility analysis should be repeated
throughout a system’s life cycle to support
creeping commitment
– “Don’t jump in with both feet to
test how deep the pool is”
• This validates your system’s continued
existence, and helps keep from going well
out of the intended original project scope
INFO 503
Lecture #8
3
Specific Checkpoints
• The text discusses three major feasibility
checkpoints in the FAST model; at the
end of the following life cycle phases:
– 1. Scope Definition Phase
– 2. Problem Analysis Phase
– 5. Decision Analysis Phase
• We’ll briefly address the role of feasibility
analysis in the other phases, too
INFO 503
Lecture #8
4
Specific Checkpoints
p. 402
(644)
• Scope Definition Phase: assess urgency
of the problem, and make first guess at
development costs
• Do problems and opportunities warrant
the cost of further study?
• Realize that actual costs will probably
be 50-100% above initial estimates
INFO 503
Lecture #8
5
Specific Checkpoints
• Problem Analysis Phase: after the
existing system is better understood,
realize that a new or improved system
must be worth more than the deficiencies
of the existing system
• Watch for scope changes, especially if
there’s a big jump in cost from the
previous phase
INFO 503
Lecture #8
6
Specific Checkpoints
• (Requirements Analysis Phase): once user
requirements have been defined, see if the
earlier projections of cost and scope are
vaguely reasonable
• If you can show how scope and
requirements have changed, you have a
much better chance of getting more time
and/or money from your customer
INFO 503
Lecture #8
7
Specific Checkpoints
• Decision Analysis Phase: select a solution
approach; choose from:
–
–
–
–
–
INFO 503
Do nothing; existing system is good enough
Reengineer manual processes only
Improve existing automated processes
Buy an existing product to replace processes
Design and build a new system to handle
all processes
Lecture #8
8
Specific Checkpoints
• (Procurement Phase): the selection of
hardware and/or software vendors needs
proper analysis to ensure you’re getting
the best deal
• This may be combined with the Decision
Analysis feasibility study to consider the
system and its major components all at once
INFO 503
Lecture #8
9
Specific Checkpoints
• (Design Phase): this is the last major
feasibility checkpoint
• Given detailed design specifications,
determine if the system is really
worth implementing
• This should have fairly accurate cost, size,
and schedule estimates to work with
INFO 503
Lecture #8
10
Specific Checkpoints
• (Construction Phase): during actual coding
and testing of the system, can use a scaled
down form of feasibility analysis
– Determine whether it is good to add new
features, or if certain bugs are worth fixing
• System usage modeling may help answer
these questions
• Helps support project reviews and updates
INFO 503
Lecture #8
11
Specific Checkpoints
• (Implementation Phase): during delivery
and installation of your system, feasibility
analysis largely isn’t needed
• Presumably each installation site was
selected based on an earlier feasibility study
INFO 503
Lecture #8
12
Specific Checkpoints
• (Operation and Support phase): after system
has been installed and is in use
• Feasibility analysis can help determine
whether major new features are worth
adding, or later in life
• Determine if a major update of the system
is worth it, or if it’s better to start over
again (feeding another project’s start)
INFO 503
Lecture #8
13
Resulting Actions
• As a result of conducting a feasibility
analysis, several decisions may be made:
– Continue with project as planned
– Revise scope, and/or schedule, and/or budget
– Cancel project
• This helps keep from throwing good
money after bad (had enough cliché’s yet?)
INFO 503
Lecture #8
14
Types of Feasibility
•
•
•
•
Operational
Technical
Schedule
Economic
Can we make the acronym TOES from this?
INFO 503
Lecture #8
15
Operational Feasibility
• Operational feasibility addresses the two
main aspects of usefulness for the
proposed system
– 1) Early in the life cycle this looks at the
urgency of the problem - is it a problem
worth solving?
– 2) Then determine how acceptable or usable
the solution is (politically or socially)
INFO 503
Lecture #8
16
Operational Feasibility
• Apply the PIECES criteria to determine
how beneficial a proposed solution will be
• What specific areas will it help?
– Performance, Information
– Economy, Control
– Efficiency, Services
INFO 503
Lecture #8
17
Operational Feasibility
• Look at solution for political acceptability
by the users and managers affected
– Is there management support for the
new system?
– Do users feel the need for a new system?
– Will people be happy using the new system?
– How will the solution affect the working
environment for users and managers?
INFO 503
Lecture #8
18
Usability Analysis
• Later in the life cycle, usability analysis
can help assess operational feasibility
• Have users try a prototype of the system,
and determine:
– Ease of learning the new system
– Ease of use for both frequent (power)
and infrequent (casual) users
– User satisfaction with the interface
INFO 503
Lecture #8
19
Technical Feasibility
• Technical feasibility is most looked at
during the Design Phase, since this is
an implementation issue
• Look for:
– Practicality of the solution; can it be done?
– Availability of the needed technology here
– Availability of the needed expertise in that
technology, and a reasonable amount of time
INFO 503
Lecture #8
20
Schedule Feasibility
• How reasonable is the proposed schedule?
– Especially given the project’s expertise needs
• Schedule should be based on
– Ideally, experience with similar projects
– Models which are tailored for your industry
and type of development (e.g. COCOMO)
– General models for software development
(e.g. Connelly’s Rapid Development)
INFO 503
Lecture #8
21
Schedule Feasibility
• Schedule should take into account
– Your industry
– Your team’s level of experience with the
development environment, and the maturity
level of that environment
– The severity of penalties for missed deadlines
• Never accept estimates more than 10-20%
below industry norms
INFO 503
Lecture #8
22
Economic Feasibility
• Economic feasibility is determined by
Cost-Benefit Analysis (CBA)
• Early cost analysis may easily be off by
a factor of +/- four, depending on how
the system is eventually designed
and implemented
• CBA after the design phase should be
much more accurate than this!
INFO 503
Lecture #8
23
Cost-Benefit Analysis
•
Cost-Benefit Analysis is based on
three steps:
1. System Cost Analysis: How much will the
system cost?
2. System Benefits: What benefits will the
system provide?
3. Cost Effectiveness: Is the proposed solution
cost-effective?
INFO 503
Lecture #8
24
System Cost Analysis
• Costs are broken into two big categories:
development cost, and operational cost
– Development cost may be estimated and
refined throughout the development effort
– Operational cost can only be estimated after
some decisions have been made - after the
decision analysis phase - and then refined
INFO 503
Lecture #8
25
Development Costs
• Development Costs consist of:
–
–
–
–
INFO 503
Personnel costs
Computer usage costs
Training costs
Other equipment costs
Lecture #8
26
Personnel Costs
• How much does it cost to pay the designers,
developers and testers of the system (plus
other people involved)?
• Salaries alone aren’t enough; personnel cost
also includes overhead expenses, such as
benefits, taxes, insurance, facilities, etc.
– Typical total personnel cost is at least 2-1/2
times the salaries of all people involved
INFO 503
Lecture #8
27
Computer Usage Costs
• These are the costs associated with using an
external computer resource; such as costs
– For computer services outside of the project
(CM, testing, QA, clerical, domain hosting,…)
– Per second of CPU time used (obsolete)
– Per page printed
– For storage space used (per GB disk space)
INFO 503
Lecture #8
28
Training Costs
• Costs for custom-developed or
vendor-supplied training
– Custom-developed training
• Development of materials
• Reproduction of materials
• Rental of training facilities
– Vendor-provided training
– Computer-based training (CBT)
INFO 503
Lecture #8
29
Other Equipment Costs
• Office supplies, equipment and
reproduction costs (if not included
in overhead)
• Leasing costs for the computers
• Maintenance contract fees
• Software license costs
• Special test equipment
INFO 503
Lecture #8
30
Operational Costs
• Operational costs include fixed costs and
variable costs
– Fixed costs occur at regular intervals, but
at fixed rates (property tax, by analogy)
– Variable costs occur based on usage of
something (electric bill)
INFO 503
Lecture #8
31
Fixed Costs
•
•
•
•
•
Facility lease costs
Computer lease payments
Internet access fees
Software licenses and maintenance fees
Salaries of personnel needed for
operation of the system (computer
operators, technicians)
INFO 503
Lecture #8
32
Variable Costs
• Computer usage (CPU time, storage usage)
• Office supplies (forms, paper, postage,
magnetic media, etc.)
• (Possibly) part of the overhead expenses,
like utilities, phone, facility cleaners, …
INFO 503
Lecture #8
33
Direct, Overhead, Fixed, & Variable
• Whether a particular cost is paid directly by
a project; overhead; fixed costs; or variable
costs depends on the strategy determined by
your organization’s accounting department
– Managers and clerical staff might be paid from
overhead, or directly charge individual projects
– Normal computer equipment might be an
overhead expense, or a fixed cost
INFO 503
Lecture #8
34
Add up the Costs
• So to paint a summary picture of the system
costs, describe the estimated development
cost, and the fixed and typical variable
operational costs
– System XYZ will cost $450,000 to develop
– Its annual maintenance cost is $120,000
(based on fixed costs of $85,000 and expected
variable costs of $35,000 per year)
INFO 503
Lecture #8
35
System Benefits
p. 409
(650)
• Benefits can be tangible (easily measured)
or intangible (the opposite)
– Tangible benefits are expressed in terms of
the savings per year, or per item produced
– Intangible benefits can make or break the
feasibility of a system, such as improved
customer satisfaction, employee morale, etc.
INFO 503
Lecture #8
36
Tangible Benefits
• May estimate tangible benefits by finding:
– The value of Work No Longer Performed
(due to process redesign)
– Value of New Customers (new market share)
– Value of Existing Customers who won’t
run away (retaining market share)
– Value of Reduced Cost for Existing
Work (due to increased efficiency)
INFO 503
Lecture #8
37
Work No Longer Performed
• Calculate the labor expense of work no
longer needed
– If a form took 30 seconds to fill out, and you
needed 1000 of them filled out each month by
someone whose labor rate is $40/hour, the
annual cost was:
(30/60/60 hours/form) * 1000 forms/month *
12 months/year * $40/hour = $4000/year
INFO 503
Lecture #8
38
Value of New Customers
• Calculate the value of obtaining 300 new
customers per year, who spend an average
of $500 per purchase, on a product which
yields 12% profit after expenses
– Profit per year is 300 * $500 * 12% = $18,000
• Notice that these calculations often need
much detailed information about your
current business environment
INFO 503
Lecture #8
39
Value of Existing Customers
• Value of existing customers could be the
value of their existing sales, plus the cost
it would take to replace them
– If we lose 100 customers who spend $2500 per
year each, and it would take $50,000 in
advertising to replace them, the loss of those
customers would be worth (assuming 12%
profit margin again):
[100 * $2500 * 12%] + $50,000 = $80,000
INFO 503
Lecture #8
40
Reduced Cost for Existing Work
• If we reduce the work for a task from 5
minutes to 30 seconds, and the task is
performed by someone with a labor rate
of $50/hour
– The savings is (5 - 30/60)/60 hours/task times
$50/hour = $3.75 per task
• Note that these examples do not include
any hardware or materials costs (often nil)
INFO 503
Lecture #8
41
Tangible Benefits Summary
• So the approach for finding tangible
benefits is to add up all the costs directly
saved or newly found as a result of
implementing the proposed system
INFO 503
Lecture #8
42
Intangible Benefits
• Even “intangible” benefits can often be
quantified by making a few assumptions
about their effect
– Unhappy customers place fewer, smaller
orders; quantified, this could result in a
percentage of lost business
• Even wild guesses, carefully explained,
can still form the basis for discussion
INFO 503
Lecture #8
43
Intangible Benefits Example
• Suppose a customer survey indicates that
30% of your customers are unhappy, and
hence will not renew their licenses
• If an average customer spends $40,000 per
year in licenses, and we only have 500
customers, the profit loss per year would be
30% * 500 * $40,000 * 12% = $720,000
– Again assuming a 12% profit margin
INFO 503
Lecture #8
44
Intangible Benefits
• What possible benefits could result from
fixing these problems?
–
–
–
–
INFO 503
Low employee morale
Poor physical work environment
Web site confusing
Outdated computer equipment
Lecture #8
45
Cost Effectiveness
• Now we have quantified cost, and benefits
• Cost effectiveness is the blending of them
• Three major ways to measure
cost effectiveness
– Payback Analysis
– Return-on-Investment (ROI) Analysis
– Net Present Value
INFO 503
Lecture #8
46
Time Value of Money
• All cost effectiveness analyses assume that
money is worth more over time, since it can
be invested
As a result, these analyses depend
VERY STRONGLY
on the rate of interest which could
be obtained from saved money
INFO 503
Lecture #8
47
Present Value of Money
p. 412
(653)
• The present value of what will be $1.00 at
some time ‘n’ years in the future, given an
assumed discount (interest) rate of ‘I’ is
PVn = 1/(1 + I)n = (1 + I)-n
• The discount rate is the amount of interest
which could be earned with that money
Fourth edition of textbook: Beware of the
typo on page 653! (they forgot the ‘/’ twice)
INFO 503
Lecture #8
48
See handout “Present Value Calculation Spreadsheet”
Present Value of Money
• Typical discount rates are from 8-14%
(less during a recession :)
• Notice that the present value of $1.00 is
always less than or equal to $1.00
– If you have 50 cents now, at some point in the
future it could be worth $1.00
– When that happens depends on how well that
50 cents could be invested (discount rate)
INFO 503
Lecture #8
49
Present Value of Money
• Key observation for doing CBA is that the
value of all project costs and benefits are
first converted to their present value
– Development cost of $100,000 now has a
present value of $100,000
– Benefit of $30,000 five years from now at an
8% discount rate has a present value of only
$30,000 / (1 + 0.08)5 = $20,417
INFO 503
Lecture #8
50
Payback Analysis
• Development of a new system costs some
amount of money, after which costs will be
reduced in some way, offset somewhat by
operating costs
• Adjusting these costs to their present value,
then determine when the sum of benefits of
the system equal its development expenses;
that time is the payback period (years)
INFO 503
Lecture #8
51
Payback Analysis
• Payback period is when
Development costs = Sum of [benefits]
– But only after all costs and benefits
have been adjusted for present value
– Low payback period is desirable
INFO 503
Lecture #8
52
Return On Investment (ROI)
• Lifetime ROI is a percentage comparing the
total costs and benefits from a project:
Lifetime ROI=(total benefit-total cost)/(total cost)
• Lifetime ROI may be divided by project
duration to get a ROI per year (annual ROI)
– Want high ROI (lifetime and annual)
– A low ROI (~ under 10%/yr) might indicate
the benefits are too little to be worthwhile
INFO 503
Lecture #8
53
Net Present Value (NPV)
• Adjust all costs and benefits for the entire
life of the system to their present values
Net Present Value = total benefits – total costs
• NPV > 0 is a plausible investment; a bigger
positive NPV number is better
INFO 503
Lecture #8
54
Presenting Candidate Systems
• Summarize candidate systems in a matrix,
including the existing system
• Identify candidate system characteristics
– Extent of automation, hardware, software, and
data processing methods, input, output, and
storage devices, etc.
• Then show the results of feasibility analysis
and CBA in a weighted matrix, p. 418 (659)
INFO 503
Lecture #8
55
Additional Resource
• http://www.firstgov.gov
– Search for “cost benefit analysis”
INFO 503
Lecture #8
56