Success and Failure Factors that Impact
on Project Implementation Using Agile
Software Development Methodology
Saru Dhir, Deepak Kumar and V. B. Singh
Abstract In the agile software development, there are different factors behind the
success and failure of projects. Paper represents the success, failure, and mitigation
factors in agile development. A case study is presented depending on all of these
factors after the completion of small projects. Each team grouped into 10 team
members and developed the project with different approaches. Each group main-
tained the documentation from initial user stories and factors employed on the
projects. Final outcomes are observed based on the analysis of efficiency, accuracy,
time management, risk analysis, and product quality of the project. Final outcomes
are identified using the different approaches.
Keywords Agile development process Scrum Factors
1 Introduction
Software development is the process whose success and failure depends upon the
team, organization, and technical environment. Software project development is a
teamwork where the delivery of the project depends upon different factors or cir-
cumstances. In the traditional development, the customer got the final product after
the completion of development and testing that final product sometimes satisfied or
unsatisfied the customer. According to the agile development, customer has the
continuous involvement in the project through the daily meetings. Agile method-
ology has four agile manifesto and twelve principles [1].
S. Dhir (&) D. Kumar
Amity University, Noida 110025, Uttar Pradesh, India
e-mail: sdhir@amity.edu
D. Kumar
e-mail: deepakgupta_du@rediffmail.com
V. B. Singh
University of Delhi, New Delhi, India
e-mail: singh_vb@rediffmail.com
© Springer Nature Singapore Pte Ltd. 2019 647
M. N. Hoda et al. (eds.), Software Engineering, Advances in Intelligent Systems
and Computing 731, https://doi.org/10.1007/978-981-10-8848-3_62
648 S. Dhir et al.
Different methods such as scrum, XP, FDD, DSDM, lean are coming with agile
development. Agile methodology overcomes the problems of the traditional
development. Agile approach is driven by self-organizing teams that coordinate
their tasks on their own. This enables the employee innovate, team work and
increases the productivity and quality of the product. While different steps have
been taken to understand the barriers occurred in software teams, and all these
issues may be addressed by taking into the concerns of involved customer and
stakeholders. In fact, due to various roles and their expectations, the software team
may have perceptual differences on issues such as delivery time of software, risk
factors, success and failure of the project [2]. Due to lack of knowledge and
understanding about the project, it may directly affect the performance and delivery
of the project. In the agile team, knowledge sharing is a challenging task to enlarge
user’s motivation to share their knowledge with the developers and other team
members; to handle the diversity of social identities and cross-functionally involved
in the software development [3].
2 Literature Review
The software development process depends upon the interest of the project team
and the other resources. One of the major problems with software development is
causing during the change of project development technology and business envi-
ronment [4]. During the survey of agile projects in government and private sectors
in Brazil and UK, five sociological (such as experience of team members, domain
expertise and specialization) and five projects (team size, estimation of project,
delivery of the product, etc.) related factors were added [5].
Tore Dyba signifies a major departure from traditional approaches to agile
software development by identifying the 1996 studies, out of which 36 were the
empirical studies. The studies fell into four groups: introduction and adoption,
human and social factors, perceptions on agile methods, and comparative studies
[6]. A framework was proposed a conceptual framework on different factors and
represents the link between various predictor variables and agile development
success [7].
Mahanti [8] mentioned six critical factors in agile methodology, during the
survey conducted in four projects. He discussed several factors such as an office
environment, team mind-set, mind-set toward documentation. Harnsen [9] men-
tioned different factors focusing on culture, stability, time variations, technology,
stability, etc. Different factors and barriers of agile implementation were considered
those significantly affecting the agile methods [10].
Success and Failure Factors that Impact on Project … 649
3 Different Factors in the Agile Development
In an agile environment, different technical (requirement volatility, requirement
quality, technical dependency, non-functional requirement, etc.) and non-technical
factors (communication, documentation, domain, hardware, customer involvement,
etc.) are continually impacting in the agile environment. Figure 1 represents the
various success and failure factors that are impacting on software development.
A. Success Factors:
There are certain success attributes which determine the overall observation of a
particular project such as delivering a quality product and customer satisfaction,
on-time delivery of product with the planned estimations. Ambler contends that
in software development, the expert people are critical to make sure the success
of the project while adopting the agile approaches [11]. In 2013 comparing
software development paradigms, Ambler found the highest success rate of
agile projects [12].
B. Failure Factors:
Boehm and Turner focus on management challenges in implementing the agile
projects [13], whereas in another research Nerur et al. focused on management,
people, technical, and process dimensions in agile projects [14].
Fig. 1 Factors impacting the agile development
650 S. Dhir et al.
4 Strategies for Mitigating Factors Affecting Agile
and Distributed Agile Development
There are different success factors on agile such as make training programs on
higher priority, keep agile practices consistent, encourage team members, scale the
infrastructure. Table 1 represents the different success, failure, and mitigation fac-
tors in agile software development.
Table 1 Success, failure, and mitigation factors based on different dimensions
Dimension Success factor Failure factor Mitigation factors
Organization 1. Cooperative 1. Organizational culture 1. Provide a better
culture become socially narrow technology infrastructure
2. Facilities for agile 2. Communication to support
work environment problem in distributed communication in a
environment distributed environment
3. Inaccurate estimations
at initial stages
Team 1. Motivation 1. Lack of knowledge 1. Experienced people
between the team and experience issue should be as a part of a
members 2. Lack of management team
2. Teamwork reduces competence 2. There should be a
the work pressure and 3. Understanding issue proper time management
increases the between team members and synchronize the
knowledge 4. A bad relationship working hours
3. Strong relationship with customers 3. Team collaboration
between the team 4. Build trust
members,
stakeholders, and
customer
Process 1. Team follow 1. Customer’s absence 1. The process should be
agile-oriented 2. Vague planning and clearly defined
configuration, project project scope 2. Iterations should be
management process 3. Project roles are net implemented in fixed
2. Good clearly defined time-boxed
communication with 4. Requirement 3. Work standards
daily meetings prioritization becomes should be defined
3. Understanding the the major issue during properly
level of the project the development of the
and its new issues process in a small team
(continued)
Success and Failure Factors that Impact on Project … 651
Table 1 (continued)
Dimension Success factor Failure factor Mitigation factors
Technical 1. Following simple 1. Lack of resources 1. Availability of
design 2. Lack of the usage of resources on time
2. Continuous de new techniques and tools 2. Trainings or
faery of the software 3. Practices of incorrect short-term courses
3. Proper integration agile approach should be provided for
testing the awareness of new
4. The team is technologies and tools
dynamic in nature
and adapts new
techniques according
to demand
Documentation 1. Accurate amount Less documentation may Documentation should
of documentation create a problem for new be in appropriate form so
2. Less members the new users can be
documentation easily familiar with the
avoids extra effort project and its
development
5 Case Study
Case study is based on the software project implementation during the training
period of the students. Projects were divided into 5 teams and each team had 10
team members. Projects were based on the application development and Web site
development for the customer. Projects were related to social implications such as
safe cab car facility, e-voting system, women security app. Table 2 represents the
team configuration, where different development processes of each team are men-
tioned, with the total number of team members involved in the development of
project. The project implementation was implemented by waterfall, spiral, and the
scrum (agile methodology). In the spiral implementation, each builds focused
especially on risk analysis, including the requirement gathering and evaluation
part. Scrum principles were followed by the team members for the requirement
elicitation, daily meetings, and frequent changes. Daily meetings were conducted in
a classroom and there was a customer interaction between the team members in a
laboratory after every sprint cycle.
Table 2 Team configuration Development process Team members
Spiral 10
Scrum 10
Scrum 10
Waterfall 10
Scrum 8
652 S. Dhir et al.
Fig. 2 User stories of project 1
6 Findings
Initially, user stories were created by the customers and team members. Figure 2
shows the different user stories of project 1 by the team 1. Like project 1, other team
members also build their different user stories as per customer and project
requirement.
But due to the lack of experience, different responsibilities and environmental
restrictions, it is really tough for students to follow this process. An analysis report
was maintained on the success and failure factors of the projects. This analysis was
done with the help of questionnaire and personal interaction with the team mem-
bers. On the basis of a questionnaire, different factors were analyzed as:
1. Organization: Student had other responsibilities also and do not have a proper
work environment; hence, there was a delay in delivery of the project.
2. Team: Team had a good relationship and trust between them, but as the
beginner’s team had a lack of experience about the methodology. Hence, they
faced problems at the initial stage of development.
3. Process: Team followed the agile development process in which there was a
proper group discussion between team members and also set sprint meetings
with the customer. Project planning and roles were clearly defined. Team roles
were rotated for the constant change in task prioritization to maintain the quality
of the final product.
4. Technical: The team continuously tested the whole process with the strict TDD
process. Students faced the technical issues such as new technical tool and
techniques. Hence, free tools were used for the development of the project.
5. Documentation: As documentation, students maintain a daily diary on the
regular basis, and at the end, report was generated.
6.1 Outcomes
During the analysis, it was observed that there were differences in non-functional
activities with the different methods. Analysis was based on the efficiency,
Success and Failure Factors that Impact on Project … 653
Table 3 Factors based on different methodology
Methods Efficiency Accuracy Time Risk Quality
management analysis product
Waterfall L M L L L
Spiral M L M H M
Scrum H M H H H
accuracy, time management, risk analysis, and product quality of the project. In the
waterfall approach, team members approached to the customer after the delivery of
the project. Development with waterfall approach had low efficiency, medium
accuracy; low time management and product quality were less without the cus-
tomer’s involvement during the development. In the spiral method, students
focused on risk analysis and quality of product. Projects had low accuracy in the
spiral model as they created a prototype and did risk analysis. In the scrum
methodology, results were better than waterfall and spiral model, where efficiency,
product quality, and time management are high.
In Table 3, there is different parametric value that had major impact on success
and failure of projects by using different approaches. Waterfall, spiral, and scrum
methodology were used on different projects and all had different impacts. In
Table 3, L represents the less/low value, M represents the medium value, and
H represents the high value of different projects based on the usage of various
approaches. Figure 3 represents the graphical representation of different factors
using different methods, according to which agile methodologies have high per-
formance rate and good quality of product on fixed time.
Fig. 3 Graphical
representation of different
factors using different
methods
654 S. Dhir et al.
7 Conclusion
Paper is concluded with the success, failure, and mitigation factors in agile
development projects. A case study was conducted based on the development of
five projects. Projects were developed by the students as five different teams. It was
observed that projects were developed using different development approaches such
as waterfall, spiral, and agile approach and examined that there were differences in
non-functional activities with different methods. Analysis was based on the effi-
ciency, accuracy, time management, risk analysis, and product quality of the pro-
ject. Finally, outcome was that in the scrum methodology results were better than
waterfall and spiral model, where efficiency, product quality, and time management
are high.
References
1. http://www.agilealliance.org/the-alliance/the-agile-manifesto/
2. Huisman, M., Iivari, J.: Deployment of systems development methodologies: perceptual
congruence between IS managers and systems developers. Inf. Manag. 43, 29–49 (2006)
3. Conboy, K., Coyle, S., Wang, X., Pikkarainen, M.: People over process: key people
challenges in agile development. IEEE Softw. 99, 47–57 (2010)
4. Williams, L.A., Cockburn, A.: Guest editors’ introduction: agile software development: it’s
about feedback and change. IEEE Comput. 36(6), 39–43 (2003)
5. Danillo, S., Bassi, D., Bravo, M., Goldman, A., Kon, F.: Agile projects: an imperial study
(2006)
6. Byab, T., Dingsoyr, T.: Empirical studies of agile software development: a systematic review.
Inf. Softw. Technol. (2008)
7. Misra, S.C., Kumar, V., Kumar, U.: Success factors of agile development method. J. Syst.
Softw. (2009)
8. Mahanti, A.: Challenges in enterprise adoption of agile methods—a survey. J. Comput. Inf.
Technol. 197–206 (2006)
9. Harnsen, F., Brand, M.V.D., Hillergerberg, J., Mehnet, N.A.: Agile methods for offshore
information systems development. First Information Systems Workshop on Global Sourcing:
Knowledge and Innovation (2007)
10. Asnawi, A.L., Gravell, A.M., Wills, G.B.: An empirical study—understanding factors and
barriers for implementing agile methods in Malaysia. IDoESE (2010)
11. Ambler, S.: Agile adoption strategies: survey results. http://www.ambysoft.com (2011)
12. Ambler, S.: Agile adoption strategies: survey results. http://www.ambysoft.com (2013)
13. Boehm, B., Turner, R.: Management challenges to implement agile processes in traditional
development organizations. IEEE Softw. 22(5), 30–39 (2005)
14. Nerur, S., Mahapatra, R.K., Mangalaraj, G.: Challenges of migrating to agile methodologies.
Commun. ACM 48(5), 72–78 (2005)