Software Project
Management
Md. Mehedi Hasan
Lecturer, Dept. of CSE
Shahjalal University of Science and Technology
Managing contracts
Definition
A contract is an agreement made between two or more parties that creates legally binding
obligations between them.
The contract sets out those obligations and the actions that can be taken if they are not met.
Acquiring software from external suppliers
This could be:
●A bespoke system - created specifically for the customer.
●Off-the-shelf - bought ‘as is’
●Customized off-the-shelf(COTS) - a core system is customized to meet
the needs of a particular customer.
Types of contract
●fixed price contracts;
●time and materials contracts;
●fixed price per delivered unit contracts.
Fixed price contracts
●a price is fixed when the contract is signed.
●The customer knows that, if there are no changes in the contract
terms, this is the price they pay on completion.
● when the contract is to construct a software system, the detailed
requirements analysis must already have been carried out.
●Once the development is under way the customer cannot change their
requirements without renegotiating the price of the contract.
Fixed price contracts
Advantages to customer
●Known customer expenditure: As long as the requirements are precise
and not changed, the customer has a known cost
●Supplier motivation: The supplier has a motivation to work in a
cost-effective manner.
Fixed price contracts
The disadvantages
●Supplier will increase price to meet contingencies
●Difficulties in modifying requirements The need to change the scope
of the requirements may become apparent during development - this
may cause friction between the supplier and customer
Fixed price contracts
The disadvantages
●Upward pressure on the cost of changes When competing against
other potential suppliers, the supplier will try to quote as low a price as
possible. Once the contract is signed, if further requirements are put
forward, the supplier is in a strong position to demand a high price for
these changes.
●Threat to system quality The need to meet a fixed price could mean
that the quality of the software suffers.
Time and materials contracts
●The customer is charged at a fixed rate per unit of effort, for example
per staff-hour.
●The supplier may provide an initial estimate of the cost based on their
current understanding of the customer's requirements, but this is not
the basis for the final payment.
●The supplier usually invoices the customer for work done at regular
intervals, say each month.
Time and materials contracts
Advantages
●Easy to change requirements.
●Lack of price pressure The lack of price pressure may promote better
quality deliverables
Time and materials contracts
Disadvantages
●Customer liability The customer absorbs the risks associated with
poorly defined or changing requirements
●Lack of incentives for supplier The supplier has no incentive to work in
a cost-effective manner or to control the scope of the deliverables
Because the supplier appears to be given a blank cheque, this approach does not
find favour with customers. However, the employment of contract development
staff may in effect involve this type of contract
Fixed price per unit delivered contracts
●The size of the system to be delivered is calculated or estimated at the
outset of the project.
● The size could be estimated in lines of code, but FPs can be more
easily derived from requirements documents.
● A price per unit is also quoted. The final price is then the unit price
multiplied by the number of units.
Fixed price per unit delivered contracts
The company that produced this table in fact charge a higher fee per FP for larger
system.
For example, a system to be implemented contains 2600 FPs.The overall charge
would be
● 2000 x $967, plus
● 500 x $1019, plus
● 100 x $1058.
●What would be the charge for 3200 FPs?
Fixed price per unit
Advantages
●Customer understanding The customer call see how the price is calculated
and how it will vary with changed requirements.
●Comparability Pricing schedules can be compared.
●Emerging functionality The supplier does not bear the risk of increasing
functionality.
●Supplier efficiency The supplier still has an incentive to deliver the required
functionality in a cost-effective manner (unlike with time and materials
contracts)
●Life-cycle range The requirements do not have to be definitively specified at
the outset. Thus the development contract can cover both the analysis and
design stages of the project
Fixed price per unit
Disadvantages
●Difficulties with software size measurement Lines of code can easily be
inflated by adopting a verbose coding style. With FPs, there may be
disagreements about what the FP count should really be: in some cases, FP
counting, rules may be see as unfairly favouring either the supplier or customer
●Changing requirements Some requested changes may affect existing code
drastically but not increase the overall FP count. A charge made late in the
development cycle will usually require more effort to implement than one
made earlier.
Tendering process
●Open tendering
○any supplier can bid in response to the invitation to the tender.
○all tenders must be evaluated in the same way.
○government bodies may have to do this by local/international law.
○Where the client is a public body, an open tendering process may
be compulsory.
Tendering process
●Restricted tendering
○bids only from those specially invited.
○Can reduce suppliers being considered at any stage.
●Negotiated procedure
○Negotiate with one supplier e.g for extensions to software already
supplied.
Requirement analysis
Before potential suppliers can be approached, you need to have a clear set of
requirements.
lt is easy for this step to be skimped where the user management have day-to-day
pressures and little time to think about future developments.
In this situation, an external consultant could draw up a requirements document.
Even here, users and their managers need to look carefully at the resulting
requirements document to ensure that it accurately reflects their needs.
As David Bainbridge has pointed out: 'the lack of, or defects in, the specification are
probably the heart of most disputes resulting from the acquisition of computer
equipment and software'
Requirement analysis
The requirements document might typically have sections with the
headings shown in
●Introduction
●A description of any existing systems and the current environment
●The customer’s future strategy or plans
●System requírements
○Mandatory
○Desirable
●Deadlines
●Additional information required from potential suppliers
Requirement analysis
●This will include the functions of the new application and all the
necessary inputs and outputs for these functions.
●They also state any standards that apply,
●and the existing systems with which the new system should be
compatible
●Quality requirements, concerning such matters as the required
response times, reliability, usability and maintainability of the new
system
Requirement analysis
●the requirements document should state needs as accurately as
possible and avoid technical specifications of possible solutions.
●The onus should be placed on the potential suppliers to identify the
technical solutions judged to meet the customer's needs as they
should be technical experts with access to the most up-to-date
information about current technology.
●Each requirement needs to be identified as being either mandatory or
desirable.
Requirement analysis
●Mandatory lf a proposal does not meet this requirement then the
proposal is to be immediately rejected.
●Desirable A proposal may be deficient in this respect, but other
features of the proposal could compensate for this
The requirements document issued to potential suppliers would also
contain requests for information needed to judge the standing of the
organization itself. This could include financial reports/ references from
past customers and the CVs of key development staff
Evaluation plan
Having drawn up a list of requirements, we now need a plan of how the
proposals are to be evaluated.
Method could include
●Reading proposals
●Interviews
●Demonstrations
●Site visits
●Practical tests
Evaluation plan
●Need to estimate if the increase in quality is worth the additional price.
●Example
○Feeder file saves data input
○4 hours a month saved
○Cost of inputter $20 an hour
○System to be used for 4 years
○$20 an hour X 4 hours a month X 48 months = $3840, would be
saved
○lf system A has this feature and costs only $1,000 more than
system B which does not, this would give system A an advantage
Invitation to tender
●Having produced the requirements and the evaluation plan, it is now
possible to issue the invitation to tender to prospective suppliers.
●this will be the requirement document with a supporting letter
containing information about how responses to the invitation are to be
lodged.
●A deadline will be specified and it is hoped that by then a number of
proposals with price quotations will have been received.
●Note that bidder is making a offer in response to Invitation to
tender(ITT)
Invitation to tender
●Problem of different solution technical solution of the same problem.
●The customer not only needs to know a potential supplier's price but
also how they intend to satisfy the requirements.
Memorandum of agreement (MoA)
●technical proposals are requested from potential suppliers who do not
necessarily quote any prices.
●Technical proposals are examined ,discussed validate.
●If the proposed solution offered by the supplier satisfactorily meets the
customer's requirement could result in a MoA.
●Agreed technical solution in MoA.
●Tenders are then requested from suppliers based on MoA.
●Fee could be paid for technical proposals by the customer.
●Choose a small number of likely candidates to reduce the cost of TP.
MoA
A Memorandum of Agreement (MOA) is a written document describing a
cooperative relationship between two parties wishing to work together on
a project or to meet an agreed-upon objective. An MOA serves as a legal
document and describes the terms and details of the partnership
agreement. It is more formal than a verbal agreement but less formal than a
contract. Organizations can use an MOA to establish and outline
collaborative agreements, including service partnerships or agreements to
provide technical assistance and training. An MOA may be used regardless
of whether or not money will be exchanged as part of the agreement.
Evaluation of proposals
●We are already mentioned that to treat all proposals consistently we need an
evaluation plan.
●It would be unfair to favour a proposal because of the presence of a feature
not requested in the original requirement.
●tn the case of off-the-shelf packages the software itself could be evaluated
and it might be possible to combine some of the evaluation with acceptance
testing.
●With bespoke development it would be a proposal that is evaluated.
●While COTS may involve elements of both.
Evaluation of proposals
The process of evaluation may include:
●scrutiny of the proposal documents;
●interviewing suppliers' representatives;
●demonstrations;
●site visits;
●practical tests.
Evaluation of proposals
●The proposal documents provided by the suppliers can be scrutinized to see if
they contain features satisfying all the original requirements. Clarification might
be sought over certain points.
●Factual statements made by a supplier have a legal commitment if they
influence the customer to offer the contract to that supplier. lt is therefore
important to get a written, agreed, record of the clarifications.
●The customer might take the initiative here by taking minutes of meetings and
then writing afterwards to the suppliers to get them to confirm their accuracy.
Evaluation of proposals
●A supplier could, in the final contract document, attempt to exclude any
commitment to any representations made in pre-contract negotiations - the
terms of the contract need to be scrutinized for this.
●For existing product there could be a demonstration. A danger is that
demonstrations can be controlled by the supplier and it may be difficult to
maintain full attention for more than, say, half an hour. Because of this, the
customer organization should have their own schedule of what needs to be
demonstrated, ensuring that all the important features are seen in operation.
Evaluation of proposals
●With of-the-shelf software, the customer could actually try out the package. For
●example, a demonstration version could be made available which closes itself
down after 30 days. Once again a test plan is needed to ensure that all the
important features are evaluated in a complete and consistent manner.
●A frequent problem is that while an existing application works well on one
platform with a certain level of transactions, it does not work satisfactorily with
the customer's lCT configuration or level of throughput. Demonstrations might
not reveal this problem. Visits to operational sites already using the system
could be more informative
Evaluation of proposals
●In most large organizations, placing a contract involves the participation of a
second party within the organization, such as a contracts department, who can
check that the correct procedures have been carried out. Also, the final legal
format of a contract will almost certainly require some legal expertise.
●Not only should the successful candidate be notified but the unsuccessful
candidates should also be told of the decision.
●lt makes dealing with unsuccessful bidders easier if they can be given clear
and objective reasons why their proposals did not find favour.
Contract management
●Contract should include agreement about how customer/supplier relationship
is to managed.
●However, at certain decision points (or milestones) the customer might wish to
examine work< already done and make decisions about the future direction of
the project.
●The project could require representatives of the supplier and customer to
interact at key points in the development cycle.
●There will be concerns about the quality of contracted work. The ISO 12207
standard envisages the possibility of there being agents, independent of both
the supplier and customer, who will carry out verification, validation and quality
assurance.
Contract management
●Changes to requirements will vary the contract terms. Oral evidence is not
normally admissible to contradict, add to, or vary the terms of a written
contract, so that agreed changes need to be documented.
●A change control procedure must record requests for changes, the supplier's
agreement to them and the cost for additional work.
Acceptance
●When the work has been completed, the customer needs to arrange
acceptance testing.
●Part or all of the payment to the supplier should depend on this acceptance
testing.
●Sometimes part of the final payment is retained for a period of operational
running andis paid if the levels of performance are as contracted for.
●There may also be a period of warranty during which the supplier should fix
any errors found for no charge.
●The supplier might suggest a very short warranty period of, say, 30 days. lt may
be in the customer's interests to negotiate a more realistic period of, say, at
least 120 days.