A STUDY OF CRITICAL SUCCESS FACTORS FOR ADAPTION OF AGILE METHODOLOGY

Document Sample
A STUDY OF CRITICAL SUCCESS FACTORS FOR ADAPTION OF AGILE METHODOLOGY Powered By Docstoc
					International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
 INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING &
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME
                                TECHNOLOGY (IJCET)

ISSN 0976 – 6367(Print)
ISSN 0976 – 6375(Online)                                                     IJCET
Volume 4, Issue 4, July-August (2013), pp. 539-546
© IAEME: www.iaeme.com/ijcet.asp
Journal Impact Factor (2013): 6.1302 (Calculated by GISI)                  ©IAEME
www.jifactor.com




 A STUDY OF CRITICAL SUCCESS FACTORS FOR ADAPTION OF AGILE
                       METHODOLOGY

                  Ms. Deepali Shahane                         Dr. Pallavi Jamsandekar
           Asst. Professor. IMED BVU, Pune, India          Professor, IMRDA Sangli, India


ABSTRACT

         This paper elaborates the relevance of agile methodology in context with Indian IT industry.
The survey was conducted to find out usage of traditional methods and agile methods in today’s
internet era in fast developing world. Today many products are developed by forming teams of
members from different geographical areas across the globe in collaborative environment, using
advanced tools & techniques.
         To meet the flexible requirement or due to changing environments, software developers are
using agile methodologies utilizing iterative development prototyping and templates.
Factors that include, management involvement, readiness of members, size of the organization were
found to make significant impact on using and implementing agile software methodology. This
survey conducted in IT firms irrespective of software development methodology that they are using.
         A study follows survey research pattern where questionnaire was distributed through web in
English language and over 200 people from IT industry which are based in India and outside were
contacted. However after persuasion, software developers were interviewed by conducting
contextual enquiry techniques such as internet, WebEx calls. Only 40 responses were received.
Contextual enquiry technique was used to understand the real life scenario and challenges in the
daily life of software developers.

KEYWORDS: Agile practices, Agile readiness, Agile software development methodology
(ASDM), Agile tools, organizational culture, Three pillar framework of agile practitioners.

1. INTRODUCTION

       In the last two decades software development methodology is in the mode for accepting a
change that is called AGILE software development methodology.
       The process of accepting new methods is beneficial but still there are some hesitations in
acceptance. It has been shown by software developers that agile methods are really beneficial in
terms of quality of the software [1].

                                                539
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME

        Different agile software development methods are there such as XP, scrum, Crystal method
& Feature Driven Development. All these methods work differently from traditional methods and are
ready to accept changes with rapidly changing environment [2]. Among those methods extreme
programming (XP) and Scrum are most popular agile methods. These methods follow iterative
development, continuous code integration and ability to handle changing business requirements [2].
        There are three different factors that affect the agile development with distributed team across
the globe. Those factors are geographic location, time differences and maturity of team member [3].
Conducting daily stand up meetings is a challenge with geographically dispersed teams. However it
can be addressed by conferences to some extent. Time differences matters when team members are
not available at a particular time. This is a main challenge when it is assumed that every member is
experienced and independently functioning professional which is not a reality.
        Every method has its pros and cons still there is no systematic method available to guide
selection of appropriate method based on type of project [4]. Identification techniques and factors
will help to select the process specific to project.

II. AGILE SOFTWARE DEVELOPMENT METHODOLOGIES (ASDM)

       ASDM are used to give the quality software in a shorter time period. It is asset of new
approaches for developing software in order to accept changing business requirements, as the
requirements and design are not expected to freeze during product development process. [5]

2.1 EXTREME PROGRAMMING (XP)
       The Extreme programming method is one of the widely used methods. It consists of
Planning, managing, designing, coding, testing. Extreme Programming improves a software project
in five essential ways; communication, simplicity, feedback, respect, and courage. Extreme
Programmers communicate with their customers and other team members continuously. Design is
kept simple and clean. The feedback is taken by testing their software starting from day one. The
system is delivered to the customers as early as possible and changes are implemented as per
suggestion. [6]

2.2 SCRUM
        Scrum life cycles consist of four phases: planning, staging, developing and release. The
planning phase focuses on the vision, expectations about project and funding is also secured. Staging
phase consists of identification of more requirements and these requirements are prioritized for first
release. In the development phase a system ready for release is being implemented in a series of 30-
day iterations. When documentation and training for the product is being developed then the Release
phase is ON. Scrum has fixed length of iterations i.e. 30 days, so that customer gets release of the
product at every month. Schwabber (2003, page 134), [7]. The iteration in Scrum is known as Sprint,
this sprint is of 30 days. Every day new daily scrum meeting starts. In that meeting team members
give details about the time requirement to complete the given task. A sprint backlog helps to define
time requirement of the task in the current iteration. If the tasks take longer time to complete then
they are moved to next iteration. According to Koch– “Scrum is defined not so much, by its process
as by the practices that comprise it” [8].

2.3 CRYSTAL
        Crystal is a "Family" of methodologies that share a common "Genetic Pool" Crystal was
invented by Alistair Cockburn after many years of research and experience by studying successful
projects and what made them successful. At its core it is an agile methodology and follows the


                                                  540
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME

principles of frequent delivery, iterations, user involvement, responding to change. However it does
so, in a very different way than in other methodologies [9].

2.4 FEATURE DRIVEN DEVELOPMENT (FDD)
        Feature Driven Development (FDD) is an iterative software development methodology
intended for use by large teams working on a project using object-oriented technology. This
methodology includes some prescription about which tasks should be done and by which roles
should be done. Mostly it is not considered a true agile methodology.FDD is good for organizations
that are transitioning from a phase-based approach to an iterative approach but are not comfortable
getting rid of all task and role assignments.

2.5 TRADITIONAL SOFTWARE DEVELOPMENT METHODOLOGY
       Traditional method such as waterfall model (SDLC) was developed in the early years of
software development or before internet, XML era. When the business requirements are fixed then
these methods are suitable. They require more documentation in order to LOCK the requirements.
When the requirements are changing it is very difficult with traditional methods, so agile methods
were used. From the previous research done it was found that the agile methods are not regularly
used in IT industry. Still it needs some motivation to use these methods. Researchers were trying to
find out the factors which are affecting the use of agile methods.

Advantages in using the traditional methods
      Progress of the system is measurable
      Implementation has more priority than the functionality
      More focus on documentation
      Requirements are not changing frequently

Disadvantages in using the traditional methods
      time required to complete the project is more
      mistakes cannot be recovered easily and its costly
      changing customer requirements cannot be accommodated
This may force developers to apply agile method.

Advantages of ASDM [10]
 Some of the advantages of the Agile methodology are as follows:
• Short cycles: Deliver working code to the business users in regular, short iterations (two to four
  weeks), ensuring quick feedback and quality assurance with improvised status reporting.
• Test-first development: Building test cases and scripts as per requirements, before starting actual
  development.
• Continuous integration: Rebuilding and automatically testing the code base on regular basis after
  every incremental change, to address issues immediately and support distributed parallel
  development.
• Refactoring: Improving upon the design of existing code and existing capability to support new
  requirements.
• Empowered team: Allowing project team member to “own” the project and work directly with
  business representatives to prioritize & identify key requirements to resolve issues.
• Reduction of project risk: Identify and Reduce the risk of late delivery and identify risk by
  having close collaboration with the business, and manage mitigation at the start of the project.
  Recently explore ways to address offshore development issues, people, process, technology


                                                541
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME

 (technical, management and cultural). Also manage the risk by identifying the skill sets with
 possibility of having modular & scalable process to execute scalable distributed teams.

III. OBJECTIVES

       Even though agile method is advantageous over traditional methods, it has found that
percentage of using Agile Development Methodology is very less. This study aims to evaluate the
gap between adoptions of agile methodologies in Indian IT industry. It aims to find out the factors,
which influence software development methodology.
1. To identify the success factors for agile software development projects.
2. To identify the actual critical success factors affecting the adoption of agile software
   development.
3. To find the level of importance of those critical success factors relative to each other?
4. To find suitability of agile methods for different types of organizations.
5. To find factors more affecting agility of different types of organizations.

IV. SURVEY
        Lot of work is done on Agile Development but very limited work that focuses on existing
situation and its usage in ASIA (India) is published through literature. The study is mainly done in
USA, UK or Europe.
        When the new method such as Agile Development has to be used, we have to find out the
factors, barriers related to adoption of these methods. In these cases developers’ views and
organization’s views needs to be considered. To find out the usage of software development
methodology, may be traditional or agile, it depends on people and practices, culture of the
organization and also region that they are following.
        The study was conducted to discover perception of agile methods by developers but it does
not consider cultural conflicts and alliance, comparison and adoption of these methods. [11]
Different types of studies focusing on agility, critical success factors for adoption of agile
methodology are referred [9,12,13,14,15] There are some organizations in India which are trying to
focus and train their human resources on adoption of agile methodologies.
        Chandrasheker and Kemeswarashashtry have done research, finding out the successful
implementation of ASMD [17] Kalpna and Jagdish has given focus on adopting agile in distributed
development with the India as a base, it is a case study of Wipro technologies[17], they have
discussed a validated model to make a smooth transition from a collocated to a distributed scenario
in agile projects. The lessons learnt and best practices that they have gained in implementing model
have also been discussed

4.1 Earlier surveys conducted
     In 2008 Vijaya sarathy and Turk have done survey worldwide [18] to find out the interest in
     adoption of ASDM. They have received 98 responses in 2010. Empirical study was done by
     ASnaw, Gravell and wills [19] in Malyasia.
     Abbas, Gravell and Wills in 2010 [20] has conducted survey in order to check success rate and
     its relation with one another. Where they have used technique of Ambler who has done survey
     in 2007 [21]
     In 2008 Schindler has done survey in Austrian IT Industry to find out the adoption of ASDM
     [22] Forrester’s research states that [23], North American & European companies were using
     agile approaches and others are planning to adopt them in the future. This study includes the
     small size companies who are developing the advance products. These are recent adaptors.


                                                542
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME

     The Standish Group - CHAOS Report 2009 [24,25] states that 24% of projects cancelled before
     completion,    44% finished late, and rest were over budget, or incomplete. “…cancelled
     projects cost American organizations over $145 billion in 2008.” This says that there is a need
     to use appropriate method to develop software products. There may be many reasons for this.
     Some of them are Time, Insufficient Budget, Never Reviewing Project Progress, Inadequate
     Testing, and Lack of Quality Assurance. These problems or issues are to be discussed and
     solved for success of project [26].

V. METHOD

       The qualitative semi-structured and spontaneous, informal interviews, literature review,
quantitative web based questionnaire were used to define and collect necessary data.

VI. RESEARCH METHODOLOGY

        A survey instrument was developed with Google docs to collect the information on adoption
of ASDM’s. This survey first discussed with IT experts working in the field over broader spectrum
of development - marketing and project management - business analysis etc. Other factor such as no.
of years experience was considered besides the size of organization. Typical product development
time lines were also mapped.
        Factors important for ASMD’s were confirmed with these experts and were open for over 3
months on web.
        Agile methods can help in producing customer requirements and at the same time focus on
delivery of quality software. [27]
        In this survey, we focus on factors viz; time, cost, quality, functionality and agile readiness
which are affecting the adoption of agile methods and success of the project.

VII. SAMPLE SIZE

        A study was done using a questionnaire through web in English language and over 200
people from IT industry which are based in India and outside were contacted. However after
persuasion, software developers were interviewed by conducting contextual enquiry techniques such
as internet, WebEx calls. Only 40 responses were received. Contextual enquiry technique was used
to understand the real life scenarios and challenges in the daily life of software development team
members.

VIII. FINDINGS

        Responses received through the questionnaire are analyzed to find importance given to
different factors and got following results.

1. These IT industries are working in the various domains such as E-commerce, Manufacturing,
   Retail, Technology, Healthcare, Telecom, Hospitality, logistics etc. People working in
   technology and banking / finance contribute about 50 % of sample size. Very few from logistics
   and utility sectors have responded to this survey.




                                                 543
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME




                                           FIGURE 1

2. Among the respondents more than 40% are using traditional methods. 35 % respondents are
   using ASDM and rest of companies are practicing both methods. This means that people still
   believe in the traditional methodology than the agile methodology.
3. About 60 %of respondents use same methodology for different projects.




                                           FIGURE 2

4. Out of 35% of total respondents who adopt ASDM, 75% prefer to use scrum method. While Pair
   programming and XP is the second preferred method.




                                           FIGURE 3

5. People preferred to use Agile methodology because of several factors of which; time required
   for completion is more significant while factor such as complexity of project and project cost
   are less affective. Other factors for choosing Agile development method are identified those are
   less defects, uncertain requirements, and flexibility.
6. Quality and functionality of the software has got the highest importance.
7. Customer readiness has more importance over team readiness in ASDM.




                                               544
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME




                                              FIGURE 4

CONCLUSION

        The result of this survey throws light on the fact that still people are not ready to accept agile
software development method in large scale. Mainly traditional method of software development is
used by the developers as compared to agile methods in most of the projects. Awareness about agile
methodologies and its benefits need to be conveyed. Resource development thru on the job training
and information about best practices should be given to development teams so that they can apply
suitable methodology depending upon the type of the project.
        Functionality and quality are the most important factors according to the findings of the
survey, as compared to other factors such as time, cost, and motivation. Customer readiness is more
significant as compared to the team involvement. Further investigation of these factors affecting use
of agile methods is required.
Relation between the extracted factors need to be correlated [28]

FUTURE SCOPE: It leads to further research about finding the adoption rate of agile methodology
in software development in Indian scenario. The factors which are critical for success of ASDM are
to be verified statistically. Other factors which are important and difficult to quantify are need to be
validated such as appropriateness of project, senior management as well as clients’ commitment and
availability of resources and infrastructure. Although response of candidates & openness to disclose
/discuss about project respecting confidentiality of projects and cultural aspect is a challenge.


REFERENCES

Journal papers
  [2] Boehm, B., & Turner, R. (2003). Using risk to balance agile and plan-driven methods.
       Computer, pp 36(6), 57-66.
  [3] Ness Technologies ( NSDQ_ NSTC- white paper -) (2010) Ness software product lab. Agile
       Software Best Practices: Agile and Globally Distributed teams Can Coexist June 2010
       http://www.ness.com/sp, 2010
  [11] Daniel, D. Ronald, "Management Information Crisis," Harvard Business Review,” Sept.-Oct.,
       1961.
  [16] Rockart, John F., Christine V. Bullen. "A Primer on Critical Success Factors" published in The
       Rise of Managerial Computing: The Best of the Center for Information Systems Research,
       edited with (Homewood, IL: Dow Jones-Irwin, 1981) or McGraw-Hill School Education
       Group (1986)
  [18] Leo Vijaysarathy, Dan Turk, Agile Software Developemnt: A survey of Early Adopters,
       Journal of Information Technology Management, ISSN #1042-1319
                                                   545
International Journal of Computer Engineering and Technology (IJCET), ISSN 0976-
6367(Print), ISSN 0976 – 6375(Online) Volume 4, Issue 4, July-August (2013), © IAEME

 [19] Ani Liza Asnawi , Andrew m Gravell, Gary B Wills (2010) An Empirical study –
      Understanding factors and Barriers for implementing Agile methods in Malaysia, - IDoESE-
      10 sept 2010 Bolzano Bozen Italy
 [22] Jeffrey A. Livermore, Walsh College , (2007) Factors that Impact Implementing an Agile
      Software Development Methodology, IEEE 2007
 [23] Gil Broza, Industrial Logic (Canada) Toronto, ON, Canada (2005)Early Community Building:
      A Critical Success Factor for XP Projects - - IEEE 2005
 [27] Subhas C. Misra, Vinod Kumar, and Uma Kumar Carleton University, Ottawa, Canada
      (2009) Success factors of Agile development method- Journal of Systems and Software 2009
 [28] Noura Abbas Andrew Gravell, Gary Wills, southampton UK, Using Factor Analysis to
      Generate Clusters of agile Practises –978-0-7695-4125-9/10 Agile, 2010.5 – IEEE

Books
 [1] Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2002). Agile software development
      methods. Oulu, Finland: VTT Publications.
 [5] Boehm, B., & Turner, R. (2005). Management challenges to implement agile processes in
      traditional development organizations. IEEE Software, 22(5), 30-39.
 [7] Schwaber, K., & Beedle, M. (2003). Agile Software Development with Scrum. Upper Saddle
      River, NJ:Prentice Hall pp 134.
 [8] Koch, A.S. (2005). Agile software development: Evaluating the methods for your
      organizations. Northwood, MA: Artech House
 [12] Cockburn, A. (2002). Agile software development. Boston, MA: Addison-Wesley.
 [13] Cooper, D.R., & Schindler, P.S.(2003). Business research methods. New York, NY:McGraw-
      Hill/Irwin.
 [14] Highsmith, J. (2002). Agile software development ecosystems. Boston, MA:Addison-Wesley.

Thesis
 [15] http://www.coursework4you.co.uk/essays-and-dissertations/critical-success-factors.php

Proceeding papers
 [17] Kalpana Sureshchandra, Jagadish Shrinivasavadhani, Adopting Agile in Distributed
      Development, GSE '08 Proceedings of the 2008 IEEE International Conference on Global
      Software Engineering
 [20] Noura Abbas, Andrew M Gravell, Gary B Wills (2010) The Impact of Organization, Project
      and Governance Variables on Software Quality and Project Success by 2010 Agile
      conference

Web Links
 [6] http://www.extremeprogramming.org/
 [9] http://www.infoq.com/presentations/fdd-crystal-agile-overview
 [10] www.thoughtworks.com/tei
 [21] Adoption survey 2007 http://www.ambysoft.com/scottAmbler.html
 [24] Standish Group (2001). Extreme Chaos. 2009, from
      http://www.standishgroup.com/sample_research/PDFpages/extremechaos.pdf
 [25] The Forrester Wave™: Agile, Development Management Tools, Q2 2010, by Dave West and
      Jeffrey S. Hammond for Application Development & Delivery Professionals
 [26] http://www.projectsmart.co.uk/why-software-projects-fail.html



                                               546

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:0
posted:9/23/2013
language:Unknown
pages:8