Software Baselines
Lecture # 30B
1
1
Software Baselines
• A baseline is a milestone in the
development of software
• Software benchmarks and baselines collect
similar data
• Baselines compare a company against its
own history for several years in the past
2
2
Software Baselines
• Baselines collect quantitative and
qualitative data on a number of important
topics, including investments, staffing
levels, development schedules, staff efforts,
costs, quality, and customer satisfaction
3
3
Software Baselines
• Software baselines are normally used as a
starting points when beginning process
improvement programs
• Accurate baseline provides a firm
quantitative basis for productivity,
schedules, costs, quality, and user
satisfaction to judge rate of improvement
4
4
Software Baselines
• Another very common use of baselines is
when outsource agreements include a
contractual obligation for the vendor to
improve quality or productivity
• Baselines are technically very challenging
and difficult to create with acceptable
accuracy
5
5
Software Baselines
• This is because most companies do not
routinely collect accurate quality and
productivity data. In fact most companies
don’t even collect accurate cost data on how
much they spend on software projects
6
6
• In addition to the fact that the effort and
costs for many activities are incomplete,
there are several other significant cost
elements that are seldom recorded at all
• One of the most important missing pieces of
information is the amount of unpaid
overtime applied to software projects. This
is very important factor for international
software comparisons
7
7
• Another missing piece of information is the
work that software clients themselves
perform during development cycles
8
8
• Because leakage is so common, initial
baselines are often very unrealistic.
• For example, if a software organization’s
actual productivity is 5.0 FPs per staff
months but their cost tracking system only
captures lowlevel design, coding, and
testing costs, their apparent productivity
might look like 15.0 FPs per staff months
9
9
• Many software cost tracking systems omit
requirements, highlevel design, project
management, creation of user manuals and
documents, and the work of specialists in areas
such as software quality assurance, database
administration, change control, and
administrative support
• Sometimes, the activities omitted actually
accumulate more costs than the activities that
are tracked
10
10
• The bottom line is that the baselines are
very challenging to create well and
accurately
• If they are going to serve a purpose in
contracts between outsource vendors and
clients without leading to litigation, then
baselines need to be accurate and reliable
11
11
Summary
12
12
References
• Software Assessments, Benchmarks, and
Best Practices by Capers Jones (Chapter 3)
13
13