· each other. Keywords Failure Reasons, Success factors,

·      Abstract

Most software projects fail completely or partial failures
because a small number of projects meet all their requirements. These
requirements can be the cost, schedule, quality, or requirements
objectives.  Over the last 20 years many
cost and schedule estimation techniques have been used with mixed sensation due
to restrictions of the assessment models. 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. A key finding is that there is no one overriding factor
that causes project failure. This Paper review the  numbers of factors are involved in project
failure, some of which interact with each other.

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!


order now

Keywords

Failure Reasons, Success factors, Failure Statistics 

Introduction

One of the most serious complaints against software failure
is the inability to estimate with acceptable accuracy the cost, resources, and
schedule necessary for a software project.  
According to many studies, failure rate of software projects is between
50% – 80%.  One of the major causes of
both cost and time overruns is restarts. For every 100 projects that start,
there are 94 restarts. This does not mean that 94 of 100 will have one restart;
some projects can have several restarts. 
Project failure is when you do not get what you expect at the end of
your project. It is a terrible situation when you cannot say anything about the
received results as these results do not meet requirements of the project
customer and sponsor. This paper discusses on why most projects fail and what
the top reasons for project failure are in software development project.

Background

2 BACKGROUND WORK Developing and maintaining software
systems involves a variety of highly interrelated activities. In order to man-
age these structured set of activities various models have been developed over
the years with varying degree of success. These include Waterfall model,
Iterative devel- opment, Prototyping, Spiral model, RAD. Each product can pass
through different states, depending on the spe- cific circumstances of each
project and hence, there are different development models. For example, if the
prob- lem is well defined and well understood and user need is practically
invariable, a short waterfall-like life cycle is likely to be sufficient. The
Waterfall Model was widely used because it formalized certain elementary
process control   requirements.   However,  
when   we   come  
up against a poorly defined and understood problem and a highly volatile
user need, we can hardly expect to output a full requirements specification at
the start. In this case, we have to opt for longer and more complex life
cycles, like the Spiral Model 2. Each cycle in Spiral Model addresses the
development of the software product at a further level of detail. In the course
of several papers, Boehm and his colleagues ex- tended the spiral model to a
variant called the Win–Win Spiral Model 2, 3, 4. The win–win stakeholder
ap- proach is used to determine three critical project miles- tones that
together anchor the development of the project: namely, life-cycle objectives,
life-cycle architectures, and initial operational capability . Prototyping
Model helps to understand uncertain requirements but leads to false
expectations and poorly designed system. A popular var- iation of the
Prototyping Model is called Rapid Applica- tion 
Development  (RAD).  This 
model  introduces  firm time limits on each development phase
and relies heavily on rapid application tools which allow for quick developed.
Exploratory model use the prototyping as a technique for gathering requirements
and was very sim- ple in its construction but is limited with high level lan-
guage for rapid development. This model works best in situations where few, or
none, of the system or product requirements are known in detail ahead of time.
This model is largely based on educated guesswork. This scheme is not
particularly cost-effective and sometimes results in less-than-optimal systems,
so it should be used only when no viable alternative seems to exist. Agile
process model give less stress on analysis and de- sign. Implementation begins
much early in the life cycle of the software development. This process model
de- mands   fixed   time.  
Extreme   Programming   (XP)  
was created by Kent Beck during software development, and is based on
iterative enhancement model. Like other agile software development, XP attempts
to reduce the cost of change by having multiple short development cycles,
rather  than  one 
long  one.  It 
only  works  on 
teams  of twelve or fewer people.
Industrial Extreme Pro- gramming (IXP) was introduced as an evolution of XP. It
is intended to bring the ability to work in large and dis- tributed  teams. 
It  then  supported 
flexible  values  . There is not enough data to prove its
usability. These days, majority of the software development project involve
some level of reuse of existing artifact like design or code modules. The
component-based development (CBD) model incorporates many of the
characteristics of the spiral model. It is evolutionary in nature, demanding an
iterative approach to the creation of software . The component-based
development model leads to software reuse, and reusability provides software
engineers with a number of measurable benefits. The unified software de-
velopment process is representative of a number of com- ponent-based
development models that have been pro- posed. Using a combination of iterative
and incremental development, the unified process defines the function of the
system by applying a scenario-based approach 8.The concentration is on object
oriented development. The evolution of software development  Process Models has reflected the changing
needs of software customers. As customers demanded faster results, more
involvement in the development process and the inclusion of measures to
determine risk and effectiveness and the methods for developing systems
changed. Before requirements can be finalized we must understand the domain.
According to Dines Bjorner, it is not possible to develop software with- out
understanding its domain . These rapid and nu- merous changes in the system
development environment simultaneously spawned the development of more prac-
tical new Process Models and the demise of older models that were no longer
useful .

Most common reason for software failure

1.      
Lack of customer and user involvements

2.      
Unclear goals and objectives

3.      
Poor set of requirements

4.      
Lack of resources

5.      
Failure to communicate

6.      
Project planning and scheduling

7.      
Cost estimation

8.      
Improper estimation methodologies

9.      
Cost estimation tools

10.  
Poor testing

11.  
Risk management

12.  
Unrealistic 
Expectations

·        
Lack of customers and user involvements:

                                                                       
It is the preliminary reason of software failure. When you working on
software and a customer does not support to you in it, then the software is
going to fail or unsuccessful. Without the involvement of the customer we
cannot feel committed to that software. To avoid from the reason of software
failure its necessary to make such type of working environment in which
customer and user can participate easily. All project expectation should be
clear and right. So we need to support the software to make it clear to all
members (user & customers) it is a priority.

·        
Unclear goals and objectives

                                                
In many types of software to showing the progress and in this scenario
the software managers depend on the rolling wave planning. Due to the poor or
illegal requirements of the user the goals or objectives may be unclear. In
such type of cases all scheduled and scope are developed by the software
manager. For defining the clear requirements it may take several times and a
lot of communication. So it become a harmful reason of software failure.

·        
Poor set of requirements

                                           When
the software members delivers the items without having the clear understanding
that what customer want then poor set of requirements take place to become the
reason of software failure. Sometime user or customer does not like it because
the requirements have not been met when the item is developed so it also become
the reason of software failure.

·        
Lack of resources

                               Every software depend
on the resources, software need resources their size and scope. Most of the
software manager can be working on software with secure resources and attest
them. Software may be lead to failure due to unreliable or unrealistic
resources. However, there are situations where the software is simply
unattainable because the allocated resources are insufficient. Lack of
resources can become a harmful reason of software failure. 

·        
Failure to communicate

                                           
Sometimes software may be fail due to improper or illegal communication.
Most of the big softwares are complex and these are requires analysis, DBA, and
other worker with strong or proper communication but some workers showing their
ignorance which lead to communicate failure. The software manager does not
communicate regularly because they believe that software progress will not be
seen by executive management. Projects sometimes fail due to improper
communication.

·        
Project planning and scheduling

                                                       
Software planning consists on constructions of various tasks, timeline
and necessary path. Software planning means making work in steps and allocates
duties or responsibilities to developer over time.  Allocating the responsibilities has to be
clearly defined and it becomes complicated while hiring items from outside.
Before starting software proper scheduling of software is also required. It may
include time scheduling and team scheduling. Software manager only tell the
programmer what to do and he don’t know that what they have to plan and
schedule.

·        
Cost estimation

                             Sometime cost
depends a lot on software because we can manage profit or loss by software. So
cost estimation is necessary before finalizing the software if it is too much
high then its processing then it becomes the cause of software failure.  So it may not be produce the reliable
estimates.

·        
Improper estimation methodologies

                                                          
Another reason would be the
use of an inappropriate value estimation methodology. Not a single
methodology is better than other. 
At least one of these techniques can be utilized to evaluate the cost of
a task. “Great recommendation is that more than one programming cost
estimation approach ought to be utilized for exact estimation.  One or greater of these methodologies can be used to
estimate the fee of a project. two “Good recommendation is that greaterthan one software
program fee estimation methodology must be used for accurate estimation”

·        
     Cost estimation tools

                                               
There are numerous disadvantages in manual cost estimation. This
procedure is relatively outdated at this point. These days fruitful cost
estimation incorporates the utilization of proper business programming cost
evaluating device. Great programming evaluating devices don’t generally ensure
dependable programming gauges. Wrong contribution of the product size will
bring about wrong gauge. Estimation programming additionally should be modified
for the particular need of association. These customizations require the information from
the previous projects as enter for the device to
estimate. There are range of reasons these tools can return
the wrong estimate.

·        
Poor testing

                    
The task failure is often induced by means of lack of trying out resources.
7While software developers center of attention on growing code, they do no longer deal with testing.
Testers are these who should do “testing” for the duration of the development process.
Often lack of testers and their terribleabilities and know-how will make
an challenge un appropriate due to the factacceptance checks to see whether or
not the product
meets the businessrequirements are not run. Poor
testing might be caused by poor necessities set, absence of progress control,
deficiently prepared staff, absence of time for performing testing. As a task
supervisor must keep these venture disappointment causes with a specific end
goal to fabricate a satisfactory item for client. 

·        
Risk Management

                                  Risk management is an essential component toward software undertakingfailure if
it’s not managed well timed and effectively. As
nothing can be estimated that what will show up in future so
we have to take the imperativesteps in the current to take any unsure state of affairs in the
future. Risk administration capability dealing with
a concern before it turns into a crisis

·        
Unrealistic expectations

                                           Projects with
12unrealistic expectations are additionally about equally in all likelihood to be poorly
managed projects that fail to validate the feasibility of satisfying consumer expectations,
or two well-managed tasks that attempt to validate
feasibility and locate unavoidable factors— such as immature technology,
overhyped COTS products, or a saturated market—that justify a project’s instantaneous termination

Project success factors

1.      
Software monitoring

2.      
Effective software

3.      
Independent on single estimation

4.      
User requirements

·        
Software monitoring

                                    It means
that the accuracy of estimation. Software monitoring is the process of measuring or gathering
software data. Internally, externally and collaboratively an extensive array of
monitoring program exist to accumulate the software data complicated for
selection making.

·        
Effective
software

                                
Software effectiveness having the capability to producing the required
result or having the ability to produce desired output. It means that it having
the expected outcomes.  In a number of
ways this process can be used to increase the accuracy and reliability in the
cost estimations.

·        
Independent
on single estimation

                                                            
Single reconstruction is not more than to estimate. Software successful
factor is that keep in mind all user or multiple user to estimate.  It based on multiple comparison of
participating. So estimate would not be independent if after sampling.

·        
User
requirement.

                                                
User involvement is very necessary for software successful instead of
user involvement or lack of user involvement becomes the cause of software
failure. So keep in mind all user requirements and fulfil the all user
requirements successfully.

                            

 

Failure statistics and its recommendations

The Standish group and 13CHAOS report is, only 9% of
projects in large companies were successful. At 16.2% and 28% respectively,
medium and small companies were somewhat more successful. 

Project

Large

Medium

Small

Success

9

16.2

28

Challenged

61.5

46.7

50.4

Failure

29.5

37.1

21.6

 

A 8enormous 61.5% of all large company projects were
challenged compared to 46.7% for medium companies and 50.4% for small
companies. 

 

Conclusion

This paper
has deal the simple elements which can cause the softwareimprovement assignment to fail. All
of these factors are to be viewed at the management degree and then
transferred to the lower management. Projects succeed and
sometimes, projects fail. Knowing what factors can lead
to undertaking failure
is necessary for the venture supervisor so they comprehend what to seem to be for when managing
their projects. The strategies and practices complement each other for improvement and bothrequire human
effort from every body in the organization. In Conclusion all
of these failure elements are rectified to success in Software developmentproject.

Acknowledgment

Bibliography

 

References

 1 Top 5 Project Failure Reasons, Or Why My Project Fails By
Eric McConnell. 
2
http://www.coleyconsulting.co.uk/failure.htm. 
3 Causes Of Software Project Failure By
Muhammad Saqib. 
4 Why Projects Fail – Top 10 Reasons, via Tomtsongas. 
5
http://www.projectmagazine.com/initiating/43integration/395-causes-of-software-project-failure. 
6 IT Project Failures By Michael Krigsman.

7 http://www.projectsmart.co.uk/docs/chaosreport.pdf 

8 The Top Ten Reasons Projects Fail by Frank Winters.   

9 Causes Of Software Project Failure By Muhammad
Saqib.     

 10 Project
Termination Doesn’t Equal Project Failure Barry Boehm, University of Southern
California.

11  Top 10 Reasons
Why Systems Projects Fail  Dr. Paul
Dorsey Dulcian, Inc.  

12 http://www.scs.carleton.ca/~beau/PM/StandishReport.html
– T23E-T10E STANDISH GROUP REPORT.

x

Hi!
I'm Rick!

Would you like to get a custom essay? How about receiving a customized one?

Check it out