
https://doi.org/10.48009/2_iis_2008_188-195 ISSUES AND CHALLENGES OF AGILE SOFTWARE DEVELOPMENT WITH SCRUM Juyun Cho, Colorado State University-Pueblo, [email protected] ABSTRACT (ASDMs) including Scrum, eXtreme Programming (XP), Crystal, and Adaptive Software Development Agile software development methods have been (ASD), have been developed and evolved since developed and evolved since early 1990s. Due to the 1990s to embrace, rather than reject, high rates of short development life cycle through an iterative and change [24]. Such new approaches focus on iterative incremental process, the agile methods have been and incremental development, customer used widely in business sectors where requirements collaboration, and frequent delivery [18] through a are relatively unstable. This paper explains the light and fast development life cycle. Although many differences between traditional software development positive benefits of agile approaches including methods and agile software development methods, shorter development cycle, higher customer and introduces the characteristics of one of the satisfaction, lower bug rate, and quicker adaptation to popular agile methods, Scrum. Finally, the paper changing business requirements have been reported illustrates issues and challenges discovered through [3], there have been few empirical field studies on an in-depth case study in a company which has issues and challenges of ASDMs. Therefore, the aim employed Scrum for many projects. The insights of this research paper was to discover the issues and presented in the paper can be used in organizations challenges of one particular agile method in practice, that are in the process of agile software development Scrum, through an in-depth case study in a mid-sized, using Scrum. web-based development projects for government. Keywords: Scrum methodology, traditional software The remainder of this paper discusses the differences development, agile software development, empirical between traditional methods and agile methods, and process. then presents a brief history, framework, and empirical process of the Scrum methodology. Finally, INTRODUCTION the paper discusses issues and challenges of the Scrum methodology discovered through an in-depth Traditional Software Development Methods case study. (TSDMs) including waterfall and spiral models, utilize extensive planning, codified process, rigorous TRADITIONAL SOFTWARE DEVELOPMENT reuse, heavy documentation and big design up front METHODS (TSDMs) [2]. Due to these characteristics, TSDMs are often called heavyweight development methods. The One of well-known traditional software development TSDMs are still widely used in industry because of methods is the waterfall model. The waterfall model their straightforward, methodical, and structured utilizes a structured progression between defined nature [6], as well as their predictability, stability, phases: planning, analysis, design, implementation, and high assurance [3]. and maintenance. The planning phase which occupies typically about 15% of total Systems Development Though many TSDMs have been developed since the Life Cycle (SDLC) is the fundamental process to waterfall model to provide significant productivity identify the scope of the new system, understand why improvements, none of them are free from major a system should be built, and how the project team problems including blown budgets, missed schedules, will go about building it through technical, and flawed products [3, 4], and they have failed to economical, and organizational feasibility analysis. provide dramatic improvements in productivity, in The analysis phase, which occupies about 15% of reliability, and in simplicity [4]. Due to constant SDLC, analyzes the current system, its problems, and changes in the technology and business then identifies ways to design the new system environments, it is a challenge for TSDMs to create a through requirements gathering. The design phase complete set of requirements up front. (35%) decides how the system will operate in terms of hardware, software, and network infrastructure. As a remedy for the shortcomings of TSDMs, a The implementation phase (30%) is the actual number of Agile Software Development Methods programming. The maintenance phase (5%) focuses VOL IX, No. 2, 2008 188 Issues in Information Systems Issues and Challenges of Agile Software Development with Scrum on go-live, training, installation, support plan, percentage of projects (16.2%) that used traditional documentation, and debugging [5]. Figure 1 and methods were completed on-time and on-budget with table 1 below show a typical waterfall lifecycle and all features and functions specified. However, 52.7% deliverables respectively. As we can see in the figure of the projects were completed either over-budget, and the table, each phase must be accomplished over the time estimate and/or offering less features before the following phase can begin and each phase and functions; 31.1% of projects were canceled at cannot go back to the previous phase like water in the some point during the development cycle [17] (see waterfall cannot climb up once it reaches to lower Figure 2). position. Planning (15%) Analysis (15%) Design (35%) Implementation (30%) Maintenance (5%) Figure 2 Project resolution (Source: The Standish Group [17]) To overcome these shortcomings, several Figure 1 Waterfall model lifecycle practitioners developed agile software development methods including Scrum, eXtreme Programming (XP), Crystal, and Adaptive Software Development Phases Deliverables (ASD). The next section explains the characteristics Planning Phase Planning Specifications and principles of agile software development Analysis Phase Analysis Specifications methods. Design Phase Design Specifications AGILE SOFTWARE DEVELOPMENT METHODS (ASDMs) Implementation Phase Completed Product Table 1 Waterfall model deliverables The manifesto for agile software development which was created by seventeen practitioners in 2001 Over the past four decades, traditional waterfall-style (http://www.agilemanifesto.org), reveals which items software development methods have been widely are considered valuable by ASDMs. As shown in used for large-scale projects in the software industry Table 2, ASDMs concentrate more on 1) individuals and in the government sector due to their and interactions than processes and tools, 2) working predictability, stability, and high assurance. As software than comprehensive documentation, 3) mentioned earlier, however, TSDMs have a number customer collaboration than contract negotiation, and of key shortcomings, including slow adaptation to 4) responding to change than following a plan. constantly changing business requirements, and a tendency to be over budget and behind schedule with More Valuable Items Less Valuable Items fewer features and functions than specified [2, 6, 16, Individuals and Processes and tools 19, 21]. Boehm and Phillip [22], and Jones [23] both interactions reported that during their project development Working software Comprehesive experience, requirements often changed by 25% or documentation more. Williams and Cockburn [24] also mentioned Customer Contract negotiation that one of problems of TSDMs is the inability to collaboration respond to change that often determines the success Responding to change Following a plan or failure of a software product. Table 2 Manifesto for agile software development One interesting research study conducted by the Standish Group of 365 respondents and regarding The twelve principles behind the agile manifesto also 8,380 projects representing companies across major present the characteristics of ASDMs industry segments, shows that only a small (http://www.agilemanifesto.org/principles.html). As VOL IX, No. 2, 2008 189 Issues in Information Systems Issues and Challenges of Agile Software Development with Scrum shown in Table 3, ASDMs 1) satisfy the customer There are many different characteristics between through early and continuous delivery of software, 2) ASDMs and TSDMs. Boehm [2], for example, embrace changing requirements, even in late reports nine agile and heavyweight discriminators development cycle, 3) deliver working software (See Table 4). He believes the primary objective of frequently, 4) work daily with business people, 5) ASDMs is on rapid value whereas the primary facilitate motivated people, provide them with good objective of TSDMs is on high assurance. He also environment and support, and trust them, 6) assist believes that ASDMs should be used for small teams face-to-face conversation within a development team, and projects. If the size of the team and projects are 7) use working software as a primary measure of large he suggests TSDMs. progress, 8) promote sustainable development and keep sponsors, developers, and users moving at a Project Agile Heavyweight constant pace, 9) pay attention to technical excellence Characteristics discriminator Discriminator and good design, 10) maintain simplicity, 11) promote self-organizing teams, and 12) foster Primary Rapid Value High inspections and adaptations. objective Assurance # Principles Requirements Largely Knowable 1 Our highest priority is to satisfy the customer emergent, rapid early, largely through early and continuous delivery of change, stable valuable software. unknown 2 Welcome changing requiremts, even late in development. Agile processes harness change Size Smaller teams Larger teams for the customer’s competitive advantage. and projects and projects
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-