S. Bhalerao et al /International Journal on Computer Science and Engineering Vol.1(3), 2009, 222-226 222 Generalizing Agile Software Development Life Cycle S. Bhalerao 1 , D. Puntambekar 2 Master of Computer Applications Acropolis Institute of Technology and research Indore, India 1 Bhalerao.shilpa@gmail.com, 2 d_puntamberkar@rediffmail.com M.Ingle School of computer Science and Information Technology Devi Ahilya University Indore, India maya_ingle@rediffmail.com Abstract— In last decade, various agile methods have been introduced and used by software industry. It has been observed that many practitioners are using hybrid of agile methods and traditional methods. The knowledge of agile software development process about the theoretical grounds, applicability in large development settings and connections to establish software engineering disciplines remain mostly in dark. It has been reported that it is difficult for average manager to implement agile method in the organization. Further, every agile method has its own development cycle that brings technological, managerial and environmental changes in organization. A proper roadmap of agile software development in the form of agile software development life cycle can be developed to address the aforesaid issues of agile software development process. Thus, there is strong need of agile software development life cycle that clearly defines the phases included in any agile method and also describes the artifacts of each phase. This generalization of agile software development life cycle provides the guideline for average developers about usability, suitability, applicability of agile methods. Keywords-Agile software Development; extreme Programming; Adaptive software developmen; Scrum; Agile Method;story. I. INTRODUCTION Agile Methods (AMs) have been adopted by many IT organizations and have generated many quality products of software industry. These methods have gained higher edge on traditional software development by accommodating frequently changing requirements in high tight schedules [1]. AMs have promised higher customer satisfaction, low defect rates, higher usability and a solution to higher changing requirements [2]. AMs include mainly; Extreme Programming (XP), Scrum, Feature Driven Development (FDD), Crystal methodology, Dynamic System Driven Development (DSDM), Adaptive Software Development (ASD), Open Source (OS), Agile Modeling (AM), and Pragmatic Programming (PP) [3]. It has been observed that all aforesaid methods are based on agile manifesto and have their own software development life cycle for improving productivity and quality of software [4]. It has been noticed that applicability of these methods is mainly in small software with low life critical systems. Many opponents have claimed that agile software development is set of ad-hoc practices and does not have sound principles behind it. Further, it has been stated by many software researchers that it is hard for average software developer/ manager to understand and manage entire agile approach to development [5]. Attempts have been made to reconcile the AMs with plan driven methods [6]. Still, there is lack of a generalized Agile Software Development Life Cycle (ASDLC) for AMs that include complete agile principles and practices as whole. Therefore, in this paper, we have proposed ASDLC and also discuss the documents or artifacts required to produce in particular phase. It is highly beneficial to identify the activities and practices associated with particular phase of software development. Knowledge of ASDLC is also useful to reduce the ratio of experienced member and inexperienced members in team. This will be highly useful for generating trust in industry about Agile Software Development Process (ASDP). In this paper, firstly, we will discuss ASDP and research in this area with their pros and cons in Section 2. Secondly, we will propose the generalized ASDLC in Section 3. Section 3 also includes the activities and document produced in various phases. Lastly, conclusion and future scope is drawn in ASDLC in Section 4. II. BACKGROUND Many software development methods/ models have been proposed since the evolution of software. Some development models had shown remarkable success in stable and predictable environment. At the same time, these models have proven to be one of the major causes of failure in disruptive software development. In internet and mobile technology, frequent changes in requirements, technology and staff have been observed [7]. Thus, software development process has become more cumbersome in such environment. Traditional Software Development Methods (TSDMs) are proven to be unsuccessful and software success rate of TSDMs is less than 40% in such environments [8]. A new way of software development i.e. agile software development is outcome of the frustration of many practitioners using TSDMs. In last decade, a number of AMs have been evolved based on Agile Manifesto established in 2001[www.agilemanifesto.org]. It has been observed that agile principles and practices ensure the customer satisfaction by involving the customer in all the phases of software development. It emphasizes mainly; accommodating last minute changes, delivering working software, individual interactions etc. ISSN : 0975-3397