Professional Documents
Culture Documents
Software Planning
Software Planning
Software Planning
3 SOFTWARE PLANNING
3.1 INTRODUCTION
Planning is one of the most important management activity and it is an going
effort through out the life of the project. The objective of software project planning is
to provide a framework that enables the manager to make reasonable
estimate of
resource ,cost and schedule. These estimate are made with in a limited time frame at
the beginning of software project and should be update regularly as the project
progreSs.
model
Seleeting Development process mpropor development process model s
ptedBased
In addition
on the totype
theofchoice problem a process model, here may be chang,
in development
project
process. Depending on the type of project,
nthe hfe cycle phases of development some may be ignorable. So based o
sme of the phases may be very importan while
phases might be added o
OmetvpeeNisting
the phases
of proect, sometophases
be used omitted and some new
are may be modified. Generally for the simple
waterfall model is opted while for some challenging
and
deelopment process simple prototyping development model.
wmpleN projects we may Tequire evolutionary or
Project Scheduling
must be settled properly, otherwise it may cause
Time schedule for the project customer dissatisfaction. Also time
late in the delivery of project which results in
settled properly so that it is neither too large, nor too small. When tima
should be
settled is very small it may affect the team moral which can lead project failure To
generally uses a particular type of
OverOme thìs type of problems project managers
planning technique called Sliding Window Planning. beginning In this technique, project
of project. But
managers only do some preliminary planning at the
the various
detailed planning of project is done in stages as we proceed through beginning of
the
phases of development process. The reason behind this is that, at
the project &
project, project managers usually not have complete knowledge of
hence cannot plan completely. However as project successes through various
development phases the project managers obtain more and more knowledge about
the detail of project. Due to this improved information the system, the confidence
level of project manager improved which helps him to properly plan the project.
Project Complexity
Project - Complexity of any project defines the difficulty level of that particular
project. While planning a project, the complexity of that project must also be checked
which helps in planning about the resources of project. However the complexity of
project is a relative term which depends on the person-to-person. A project which is
complex for a particular project manager may not be complex for other. This also
depends on the experience of project managers. A project may be complex for a
project manager because the field in which the project lies may be new to that
particular project manager and this particular project then will be simple for
another particular project manager which is having large experience in that
particular field. For example, a simple data processing application might be taken as
complex by a project manager which is having experience in process control
applications.
SoftwarePlanning 57
Stafing Plan
After the project complexity, efforts, cost and other parameters of project have
beplanned.
hired
Based on these parameters, staffing level and number of persons in staff
to be is decided. Working level of the staff to be selected is chosen based on the
omplexity of project.
Quality Assurance and configuration management plan
During this plan, decision about the required quality and configuration of
projectis done. When the project planning is complete, the results of the planning
nhase is documented in the form of Software Project Management Plan (SPMP)
document by the project manager.
For example, the data collected for the various proiccts in an organization can
belikethis: Sw devloþm eut mauterance
Cost Pages of Errors Defects People
Project LOC Effort
(in lacs) documentation
Project X 130000 35 170. 1200 - 136 19 4
() Using function point metric, the size of software can be directly measured
from the initial problem specification. Because the 5 parameters which we
require for calculating function points can be easily guessed from the initial
detailed problem specification.
(Cn) The function point metric is language-independent because the parameters
used for calculating it like number of inputs, number of outputs, number of
inquiries, number of interfaces, number of files are same for a software
product independent of the language which we are using for programming.
Similarlythe total effort in person-month for developing CAD system would be-
Total Effort = 63x07
s 63 person-month.
So total effort of developing CAD software system would be approximately b3
person-month.
Compilers, linkers, DBMS are utility programs. Operating system and real-time
with the
$ystem programs are System programs, System programs drectly interacts
Brooks states
hardware and involve timing constraints and concurrent processing.
apPplication program%
that utility programs are three times as difficult as to write utility
difhcult to wite as
ahd system programs are roughly three times as
programs.
Boehm's definition of organic. semidetached and embedded programs are as
follow
Organic:If the project being developed is a well understood application. The
SiZe of the development team is small and the team members are less experienced or
experienced in the developing similar type of projects.
Semidetached : If the team is a mixture of experienced and non-experienced
peoples. The members have experience but unfamiliar with the aspect of the system
being developed. Semidetached falls between organic &embedded categories.
Embedded : Projects are considered to be of embedded type if organization has
little experience and have very tight constraints from the hardware, software and
personal and also the project require hardware interaction.
Boehm provide different expressions to predict the effort and development time
from the size estimation. This model also consider the loss in productivity due to
some lost of time from holidays, weekly offs, coffee breaks etc. The unit for
measuring effort isconsidered in PM (Person-Month).
Now we will discuss the three categories of COCOMO model proposed by
Boehm.
of
No.
Persons
Time
Fig. 3.1 : Person-Month Curve
The effort in PM (Person-Month) is denoted by the area under the
curve (Figure 3.1). person-month
The value of constants a, b, c, d used in equation is different for different
categories of products. The value of the constants are derived by examining the
historical data collected from a large number of actual projects. The value of the
constants is shown in following tables.
For development Effort
b
Organic 2.4 1.05 E=a* (KDLOC) PM
Semidetached 3.0 1.12
Embedded 3.6 1.10
Table. 3.6
For development time
Bmbeded
ded
Efforts
Estimated
E
Organic
Size
Development
Time
Semidetached
Organic
Size
Fig. 3.3 : Development Time Vs Size
software Planning 71
From the graph, it can be easily find out that larger the product, larger will be
the development time. But some activities can be performed simultaneously called
parallel activities, reduce some time of the development. The estimated values for
effort and development time are the nominal values. By nominal, we means that if
project development time is reduced than this nominal time, than effort and cost will
be increased from nominal. Similarly if project completes in longer time that the
nominal time, then there is almost no decrease in the cost of the project from
nominal cost.
3.4.3.8 PotentialVolume
Amongst all the program, the one that has minimal size is said to have the
potential volume V*, The implementation of algorithm for minimal size would
SoftwarePlanning 75
require
more than invoking he procedure and supplying operands for inputs and
outputparameters
E =
L
It takes more effort to implement a program at low level than the higher level.
34.3.11Time to Implement
Bfort uses elementary discriminations its unit of measure, the programming
time would be
T=ElB
Bis normallyset to18 since this seemed togive best result inHalstead earlier
experiment.
SUMMARY