Scrum is an agile software development process that allows for incremental development of software through short development cycles called sprints. It is beneficial for complex and ever-changing environments. Scrum involves product backlogs to prioritize tasks, sprints to develop usable functionality in 1-4 week increments, and daily scrum meetings for teams of 7-10 people to track progress. Key roles include the ScrumMaster who facilitates the process, the Product Owner who represents stakeholders, and the team who does the development work. The process aims to improve team communication and allow customers to provide frequent feedback.
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
Scrum: Agile Software Development
1. SCRUM: Agile Software Development
Rajesh SharmaRajesh SharmaRajesh SharmaRajesh Sharma
2. 7/17/2010www.rajeshsharma.co.in2
Scrum Benefits
•Scrum: A software development process
•Scrum for Incrementally building software
•complex ever changing design & development environment
•Scrum is beneficial for pattern in software problems
•Patterns are recurring problems
•Recurring problem must have been resolved
•Let’s take benefit of team experience
• Some people are not very Good at planning their workload
•Sprint goals are very good for keeping people on track
•The sprinter should break his work into pieces
•He must focus on his sprint goal
•Any slip will be visible with reasons
3. 7/17/2010www.rajeshsharma.co.in3
Scrum: For Team Size 10
•Defining and applying Scrum Variants
•Initial planning of work is done
•Product Backlog:Product Backlog:Product Backlog:Product Backlog: The list of currently identified tasks for Product
•Tasks are prioritized and executed
•During a sprint no changes are allowed for current backlog
•SprintSprintSprintSprint: One to Four weeks short development phase
•A Time-Boxed development
•Visible, usable functionality development
•Sprint Backlog:Sprint Backlog:Sprint Backlog:Sprint Backlog: Task for sprint must be well quantified & achievable
•Task for sprint must be assigned to one individual
•Scrum meetings need not be daily
•Two/three times per week may work
4. 7/17/2010www.rajeshsharma.co.in4
Three Questions
Each team member must answer three questions…..
1. What have you completed, relative to the backlog, since the last
Scrum meeting ?
2. What obstacles got in your way of completing this work ?
3. What specific things do you plan to accomplish, relative to the
backlog, between now and the next Scrum meeting?
5. 7/17/2010www.rajeshsharma.co.in5
Scrum Meeting Goals
•focusing the effort of developers on the backlog items
•communicating the priorities of backlog items to team members
•keeping everyone informed of team progress and obstacles
•resolving obstacles as quickly as possible
•tracking progress in delivering the backlog functionality
•addressing and minimizing project risk.
6. 7/17/2010www.rajeshsharma.co.in6
Sprint
•Sprint Planning MeetingSprint Planning MeetingSprint Planning MeetingSprint Planning Meeting
•At the beginning of the sprint cycle a "Sprint Planning Meeting" is held.
•Select what work is to be done
•Prepare the Sprint Backlog that details the time it will take to do that work, with the
entire team
•Identify and communicate how much of the work is likely to be done during the current
sprint
•At the end of a sprint cycle, two meetings are held:
•The "Sprint Review Meeting" and the "Sprint Retrospective”
•Sprint Review MeetingSprint Review MeetingSprint Review MeetingSprint Review Meeting
•Review the work that was completed and not completed
•Present the completed work to the stakeholders (a.k.a. "the demo")
•Incomplete work cannot be demonstrated
•Sprint Retrospective MeetingSprint Retrospective MeetingSprint Retrospective MeetingSprint Retrospective Meeting
•All team members reflect on the past sprint
•Make continuous process improvements
•Two main questions are asked in the sprint retrospective: What went well during the
sprint? What could be improved in the next sprint?
7. 7/17/2010www.rajeshsharma.co.in7
Scrum: Other Benefits
•the product becomes a series of manageable chunks
•progress is made, even when requirements are not stable
•everything is visible to everyone
•team communication improves
•the team shares successes along the way and at the end
•customers see on-time delivery of increments
•customers obtain frequent feedback on how the product actually
works
•a relationship with the customer develops, trust builds, and
knowledge grows,
•a culture is created where everyone expects the project to succeed.
8. 7/17/2010www.rajeshsharma.co.in8
Scrum: Roles
•The "ScrumMasterScrumMasterScrumMasterScrumMaster", who maintains the processes
•The "Product OwnerProduct OwnerProduct OwnerProduct Owner", who represents the stakeholders;
•The Product Owner represents the voice of the customer.
• He/she ensures that the Scrum Team works with the "right things" from
a business perspective.
•The "TeamTeamTeamTeam", a cross-functional group of about 7-10 people who do
the actual analysis, design, implementation, testing, etc.
•The Pigs:The Pigs:The Pigs:The Pigs: The Pigs are the ones committed to the project in the
Scrum process—they are the ones with "their bacon on the line.“
•The Chickens:The Chickens:The Chickens:The Chickens: Chicken roles are not part of the actual Scrum process
•Stakeholders (customers, vendors)
•Managers: People who will set up the environment for the product
development organizations.
9. 7/17/2010www.rajeshsharma.co.in9
Scrum Master
•The Scrum Master leads the scrum activity
•Scrum Master must make it a short meeting
•Stick to topics of scrum
•15-30 minutes are good enough
•Problems should be only stated
•No brainstorming on problems
•Regular scheduled meeting are efficient
• Records the decision made at meetings
•The ScrumMaster is NOT responsible for the transition from
traditional methods of working to Scrum or the implementation of
Scrum.
After a Sprint is over, a meeting is held between all concerned parties
for further development and/or any requirement changes.
10. 7/17/2010www.rajeshsharma.co.in10
Team Objective
•Teams should be independent
•work definitions well defined
•Interfaces well defined
•Above all of this
•any rule is just a rule
•Allow room for changes for business reasons
•Backlogs can be modified for new business strategy
•Scrum is not for large complex teams