What is Scrum?
What is Scrum?
Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.
Scrum is a process framework that has been used to manage complex product development since the early 1990s. Scrum is not a process or a technique for building products; rather, it is a framework within which you can employ various processes and techniques. Scrum makes clear the relative efficacy of your product management and development practices so that you can improve.
The Scrum framework consists of Scrum Teams and their associated
roles, events, artifacts, and rules. Each component within the framework serves
a specific purpose and is essential to Scrum’s success and usage.It is the most popular agile framework, which concentrates
particularly on how to manage tasks within a team-based development
environment. Scrum uses iterative and incremental development model, with
shorter duration of iterations. Scrum is relatively simple to implement and
focuses on quick and frequent deliveries.
Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.
Scrum is a process framework that has been used to manage complex product development since the early 1990s. Scrum is not a process or a technique for building products; rather, it is a framework within which you can employ various processes and techniques. Scrum makes clear the relative efficacy of your product management and development practices so that you can improve.
Scrum has only three roles: Product Owner, Team, and Scrum Master. These are described in detail by the Scrum Training Series. The responsibilities of the traditional project manager role are split up among these three Scrum roles.
Scrum has five meetings: Backlog Grooming (Backlog
Refinement), Sprint Planning, Daily Scrum (15-minute stand-up), the Sprint
Review Meeting and the Sprint Retrospective Meeting.
It isn’t individual effort but the best coordination of the team
that will determine which way the ball goes.
Instead of a hand-off between individuals as a relay race, the team is
working together to get to the goal together.
Scrum (scrum software development)
Scrum is an iterative and incremental agile software development
methodology for managing product development.
It defines a flexible, holistic product development strategy where
a development team works as a unit to reach a common goal.
It enables teams to self-organize by encouraging physical co-location
or close online collaboration of all team members; it encourages daily
face-to-face communication among all team members and disciplines in the
project.
A key principle of Scrum is its recognition that during a project
the customers can change their minds about what they want and need (often
called "requirements churn").
Scrum adopts an empirical approach, accepting that the problem
cannot be fully understood or defined in one go and focusing instead on
maximizing the team's ability to deliver quickly and respond to emerging
requirements.
Scrum Project Roles, Events and Artifacts
Roles (three core roles)
Product Owner - The Product Owner represents the
stakeholders and is the voice of the customer and is accountable for ensuring
that the team delivers value to the business.
Development Team - The Development Team is
responsible for delivering potentially shippable increments (PSIs) of
product at the end of each Sprint (iteration).
Scrum Master - Scrum is facilitated by a Scrum
Master, who is accountable for removing impediments to the ability of
the team to deliver the product goals and deliverables.
Product Owner
Responsible for overall project vision and goals.
The Product Owner writes (or has the team write) customer-centric items (typically user stories), ranks and prioritizes them, and adds them to the product backlog. Constantly re-prioritizes the Product Backlog, adjusting any long-term expectations such as release plans.
Communication is a main function of the product owner. The ability to convey priorities and empathize with team members and stakeholders to steer the project in the right direction.
Product owners bridge the communication gap between the team and their stakeholders.
As the face of the team to the stakeholders, the following are
some of the communication tasks of the product owner to the stakeholders:
•
announces releases
•
organizes milestone reviews
•
educates stakeholders in the development process
•
communicates team status
•
negotiates priorities, scope, funding, and schedule
•
ensures that the Product Backlog is visible, transparent, and
clear
•
demonstrates the solution to key stakeholders who were not present
in a normal iteration demo
A product owner needs to be able to see from these different
points of view. To be effective, it would also be wise for a product owner to
know the level of detail the audience needs from him or her.
Development Team
Team is made up of 3- 9 people
•
Can be shared with other teams (but it is better when not)
•
Can change between Sprints (but better when they don’t)
•
Can be distributed (but better when collocated). Most successful
when located in one team room, particularly for the first few Sprints.
Cross-functional
•
Possesses all the skills (analyse,
design, develop, test, technical communication, document, etc.)
necessary to produce an increment of potentially shippable product. It includes
members with development & testing skills and business analysts, domain
experts, etc.
•
Team takes on tasks based on skills, not just official “role”
Self-managing/Self-organizing
•
Team manages itself to achieve the Sprint commitment. Intensely
collaborative.
•
Negotiates commitments with the Product Owner
Scrum Master
The Scrum Master is not a traditional team lead or project manager
but acts as a buffer between the team and any distracting influences.
The core responsibilities of a Scrum Master include
•
Helping the Product Owner maintain the product backlog in a way
that ensures the project is well defined and the team can continually advance
forward on the project at any given time
•
Educate team and others involved with the project on Scrum
principles
•
Determine the definition of done for the project with input from
the entire Scrum team
•
Promote self-organization within the team
•
Remove all impediments to the team's progress, both internal and
external to the Scrum team
•
Facilitate team meetings to ensure regular progress
•
Keeps Scrum artifacts visible
What Does the Scrum Master NOT Do?
- The Scrum Master does not manage the team
- The Scrum Master does not direct team-members
- The Scrum Master does not assign tasks
- The Scrum Master does not “drive the team” to hit its goals
- The Scrum Master does not make decisions for the team
- The Scrum Master does not overrule team-members
- The Scrum Master does not direct product strategy, decide technical issues, etc.
Product Backlog
The product backlog is an ordered list of requirements that
is maintained for a product/project. It consists of features, bug fixes,
non-functional requirements etc.
The product backlog items (PBIs) are ordered (highest
priority item is listed first, next-highest is second, etc.) by the Product
Owner based on considerations like risk, business value, dependencies, date
needed, etc.
The product backlog contains the Product Owner's assessment of
business value and the Development Team's assessment of development effort,
which are often, but not always, stated in story points using a rounded
Fibonacci sequence.
These estimates help the Product Owner to gauge the timeline and
may influence ordering of backlog items.
The size (i.e. estimated complexity or effort) of backlog item is
determined by the Development Team, who contributes by sizing items.
Product Backlog DEEP criteria
D- Detailed
E- Emerging
E- Estimated
P- Prioritized
Product Backlog Item (PBI)
Specifies the what more than the how of a
customer-centric feature
Often written in User Story form
Has a product-wide definition of done to prevent technical
debt
May have item-specific acceptance criteria
Effort is estimated by the team, ideally in relative units (e.g.,
story points)
Effort is roughly 2-3 people 2-3 days, or smaller for advanced
teams
User Stories: Components
A User Story describes
functionality that will be useful to a stakeholder of the system
Problems
statements (not part of use cases or really user stories) define the problem
being solved by the solution and have the following template:
The
problem of: What
is the problem
Affects: Which
stakeholders does it affect
Impact: What
is the impact to each stakeholder
A
successful solution would: What
business value would be derived from the solution
Use
Cases: Describe the flow of events between the user of the system and the
system. Use cases have more detail and tend
to be more complete, but do not address the business value or business problem
being addressed. Template:
•
Use Case
Name
•
Actor
•
Brief
Description
•
Basic
Flow
•
Alternative
Flows
•
Pre and
post conditions
•
etc
User
Stories format should be like
As a
<role> I can <goal> so that I can <business value>
Splitting stories into smaller stories
Sprint
A sprint
(or iteration) is the basic unit of development in Scrum. The sprint is a time
boxed effort, i.e. it is restricted to a specific duration.
The duration is fixed by team and product
owner in advance for each sprint and is normally between one week and one
month, although two weeks is typical.
Factors
involved in deciding Sprint length
•
Duration
of the project
•
Customers/stakeholders
•
How often
can they provide feedback and guidance
•
Scrum
familiarity
•
Environment
factors
•
The Scrum
team
•
Scrum
experience and Technical capabilities
Sprint Pre-Planning Meeting
Scheduled to determine user stories for next Sprint
Takes place few days before the end of a Sprint (and start of the
next Sprint)
Activities during pre-planning meeting
•
Backlog Grooming
•
Re-prioritize the backlog if required
•
Any User Stories that are no longer relevant to be removed
•
Product Owner walks the team through the items at the top of the
Product Backlog
•
Team asks questions and requests clarification to gain clarity on
the potential user stories
•
Team identifies any User Stories that will not fit into the Sprint
•
Team ensures Acceptance Criteria is defined for all user stories
being considered
Sprint Planning Meeting
Team understands details of what Product Owner has prioritized on
Product Backlog
Team decides how much productive time is available during the
Sprint
Team decides how many Product Backlog items it can commit to
complete during Sprint
Prepare the Sprint Backlog that details time required to do
selected work with the entire team
•
Eight-hour time limit for a 30-days sprint (i.e. two hours per
week duration)
•
(First four hours) Entire team (Dev.Team, Scrum Master, Product
Owner): dialogue for prioritizing the Product Backlog.
•
(Second four hours) Development Team: hashing out a plan for the
Sprint, resulting in the Sprint Backlog
Sprint – Definition of Ready
INVEST Model
I- Independent
N- Negotiable
V- Valuable
E- Estimable
S- Small
T- Testable
The Sprint Backlog
Consists of committed PBIs negotiated between the team and the
Product
Owner during the Sprint Planning Meeting
Scope commitment is fixed during Sprint Execution
Initial tasks are identified by the team during Sprint Planning
Meeting
Team will discover additional tasks needed to meet the fixed scope
commitment during Sprint execution
Visible to the team and Referenced during the Daily Scrum Meeting
Sprint Task
Specifies how to achieve the PBI’s what
Requires one day or less of work
Remaining effort is re-estimated daily, typically in hours
During Sprint Execution, a point person may volunteer to be
primarily
responsible for a task however owned by the entire team;
collaboration is expected
No changes during Sprint
Once team has committed, no changes
No Changes to Deliverable
–
Once team has committed, there are no changes in the deliverable
–
If something major comes up, Product Owner can terminate the
Sprint and start a new one
–
Details and clarifications will emerge during Sprint, but no new
work or substantially changed work
No Changes to Sprint Duration
–
Sprint ends on planned date whether team has completed its
commitment or not
Product Owner can make any changes to the remaining Product
Backlog before the start of the next Sprint
A Sprint can be discarded under unavoidable circumstances
Daily Scrum Meeting
Each day during the sprint, a project team communication meeting
occurs. This is called the daily scrum (meeting) (or “stand-up-meeting)
and has specific guidelines:
All members of the development team come prepared with the updates
for the meeting.
The meeting starts precisely on time even if some development team
members are missing.
The meeting should happen at the same location and same time every
day.
The meeting length is set (time boxed) to 15 minutes.
All are welcome, but normally only the core roles speak.
During the meeting, each team member answers three questions:
•
What did I do yesterday that helped the Development Team meet the
Sprint Goal?
•
What will I do today to help the Development Team meet the Sprint
Goal?
•
Do I see any impediment that prevents me or the Development Team
from meeting the Sprint Goal?
Any impediment/stumbling block identified in this meeting is
documented by the Scrum Master and worked towards resolution outside of this
meeting. No detailed discussions shall happen in this meeting.
Following the Scrum meeting, team updates the Product Backlog and
Scrum Master updates the Burn down Chart
Task or Story Board
Sprint Review or Sprint Demo
Purpose of the Sprint Review:
Review the work that was completed (if any, planned work that was
not completed)
Demo of what’s been built and not a presentation about what’s been
built (no Power Points allowed)
Generate feedback which the Product Owner can incorporate in the
Product Backlog
Attended by Team, Product Owner, Scrum Master, functional
managers, and any other stakeholders
Usually lasts 1-2 hours
Followed by Sprint Retrospective
Sprint – Definition of Done
In Scrum, “Done” is defined as “Potentially Shippable”
Sprint Retrospective
1-2 hour meeting following each Sprint Demo
The Scrum Master or a neutral person facilitates this meeting
Attended by Team, Product Owner and Scrum Master
All team members reflect on the past sprint
Two main questions are asked in the sprint retrospective:
•
What went well during the sprint?
•
What could be improved in the next sprint?
Why Retrospective matter?
•
Accelerates visibility
•
Accelerates action to improve
Sprint Cycle: 2-Week Sprint
Scrum Reports
Scrum Advantages/ Disadvantages
- Accelerate Time to Market
- Early and Continuous Customer Validation
- Greater Visibility into Project Progress
- Early Defect Detection and Prevention
- Risk Reduction and Quality Improvements
- Improve Team Morale
- It’s hard
- Partial Implementation does not give desired results
I hope this agile blogs will be useful for you and you can get
knowledge for Agile methodology for both personal and professional activities.
I will be also happy to receive any comments; I am always glad to read
them.
If you’re looking for more topics the please write in comment
section so that I could help you with some more blogs for your interested
topics. Please do not forget to check my new blogs for digital transformation
processes.
Don’t forget to subscribe to our blog we will keep
sharing useful tips for Agile and
Agile Software Development!
Comments
Post a Comment