SCRUM

INTRODUCTION

Scrum is one of the most popular Agile methods. It is an adaptive, iterative, fast, flexible, and effective framework designed to deliver significant value quickly and throughout a project.

A key strength of Scrum lies in its use of cross-functional, self-organized, and empowered teams who divide their work into short, concentrated work cycles called Sprints. Figure below provides an overview of a Scrum project’s flow.

Brief History of Scrum

In the mid 80’s, Hirotaka Takeuchi and Ikujiro Nonaka defined a flexible and all-inclusive product development strategy where the development team works as a unit to reach a common goal. They described an innovative approach to product development that they called a holistic or “rugby” approach.

 Ken Schwaber and Jeff Sutherland elaborated on the Scrum concept and its applicability to software development in a presentation at the Object-Oriented Programming, Systems, Languages & Applications (OOPSLA) conference held in 1995 in Austin, Texas.

Scrum Principles

 Scrum principles are the core guidelines for applying the Scrum framework and should mandatorily be used in all Scrum projects. The six Scrum principles presented are: 

1. Empirical Process Control : This principle emphasizes the core philosophy of Scrum based on the three main ideas of transparency, inspection, and adaptation

2. Self-organization : This principle focuses on today’s workers, who deliver significantly greater value when self-organized and this results in better team buy-in and shared ownership; and an innovative and creative environment which is more conducive for growth.  

3. Collaboration : This principle focuses on the three core dimensions related to collaborative work: awareness, articulation, and appropriation. It also advocates project management as a shared value-creation process with teams working and interacting together to deliver the greatest value.

4. Value-based Prioritization : This principle highlights the focus of Scrum to deliver maximum business value, from early in the project and continuing throughout.

5. Time-boxing: This principle describes how time is considered a limiting constraint in Scrum, and used to help effectively manage project planning and execution. Time-boxed elements in Scrum include Sprints, Daily Stand up Meetings, Sprint Planning Meetings, and Sprint Review Meetings.

6. Iterative Development: This principle defines iterative development and emphasizes how to better manage changes and build products that satisfy customer needs. It also delineates the Product Owner’s and organization’s responsibilities related to iterative development.

Figure below illustrates the six Scrum principles:

Scrum Aspects

The Scrum aspects must be addressed and managed throughout a Scrum project. The five Scrum aspects are:

1.Organization

Understanding defined roles and responsibilities in a Scrum project is very important for ensuring the successful implementation of Scrum. Scrum roles fall into two broad categories: CORE and NON CORE ROLES.

Core Roles are those roles which are mandatorily required for producing the project’s product or service.

a. The Product Owner is the person responsible for articulating customer requirements and maintaining business justification for the project. The Product Owner represents the Voice of the Customer

b. The Scrum Master guides, facilitates, and teaches Scrum practices to everyone involved in the project; clears impediments for the team; and, ensures that Scrum processes are being followed.

c. The Scrum Team is the group or team of people who are responsible for understanding the requirements specified by the Product Owner and creating the Deliverables of the project.

Non-core Roles are those roles which are not mandatorily required for the Scrum project and may include team members who are not responsible for the success of the project.

a. Stakeholder(s), which is a collective term that includes customers, users, and sponsors.

b. Scrum Guidance Body (SGB) is an optional role, which generally consists of a set of documents and/or a group of experts who are typically involved with defining objectives related to quality, government regulations, security, and other key organizational parameters.

c. Vendors, including external individuals or organizations, provide products and/or services that are not within the core competencies of the project organization.

2. Business Justification

It is important for an organization to perform a proper business assessment prior to starting any project. This helps key decision makers understand the business need for a change or for a new product or service, the justification for moving forward with a project, and its viability. Business justification in Scrum is based on the concept of Value-driven Delivery.

3. Quality

In Scrum, quality is defined as the ability of the completed product or deliverables to meet the Acceptance Criteria and achieve the business value expected by the customer. Since Scrum requires work to be completed in increments during Sprints, this means that errors or defects get noticed earlier through repetitive quality testing, rather than when the final product or service is near completion. Moreover, important quality-related tasks (e.g., development, testing, and documentation) are completed as part of the same Sprint by the same team—this ensures that quality is inherent in any deliverable created as part of a Sprint. Such deliverables from Scrum projects, which are potentially shippable, are referred to as ‘Done.’

4. Change

Every project, regardless of its method or framework used, is exposed to change.
Scrum projects welcome change by using short, iterative Sprints that incorporate customer feedback on each Sprint’s deliverables. This enables the customer to regularly interact with the Scrum Team members, view deliverables as they are ready, and change requirements if needed earlier in the Sprint.

5. Risk

Risk is defined as an uncertain event or set of events that can affect the objectives of a project and may contribute to its success or failure. Risks that are likely to have a positive impact on the project are referred to as opportunities, whereas threats are risks that could affect the project in a negative manner. Managing risk must be done proactively, and it is an iterative process that should begin at project initiation and continue throughout the project’s lifecycle.

Scrum Processes

Scrum processes address the specific activities and flow of a Scrum project. In total there are nineteen fundamental Scrum processes that apply to all projects. These processes are grouped into five phases as shown below:

These phases describe each process in detail including their associated inputs, tools, and outputs. In each process, some inputs, tools, and outputs are mandatory while others are optional.

Figure below shows the mandatory inputs, tools, and outputs for processes in INITIATE phase:

Figure below shows the mandatory inputs, tools, and outputs for processes in PLAN AND ESTIMATE phase:

Figure below shows the mandatory inputs, tools, and outputs for processes in IMPLEMENT phase:


Figure below shows the mandatory inputs, tools, and outputs for processes in REVIEW AND RETROSPECT phase.

Figure below shows the mandatory inputs, tools, and outputs for processes in RELEASE phase.


Scrum vs. Traditional Project Management

Below Table summarizes many of the differences between Scrum and traditional project management models.

Published by Ritesh Mathur

I have 13+ years of total experience in Software Quality Assurance and Testing field. Worked on multiple CMS projects including the ones in Site core, Episerver, Drupal, WordPress and Magento. I have done Sitecore Web Experience Management eLearning and International Software Testing and Quality Board (ISTQB) certifications.

Leave a comment

Design a site like this with WordPress.com
Get started