the major uncertainty factors affecting in software · pdf filethe major uncertainty factors...
TRANSCRIPT
THE MAJOR UNCERTAINTY FACTORS AFFECTING IN
SOFTWARE COST ESTIMATION
G. Rajkumar1, Dr.K.Alagarsamy
2
1Assistant Professor, N.M.S.S.Vellaichamy Nadar College, Madurai, India.
2Associate Professor, Computer Centre, Madurai Kamaraj University, Madurai, India.
ABSTRACT
The majority of uncertainty factors that
caused major problems were operational in the
sense that they invoked problems that are normally
within the responsibility of the Software Project
Management. Each project will have a different
capacity for uncertainty. This is a measure of how
much uncertainty the project can tolerate. Accurate
software cost and schedule estimations are essential
especially for large software projects. However,
once the required efforts have been estimated, little
is done to recalibrate and reduce the uncertainty of the initial estimates. Uncertainties in estimates of
resource requirements for future systems arise from
many sources. One of the top reasons for the
failures is inadequate or inconsistent application of
proven project Uncertainty methods. All projects
have some uncertainties. Most practitioners agree
that improved estimation practices and processes
have changed the uncertainty scale. This paper
reviews the numbers of Uncertainty factors
involved in the software cost estimation, which
interact with each other.
Keywords: Software Project Management,
Uncertainty Factors, Managing Uncertainty.
INTRODUCTION
The accuracy of cost estimation
result is important in any software
development project. The crucial question
in software development project is how to
complete a project in specific time, budget
and resources. A major part of the failure
can be due to a lack of understanding of
the software development process and the
effect of that method used in the project
plan, schedule and cost estimates.
Organizations and individuals have studied
a number of projects that have both
succeeded and failed and some common
factors emerge. Major projects by nature
are usually more complex and contain
more risk elements than other projects.
Careful attention must be provided when
preparing cost estimates for major projects.
Costs should be determined for
uncertainties within an estimate. All
elements of the project must be reduced to
a cost that can be accounted and budgeted.
There should be a disciplined and
comprehensive method of assessing and
reassessing project risk and uncertainty.
Most importantly, however all estimates
have uncertainty. This paper discusses on
Uncertainty factors in software
development project.
SOURCE OF UNCERTAINTY
Uncertainty is the indefiniteness or
variance of an event. The [1] Major
sources of uncertainty in cost analysis of
future system and force structure proposals
may be classified in various ways. The
variations arise for number of reasons. All
projects have some uncertainties. For
example Differences in Individual cost
analysts, Errors in Cost estimating
relationships, Errors in basic data and so
on.
THE MOST COMMON REASONS
FOR PROJECT UNCERTAINTY
The following list has been inspired by
actual mistakes encountered in real-world
systems projects.
1. MANAGEMENT
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
419
ISSN:2229-6093
In this section we consider what might be
done to develop a management uncertainty
approach which encompasses all forms of
project related uncertainty. Top
management commitment is the factor that
determines the tipping point between
potential success and failure when
developing and implementing business
continuity management projects and
systems. The term 'uncertainty
management' [2]it implies more than just a
combined consideration of threats and
opportunities. Rather, the term implies a
more fundamental purpose of exploring
and understanding the origins of project
uncertainty before seeking to manage it,
with no preconceptions about what is
desirable or undesirable. Key concerns are
understanding where and why uncertainty
is important in a given project context, and
where it is not. The Management Problem
occurs in all the stages of the Software
development project.
2. PROJECT DESIGN
Design is associated with the conceptual
framework [3] that constitutes the project
and establishes its main characteristics and
objectives, while planning is the detailed
formulation of the projects strategy in
time, cost, quality, and quantity. The
design provides an account of the project
in its entirely, while the plan is largely
limited to the operational perspective.
Uncertainty factors related to the design of
projects. The problems related to
inappropriate components had to do with
lack of training, maintenance, too
sophisticated or ambitious components,
etc.
3. COMMUNICATION
The communication problems [5] are a
major factor in the delay and failure of
software projects. Requirements
descriptions are necessarily uncertain. The
specification documentation may be so
large that no member of the software team
has read it all. In this situation,
misunderstandings and conflicting views
are rife. Software projects suffer serious
breakdowns in co-ordination and
communication throughout their
development life cycle. We present some
of the causes for the breakdown of
communication during the requirements
engineering phase of software
23%
21%
6%7%
5%
14%
2%
9%
11%
2%
Uncertainty Factors
MANAGEMENT
PROJECT DESIGN
COMMUNICATION
STAFF EXPERIENCE
FUNDING PROBLEMS
USER’S RESPONSE
PRICE CHANGES
RESOURCES
TECHNICAL FACTORS
OTHERS……
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
420
ISSN:2229-6093
development projects. The
communication attributes [6] provide
information about whether the matter of
concern should and has been
communicated between the sender and the
receiver. In software development,
coordination and communication within
and across organizational boundaries
throughout the software development cycle
are acknowledged as critical factors for
success, especially when software is
developed on a large scale.
4. STAFF EXPERIENCE
Staff weaknesses had to do with
qualifications of staff, the experience of
expatriate personnel, lack of commitment,
turn-over of qualified staff, etc. Planning
and preparation had to do with the
availability and quality of detailed plans of
operation. [4] The projecting company
had experience with the solution of similar
problems. The project team did not
experience any significant personnel losses
or transfer during the project’s
development.
5. FUNDING PROBLEMS
Delay is one of the [7] most serious
problems in the completion of a project.
Delay is common in projects and its extent
varies considerably from project to project.
Some projects are only a few days behind
schedule; some are delayed by over a year.
Thus, delay is costly for both owner and
contractor. To the owner, a delay means
loss of potential revenue; a delay means
increased costs in overhead. The Financial
issues are Payment issues, Cash flow
issues, financial resource issues and
Market issues. Financial-related delays are
mainly due to poor cash flow management,
followed by late payment, insufficient
financial resources, and financial market
instability.
6. USER RESPONSES
Computer users have rapidly increased in
both number and diversity. They [8]
include managers, accountants, engineers,
home makers, teachers, scientists, health
care workers, insurance adjusters,
salesmen, and administrative assistants.
Many of these people work on tasks that
rapidly vary on a yearly, monthly, or even
daily basis. End users usually do not have
training in professionals' programming
languages, formal development processes,
or modeling and diagramming notations.
Moreover, end users often lack the time or
motivation to learn these traditional
techniques, since end users usually write
code in order to achieve a short or
medium-term goal rather than to create a
durable software asset that will produce a
continuing revenue stream. Consequently,
supporting End user requires providing
appropriate tools, social structures, and
development processes that are highly
usable, quickly learned, and easily
integrated into domain practice.
7. RESOURCES
One must seek to optimize the [9]
knowledge and experience gain from the
information gathered (its relevance,
accuracy and suitability), in relation to the
investments made to gather it (the time and
money spent). The following describes
various methods of gathering data and
information. The reasonably priced and
straight-forward ones should be preferred.
In cases where the more complex and
expensive methods must be used, one
should evaluate critically which one(s) will
be most appropriate. The approach taken
by an external organization which is just
starting up work in a new partner country
will naturally differ from that of a local
organization which is already established
and in operation. Sources of information
are survey reports, Government Official,
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
421
ISSN:2229-6093
NGO Personal, Community members,
etc.,
8. PRICE CHANGES
Pricing [11] must take into account
broader organizational, economic, political
and business considerations, such as
Market opportunity, Financial Health,
Requirements etc., Therefore, there may
not be a simple relationship between the
price to the customer for the software and
the development costs. Because of the
organizational considerations involved,
project pricing should involve senior
management, as well as software project
managers.
9. TECHNICAL FACTORS
The task was technically demanding.
Under most circumstances regulatory cost
estimates ignore the possibility of
technological progress. As noted,
regulators often have an obligation to
identify a means for firms to meet the
regulation, a requirement that seemingly
precludes the projection or extrapolation of
future costs or the expectation of cost
declines. Technical change is, after all,
notoriously difficult to predict; all we can
say with some confidence, based on
historical experience, is that the cost of
compliance will decline, but we cannot say
at what rate. Special consideration is given
to soft or human-related factors in software
engineering that are often not analyzed
with equal detail as more technical factors.
Choosing the right proper tool is important
in cost estimation process. The right
proper tool produce an accurate results.
The traditional common tool used in
estimating the cost is spreadsheet or
Microsoft Excel and Microsoft Project.
The biggest challenge in using the
traditional method is the level of accuracy.
Software development communities faced
difficulty to achieve high accuracy in
producing cost estimation result.
Therefore, many studies have been done to
develop automated tool for cost estimation
process. However, no one claimed their
proposed tool can produce accurate result.
HOW TO MANAGE UNCERTAINTY?
Uncertainty has no independent existence;
it is not an object which can be identified,
trapped and eliminated like a virus
invading the living organism of our
project. Uncertainty [12] naturally arises
out of complex situations and is therefore
an integral part of most projects. Each
project will have a different capacity for
uncertainty. This is a measure of how
much uncertainty the project can tolerate.
High risk projects, that is, typically novel
projects which are pursuing ambitious
goals where it is accepted that the
02468
10
PHASES
UN
CER
TAIN
TY
UNCERTAINTY IN DIFFERENT PHASES
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
422
ISSN:2229-6093
likelihood of failure is high, will have a
high capacity for uncertainty. The usual
response of industry to these challenges is
to manage uncertainty using a framework
in the figure 1.
The usual response of industry to these
[13] challenges is to manage uncertainty
using a framework in the above figure.
The figure illustrates flow of the activities
within the cost estimation managing
uncertainty and how they become
overlapped in time and iterated across.
Each step has an overlap with the next and
may require individuals to return to
previous steps to make updates or to
consider new uncertainties that had not
been previously identified.
EMPIRICAL RESULTS
Hypothesis Statement: To reduce
the cost challenges in cost estimation over
uncertainty factors that arises in the project
and program planning. If arises, how to
manage uncertainty factors in software
cost estimation.
To evaluate or prove the
Hypothesis statement CHI-SQUARE
Testing is implemented.
The chi-square formula used on
these data is
= (O - E)2/E
Where, O is the Observed Frequency in
each category
E is the Expected Frequency in the
corresponding category
df is the "degree of freedom" (n-1)
is Chi Square
Uncertainty Matrix is framed phases over
uncertainty factors matrix entries are
defined as,
CAUSES / PHASES
REQUIRE
MENT
PHASE
ANALYS
IS
PHASE
DESIG
N
PHAS
E
IMPLEM
ENTATIO
N PHASE
TESTIN
G
PHASE
MAINT
ENANC
E
PHASE
MANAGEMENT 1 1 1 1 1 1
PROJECT DESIGN 0 0 1 0 0 0
COMMUNICATION 1 1 1 1 1 1
STAFF
EXPERIENCE 0 0 1 1 1 1
FUNDING
PROBLEMS 1 1 0 1 0 0
USER’S RESPONSE 0 0 1 0 0 1
RESOURCES 1 1 1 1 1 1
PRICE CHANGES 1 0 0 1 0 1
TECHNICAL
FACTORS 0 1 1 1 1 1
OTHERS…… 1
UNCERTAINTY MATRIX
RECOGNIZE
ANALYSE
MINIMIZE
RECTIFY
Figure – 1 Managing Uncertainty
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
423
ISSN:2229-6093
1 If the uncertainty factor occur
in the phase.
0 If the Uncertainty factor does
not occur in the phase.
X2 0.05 table value (45) = 61.656
Actual value of Uncertainty Matrix is
16.8875
Thus the hypothesis statement is
proved.
CONCLUSION
They have been several issues raised
regarding uncertainty. It is proposed that a
formal definition and methodology is
required to improve the integrity of future
projects. Clear distinction between
uncertainty and process complexity must
be made to reduce the level of project
complexity and lack of understanding. A
method to identify uncertainties in a
simpler fashion that will allow those with
little experience to complete the tasks in
the time allocated without too much
involvement form experienced staff
members. This paper review the numbers
of Uncertainty factors are involved in the
software cost estimation and some of
which interact with each other. By
managing uncertainty we can recognize
the problems in causes then it can be
analysed. The analysed problem should be
minimized and rectified.
REFERENCES
[1] Paul.F.Dienemann, Estimating Cost
Uncertainty Using Monte Carlo
Techniques, The RAND Corporation.
[2] Stephen Ward and Chris Chapman,
Project Uncertainty Management as A
Desirable Future, School of Management,
University of Southampton, Highfield,
Southampton SO17 1BJ.
[3] Knut Samset, Project management in a
high uncertainty Situation, Norwegian
University of Science and Technology.
[4] Dov Dvir , Thomas Lechler, Plans are
nothing, changing plans is everything: the
impact of changes on project success.
[5] Amer Al-Rawas and Steve
Easterbrook, Communication Problems in
Requirements Engineering: A Field Study.
[6] Joakim Pernstal, Robert Feldt, Tony
Gorschek and Dan Floren,
Communications Problems in Software
Development – A Model and its Industrial
Application.
[7] Hamzah Abdul-Rahman, Chen Wang,
Roshana Takim and Szemin Wong, Project
Schedule influenced by Financial Issues:
Evidence in construction Industry.
[8] Margaret M.Burnett and Christopher
Scaffidi, End-User Development.
[9] Dr.Anne Touwen, Hand Book for
Projects: Development Management and
Fundraising.
[10] Winston Harrington, Richard
D.Morgenstern and Peter Nelson.On the
Accuracy of Regulatory Cost Estimates.
[11] Sommerville, Software Engineering,
Seventh Edition, Low Price Edition.
[12] David Cleden and Gower, Managing
Project Uncertainty – Uncertainty in
Project and Programme Plans.
[13] Erkoyuncu J.A, Roy. R, Shehab.E,
Wardle.P, Uncertainty challenges in
service cost estimation for product –
service systems in the aerospace and
defence industries
G Rajkumar et al , Int.J.Computer Technology & Applications,Vol 4 (3),419-424
IJCTA | May-June 2013 Available [email protected]
424
ISSN:2229-6093