Ase-Unit 4
Ase-Unit 4
INTRODUCTION TO SCRUM
Agile Scrum Framework, Scrum Artifacts, Meetings, Activities and Roles, Scrum Team
Simulation, Scrum Planning Principles, Product and Release Planning, Sprinting:
Planning, Execution, Review and Retrospective; User story definition and Characteristics,
Acceptance tests and Verifying stories, Burn down chart, Daily scrum, Scrum Case Study.
Definition:
Scrum is an efficient framework within which you can develop software with teamwork. It is
based on agile principles. Scrum is a framework for developing and sustaining complex
products. Ken Schwaber and Jeff Sutherland developed Scrum. Together, they stand behind
the Scrum Rules.
Scrum is a framework which is based on agile principles, a framework that handle simple,
complicated and complex software development.
In scrum project move forward with series of iteration called Sprints. Each sprint size is
typically two to four weeks long. It is based on inspect and adaptive cycle. Producing product
incrementally and iteratively reduces the risk and enhance visibility.
Scrum Master
Team
1. Sprint Planning
2. Daily Scrum
3. Sprint Review
4. Sprint Retrospective
Sprint Planning:
Goal: Team to plan and agree on backlog items they can complete and confirm the tasks required to
support acceptance.
How: In 2 parts.
Output: Sprint goal, Sprint Backlog, Tasks and their estimates, burn down chart, DOD,
Development plan/ Strategy.
Description
Product owners present the backlog items in priority order for review.
Breakdown larger stories and each story into task and acceptance criteria.
Process continue until all available hours are used for the sprint.
The Daily Scrum, also known as the Daily Stand-Up, is a crucial event in the Scrum
framework. It is a short, time-boxed meeting that occurs every day of the sprint. The purpose
of the Daily Scrum is to synchronize the team’s activities, inspect progress toward the sprint
goal, and identify any impediments that need to be addressed.
Synchronize Activities: Ensure all team members are aligned and working towards the
sprint goal.
Inspect Progress: Review what has been accomplished since the last Daily Scrum.
Identify Impediments: Highlight any obstacles that are hindering progress and need to
be addressed.
Adapt Plans: Adjust plans and strategies as needed to ensure the sprint goal is
achieved.
Participants
Scrum Master: Facilitates the meeting, ensuring it stays on track and within the time-
box.
Product Owner: May attend but is not mandatory. They can provide input if needed.
The Daily Scrum typically follows a structured format where each team member answers three key
questions:
1. What did I do yesterday to help the team meet the sprint goal?
2. What will I do today to help the team meet the sprint goal?
3. Are there any impediments that prevent me or the team from meeting the sprint goal?
Stand Up: Encourage participants to stand to keep the meeting brief and energetic.
Focus on Collaboration: The meeting is for the team to collaborate, not for detailed
problem-solving or status reporting to management.
Be Consistent: Hold the Daily Scrum at the same time and place every day to
establish a routine.
Impediment Management: The Scrum Master should note any impediments raised and
work to resolve them outside of the meeting.
o Note any impediments mentioned and plan for addressing them after the
meeting.
Going Off-Topic: If discussions stray from the three questions, note the topic and
schedule a separate discussion.
Extended Meetings: Ensure everyone stays brief and focused. If needed, have the
Scrum Master provide gentle reminders.
How: Team members form a group to focus on daily plan, Discuss on issues faced yesterday.
Description:
Daily development Team standup for 15 minutes in circle and talk only on three
points.
Scrum master protect the team and facilitate for being effective.
This gives an opportunity to team to inspect and adapt daily on the sprint goal.
Sprint Review:
Goal: Get feedback on product development. Inspect and adapt on the product feature.
Description:
In case any changes or new request, Product owner (PO) note and updates the product
backlog as required.
Participants
Scrum Team: Product Owner, Scrum Master, and Development Team.
Stakeholders: Customers, users, and anyone with an interest in the product.
Sprint Review Agenda
1. Welcome and Introduction:
o Scrum Master or Product Owner welcomes participants and outlines the
agenda.
2. Sprint Goal Review:
o Product Owner reviews the sprint goal and the intended outcomes.
o The demonstration focuses on completed items and shows how the product
increment meets the Definition of Done.
4. Feedback Gathering:
o Stakeholders provide feedback on the demonstrated increment.
o Questions and discussions are encouraged to clarify any doubts and gather
insights.
5. Product Backlog Update:
o Product Owner discusses any changes to the product backlog based on the
feedback and new information.
o Updates may include reprioritizing items, adding new user stories, or refining
existing ones.
6. Review of Market and Business Context:
o Discuss any changes in the market or business context that may impact the
product.
o Adjust the product strategy if necessary.
o Summarize the key takeaways and thank participants for their input and
collaboration.
Best Practices for Effective Sprint Reviews
Prepare in Advance: Ensure the team is prepared for the review with a well-prepared
demo and relevant data.
Engage Stakeholders: Actively involve stakeholders in the review and encourage
their participation and feedback.
Focus on Value: Highlight the value delivered during the sprint and how it aligns
with the product vision and goals.
Be Transparent: Honestly discuss what was completed, what was not, and any
challenges faced during the sprint.
Use Visuals and Metrics: Use visuals, charts, and metrics to support the
demonstration and discussions.
Time Management: Stick to the agenda and manage time effectively to cover all
important aspects of the review.
Example Agenda for a 1-Hour Sprint Review
1. Welcome and Introduction (5 minutes):
o Introduction by Scrum Master or Product Owner.
The Sprint Review is a crucial event that fosters collaboration, transparency, and continuous
improvement. It ensures that the product remains aligned with stakeholders' needs and that
the team is always working on the most valuable tasks.
Sprint Retrospective:
2. Gather Data:
o Discuss what happened during the sprint.
Mad, Sad, Glad: Team members write down what made them mad, sad,
or glad during the sprint.
Start, Stop, Continue: Team members suggest things to start doing,
stop doing, and continue doing.
Timeline: Map out the sprint’s events to visualize when things
happened.
3. Generate Insights:
o Identify patterns and root causes of issues.
o Discuss how the team’s processes and behaviors impacted the sprint.
o Ensure the actions are specific, achievable, and assigned to team members.
5. Close the Retrospective:
o Summarize the key takeaways and action items.
Goal: To inspect and adapt to become more effective and efficient on process, people, culture
aspect.
Who: Scrum Team (anyone participation is decided by the scrum team on invite basis only).
When: Last day of sprint.
Duration: 2 hours for a 2 week sprint.
How: Close room discussion of observer pattern and desire results/improvements.
Input: Observation, issues, experience, pattern in behavior, recommendations, feedback and
information.
Output: List of activities/steps/suggestions that help to make more effective and efficient.
Action items on the team
Description:
Participation in the discussion to inspect and adapt as scrum team.
Scrum master play vital role in sprint retrospective, Scrum master bring in the culture
of openness, trust and respect as people discuss the improvement areas, facilitate and
focus on improvement and changes that pointing fingers at others.
This is platform to scrum master to help team resolve ineffectiveness in the systems.
Inspect and Adapt: Try everything that makes sense, reject things that didn’t work
even after repeated trails. Shape your culture, process and practice.
Key Activities:
1. Review and Update Backlog Items:
o Clarify and Discuss: The product owner explains new or complex items,
providing the necessary context and answering any questions.
o Refine Acceptance Criteria: Ensure that each item has clear and testable
acceptance criteria.
o Prioritize Items: Discuss and adjust the priority of backlog items based on
business value, dependencies, and team capacity.
2. Break Down Epics:
o Identify large user stories (epics) and break them down into smaller, more
actionable stories that can be completed within a sprint.
3. Estimate Effort:
o Use estimation techniques (e.g., Planning Poker, T-shirt sizing) to assign effort
estimates to each backlog item. This helps with sprint planning and capacity
assessment.
4. Update and Add Details:
o Ensure that the description, acceptance criteria, and any other relevant details
are up-to-date for each item.
5. Identify Dependencies and Risks:
o Discuss and document any dependencies between items and potential risks
that could impact delivery.
Tips for Effective Refinement:
Regular Sessions: Conduct backlog refinement regularly (e.g., once a week) to keep
the backlog healthy.
Timebox the Meeting: Limit the duration (e.g., 1 hour) to keep discussions focused
and efficient.
Collaborative Effort: Encourage active participation from the entire team to ensure a
shared understanding.
Stay Aligned with Sprint Goals: Ensure that refined items align with the product
vision and upcoming sprint goals.
Sample Agenda for a Refinement Session:
1. Introduction:
o Quick overview of the session’s goals and agenda.
5. Wrap Up:
o Summarize the refined items and any action items or follow-ups.
o Confirm the date and time for the next refinement session.
Scrum Artifacts:
In Scrum, artifacts are tangible outputs that provide transparency and opportunities for
inspection and adaptation. These artifacts ensure that all stakeholders have a clear
understanding of the product being developed and the progress being made. The three
main Scrum artifacts are:
Scrum artifacts are tools that help Scrum teams visualize and organize information
about a product being developed. They are designed to increase transparency and help
the team and stakeholders adapt their work.
1. Product Backlog
2. Sprint Backlog
3. Increment
1. Product Backlog
The Product Backlog is a prioritized list of all the work that needs to be done on the
product. It is maintained by the Product Owner and is continuously refined based on
feedback and changes in requirements.
Key Features:
Items: Each item in the backlog is a Product Backlog Item (PBI), which could be
features, functions, requirements, enhancements, and fixes.
Prioritization: Items are prioritized based on business value, risk, dependencies, and
other factors.
Estimation: Items are estimated in terms of effort or complexity.
Dynamic: The backlog evolves as the product and its environment change.
Example:
# Product Backlog
1. User Registration
- Description: Allow users to register with email and password.
- Priority: High
- Estimate: 5 Story Points
- Acceptance Criteria:
- Users can input their email.
- Users can set a password.
- Users receive a confirmation email.
2. Password Reset
- Description: Allow users to reset their password.
- Priority: Medium
- Estimate: 3 Story Points
- Acceptance Criteria:
- Users can request a password reset.
- Users receive a password reset email.
- Users can set a new password.
2. Sprint Backlog
The Sprint Backlog is a subset of the Product Backlog items selected for the current sprint, along
with a plan for delivering them. It is created and owned by the Development Team.
Key Features:
Selected PBIs: Items chosen from the Product Backlog for the sprint.
Tasks: Detailed tasks necessary to deliver the selected PBIs.
Commitment: Represents the work the team commits to complete in the sprint.
Dynamic: Can be updated throughout the sprint as new information emerges.
Example:
# Sprint Backlog for Sprint 1
## Selected PBIs
1. User Registration (5 Story Points)
- Task: Design registration form
- Task: Implement form validation
- Task: Integrate with backend
- Task: Send confirmation email
3. Increment
The Increment is the sum of all the Product Backlog items completed during a sprint,
along with the value of increments from all previous sprints. It must be in a usable
state and meet the team's Definition of Done.
Key Features:
Usable: Must be in a usable condition, regardless of whether the Product Owner
decides to release it.
Complete: Adheres to the Definition of Done, meaning it is fully functional, tested,
and integrated.
Transparent: Provides a clear picture of what has been accomplished and what
remains.
Example:
# Increment at the End of Sprint 1
## Completed PBIs
1. User Registration
- Users can register with email and password.
- Users receive a confirmation email.
2. Password Reset
- Users can request a password reset.
- Users receive a password reset email.
- Users can set a new password.
## Definition of Done:
- Code is peer-reviewed.
- Unit tests pass.
- Integration tests pass.
- Documentation is updated.
- Feature is demoed to stakeholders.
Supporting Artifacts
While the above are the primary artifacts, Scrum teams often use additional
supporting artifacts to aid transparency and tracking:
Burndown Charts: Visual representation of remaining work in a sprint or project.
Task Boards: Visual tool for tracking the status of tasks within a sprint.
Release Plans: Outline of planned releases and their associated PBIs.
Scrum Information Radiators are visual tools used to display the status, progress, and key
metrics of a project to the entire team and stakeholders. These tools promote transparency and
enable quick, informed decisions. Common information radiators in Scrum include task
boards, burndown charts, and cumulative flow diagrams. Here’s a detailed look at these
radiators and how they can be used effectively:
1. Task Board
A task board is a visual representation of the work planned for the current sprint. It helps the
team track the progress of tasks and ensures everyone is aware of the current status.
Components:
Columns: Typically include stages like To Do, In Progress, In Review, Done.
Cards: Represent individual tasks or user stories.
Swimlanes: Optional horizontal divisions to separate different types of work or team
members
# Task Board
## To Do
- Design registration form
- Create test cases for password reset
## In Progress
- Implement form validation
- Integrate backend for registration
## In Review
- Send confirmation email
## Done
- Create new password form
2. Burndown Chart
A burndown chart visually tracks the progress of the sprint by showing the amount of work
remaining over time. It helps the team understand if they are on track to complete the sprint
goals.
Components:
X-axis: Represents time (days of the sprint).
Y-axis: Represents remaining work (story points, hours, or tasks).
Ideal Line: A straight line from the total work at the start of the sprint to zero at the
end of the sprint.
Actual Line: Shows the actual remaining work as the sprint progresses.
Example:
# Burndown Chart
## Sprint Goals
1. Implement user registration
2. Implement password reset functionality
## Progress
- User Registration: 80% Complete
- Password Reset: 60% Complete
5. Impediment List
An impediment list tracks obstacles that hinder the team’s progress. It helps the Scrum
Master address and resolve these issues promptly.
Components:
Impediment: Description of the obstacle.
Status: Current status (e.g., Identified, In Progress, Resolved).
Owner: Person responsible for resolving the impediment.
# Impediment List
2. Implementation of Scrum:
o How Scrum was introduced and implemented within the team.
5. Lessons Learned:
o Key takeaways and lessons learned from the Scrum implementation.
Summary
Burn Down Charts help visualize work progress and predict sprint completion.
Daily Scrums ensure daily communication and alignment among team members.
Scrum Case Studies illustrate practical applications of Scrum, showing both
challenges and successes.
o Example: "As a user, I want to filter products by price so that I can find items
within my budget."
2. Non-Functional Stories:
o Address system attributes like performance, security, or reliability.
o Example: "As an admin, I want the system to log all failed login attempts so
that I can ensure security."
3. Technical Stories:
o These are sometimes needed for behind-the-scenes work like infrastructure or
system improvements that don't deliver direct user functionality but are
necessary for supporting user stories.
o Example: "As a developer, I want to upgrade the database version so that it
supports new features."
Benefits of User Stories
1. User-Centric Focus: Stories focus on delivering features that are directly valuable to
the user, keeping the team aligned with the customer’s needs.
2. Encourages Collaboration: Writing and refining user stories involve conversations
between developers, testers, and customers, leading to better understanding and
collaboration.
3. Facilitates Iterative Development: Stories help break down large projects into
smaller, manageable chunks that can be delivered iteratively.
4. Adaptable: User stories are flexible and can evolve as more is learned about the
project and the users' needs.
Challenges with User Stories
1. Overly Vague Stories: If user stories are not clearly defined, they can lead to
confusion, delays, or unmet expectations.
2. Scope Creep: Without well-defined acceptance criteria, stories can grow in scope,
leading to incomplete or unfocused work.
3. Difficulty in Splitting Stories: Breaking down large epics into smaller stories can be
challenging, especially if teams are new to Agile.
Conclusion
User stories are a key element in Agile and XP, providing a structured yet flexible way to
capture and communicate user requirements. By following the INVEST principles and
ensuring clear acceptance criteria, user stories help teams stay focused on delivering value
while promoting collaboration and adaptability throughout the development process.