Published on

IJERA (International journal of Engineering Research and Applications) is International online, ... peer reviewed journal. For more detail or submit your article, please visit www.ijera.com

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352 Factors Influencing Agile Practices: A Survey Akhil Kumar1, Bindu Goel2 1 (University School of Information Technology, GGS Indraprastha University, New Delhi-110075) 2 (University School of Information Technology, GGS Indraprastha University, New Delhi-110075)ABSTRACT In the last decade agile methodologies Development methodology. Access to externalhave gained widespread popularity among the resources, requirements capturing and organizationsoftware community. Software practitioners size all significantly impact the implementation of anacross the globe are adopting agile methodologies agile software development methodology. In theto meet the challenges involved with turbulent present work we moved a step ahead and tried to findbusiness environment where requirements the effects of other factors like access level tochanges with time. Agile as name means stakeholders to fix a problem, elicitation techniquesflexibility is a group of various methodologies and strategies used to capture requirements, effect ofemphasizing the practice of Whole team, Short experience of professional in the field and impact ofreleases, Measures, Customer collaboration, team size on successful implementation of an agileTest-driven development, Pair programming and methodology. In the present work we also tried toRefactoring. find the effect of agile methodologies on customer In this paper we have presented the satisfaction and the effect on productivity of businessresults of a survey conducted online to show the of an organization.various factors considered by softwarepractitioners while adopting agile methodologies 2. AGILE SOFTWARE DEVELOPMENTand the effects of practicing agile on their METHODOLOGIEScustomers and business. On the basis of the Agile SDM is a group of variousresults of questions asked in the survey we have methodologies used to produce highly potentialdrawn six hypotheses namely agile method software in scheduled time meeting customer’spopular among practitioners, Impact of team requirements. Agile software developmentsize, Impact of requirement gathering for agile methodologies share several features including themethodologies, Effective requirement capturing practice of Whole team, Short releases, Measures,method, Time taken to resolve a problem and Customer collaboration, Test-driven development,Impact of small response time with customer on Pair programming, Prototyping, Refactoring (tosoftware development. The results of this improve the quality of code) and Lesserresearch work clearly indicates adopting agile documentation to produce quality software.have increased the productivity of anorganization while increasing customer 2.1 EXTREME PROGRAMMING (XP)satisfaction. Extreme programming is a software development methodology based on the set ofKeywords: Agile, Crystal, DSDM, Extreme practices mainly pair programming, customerProgramming, FDD, Scrum collocation with development team stressing customer satisfaction [1].1. INTRODUCTION Agile software development is an emerging Extreme programming is most populardiscipline of software engineering [6] constituting of among developers because of its simpler rules ofset of principles initially advocated by a group of Iterative planning, Daily communication and Teamseventeen software practitioners and now practiced empowerment. Extreme Programming can improveby many software professionals worldwide. Agile can programming quality while shortening deliverybe defined [6] as: An iterative and incremental schedules.software development process performed in a highlycollaborative manner within an effective framework 2.2 CRYSTAL CLEARthat produces a high quality software meeting the Crystal Clear is an example of agile or lightchanging requirements of its stakeholders in weight methodology. Crystal clear states peoplescheduled time. effects more a software development than processes In the previous studies [2] it is shown that and tools [4]. Crystal clear is a collection ofthere are many factors under management control methodologies named as toolkit elements whichthat impact the implementation of an agile software 1347 | P a g e
  2. 2. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352organizations combine to make a suitable 6. Practice use to elicit requirements?methodology to their project. 7. Technique used to capture requirements?In Crystal clear number of elements used to create a 8. Professional position in the industry?methodology increases and decreases with the size of 9. Work experience in the industry?project, larger the size of project more the elements. 10. Employee Size: Work force in the organization? 11. Business sector organization deals in?2.3 FEATURE DRIVEN DEVELOPMENT (FDD) 12. Effect of agile practices on satisfaction of Feature-driven development is an iterative business stakeholders and work produced?and incremental software development process. FDD On the basis of results of survey we haveblends a number of industry-recognized best drawn six hypotheses showing factors which effectpractices into a cohesive whole. These practices are the successful implementation of agile methodologiesall driven from a client-valued functionality (feature) and meet the requirements mentioned in the agileperspective. Its main purpose is to deliver tangible, manifesto.working software repeatedly in a timely manner. H1: Popular adopted agile methodology: Extreme2.4 DYNAMIC SYSTEMS DEVELOPMENT Programming is adopted by the most.METHODS (DSDM) Dynamic Systems Development Methods H2: Impact of team size on agile methodologies:(DSDM) is an agile software development Agile methodologies are chosen by small team’sframework. Dynamic systems development method more than large teams.sought to fix cost, quality and time at the outset anduses the prioritization scope into H3: Impact of requirement gathering for agilemusts, shoulds, coulds and wont haves to adjust the SDM: The requirement gathering is most effectiveproject deliverable to meet the stated time constraint with One-on-One interactions with stakeholders.[5]. DSDM is used for developing software and non-IT solutions. H4: Effective requirement gathering method: Agilist’s uses methods like user stories, Free form2.5 SCRUM diagrams to capture requirements which can be Scrum is iterative and incremental altered at any stage of development process.framework within which practitioners can employvarious processes and techniques to develop a H5: Agile practitioners use to resolve problemscomplex product. immediately: Agile practices gives higher accessCore to Scrum is Sprint, a time-boxed effort usually level to stakeholders.two weeks to a month. In sprint work is divided insub parts and is to be completed in the assigned time H6: Impact of small response time with customerlimit. Once a sprint is defined no changes can be on software development: Adopting agile hasmade to it. A sprint begins with planning meeting and increased customer satisfaction and work produced.ends with demonstrable release.Scrum is a methodology that can be used on small 4. RESULTSand large projects. Scrum focuses more on There were only 103 respondents out ofmanagement of the development process than coding 1793 invitations having response rate of 5.77%.techniques [3]. Although the response rate is very low and cannot present the clear picture of larger population but can3. RESEARCH ANALYSIS help us to draw conclusions on the successful To make a sustainable progress in this area adoption and implementation of agile methodologies.we have created a questionnaire and conducted an In this section now we are presenting the results ofonline survey by sending survey links to 1793 various questions asked in the survey and draw thesoftware practitioners across the globe including conclusions of hypotheses created.mailing list of agile alliance. There were 12 questionsasked reflecting requirements of agile methodologies 4.1 H1: POPULAR ADOPTED AGILEand the factors considered during adoption and METHODOLOGYimplementation of agile methodologies. This hypothesis is drawn from the results ofQuestions asked in the survey: question: Which agile methodology your1. Which agile methodology preferably is adopted organization has adopted. by your organization?2. Project type working on?3. Term used to refer stakeholders?4. Access level to stakeholders?5. Elicitation technique used by developers to learn about stakeholders requirements? 1348 | P a g e
  3. 3. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352 Popular Agile Employee Size Methodology (501- 1000) (101- 2% Others 500) 1000+ 9% 10% 9% Extreme Scrum Program 13% ming (51- (XP) 100) (1-10) 37% 5% 48% Agile (11-50) Unified 26% Feature Process Driven (AUP) Develop DSDM 20% ment Agile Crystal 5% (FDD) MSF 0% Process 14% 2% Figure 2 Impact of Team Size The results of this question clearly indicateFigure 1 Popular Agile Methodology that agile methodologies are mostly adopted by From the results as shown in the chart given organizations having small workforce or employeesabove we can clearly deduce that Extreme i.e. from employee size of 1-10 and 11-50 in theProgramming is most popular and adopted by organization.practitioners at most. Next to XP is Agile Unified The organization’s having employee size of 501-Process than Feature driven development and so on 1000 is very less to adoption of agile methodologiesand Crystal Process is used by only 2% of 103 i.e. only 2% of 103.respondents. There were no reply for Agile MSF andhence it is not used by any of respondent practitioner. 4.3 H3: IMPACT OF REQUIREMENTNine respondents replied as ATDD, RUP and Lean as GATHERING FOR AGILE SDMthe adopted agile methodology as others. This hypothesis is drawn from the results of two4.2 H2: IMPACT OF TEAM SIZE ON AGILE questions:METHODOLOGIES 1. Elicitation technique used by developers toThis hypothesis is drawn from the results of question: learn about stakeholders requirements.Employee Size: Work force in the organization. 2. Practice use to elicit requirements. Elicitation followed by Response developers Count Stakeholders representative 40 Written specifications 24 Direct interaction with 29 stakeholders The team creates their own 10 requirements 1349 | P a g e
  4. 4. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352Figure 3 Elicitation technique used by developersto learn about stakeholders requirements Requirement Practice followed to elicit Response Gathering Method requirements Count High level Requirements 30 Business envisioning Program diagram Detailed Requirements 20 Others s envisioning 6% Business 12% User interface Prototyping 15 Rules Whiteboard sketching 09 6% User Paper based modeling 05 Stories CASE modeling 02 14% Demonstration of working 10 Class Use software Diagram Cases s JIT model storming 09 11% 17% Structured modeling 03 Data One-on-one interviews with 30 Mind Models stakeholders Maps 14% 3% Free- Figure 4 Practice followed to elicit requirements Form diagram From the results of these two questions wecan clearly deduce results to our hypothesis H3: sImpact of requirement gathering for agile SDM. 17% The results in the survey shows majority ofdevelopers directly interact with stakeholder’srepresentative or stakeholder to elicit requirements. Figure 5 Effective requirement gathering methodIn very few cases the development team createsrequirements of their own. Previously software practitioners use to This direct communication between create Mind maps and Business rules and Use casesdevelopers and stakeholders can lead to increase of to capture requirements for a project. From the resultshigh understanding of requirements and delivery of a of this question we can clearly deduce thatmore potential product. practitioners following agile methodologies have migrated from traditional requirement capturing4.4 H4: EFFECTIVE REQUIREMENT methods and create Business Program diagrams, UserGATHERING METHOD Stories, Free Form diagram, Data models and class This hypothesis drawn on the basis of diagrams which can be altered at any stage ofquestion: Technique used to capture requirements. development with the changing requirements of stakeholders. Respondents who replied as others mentioned Shell statement, UI Prototype, Screen Specifications as their requirement capturing technique. 4.5 H5: AGILE PRACTITIONERS USE TO RESOLVE PROBLEMS IMMEDIATELY Fixing problem is of very big concern in the software industry. Resolving of a problem is completely dependent on the access level to the customer or stakeholder. Sometimes a problem is fixed within a minute and sometimes it takes a lot of 1350 | P a g e
  5. 5. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352time which directly increases the cost of project anddelays the scheduled delivery of product. How agile methodologies have improved customer satisfaction andWe have drawn this hypothesis on the basis of work producedquestion: Access level to stakeholders. Much Higher Access level to stakeholders 7% Within a Only month during No 0% require Change ments 34% gatherin Immedia g Phase te 3% Somewh 16% at With in a Higher 59% Somewh day at Lower 48% Within a week 0% Much 22% Lower 0% Within Figure 7 How agile methodologies have improved customer satisfaction and work produced two Out of 103 respondents only 59 replied to weeks this question. Although the response count for this 11% question is very low and cannot present the vote of larger population but can help us to find howFigure 6 Access level to stakeholders to fix a prevalent is agile methodologies adopting.problem Majority of respondents replied that adopting agile The results clearly shows that majority of methodologies have increased their customeragile practitioners contact their stakeholders to fix a satisfaction and work produced. None of theproblem within a day. 16% of agile practitioners respondent replied as adopting agile has lowered theircontact their stakeholders immediately. work produced and customer satisfaction.None of the agile practitioners take long time of a The table given below gives clear picture of themonth to fix a problem. respondents. Effect Response4.6 H6: IMPACT OF SMALL RESPONSE TIME CountWITH CUSTOMER ON SOFTWARE Much Lower 00DEVELOPMENT Somewhat Lower 00 The idea behind presenting agile No Change 20methodologies to software community was to Somewhat Higher 35increase the communication between developers and Much Higher 04stakeholders and to deliver a potential product in Figure 8 Response count to effect of agilescheduled time with the changing requirements of methodologies on customer satisfaction and workstakeholders. produced In this section we have presented the resultof how prevalent is agile methodologies adoption to 5. CONCLUSIONSboth customers and the development organization. The aim of this research is to find howThe hypothesis drawn in this section is created by the popular and prevalent are agile practices .The studyresults of question: Effect of agile practices on also aims at analyzing the effect of the various factorssatisfaction of business stakeholders and work which influence the agilist’s while practicing agileproduced. methodologies. The results to this research clearly indicates agile practitioners have higher level of communication and access level to their stakeholders 1351 | P a g e
  6. 6. Akhil Kumar, Bindu Goel / International Journal of Engineering Research and Applications (IJERA ISSN: 2248-9622 www.ijera.com Vol. 2, Issue4, July-august 2012, pp.1347-1352to resolve a problem; agilist’s have migrated fromtraditional methods of requirement capturing andpractice newer methods like user stories, Free formdiagrams to meet challenges involved with changingrequirements of stakeholders. The result to thisresearch also shows that small teams practice agilemethodologies more than large team size. Extremeprogramming is found to be most popularly practicedagile methodologies. At the end we only found that adopting agilemethodologies have increased the work produced andthe customer satisfaction from organizationspracticing agile methodologies.6. ACKNOWLEDGEMENTS A Huge thanks to Mr. Scott W. Ambler forproviding his permission to conduct work on thisarea.REFERENCESJournal Papers: [1] B. Boehm & R. Turner, Management challenges to implementing agile processes in traditional development organizations, IEEE Software, 22(5), 2005, 30-39.Proceedings Papers: [2] J. A. Livermore, Factors that impact implementing an Agile Software Development Methodology, Proc. IEEE SoutheastCon, 2007, 82-86. [3] C. Mann & F. Maurer, A case study on the impact of scrum on overtime and customer satisfaction, Proc. IEEE Proceedings of the Agile development conference, Denver, CO, 2005, 70-79.Books: [4] J. Highsmith, agile software development ecosystems (Addison-Wesley, Boston, MA, 2002). [5] Dai Clegg, Richard Barker, case method fast-track: a rad approach (Addison- Wesley, 1994). [6] Scott W. Ambler, agile modeling- effective practices for extreme programming and unified process (John Wiley & Sons, 2002). 1352 | P a g e