scrum - introduction to scrum development methodology
DESCRIPTION
It is an introduction to Scrum software development methodology. Basic concepts of Scrum, Comparison against Waterfall, Scrum rituals, ceremonies, artifacts and best practices.TRANSCRIPT
1
SCRUM
ANURAJ Phttp://www.dotnetthoughts.net@anuraj
2
AGENDA
What is SCRUM
Why SCRUM
SCRUM Roles / Ceremonies / Artifacts
SCRUM Best Practices *
Questions
3
WHAT IS SCRUM?
Scrum is a way for teams to work together to develop a product.
© http://kerikerirugby.com/wp-content/uploads/2012/11/South-Africa-IRB-Scrum-Study.jpg
4
SCRUM != AGILE
Scrum is just one of the many iterative and incremental agile software development method.
Agile
Scrum
XP
Kanban
Scrum-ban
AUP
FDD
5
THE TRADITIONAL SDLC
Traditional Software development process - The waterfall model is a sequential design process, used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Requirements, Design, Implementation, Verification and Maintenance.
© http://en.wikipedia.org/wiki/Waterfall_model#mediaviewer/File:Waterfall_model.svg
6
TRADITIONAL SDLC PROBLEMS
Clients may not know exactly what requirements they need before reviewing a working prototype and commenting on it. They may change their requirements constantly. If clients change their requirements after the design is finalized, the design must be modified to accommodate the new requirements. This effectively means invalidating a good deal of working hours, which means increased cost, especially if a large amount of the project's resources has already been invested in Big Design Up Front.
© http://siteappdev.com/wp-content/uploads/2014/01/WaterFallApproachInTheoryVSInPractice.jpg
7
WHY SCRUM?
Walking on water and developing software from a specification are easy if both are frozen. - Edward V. Berard
8
WHY SCRUM?
Most agile methods break tasks into small increments with minimal planning and do not directly involve long-term planning. Iterations are short time frames (time boxes) that typically last from one to four weeks. Each iteration involves a cross-functional team working in all functions: planning, requirements analysis, design, coding, unit testing, and acceptance testing. At the end of the iteration a working product is demonstrated to stakeholders. This minimizes overall risk and allows the project to adapt to changes quickly. An iteration might not add enough functionality to warrant a market release, but the goal is to have an available release (with minimal bugs) at the end of each iteration. Multiple iterations might be required to release a product or new features.
9
WHY SCRUM?
Requirements
Design
Implementation
Verification
Maintenance
Waterfall Scrum / Agile
Iteration1
Requirements
Design
Implementation
Verification
Maintenance
Iteration2
Requirements
Design
Implementation
Verification
Maintenance
Iteration N
Requirements
Design
Implementation
Verification
Maintenance
10
11
SCRUM ROLES / CEREMONIES / ARTIFACTS
12
SCRUM ROLES
Scrum Master
Product Owner
Team members
Stakeholders *
13
SCRUM ROLES – SCRUMMASTER
ScrumMaster a dedicated individual responsible for improving the performance of the Team and the business by any means necessary.
NOT A TRADITIONAL PROJECT MANAGER
14
SCRUM ROLES – PRODUCT OWNER
Product Owner an empowered individual applying their personal and professional judgment to make decisions in the best interest of different, often times competing, business stakeholders to maximize the business value the Team produces each iteration.
15
SCRUM ROLES – TEAM MEMBERS
Team dedicated collection of self-organizing, interdependent, co-located individuals representing different functional roles with all the necessary skills to turn Product Backlog items into a potentially shippable increment within the iteration.
16
SCRUM ROLES –STAKEHOLDERS
Stakeholder any person who has a direct, or indirect, interest in the work of the Team.
17
WHAT IS SPRINT?
A sprint (or iteration) is the basic unit of development in Scrum. The sprint is a "timeboxed" effort; that is, it is restricted to a specific duration. The duration is fixed in advance for each sprint and is normally between one week and one month, although two weeks is typical. Each sprint is started by a planning meeting, where the tasks for the sprint are identified and an estimated commitment for the sprint goal is made, and ended by a sprint review-and-retrospective meeting, where the progress is reviewed and lessons for the next sprint are identified. Scrum emphasizes working product at the end of the Sprint that is really "done"; in the case of software, this means a system that is integrated, fully tested, end-user documented, and potentially shippable.
18
SCRUM CEREMONIES
Sprint planning meeting
Daily scrum meeting
Sprint Review
Sprint Retrospective
19
SCRUM RITUALS - SPRINT PLANNING MEETING
The Sprint Planning Meeting occurs at the start of each Sprint and is time-boxed to 2 hours x number of weeks for the sprint.
20
SCRUM CEREMONIES- DAILY SCRUM MEETING
The daily Scrum is a 15-minute time-boxed meeting of the Development Team held at the same time and place each day.
It is NOT a status meeting.
21
SCRUM CEREMONIES - DAILY SCRUM MEETING
During the meeting, each team member answers three questions:
What have you done since yesterday?
What are you planning to do today?
Any impediments/stumbling blocks?
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.
22
SCRUM CEREMONIES – SPRINT REVIEW
The Sprint Review occurs on the last day of the Sprint and is time-boxed to one hour per week of the Sprint. The Product Owner and other interested parties should be present along with the Development Team. The Development Team demonstrates the work that was “Done” during the Sprint and as well as reporting on any issues that were encountered
23
SCRUM RITUALS – SPRINT RETROSPECTIVE
The Sprint Retrospective follows the Sprint Review. The Scrum Team assesses how the last Sprint went (people, processes and tools), identifying items that went well and areas for improvement. The Retrospective lasts approximately ¾ hour.
24
SCRUM ARTIFACTS
Product Backlog
Sprint Backlog
Sprint Burn down chart
25
SCRUM ARTIFACTS - PRODUCT BACKLOG
The product backlog is an ordered list of requirements that is maintained for a product. It consists of features, bug fixes, non-functional requirements, etc.—whatever needs to be done in order to successfully deliver a viable product. The product backlog items (PBIs) are ordered by the Product Owner based on considerations like risk, business value, dependencies, date needed, etc.
26
SCRUM ARTIFACTS - PRODUCT BACKLOG
© http://www.codeproject.com/Articles/324056/How-the-Visual-Studio-ALM-Rangers-use-Team-Foundat
27
SCRUM ARTIFACTS – SPRINT BACKLOG
The sprint backlog is the list of work the Development Team must address during the next sprint. The list is derived by selecting product backlog items from the top of the product backlog until the Development Team feels it has enough work to fill the sprint.
28
SCRUM ARTIFACTS – SPRINT BACKLOG
© http://www.codeproject.com/Articles/324056/How-the-Visual-Studio-ALM-Rangers-use-Team-Foundat
29
SCRUM ARTIFACTS –BURN DOWN CHART
The sprint burn down chart is a publicly displayed chart showing remaining work in the sprint backlog. Updated every day, it gives a simple view of the sprint progress. It also provides quick visualizations for reference.
30
SCRUM ARTIFACTS –BURN DOWN CHART
© http://blog.johnsworkshop.net/understanding-how-the-team-webaccess-burndown-chart-works-part-1/
31
SCRUM BEST PRACTICES
User stories
Planning Poker
Scrum board
32
SCRUM BEST PRACTICES – USER STORIES
User stories are part of an agile approach that helps shift the focus from writing about requirements to talking about them. All agile user stories include a written sentence or two and, more importantly, a series of conversations about the desired functionality.
As a <type of user>, I want <some goal> so that <some reason>.
33
SCRUM BEST PRACTICES – PLANNING POKER
Planning poker, also called Scrum poker, is a consensus-based technique for estimating, mostly used to estimate effort or relative size of development goals in software development. In planning poker, members of the group make estimates by playing numbered cards face-down to the table, instead of speaking them aloud.
34
SCRUM BEST PRACTICES – SCRUM BOARD
A Scrum board is a board that was created using the "Scrum" preset (see Creating a Board). Scrum boards are for teams that plan their work in sprints. A Scrum board is visible in both Plan mode and Work mode.
35
SCRUM BEST PRACTICES – SCRUM BOARD
© http://4.bp.blogspot.com/-T58pOBwERqM/TslGtYlt3qI/AAAAAAAAAD0/D8oyqfKYY7I/s1600/wa-board.JPG
36
QUESTIONS?
37
THANK YOU