You are on page 1of 8

BE (CS)

Fall 2022 Semester

CS-435: Software Project Management

Lectures 3 & 4
The Make/Buy Decision
Software Pricing

Dr Syed Zaffar Qasim


Assistant Professor (CIS)
1

The Make/Buy Decision


▪ In many software application areas, it is often more
cost effective to acquire rather than develop
computer software.
▪ Software engineering managers are faced with a
make/ buy decision.
▪ There are a number of acquisition options:
1. software may be purchased (or licensed) off-the-shelf,
2. full-experience or partial-experience software components
may be acquired and then modified and integrated to
meet specific needs, or
3. software may be custom built by an outside contractor
to meet the purchaser’s specifications.

SPM (CS-435) 1
The Make/Buy Decision
▪ The steps involved in the acquisition of software are
defined by
o the criticality of the software to be purchased and
o the end cost.
▪ In the final analysis, the make/buy decision is made
based on the following conditions:-
a)Will the delivery date of the software product be
sooner than that for internally developed software?
b)Will the cost of acquisition plus the cost of
customization be less than the cost of developing the
software internally?
c) Will the cost of outside support (e.g., a maintenance
contract) be less than the cost of internal support?
3

Creating a Decision Tree


▪ The steps just described can be augmented using
statistical techniques such as decision tree analysis.
▪ For example, Figure 1 depicts a decision tree for a
software-based system X.
▪ In this case, the software engineering organization
can
1. build system X from scratch,
2. reuse existing partial-experience components to
construct the system,
3. buy an available software product and modify it to
meet local needs, or
4. contract the software development to an outside
vendor. 4

SPM (CS-435) 2
Creating a Decision Tree

▪ The expected value for cost, computed along any


branch of the decision tree, is
Expected cost = ∑ (path probability)i × (estimated path cost)i 5

Creating a Decision Tree

▪ It is important to note, however, that many criteria –


not just cost – must be considered during the
decision-making process.
▪ A few of the criteria that may affect the ultimate
decision to build, reuse, buy, or contract.
o Availability, experience of the developer/
vendor/contractor,
o conformance to requirements,
o local “politics,” and
o the likelihood of change.

SPM (CS-435) 3
Outsourcing
▪ Software engineering activities are contracted to a
third party who does the work at lower cost and,
hopefully, higher quality.
▪ Software work conducted within a company is
reduced to a contract management activity.
▪ The decision to outsource can be either strategic or
tactical.
o At the strategic level, a significant portion of all software
work can be contracted to others.
o At the tactical level, a part or all of a project can be best
accomplished by subcontracting the software work.

Outsourcing

▪ Regardless of the breadth of focus, the outsourcing


decision is often a financial one.
o On the positive side, cost savings can usually be
achieved by reducing the number of software
people and the facilities (e.g., computers,
infrastructure) that support them.
o On the negative side, a company loses some control
over the software that it needs since software is a
technology that differentiates it from others.

SPM (CS-435) 4
Software Pricing
▪ In principle, the price of a software system should be
Price = Development Cost + Profit for developer
▪ In practice, the relationship between the project cost
and price quoted is not usually so simple.
▪ When calculating a price, you take broader
organizational, economic, political, and business
considerations into account.
▪ You need to think about
o organizational concerns,
o the risks associated with the project, and
o the type of contract that will be used.
▪ These issues may cause the price to be adjusted
upward or downward.
9

Illustration of project pricing issue

▪ Consider the following scenario:-


▪ A small software company, PharmaSoft, employs 10
software engineers.
▪ It has just finished a large project but only has
contracts in place that require five development staff.
▪ However, it is bidding for a very large contract with a
major pharmaceutical company that requires 30
person-years of effort over two years.
▪ The project will not start for at least 12 months but, if
granted, it will transform the finances of the
company.
10

SPM (CS-435) 5
Illustration of project pricing issue
▪ PharmaSoft gets an opportunity to bid on a project
that requires six people and has to be completed in 10
months.
▪ The costs (including overheads of this project) are
estimated at $1.2 million.
▪ However, to improve its competitive position,
PharmaSoft decides to bid a price to the customer of
$0.8 million.
▪ This means that, although it loses money on this
contract, it can retain specialist staff for the more
profitable future projects that are likely to come on
stream in a year’s time
11

Illustration of project pricing issue

12

SPM (CS-435) 6
Pricing to win
▪ Suppose a company (OilSoft) is bidding for a contract
to develop a fuel delivery system for an oil company
that schedules deliveries of fuel to its service stations.
▪ There is no detailed requirements document for this
system, so OilSoft estimates that a price of $900,000 is
likely to be competitive and within the oil company’s
budget.
▪ After being granted the contract, OilSoft then
negotiates the detailed requirements of the system so
that basic functionality is delivered.
▪ It then estimates the additional costs for other
requirements.
13

Pricing to win
▪ This approach has advantages for both the software
developer and the customer.
▪ The requirements are negotiated to avoid
requirements that are difficult to implement and
potentially very expensive.
▪ Flexible requirements make it easier to reuse
software.
▪ The oil company has awarded the contract to a
known company that it can trust.
▪ Furthermore, it may be possible to spread the cost of
the project over several versions of the system.
▪ This may reduce the costs of system deployment and
allow the client to budget for the project cost over
several financial years. 14

SPM (CS-435) 7
Pricing to win
▪ This is an example of an approach to software pricing
called “pricing to win.”
▪ Pricing to win means that a company has some idea of
the price that the customer expects to pay and makes
a bid for the contract based on the customer’s
expected price.
▪ This may seem unethical and unbusinesslike, but it
does have advantages for both the customer and the
system provider.
• A project cost is agreed on the basis of an outline
proposal.

15

Pricing to win
▪ Negotiations then take place between client and
customer to establish the detailed project
specification.
▪ This specification is constrained by the agreed cost.
▪ The buyer and seller must agree on what is
acceptable system functionality.
▪ The fixed factor in many projects is not the project
requirements but the cost.
▪ The requirements may be changed so that the project
costs remain within budget.

16

SPM (CS-435) 8

You might also like