Page 82 - DCAP405_SOFTWARE_ENGINEERING
P. 82

Unit 5: An Agile View of Process




          the new functionality to the product owner and other interested stakeholders who provide  Notes
          feedback that could influence the next sprint.

          Scrum Methodology

          For many developers in the software organization, the agile methodology is nothing new.
          Most persons know that agile was a direct response to the leading project management paradigm,
          waterfall, and borrows many ethics from lean manufacturing. In 2001, as this new management
          pattern began to pick up momentum, agile was formalized when 17 pioneers of the agile
          methodology met at the Snowbird Ski Resort in Utah and issued the Agile Manifesto. Their
          policy is now considered the foundational text for agile practices and principles. Most extremely,
          the manifesto spelled out the philosophy behind agile, which places a new emphasis on
          communication and collaboration; functioning software; and the flexibility to adapt to emerging
          business realities.
          But for all of the pace the Agile Manifesto made in revising a philosophical approach to software
          development, it didn’t offer the concrete processes that development teams depend on when
          deadlines — and stakeholders — start applying pressure. As a consequence, when it comes to the
          nuts and bolts of running a team with agile every day, association turn to particular subsets of
          the agile methodology. These include Crystal Clear, Extreme Programming, Feature Driven
          Development, Dynamic Systems Development Method (DSDM), Scrum, and others.

          What’s Unique about Scrum?

          Of all the agile methodologies, Scrum is exclusive because it introduced the concept of “empirical
          process control.” That is, Scrum uses the real-world development of a project — not a best guess
          or uninformed forecast — to plan and schedule release. In Scrum, projects are separated into
          succinct work cadences, known as sprints, which are typically one week, two weeks, or three
          weeks in duration. At the end of each sprint, stakeholders and team members meet to assess the
          progress of a project and plan its next steps. This allows a project’s direction to be adjusted or
          reoriented based on completed work, not speculation or predictions.
          Philosophically, this emphasis on an ongoing assessment of completed work is largely
          responsible for its popularity with managers and developers alike. But what allows the Scrum
          methodology to really work is a set of roles, responsibilities, and meetings that never change.

               !

             Caution  If Scrum’s capacity for adoption and flexibility makes it an appealing option, the
             stability of its practices give teams something to lean on when development gets chaotic.

          The Roles of Scrum

          Scrum has three primary roles: Product Owner, ScrumMaster, and team member.
          1.   Product Owner: In Scrum, the Product Owner is dependable for communicating the vision
               of the product to the development team. He or she must also stand for the customer’s
               interests through requirements and prioritization. Because the Product Owner has the
               most power of the three roles, it’s also the role with the most responsibility. In other
               words, the Product Owner is the single individual who must face the music when a project
               goes awry.
               The nervousness between authority and responsibility means that it’s hard for Product
               Owners to strike the right balance of involvement. Because Scrum values self-organization




                                           LOVELY PROFESSIONAL UNIVERSITY                                   75
   77   78   79   80   81   82   83   84   85   86   87