A Survey of Agile Software Methodologies: based upon published research papers
The ‘New Economy’ of the 90s made businesses more dynamic. The Information technology needs of these dynamic businesses were no longer static. Developers found traditional software methodologies less effective as they now faced frequently changing requirements. This increased their interest in agile methods, which were effective at managing changing requirements. Furthermore, agile methods could improve quality and reduce time simultaneously. Developers now not only have to make a choice between traditional and agile methodologies, they also need to select which agile methodology is best suited to address their requirements. This paper will help solve this problem by providing a survey of agile methodologies. This survey will help readers to decide which agile methodology can best serve their needs. The paper conducted the survey using a literature review of existing research. The survey found philosophical similarities amongst agile methods. It concludes that the combination of agile-methodologies and traditional-methodologies will continue to grow. INTRODUCTIONTHE purpose of software development methodologies is to effectively reuse the existing knowledge of software development ,. Traditional software development methodologies use process driven models. Developers followed specific procedures and plans to develop software. Traditional methodologies like the ‘water fall methodology’ assumed that requirements could be determined accurately before development of the software. These milestone-based approaches increased the time required to develop software. In the ‘new economy’ of 90s, time-to-market was a significant competitive advantage ,,. Developers were asked to produce quality software in less time and had to work without clearly defined requirements. These new challenges caused developers to look towards agile software methodologies. Agile methodologies can reduce the time required to develop software and improve the software quality at the same time. Agile methods focus on people, their communication and working software. Agile methodologies focus less on processes and documentation. Agile methodologies have their own set of challenges . The first challenge is to select the agile methodology best suited for a particular project. The wide range of choices offers developers flexibility however the developer needs good understanding of these methodologies to make a well informed decision. This paper provides a survey of agile software development methodologies to assist developers in making the correct decision. Some comparisons are already available in the literature , this paper additionally includes background knowledge and history of agile methodology. Instead of focusing on process details this paper explains the philosophy behind the processes. Section II of this paper explains the history of agile methodologies. Section III provides descriptions of various agile development methodologies. Based on the survey section IV draws various conclusions. Section V relates employability skills with agile methodologies. HistorySignificance of its HistoryThere is no universally acceptable definition of agile software methodologies. Understanding the evolution of agile software development methodologies can help understand the nature of agile development methods. History of software methodologiesThe success rate in software development was low in 1960s. The lessons learned from one project were hard to use in other projects. Developers felt the need to create a systematic approach to develop software to replicate the successes in software development. These systematic approaches for software development were called software development methodologies. System Development life cycle is the oldest software methodology which was developed in 1960. The waterfall methodology was first formally described in 1970. These...
Please join StudyMode to read the full document