Project management
NAVIGATE
Today's Date:

SCRUM - An Agile Approach


How Best Practices in an Adaptive Approach Work Best
Contributing Editor



SCRUM History

Originally, SCRUM was developed for the management of software development projects. However, it has been very effective for software maintenance teams, and for projects, when leveraged as a project management approach.

"Back in 1986, Ikujiro Nonaka and Hirotaka Takeuchi described a new holistic approach which increased speed and provided more flexibility in new commercial product development. They compare this new holistic approach, in which the phases strongly overlap and the whole process is performed by one cross-functional team across the different phases, to rugby, where the whole team "tries to go to the distance as a unit, passing the ball back and forth". The case studies come from the automotive, photo machine, computer and printer industries.

In 1991, DeGrace and Stahl, in Wicked Problems, Righteous Solutions,referred to this approach as scrum, a rugby term mentioned in the article by Takeuchi and Nonaka. In the early 1990s, Ken Schwaber used an approach that led to SCRUM at his company, Advanced Development Methods. At the same time, Jeff Sutherland, John Scumniotales, and Jeff McKenna developed a similar approach at Easel Corporation and were the first to call it SCRUM. In 1995 Sutherland and Schwaber jointly presented a paper describing SCRUM at OOPSLA 1995 in Austin, its first public appearance. Schwaber and Sutherland collaborated during the following years to merge the above writings, their experiences, and industry best practices into what is now known as SCRUM. In 2001, Schwaber teamed up with Mike Beedle to write up the method in the book titled Agile Software Development with Scrum." From Wikipedia


SCRUM Defined

SCRUM is a process skeleton that includes a set of practices and predefined roles. The main roles in SCRUM are the "SCRUMMaster" who maintains the processes and has the some of the same responsibilities as a project manager, the "Product Owner" who represents the customer and key stakeholders, and the "Team" which includes the developers and product users.

During each "Sprint", usually a 2–4 week period, which is agreed upon by the team, the team creates an increment of functional software component. The set of features that constitutes a sprint is derived from the product "backlog", which is a prioritized set of high level requirements of work scheduled. The backlog items to be included into the upcoming Sprint is determined during the sprint planning meeting.

During the planning meeting, the Product Owner and the team discuss all the items in the product backlog to be completed. The challenge for the team is to determine how much of this backlog can be committed for completion during the next Sprint. Once the Sprint has begun, it is not feasible, or permissible to change the Sprint backlog. This implies that the requirements identified are committed and locked-down for that sprint. After a sprint is completed, the team demonstrates the use of the incremental component of the solution developed.

SCRUM encourages co-location of team members. This enables the creation of self-organizing teams and fosters verbal communication across all team members, while reinforcing team spirit and discipline across the spectrum of the project.

SCRUM confronts and tactically mitigates a very common challenge. There is the understanding that during the life of any given project, product owners (or customers) can change their minds about any given specification and/or need. Such unpredictable behavior presents challenges that cannot be easily mitigated in the usual accepted and/or, traditional planned project management approaches.

Given these challenges, SCRUM takes on a more adaptive approach by first, accepting the fact that product requirements are never fully understood, clearly defined, or static; and secondly, placing the focus instead on the development capability of the team to complete deliverables expeditiously (reduce cycle-time), and respond with flexibility to ever-changing requirements.

While there exists several creative approaches to managing the SCRUM process including scratch pads, post-it stickers, whiteboards, and/or innovative software packages; the greatest advantage of SCRUM is that it requires only a flat learning curve, and very little implementation effort for the organization and project team to get started.

SCRUM Roles and Responsibilities

The Product Owner
The Product Owner (may be considered the Customer, or one who) represents the voice of the customer. The Product Owner ensures that the SCRUM Team is provided with adequate information (requirements and rules) from a business perspective. The Product Owner writes user stories, prioritizes them, and then places them in the product backlog for the team.

The Team
An average SCRUM team comprises about 5-10 individuals having cross-functional skills, but some teams have been known to include up to 500 people. The SCRUM Team (which includes everyone who performs activities to complete the deliverables) does the actual work of developing the solution and has the responsibility to expeditiously deliver the product.

SCRUMMaster
The SCRUMMaster facilitates the SCRUM effort by preventing external (or internal) obstacles from impeding the progress of the project. The prime objective is to ensure the SCRUM team delivers the requirements expeditiously to meet the sprint goals. Because the SCRUM team is self-directed, the SCRUMMaster is not considered the leader of the team. However, he or she acts as a buffer against any distractions for the team and make sure the SCRUM process rules are enforced and the process rolls out as prescribed.

Users
The software being built must be represented by someone who requested it. If a solution does not have a requestor, or a user, it is as if the software was never created and it will ultimately be rejected. Users must be instrumental in testing the component output and provide the necessary feedback to the team.

Stakeholders (customers, vendors, etc.)
Customers, vendors, Senior Management, users, etc., are all considered stakeholders. These are the individuals who enable the project, and ultimately those who will benefit from the agreed-upon deliverables of the project. It is highly recommended that these stakeholders are keenly involved in the process especially during sprint reviews.

Managers
The managers of the performing organization impacted by the SCRUM process must ensure adequate development environment for the successful delivery of the product.

SCRUM Meetings

Daily SCRUM Meeting
Normally, on a daily basis during each Sprint the team holds a project status meeting. This is called a "SCRUM", or "the daily standup" meeting.
There are specific guidelines for this SCRUM meeting; they are:
- The daily meeting should always begin on time.
- Everyone should be welcome to the meeting, but only "pigs" may address the issues
- The meeting should be scheduled for 15-20 minutes depending on the size of the team
- The meeting should be conducted with standing room only
- The meeting should be held in the same location and at the same time, daily


The objective of this meeting is to have each team member answer three specific questions:
1 - What has been accomplished since yesterday?
2 - What has been planned to be accomplished today?
3 - Do you anticipate any obstacle which may prevent you from accomplishing your goal?
The SCRUMMaster should take a note of any impediments mentioned by the team members.

Sprint Planning Meeting
A Sprint Planning Meeting should be scheduled at the beginning of the sprint cycle (every 15–30 days).

Select what work is to be done
The Product Owner should prepare the Sprint Backlog including details of the estimated time it will take to do the requied work. This should be discussed with the entire project team who will identify, decide, and explain how much of the work can be committed to be accomplished during the upcoming sprint 8 hour timebox.

Sprint Review Meeting
At the end of a sprint cycle, two meetings should be scheduled: The "Sprint Review Meeting" and the "Sprint Retrospective". During the review meeting, the entire team, along with the Product Owner and the SCRUMMaster will review the work completed and pending. The project team will present the completed component to the stakeholders to be reviewed as a demonstration. The incomplete deliverables cannot be demonstrated. There should be a 4 hour time limit for this phase.

Sprint Retrospective Meeting
During the retrospective meeting the entire team should reflect on the past sprint and discuss the accomplishments. The objective is to have a clear understanding of two main aspects in retrospect: What went well during the sprint? What did not and should be improved during the next sprint? With answers to these questions the team along with the Product Owner and the SCRUMMaster, should put forward continuous process improvement suggestions. There should be a 3 hour time limit for this phase.

SCRUM Artifacts (tools and techniques)

Product backlog
The product backlog is a master document with all functionality required for the entire project. It contains backlog items: broad descriptions of all required features, wish-list items, etc. prioritised by business value. It represents the essence of that which will be built. The requirements in the product backlog are open and editable by all and there are rough estimates of both business value and development effort for each requirement. Those estimates facilitate the Product Owner with estimating the overall timeline and establishing some priority over the deliverables. For example, if two or more required features have the same business value, the one with the smallest development effort should probably receive the highest priority, because the ROI is presumably, higher.

The product backlog remains property of the Product Owner who establishes the requirements, sets the business value and business rules. The development effort is the responsibility of the project team.

Sprint Backlog
The sprint backlog constitutes a list of tasks that the team has committed to complete in the upcoming sprint. Items on the sprint backlog are selected from the Product Backlog by the team, based on the priorities set by the Product Owner plus the estimation of the team regarding the effort to complete the tasks for the various features.

The sprint backlog is a granular document containing information regarding the approach of the team to implement the features for the upcoming sprint. Features are broken down into tasks. In adherence to best practices, tasks should generally be estimated between 4 -16 hours of work. With this level of detail the entire team understands exactly what needs to be accomplished, and how. Interestingly enough, the tasks selected for the sprint backlog are never assigned; but are voluntarily selected by team members appropriately, according to task priority, effort required, and skills set.
The sprint backlog remains the property of the SCRUM Team and all task estimates are established by the Team.

Burndown
The burndown chart is publicly displayed and highlights the work effort remaining in the sprint backlog. During the sprint, the SCRUMMaster maintains the sprint backlog by updating it to reflect which tasks have been completed, and how much time the team estimates is needed to complete the tasks that remain outstanding. The estimated effort for work remaining in the sprint is calculated daily and graphed, resulting in a sprint burndown chart displayed below:

Burndown chart
The sprint burndown chart

SCRUM, an Adaptive Project Management Process

As an agile approach to product development, SCRUM is very flexible, yet disciplined in its own right. Below, a few of the established best practices of SCRUM are briefly discussed.

Customer involvement and communication
It is very important that customers remain an integral part of the development effort. The customer must be genuinely interested in and invested in the outcome of the product.
SCRUM is able to deliver frequent intermediate releases of working functionality to the solution thus, it offers the customer immediate business value by providing iterations of functioning software, earlier. The process also provides the Product Owner the flexibility to change requirements according to changing needs.
As a rule, SCRUM incorporates high transparency in the planning and development of each module. SCRUM requires the inclusion of relevant stakeholders in communications and clarity about who is accountable for what and by when.
SCRUM requires frequent stakeholder meetings to monitor progress. These may be supported by balanced dashboard updates (delivery, customer, user, process, stakeholders)

Quality, issue management, and transparency
Defects management, and issues monitoring should be in place, especially an advance warning mechanism which provides visibility to nonconformance, potential slippage, and/ or deviation from schedule way ahead of time.
All issues should be transparent and discussed. Nothing should be swept under the rug, and no one should be punished for recognizing or identifying any previously unforeseen problem.
Risk identification and mitigation plans are carried out frequently by the development team. Risk mitigation, monitoring and management (risk analysis) occur at every stage in the SCRUM process, and with firm commitment.

SCRUM Common Terms

Product Owner
The person responsible for maintaining the Product Backlog by representing the interests of the stakeholders.

SCRUMMaster
The person responsible for the SCRUM process, making sure it is used correctly and maximizes its benefits.

Project Team
A cross-functional group of people responsible for managing itself to develop the product.

SCRUM Team
Product Owner, SCRUMMaster and Project Team

Sprint burndown chart
Daily progress report for a Sprint over the duration of the sprint

Product backlog
A prioritized list of high level requirements from the Product Owner.

Sprint backlog
A list of tasks selected by the team, to be completed during the upcoming sprint.

Sprint
A time period (usually between 2 - 4 weeks) when the development of a set of sprint backlog items to which the Team has committed, takes place.

The PIGs
Pigs are usually those individuals committed to the successful outcome of a project governed by the SCRUM approach. They are the stakeholders with the most to lose or gain depending on the result of the project.

The Chickens
One of the most important aspect of successful project outcome is the best achieved by proactively involving users groups, business representatives, and stakeholders to provide feedback in the process. These participants, called Chickens, are not officially considered part of the SCRUM team, but should be engaged in testing product outputs for review and sprint planning meetings.
Credits and recommended readings:
Agile Software Development with Scrum - by Ken Schwaber
Agile Estimating and Planning (Robert C. Martin Series) by Mike Cohn
Agile and Iterative Development: A Manager's Guide by Craig Larman
Credits also to contributors in Wikipedia, the free encyclopedia

Review Discussion from Archives



Available Now!
Project Management Games

In Paperback

Project Management Games
Have Some Fun and Diversion
While Learning!!


72 Exciting Pages of Challenging and Intriguing Crossword Puzzles, Definition Search, Secret Terms, and Many Other
Word Games Covering all
9 Project Management areas.

Introducing:
Integration Realizations
Time Management Essentials
Cost Saving Challenges
Human Resources Implications
Quality Focused Standards
Scope Considerations
Risk Taking Consequences
Communication Protocols
Procurement Requirements
and...
Professional Responsibilities

Order Your Copy Now!!
Only $7.50 + Postage

Project Management Consultant
Qualified External Project Manager
Six Sigma Black Belt
for Your Short-Term Projects
Contact: Biznizgames
Email: Consultant

Professional Web Site Designer
Affordable, Professional Website
for Your Business!
With or without Database
Contact email: Consultant