jagomart
digital resources
picture1_Software Development Life Cycle Pdf 179455 | S2008 950


 146x       Filetype PDF       File size 0.40 MB       Source: iacis.org


File: Software Development Life Cycle Pdf 179455 | S2008 950
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 joey cho colostate pueblo edu ...

icon picture PDF Filetype PDF | Posted on 30 Jan 2023 | 2 years ago
Partial capture of text on file.
                                                        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, joey.cho@colostate-pueblo.edu 
                                     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]) 
                            Figure 1 Waterfall model lifecycle                    To overcome these shortcomings, several 
                                                                                  practitioners developed agile software development 
                                                                                  methods including Scrum, eXtreme Programming 
                   Phases                    Deliverables                         (XP), Crystal, and Adaptive Software Development 
                                                                                  (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 
                   Implementation Phase      Completed Product                                   METHODS (ASDMs) 
                           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  
                  3     Deliver working software frequently, from a              Architecture       Designed for       Designed for 
                        couple of weeks to a couple of months, with a                               current            current and 
                        preference to the shorter timescale.                                        requirements       foreseeable 
                  4     Business people and devlopers must work                                                        requirements  
                        together daily throught the project. 
                  5     Build projects around motivated individuals.             Planning and       Internalized       Documented 
                        Give them the environment and support they               Control            plans,             plans, 
                        need, and trust them to get the job done.                                   qualitative        quantitative 
                  6     The most efficient and effective method of                                  control            control  
                        conveying informaiton to and within a 
                        development team is face-to-face conversation.           Customers          Dedicated,         As needed 
                  7     Working software is the primary measure of                                  knowledgeable,     customer 
                        progress.                                                                   collaborated,      interactions, 
                  8     Agile processes promote sustainable                                         collocated         focused on 
                        development. The sponsors, developers, and                                  onsite             contract 
                        users should be able to maintain a constant pace                            customers          provisions  
                        indefinitely. 
                  9     Continuous attention to technical excellence and         Developers         Agile,             Plan-oriented; 
                        good design enhances agility.                                               knowledgeable,     adequate skills 
                  10  Simplicity—the art of maximizing the amount                                   collocated, and    access to 
                        of work not done—is essential.                                              collaborative      external 
                  11  The best architectures, requirements and designs                                                 knowledge  
                        emerge from self-organizing teams. 
                  12  At regular intervals, the team reflects on how to          Refactoring        Inexpensive        Expensive  
                        become more effective, then tunes and adjusts 
                        its behavior accordingly.                                Risks              Unknown risks,     Well 
                       Table 3 Principles behind the agile manifesto                                Major Impact       understood 
                                                                                                                       risks, Minor 
                  The ASDMs have the potential to provide higher                                                       impact  
                  customer satisfaction, lower bug rates, shorter                  Table 4 Differences between ASDMs and TSDMs 
                  development cycles, and quicker adaptation to                                   (Source: Boehm [2]) 
                  rapidly changing business requirements [3, 10, 12].             
                  VOL IX, No. 2, 2008                                 190                                   Issues in Information Systems        
                                                                        Issues and Challenges of Agile Software Development with Scrum 
                  
                                                                            reviewers’ comments and suggestions should be 
                            SCRUM METHODOLOGY                               reflected in the code (adaptation). 
                                                                             
                 The Scrum software development process is an agile         Framework of Scrum 
                 process that can be used to manage and control                                       
                 complex software and product development using             The framework of Scrum consists of three 
                 iterative and incremental practices [1] and is an          components including roles, ceremonies, and artifacts 
                 enhancement of iterative and incremental approach to       [25]. There are three distinct roles in the Scrum 
                 delivering objected-oriented software [13]. The            process: the Product Owner, the Team and the 
                 origin of term “Scrum” came from the popular sport         ScrumMaster. The Product Owner is responsible for 
                 Rugby, in which fifteen players on two teams               getting initial and on-going funding for the project by 
                 compete against each other. Takeuchi and Nonaka            creating the project’s overall requirements, return on 
                 [20] first used rugby strategies to describe hyper-        investment (ROI) objectives, and release plan [25]. 
                 productive development processes in Japan. Three           The Team is responsible for implementing the 
                 strategies from rugby including a holistic team            functionality described in the requirements. Teams 
                 approach, constant interaction among team members,         should be self-managing, self-organizing, and cross-
                 and unchanging core team members are adopted into          functional to maximize team performance. All of the 
                 Scrum management and control processes.                    team members are responsible for both the success 
                                                                            and the failure of sub-systems and of entire systems 
                 The Scrum process was developed by Schwaber and            [25]. The ScrumMaster (SM) is responsible for 
                 Sutherland [15]. The former developed and                  ensuring that Scrum values, practices, and rules are 
                 formalized the Scrum process for system                    enacted and enforced. The SM represents 
                 development while he was at his company, Advanced          management and the team to each other [15]. SM 
                 Development methods (ADM), in the early 1990s.             also tries to remove any impediments imposed on 
                 The latter developed many of the initial thoughts and      developers. 
                 practices for Scrum when he was at Easel                    
                 Corporation as a vice president of Object Technology       There are several ceremonies in the Scrum process 
                 in 1994. By a joint effort of both Schwaber and            including the Daily Scrum Meeting, the Daily Scrum 
                 Sutherland, the Scrum process was first introduced to      of Scrums Meeting, the Sprint Review Meeting and 
                 public at the conference of Object-Oriented                the Sprint Planning Meeting. The Daily Scrum 
                 Programming, Systems, Languages and Applications           Meeting (TDSM) is a 15-minute status meeting to talk 
                 (OOPSLA) in 1996 [13].                                     about what has been accomplished since the last 
                                                                            meeting, what items will be done before the next 
                 Empirical Process Control                                  meeting, and what obstacles developers have. 
                                                                            TDSMs facilitate communications, identify and 
                 The co-founder of the Scrum process, Schwaber              remove impediments to development, highlight and 
                 argues that the Scrum process employs an empirical         promote quick decision-making, and improve 
                 process control which has three legs underlying all of     transparency (visibility) as explained in the previous 
                 its implementations: transparency (visibility),            section.  The Daily Scrum of Scrums Meeting 
                 inspection, and adaptation [14, 25]. Transparency or       (TDSSM)
                                                                                      is another short daily meeting and follows 
                 visibility means that any aspects of the process that      the same format as a regular TDSM. The main reason 
                 affect the outcome must be visible and known to            for having TDSSM is to synchronize the work 
                 everybody involved in the process. Inspection              between multiple Scrum teams. The Sprint Planning 
                 requires that various aspects of the process be            Meeting (TSPM) is a monthly meeting, where the 
                 inspected frequently enough so that unacceptable           Product Owner and Team get together to discuss 
                 variances in the process can be detected. Adaptation       what will be done for the next Sprint which lasts 
                 requires that the inspector should adjust the process if   usually for 30 days. In TSPM, team members break a 
                 one or more aspects of the process are in an               project into a set of small and manageable tasks so 
                 unacceptable range.                                        that all the tasks can be completed in one Sprint. The 
                                                                            Sprint Review Meeting (TSRM) is another monthly 
                 A code review can be analyzed with the empirical           meeting which is held at the end of the Sprint. TSRM 
                 process control described above. Any code written by       is usually a four-hour time-boxed meeting, where 
                 developers should be visible to everybody                  team members present what was developed during 
                 (transparency). The most experienced and                   the Sprint to the Product Owner and stakeholders.  
                 knowledgeable developers can review the code                
                 (inspection). If there is a room to improve the code, 
                 VOL IX, No. 2, 2008                              191                                 Issues in Information Systems     
The words contained in this file might help you see if this file matches what you are looking for:

...Https doi org iis issues and challenges of agile software development with scrum juyun cho colorado state university pueblo joey colostate edu abstract asdms including extreme programming xp crystal adaptive methods have been asd developed evolved since early s due to the embrace rather than reject high rates short life cycle through an iterative change such new approaches focus on incremental process customer used widely in business sectors where requirements collaboration frequent delivery a are relatively unstable this paper explains light fast although many differences between traditional positive benefits shorter higher introduces characteristics one satisfaction lower bug rate quicker adaptation popular finally changing reported illustrates discovered there few empirical field studies depth case study company which has therefore aim employed for projects insights research was discover presented can be organizations particular method practice that mid sized using web based governm...

no reviews yet
Please Login to review.