Content uploaded by Trailokya Ojha
Author content
All content in this area was uploaded by Trailokya Ojha on Jan 02, 2024
Content may be subject to copyright.
49
ISSN NO. 2091-1742
SCITECH
NEPAL
Journal of Scientific and Technical Studies
Nepal Engineering College, Pokhara University
Review paper DOI:10.3126/scitech.v17i1.60467
Critical Success Factors of Agile Software Development - A
Systematic Literature Review
Trailokya Raj Ojha*
Department of Computer Science and Engineering, Nepal Engineering College, Nepal
*Corresponding Author: trailokyaro@nec.edu.np
Received: April 20, 2023
Accepted: October 10, 2023
Abstract
Agile software development has gained more popularity due to its capacity to manage constantly changing
needs and generate high-quality software in less time. However, several success factors are required for an
agile project to succeed. Agile development technique, delivery strategy, project team training, customer
and staff involvement, management commitment, organizational culture, communication, and project
management process are critical success factors (CSF) discovered in this study. This study's goal is to
locate and evaluate these crucial elements of the agile software development methodology's success. A
systematic literature review was conducted to study and analyze the previous studies to identify the CSFs
in agile development. The findings of the literature review indicate that technical, people, organizational,
and process factors are crucial for the success of agile projects. Each CSF falls into any one of these
factors. Overall, this study's findings emphasize the significance of CSFs in the agile software
development process. Organizations and software development teams can enhance their agile processes
and raise the likelihood of project success by being aware of these aspects. Teams may create high-quality
software in less time while simultaneously fulfilling the goals and expectations of the customer by
concentrating on different success factors.
Keywords: agile; critical success factors; project management; project success; software; software
development
Introduction
Software has currently become one of the most important and necessary aspects in this contemporary
world due to the growing demand for information technology. In a time when augmented reality, the
Internet of Things, and other cutting-edge technologies are being used all over the globe, software
development enterprises are striving for optimized tools and methods. The rapid development of software
development tools and methods has benefited all kinds of software development enterprises; worldwide
software development businesses are still looking for specialized answers to their problems so they can
respond to changes rapidly and, at the same time, maximize return on investment. The success of the
project depends on meeting its deliverables within a certain budget while maintaining its quality, scope,
and deadline. The most crucial tool for achieving project deliverables in any company is project
management. Applying knowledge, abilities, tools, and strategies improves control over material and
human resources (Dyba & Dingsoyr 2009). By boosting productivity, and dependability, and offering
customers higher-quality products, it helps to strengthen customer relations. Agile, a project management
style, has recently been adopted by the majority of software-based businesses for effective and efficient
project development (Dyba & Dingsoyr 2009). The core concepts of Agile include quick deployment of
solutions, early and frequent delivery of customer-valued products, resource utilization, quick problem
detection, focusing on clients, effective communication and collaboration, adapting to changes, and
50
adaptability. The primary goal of this study is to review the critical success factors of the agile software
development process.
To conduct the study, a systematic literature review (SLR) technique was used. The SLR is a research
technique used to thoroughly discover, assess, and summarize the body of literature that is currently
accessible on a specific subject or research question. The procedure entails a thorough screening of the
identified articles for relevance and quality after a systematic search of appropriate databases and other
sources. According to Kitchenham (2004), the objective of a systematic literature review is to provide a
rigorous, transparent, and replicable summary of the current state of knowledge on a particular topic or
research question. It can be used to identify gaps in the existing literature and guide further research in a
particular field.
The agile development approaches, delivery strategy, project team training, customer and staff
involvement, organizational culture, project management process, management commitment, and
communication are the success criteria found by this process. In addition, this study introduces a
taxonomy that classifies all these critical success factors (CSF) into technical factors, people factors,
organizational factors, and process factors.
In this study following research questions are answered:
RQ1: What are the success factors in agile software development (ASD)?
RQ2: What are the most critical success factors that need to be taken care of during the implementation of
ASD?
RQ3: How the identified critical success factors can be mapped into a robust framework?
The answers to these questions will be useful in determining the importance of CSFs for a successful
software development process improvement and may help software companies that use agile
methodologies to focus on addressing them to get a higher return on investment and customer satisfaction
in less time.
Agile software development methodologies
Agile software development emphasizes adaptability, customer interaction, and continual improvement. It
is a collaborative, iterative approach to software development. It is built on the Agile Manifesto, a set of
guidelines that puts people and interactions ahead of processes and working software, customer
collaboration, and adapting to change. Several characteristics of agile software development have been
found in the literature. According to Dyba and Dingsoyr (2009), the fundamental characteristics of agile
development include communication and collaboration, accepting conflicts, and supporting creativity and
innovation. Managers serve only as facilitators, and the design and execution processes are iterative and
inseparable. According to a survey conducted by Vijayasarathy and Turk (2008), using agile development
will make it possible to meet customer expectations and produce high-quality software. Other advantages
of implementing agile development include higher levels of flexibility, reduced expenses for
development, more frequent delivery of functional software, and more reusable code. Agile development
might be considered a method to deal with the complexity of the various parts of software development,
which exists in a relatively complicated area (Pelrine 2011).
Agile principles state that value addition should take precedence over plan adherence. The value that
consumers receive from receiving functional software frequently and quickly can be increased (Dingsøyr
et al. 2012). With agile development, the software development team is expected to deliver early and then
get feedback quickly, allowing for easier modifications, higher quality, and ongoing testing. According to
Highsmith and Cockburn (2001), two of the most difficult issues facing business and technology today are
addressed by agile practices: first, the need for an inventive approach to software development and,
second, the requirement for a work environment that is dynamic and responsive to frequent changes.
According to Cockburn and Highsmith (2001), the agile philosophy prioritizes the importance of people
over traditional software development methods. Since a skilled team is essential, the value of each team
member increases as the development process becomes more agile.
51
Critical Success Factors
The Critical Success Factor (CSF) approach to identifying and evaluating an organization's performance
was first designed in 1979 and it was later improved and gained widespread acceptance (Bullen & Rockart
1981, Rockart & Crescenzi 1984). Bullen & Rockart (1981) define the CSF as the small number of areas
where strong competitive performance will ensure the individual, department, or organization. CSFs are a
select few crucial areas where "things must go right" for the business to succeed and for the manager to
reach their objectives. Critical success factors are areas of importance where everything needs to be done
correctly through the company process to thrive the accomplishment and to meet the objectives of the
manager (Nasehi 2013). According to different studies by Reel (1999) and Bytheway (1999), CSFs in
software projects are related to basic project management approaches or the marriage of software
engineering and business strategy. According to a different case study, CSFs in software projects include
a variety of elements, including the estimating and validation phase of the development life cycle,
executive management, project management, resource management, and strategic-level planning
(Boghossian 2002).
When Walid and Oya proposed a new framework to determine crucial success and failure elements in
1996, the hunt for the success and failure criteria in the adoption of agile methodology began. They have
proposed a new framework for fundamental variables and their impact on their effective and efficient
contributions to project success. They used empirical research to gauge the viability of applying the
suggested design. The survey's findings show that although the importance of these factors varies by
industry, project managers' managerial abilities, team members' commitment and technical expertise,
project attributes, and environmental factors can be just as important as organizational factors (Belassi and
Tukel 1996). Pikkarainen et al. (2012) studied the case of successful implementation of agile software
development projects in three different Finnish software companies. The study highlighted the
significance of management's belief in and support for agile. The study also discovered that firms
implementing agile methodologies needed to strengthen the development team and modify agile practices
to meet organizational requirements.
It is required to look at the relationships among the different agile success criteria before conducting a
factor analysis. We reviewed the studies on agile software development's CSFs (Aldahmash et al. 2017).
As a result, the CSFs for agile software projects were narrowed down to eight success factors - delivery
strategy, team capability and training, customer involvement, agile development approaches,
communication, organizational culture, project management process, and top management support
(Aldahmash et al. 2017).
Methodology
Systematic Literature Review
In this study, we have selected the systematic literature review technique to investigate the critical success
factors in agile software development methodology. The literature shows that numerous studies have
looked at the success elements of implementing agile methods in an organization. A systematic literature
review (SLR) is a kind of secondary research study used to evaluate existing primary literature and studies
relevant to the research question in a systematic and organized manner. This SLR is done for the
evaluation of all the relevant data containing the success factors of agile software development. The
research questions concerned with the study are listed in the introduction section. According to
Kitchenham (2004), planning the review, carrying out the review, and reporting the review are the three
primary stages of SLR.
Planning of Mapping
In the planning phase, the authors must first identify and clarify the various components of the study
objective to ensure that research questions have not already been addressed in earlier reviews. Therefore,
defining the research questions mentioned in the introduction section was an important phase in this
52
procedure. The search is done by using academic databases such as IEEE Explorer, ACM digital library,
Science Direct, Research Gate, Springer, Google Scholar, and other sources.
Search String
The search query used for the extraction of relevant literature was:
{Critical success factors} AND ({Agile} OR {ASD} OR {Agile Software Development})
Primary study selection
The papers have been selected by exploring their title, abstracts, and conclusion. The research papers
having unclear objectives and ambiguity were not selected.
Inclusion criteria
To include any research paper in the study, it should satisfy the following criteria:
i. It must be published in a Journal or at a Conference.
ii. The paper must be written in the English language and available as a full-text article.
iii. The primary study must focus on critical success factors in agile software
development.
Exclusion criteria
The research articles are excluded if they fall into any of the following categories:
i. Articles that do not describe success factors in agile software development.
ii. The articles are written in any other language than English.
iii. All the studies are not available electronically.
iv. Non-peer-reviewed articles.
v. Unpublished research papers and thesis.
Database
The search is done by using academic databases such as IEEE Explorer, ACM digital library, Science
Direct, Research Gate, Springer, Google Scholar, and other sources. The papers published after 2000 are
considered in this study. Past research papers (Aldahmash 2017), (Van Kelle et al. 2015), (Livermore
2007), (Iqbal et al. 2019), (Wan et al. 2011), (Kalenda 2018), (Chow and Cao 2008), (Mishra et al. 2009),
(Sheffield and Lemétayer 2013), (Stankovic 2013), (Hoda et al. 2017), (Stelzmann 2010), (Wan and
Wang 2010), and (da Silva and dos Santos 2015) were selected for the review purpose in this study. These
studies have demonstrated several agile development success factors. Details of the selected papers and
the filtration of these papers are shown in Table 1.
Table 1: Filtration of Papers
Database Name
Number of
papers
Title
filtration
Abstract
Filtration
Selected
papers
Reference
IEEE Explorer
844
9
6
4
[17][18][19][20]
ACM Digital Library
141
12
5
1
[21]
Science Direct
238
5
2
4
[22][23][24][25]
Research Gate
136
23
10
2
[16][26]
Springer
132
14
6
1
[27]
Google Scholar
981
22
7
2
[28][29]
Total
2472
85
36
14
53
Findings
Even in situations with high levels of process maturity, the agile software development practice has a
detrimental effect on project performance. In this study, the CSFs are selected if such factors are validated
in multiple studies. Different agile software development critical success factors discovered in different
previous studies are presented in Table 2.
Table 2: Agile software development CSFs
Dimensions
Success Factor
Articles
Technical
Factor
Agile development technique
[16][22][27][29]
Delivery strategy
[16][18][22][23][24][28]
People Factor
Project team training
[20][29][23][27][28]
Customer and staff involvement
[22][23][26][27] [29]
Management commitment
[17][18][19][21]
Organizational Factor
Organizational Culture
[20][23][24][28][29]
Communication
[20][17][27][29]
Process Factor
Project management process
[22][24][25][29]
The conceptual framework for the category-wise distribution of CSFs in ASD found from existing studies
is explained below and demonstrated in Figure 1.
Technical Factors
From the study and analysis of previous studies related to critical success factors in agile software
development methodologies, it is found that agile development technique and delivery strategy were
found as major CSFs under technical factors.
Agile development technique
The project members must be conversant with the chosen method or technique before using an agile
method or technique. All members of the agile development project team must understand the concepts,
ideas, and terminology utilized by the chosen agile technique or practice (Chow and Cao 2008) and
(Stelzmann et al. 2010).
Delivery Strategy
Two things are crucial for the successful delivery of an agile development project Chow and Cao (2008).
First and foremost, you must frequently produce functional software. Second, you ought to present the
most crucial characteristics first. Each member of the team should be aware of their role in the delivery
strategy and how to carry it out.
54
Figure 1: Category-wise distribution of CSFs in Agile software development
People Factor
People are the most important success factor in any project. Proper utilization of human resources leads
the project toward success. In the case of agile methodology, people are the major factor for the successful
completion of the project. From the study and analysis of different studies, project team training, customer
and staff involvement, and management commitments were found as CSFs under the people factor.
Project team training
Motivated individuals should be the foundation of agile development. Any project needs the appropriate
people to succeed, but agile projects require more of them since they rely so heavily on the competence of
their team members. Regular training programs for the project team are crucial CSF for agile software
development since they educate team members about new regulations, trends, tools, and methodologies. It
has consistently benefited the organization and process improvement productivity. Training agile team
members can raise the company's profile, enhance team dynamics and creative problem-solving skills, and
provide them with the ability to manage agile projects. During the agile development project, a focus on
training and ongoing learning should be made (Misha et al. 2009). According to Livermore Livermore
(2007), obtaining training on the adopted agile methods or practices is significantly correlated with
successful agile adoption.
Customer and Staff Involvement
In an agile development strategy, the active involvement of staff and customers is necessary for the
successful completion of the project. It is an important CSF because it measures how much the employees
trust, acquire, use, believe in, own, and adhere to the project. The involvement of customers is crucial for
producing frequent releases of functional software and accepting changes in requirements. Customers will
be happier with agile development if they are more involved (Misha et al. 2009). It is thought that
customer cooperation and dedication affect how successfully agile software is implemented (Hoda et al.
2017).
Management Commitment
55
It is the most critical success element for the implementation of process improvement. Management
commitment in a company refers to the degree of backing, funding, realization, and involvement of higher
and lower-level management in the software process improvement initiative. A study conducted by
Livermore (2007) found that the success of agile projects is strongly linked to the level of support from
top management. Therefore, the involvement and support of management play a critical role in the
success of agile projects.
Organizational Factor
Organizational factors play a vital role in the successful implementation of agile methodology.
Organizational culture and communication are considered the CSFs for agile under organizational factors.
Organizational culture
Organizational culture is considered one of the important success factors. Agile software development can
be impacted by a variety of organizational aspects or elements, which are referred to as organizational
culture. A dynamic culture is required to react to the changes that occur during the agile development
process, and it is a crucial component of the shift to agility (Misha et al. 2009). Three organizational
culture facets that can affect agile development have been identified by Wan and Wang (2010): the culture
of working overtime, the culture of mistrust inside the organization, and the absence of a collaborative
culture.
Communication
Communication is important in every part of life and is equally important in software development. It is
even more important in agile software development as agile need frequent communication with customer
and co-workers. In agile projects, there is a lot of involvement from customers, frequent feedback,
dynamic changes, and self-organizing teams (Aldahmash 2017). This means that effective communication
is necessary between project members and customers. A study conducted by Stelzmann et al. (2010)
emphasized the importance of direct communication in agile development. They suggested that direct
communication can help to improve the communication process in agile projects.
Process Factor
It is important to identify a clear process for software development and train the staff for the introduced
process. From different studies, it is found that the project management process is CSF for the agile
methodology that falls under the process factor.
Project management process
The project management process is one of the critical success factors for the successful implementation of
agile methodology. It's crucial to have a well-thought-out and size-appropriate project strategy when
starting an agile development project. The success of the project and the standard of the software can be
enhanced by selecting the appropriate project management methodology Chow and Cao (2008). The
project factor is a reliable gauge of software development agility (Sheffield & Lemétayer 2013). The
project management procedure should give the project team more control and maximize the abilities of
the development team. Due to the numerous adjustments and iterations involved with agile projects, a
flexible approach to project management is required.
Answer to the research questions
RQ1: The research question RQ1 is answered after identifying the four different factors such as technical,
people, organizational, and process factors. This is illustrated in Figure 1 and demonstrated in sections 3.1
to 3.4.
RQ2: The research question RQ2 is answered after defining eight different CSFs in agile software
development. Such CSFs are agile development technique, delivery strategy, project team training,
customer and staff involvement, management commitment, organizational culture, communication, and
project management process. These CSFs are defined in sections 3.1 to 3.4 and illustrated in Figure 1.
56
RQ3: The RQ3 is answered by categorizing different CSFs into four different factors as illustrated in
Figure 1.
Conclusion
Agile software development is a flexible, cooperative, and iterative methodology that enables teams to
swiftly adapt to changing needs, enhance customer communication, find and fix issues early on, and
promote a culture of continuous improvement. The objective of this study was to review the previous
research works and to identify the critical success factors for agile software development methodology.
After reviewing the previous studies, four different factors namely technical, people, organizational, and
process factors with eight critical success factors for successful implementation of agile software
development were introduced. Such eight CSFs are agile development technique, delivery strategy,
project team training, customer and staff involvement, management commitment, organizational culture,
communication, and project management process. By taking into account the crucial success factors in
ASD, software companies can work regarding an approach that will highlight those significant process
areas within the company that need to be enhanced to provide more value, which will ultimately lead to an
increased return on investment and profitability. The result of this study might help software companies'
successful implementation of agile methodology which might help the organization advance and succeed.
References
Dyba, T. and Dingsoyr, T. 2009. What do we know about agile software development?. IEEE Software,
26(5), 6-9.
Kitchenham, B. 2004. Procedures for performing systematic reviews. Keele, UK, Keele University,
33(2004), 1-26.
Vijayasarathy, L. and Turk, D. 2008. Agile software development: A survey of early adopters. Journal of
Information Technology Management, 19(2), 1-8.
Pelrine, J. 2011. On Understanding Software Agility: A Social Complexity Point Of View. Emergence:
Complexity & Organization, 13.
Dingsøyr, T., Nerur, S., Balijepally, V., and Moe, N. B. 2012. A decade of agile methodologies: Towards
explaining agile software development. Journal of systems and software, 85(6), 1213-1221.
Highsmith, J. and Cockburn, A. 2001. Agile software development: The business of innovation.
Computer, 34(9), 120-127.
Cockburn, A. and Highsmith, J. 2001. Agile software development, the people factor. Computer, 34(11),
131-133.
Bullen, C. V., and Rockart, J. F. 1981. A primer on critical success factors.
Rockart, J. F. and Crescenzi, A. D. 1984. Engaging top management in information technology. Sloan
Management Review (pre-1986), 25(4), 3.
Nasehi, A. 2013. A Quantitative Study on Critical Success Factors in Agile Software Development
Projects; Case Study IT Company
Reel, J. S. 1999. Critical success factors in software projects. IEEE software, 16(3), 18-23.
Bytheway, A. J. 1999. Guest editor's introduction: Successful software projects and how to achieve them.
IEEE software, 16(3), 15.
Boghossian, Z. J. 2002. An investigation into the critical success factors of software development process,
time, and quality. Pepperdine University.
Belassi, W., and Tukel, O. I. 1996. A new framework for determining critical success/failure factors in
projects. International Journal of Project Management, 14(3), 141-151.
57
Pikkarainen, M., Salo, O., Kuusela, R. and Abrahamsson, P. 2012. Strengths and barriers behind the
successful agile deployment—insights from the three software-intensive companies in Finland. Empirical
Software Engineering, 17(6), 675–702.
Aldahmash, A., Gravell, A. M. and Howard, Y. 2017. A review of the critical success factors of agile
software development systems, software, and services process improvement. Proceedings of the 24th
European Conference, EuroSPI 2017.
Van Kelle, E., Visser, J., Plaat, A. and van der Wijst, P. 2015, May. An empirical study into social success
factors for agile software development. In 2015 IEEE/ACM 8th International Workshop on Cooperative
and Human Aspects of Software Engineering (pp. 77-80). IEEE.
Livermore, J. A. 2007, March. Factors that impact implementing an agile software development
methodology. In Proceedings 2007 IEEE SoutheastCon (pp. 82-86). IEEE.
Iqbal, J., Omar, M., and Yasin, A. 2019. An empirical analysis of the effect of agile teams on software
productivity. In 2019 2nd International Conference on Computing, Mathematics and Engineering
Technologies (iCoMET) (pp. 1-8). IEEE.
Wan, J., Luo, W. and Wan, X. 2011, May. Case study on Critical Success Factors of agile software
process improvement. In 2011 International Conference on Business Management and Electronic
Information (Vol. 1, pp. 628-631). IEEE.
Kalenda, M., Hyna, P. and Rossi, B. 2018. Scaling agile in large organizations: Practices, challenges, and
success factors. Journal of Software: Evolution and Process, 30(10), e1954.
Chow, T. and Cao, D. B. 2008. A survey study of critical success factors in agile software projects.
Journal of systems and software, 81(6), 961-971.
Misra, S. C., Kumar, V. and Kumar, U. 2009. Identifying some important success factors in adopting agile
software development practices. Journal of systems and software, 82(11), 1869-1890.
Sheffield, J. and Lemétayer, J. 2013. Factors associated with the software development agility of
successful projects. International Journal of Project Management, 31(3), 459-472.
Stankovic, D., Nikolic, V., Djordjevic, M. and Cao, D. B. 2013. A survey study of critical success factors
in agile software projects in former Yugoslavia IT companies. Journal of Systems and Software, 86(6),
1663-1678.
Hoda, R., Salleh, N., Grundy, J. and Tee, H. M. 2017. Systematic literature reviews in agile software
development: A tertiary study. Information and software technology, 85, 60-70.
Stelzmann, E., Kreiner, C., Spork, G., Messnarz, R. and Koenig, F. 2010. Agility meets systems
engineering: a catalog of success factors from industry practice. In Systems, Software and Services
Process Improvement: 17th European Conference, EuroSPI 2010, Grenoble, France, September 1-3, 2010.
Proceedings 17 (pp. 245-256). Springer Berlin Heidelberg.
Wan, J. and Wang, R. 2010. Empirical research on critical success factors of agile software process
improvement. Journal of Software Engineering and Applications, 3(12), 1131.
da Silva, K. M. B. and dos Santos, S. C. 2015, October. Critical factors in agile software projects
according to people, process, and technology perspective. In 2015 6th Brazilian Workshop on Agile
Methods (WBMA) (pp. 48-54). IEEE.