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