Download - Agile Scrum in Theory and Practice
![Page 1: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/1.jpg)
Agile Scrum in Theory and Practice
Application Development with The Agile Scrum Method
Tom Pletzke, CSM
![Page 2: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/2.jpg)
Scrum Alliance
“Scrum is an agile framework for completing complex projects. Scrum originally was formalized for software development projects, but works well for any complex, innovative scope of work. The possibilities are endless. The Scrum framework is deceptively simple.”
http://www.scrumalliance.org/ http://www.youtube.com/watch?&v=XU
0llRltyFM
![Page 3: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/3.jpg)
Why Agile?
What are the Agile principles and practices that guide teams?
What are the roles of an Agile team? How do teams apply these Agile
practices? Maintain a high-level Product Backlog Conduct Release Planning Conduct Sprint Planning Track progress daily and stick to a heartbeat Deliver a demo with a review and retrospective
![Page 4: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/4.jpg)
Agile software development practices were introduced during 2007 to help improve productivity, cost and time to market
The IT industry widely recognizes that Agile practices help teams: Effectively manage changing requirements which leads to… Increased productivity (and Business Partner satisfaction) which
facilitates… Improved time to market therefore…
….driving cost down Agile practices address the typical IT project problems
through…. Developing usable software more quickly Providing timely and regular visibility of the software to the
Business Partner “Small to medium sized teams using Agile are on average
30-40% more productive than traditional teams” ****David Garmus – founder The David Consulting Group”
![Page 5: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/5.jpg)
Several popular variations of Agile Software Development exist, we will discuss the Scrum framework in this presentation
Methodologies all characterized by: Adaptive rather than predictive processes People oriented rather than process oriented Assume requirements will change Assume Business Partners do not know what
they want until they start using Short iterations or “builds” of 2 – 6 weeks Tight project planning for the short iterations Constant Business Partner interaction Integration/ regression testing as each build is
integrated into the whole
![Page 6: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/6.jpg)
At the heart of Agile, is a paradigm shift in the way projects are planned and managed
Constraints
Estimates
Requirements
ScheduleCost
ScheduleCost
Features
Plan Driven
Current PEP
Value /VisionDriven
Agile PEP
The Plan creates cost/schedule estimates The Vision creates feature estimates
Waterfall Agile
![Page 7: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/7.jpg)
The Waterfall method typically engages the Business Partner at specified touch points, with weeks of silence in between
Software SystemRequirements
Software SystemDesign
Detailed Design
Code & Unit Test
SystemRequirements
Review
PreliminaryDesign Review
Critical DesignReview
Test ReadinessReview
Business PartnerEngagement
System Concept
Business PartnerEngagement
Integration & Test
![Page 8: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/8.jpg)
Agile methods create a Business Partner feedback cycle with the project team which enables regular visibility of the software product
Product Owners
Define System
Plan Releases
Small Releases
Iterate Accept?
Track & Adjust
Release Roadmap
Product Backlog
Product Owner is a key role to this
process
![Page 9: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/9.jpg)
The success of Agile depends on the implementation of these guiding practices
Time-boxed development Establish a heartbeat through standup meetings, short
iterations and incremental releases Plan, design, build, test and review each iteration
Just in time elaboration of requirements Maximize work not done by avoiding unnecessary inventory
Highest priorities first Implement highest priorities to acceptance
Pull quality forward Reduce technical debt by building in quality early in the
lifecycle Collaborate, Inspect and Adapt
Visibility, reviews, demonstrations, retrospectives
![Page 10: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/10.jpg)
Program/Product Management with Scrum relies on multiple levels of planning with ever increasing detail
High Level (Less detail)
Release 1 Release 2 Release 3
Sprint 1 Sprint 2 Sprint 3 Sprint 4
Task 1 Task 2 … Task n
Who, What, How Long
Who, What, How LongWhat’s leftto do?
Product Roadmap
Release Plan
Sprint Plan
DailyVery Detailed
Burndown Chart
Product Vision
![Page 11: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/11.jpg)
At the lowest level of planning is the Sprint or iteration – this is where the task level details are elaborated and executed
Daily Scrum Meeting• Done since last meeting• Plan for today• Obstacles?
24 hours
14 days
Product Backlog Prioritized product featuresDesired by Business Partner
Backlog tasksexpandedby team
Sprint Planning Meeting• Review Product Backlog• Estimate Sprint Backlog• Commit to 14 days
Potentially ShippableProduct Increment
Sprint Review Meeting• Demo features to all• Retrospective on the Sprint
Sprint BacklogFeatures assigned to SprintEstimated by team
15 mins
3-4 hrs1-2 hrs
Sprint = iteration
Scrum Framework
![Page 12: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/12.jpg)
Agile encourages “cake slice” development and testing…
So the Product Owner has visibility to functionality earlier
and provide feedback often…
…as opposed to the traditional “cake layer” approach in waterfall methods
![Page 13: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/13.jpg)
Collaboration and Consensus
High performance teams rely on collaboration to create and respond to change
Collaboration – team makes decisions, project manager only guides the decision process
Consensus – “I can live with and support that.” Fist of five:
▪ 5 = wild, unbridled support▪ 4 = this is a fine idea, wish I’d thought of it▪ 3 = I can live with and support it▪ 2 = I have reservations I’d like to think about▪ 1 = I am very opposed; we shouldn’t move forward
![Page 14: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/14.jpg)
Pigs and Chickens
Pigs are fully committed (Development Team, Product Owner/Business Partner, Project Manager/Scrum Master)
Chickens can make contributions (Team Advisors) Only the fully committed can speak in daily
meetings Contributors only get to observe in Daily Standup They are active contributors in Planning and
Review meetings
![Page 15: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/15.jpg)
Six Step Approach for Applying Agile Practices
Create a Product Vision Define a Product Backlog Conduct Release Planning Conduct Sprint Planning Track Daily Progress and Maintain
Heartbeat Deliver a Sprint Demo, Review, and
Retrospection
![Page 16: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/16.jpg)
Define a Product Backlog
Product Backlog – what are all the desired features for this product?
Product Owner defined and prioritized though others contribute items (Architect, Team, Stakeholders)
Team estimate at the gross level Story Points - tells the team how large a story is
Prioritization and estimation: First best guess, high order Fluid and organic
New items can be added at any time to the Product Backlog
![Page 17: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/17.jpg)
Story Points
A story point is a number that tells the team how large a story is
1 2 3 5 13 10040
Complexity
Effort
Unknowns
A typoThe largest new feature
Story points == actual hours
8 21
![Page 18: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/18.jpg)
Actual Backlog From iPhone Project
Story ID Story Priority Points Release Sprint Status
1.1 Download and Install Software 1 2 1 1 Complete
1.2 Procure Mac 2 2 1 1 Complete
1.3 Program simple "hello world" app in xcode4 3 5 1 1 Complete
1.4 Design Meeting with Sponsor 4 5 1 1 Complete
1.5 Research web service connectivity to iPhone 5 2 1 1 Complete
1.6 LCB app icon graphic completed 6 3 1 1 Complete
1.7 Place "hello world" app on personal iPhone 7 2 1 1 Complete
1.8 Screen menu display complete 8 13 1 1 Complete
1.11 Complete bio iPhone page 9 5 1 1 Complete
1.12 Link Core Data database to iPhone bio page 10 3 1 1 Complete
1.15 Complete Event listings display 11 8 1 1 Complete
1.16 Link Core Data database to event listing page 12 5 1 1 Complete
1.13 Complete web links iPhone page 13 3 1 1 Complete
1.14 Link Core Data database to web links page 14 3 1 1 Complete
1.17 Link and add app to personal iPhone 15 3 1 1 Complete
1.18Testing phone app 16
3 1 1Complete
1.10
Write program to fill Core Data database from XML web page file for ( event listing, web links, bio)
17
13 1 1
Complete
1.9 Test HTTP GET calls to XML Web Page 18 5 1 1 Complete
1.19 Add event button to home page to go to events page. 19 2 2 1 Blocked
1.20
Add email button to detailed events page that will send event details via iPhone mail client.
20 8 2 1
Blocked
1.21 Use RSS feed from ReverbNation instead of Lost City Band XML. 21 5 2 1 Blocked
![Page 19: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/19.jpg)
Actual Release Plan From iPhone Project
RELEASE PLAN
Release: 1.0 Theme: Apple iPhone App for the Lost City Band Updated: 10/14/2011 Release Start Date: 9/30/11 Release End Date: 12/2/11 Release Story Points: 85Number of Sprints: 1 Total Story Points Expected: 85Total Story Points Planned: 85Total Story Points Completed: 85Expected Percent Complete (EPC)100%Actual Percent Complete (APC) 100%Sprint #: 1Theme Apple iPhone App for the Lost City BandStatus CompleteStart Date 9/30/2011End Date 12/2/2011Story Points Planned 85Story Points Completed 85
Stories Included (ID#)
1.1 Download and Install Software1.2 Procure Mac1.3 Program simple "hello world" app in xcode41.4 Design Meeting with Sponsor1.5 Research web service connectivity to iPhone1.6 LCB app icon graphic completed1.7 Place "hello world" app on personal iPhone1.8 Screen menu display complete1.9 Test HTTP GET calls to XML Web Page1.10 Write program to fill SQLite database from XML web page file for ( event listing, web links, bio)1.11 Complete bio iPhone page1.12 Link Core Data database to iPhone bio page1.13 Complete web links iPhone page1.14 Link Core Data database to web links page1.15 Complete Event listings display1.16 Link Core Data database to event listing page1.17 Link and add app to personal iPhone1.18 Testing phone app
![Page 20: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/20.jpg)
Sprint Planning Meeting
Sprint Planning
Meeting
Product Backlog
Team Capabilities
Business Conditions
Technology
Current Product
Produ
ct O
wner
Devel
opm
ent T
eam
Man
agem
ent
Busin
ess
Partn
ers
• Priorities• Detailed Tasks• Detailed Estimates• Assignments
Sprint Goal
Sprint Backlog
Inputs
Participants
Outputs
![Page 21: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/21.jpg)
Sprint Planning Meeting
Review the current Product/Release Backlog Estimate team velocity Select an initial Sprint Backlog with theme Task out stories and provide estimates
using story points Finalize priorities Complete task definitions and assignments Commit team Alert stakeholders
![Page 22: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/22.jpg)
Daily Standup
Purpose: To collect status and set the day in motion
Participants: All team members: developers, testers, Business Partners, project manager
Agenda: 15 minutes (1-2 min/participant)▪ “What did I do yesterday?”▪ “What I am doing today?” ▪ “What is getting in my way?”
Outcomes: Team commits to tasks for the day Re-assignments as necessary Updates to Burndown Chart, task status, and story
status
![Page 23: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/23.jpg)
Daily Standup—The “Gotchas”
Same place/same time every day (What works for the team?)
Always start on time – honor each other’s time
NO PROBLEM SOLVING! Everyone is responsible for keeping to
the agenda and time box This is the TEAM’S meeting.
![Page 24: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/24.jpg)
Actual Burndown From iPhone Project
Sta
rt
30
-Se
p
7-O
ct
14
-Oct
21
-Oct
28
-Oct
4-N
ov
11
-No
v
18
-No
v
25
-No
v
2-D
ec
9-D
ec
16
-De
c
23
-De
c
30
-De
c
6-Ja
n
-
20
40
60
80
100
120
140
Sprint 1 Burndown Chart
Remaining Resource Capacity Remaining Hours of Work
![Page 25: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/25.jpg)
Sprint Burndown Spreadsheet – iPhone Project
Hours of Work Remaining @
Task Description ID Priority Responsible
Status Actuals Start 30-Sep 7-Oct 14-Oct 21-Oct
Remaining Capacity (hours left) 126
126
112
98
84
Sprint Total 121
121
107
99
89
Download and Install Software 1.1 1
Tom Completed 8 4 4 0 0 0
Procure Mac 1.2 2
Tom Completed 3 3 3 0 0 0
Program simple "hello world" app in xcode4 1.3 3
Tom Completed 5 3 3 0 0 0
Design Meeting with Sponsor 1.4 4
Tom Completed 5 2 2 0 0 0
Research web service connectivity to iPhone 1.5 5
Tom Completed 10 2 2 0 0 0
LCB app icon graphic completed 1.6 6
Tom Completed 3 4 4 4 0 0
Place "hello world" app on personal iPhone 1.7 7
Tom Completed 2 2 2 2 0 0
Screen menu display complete 1.8 8
Tom Completed 35 20 20 20 18 8
Complete bio iPhone page
1.11 9
Tom Completed 6 4 4 4 4 4
Link Core Data database to iPhone bio page
1.12 10
Tom Completed 8 4 4 4 4 4
![Page 26: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/26.jpg)
Issue Log – iPhone – UAT / Meetings
Issue Log
ID Issue Originator Issue DateAction for Status Comment1.5Raised issue that web
service may be difficult.Tom 10/7/2011 Tom Closed Will research in more detail this week.
Solution: Will be using SQLite, XML, and HTTP GET to retrieve data.
1.15Raised issue that event listing is a critical part of the project and may need attention earlier
Tom 10/13/2011Tom Closed Will research the difficulty of event listing from SQLite. Spent many hours researching and feel I can do the project using sqlite most likely using something called core data.
2Presentation date for Walsh project is the same date as a big update at job.
Tom 28-Oct-11 Tom Closed Tom will let work know that he is not available the morning of December 10. Tom's work was notified and has agreed that it is ok for Tom to be unavailable the morning of December 10.
2.4No backup for mini mac Tom 21-Nov-11 Tom Closed Investigate options if min-mac fails. Will see if a laptop with xcode4 loaded will be available at the fair.
![Page 27: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/27.jpg)
User Stories
Show Actual User Story
![Page 28: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/28.jpg)
Design Document
Show Actual Design Document
![Page 29: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/29.jpg)
Release Workbook
Show Actual Release Workbook
![Page 30: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/30.jpg)
Sprint Demo
Sprint Demo Potentially shippable functionality Development team conducts DEMO for Product
Owner and Stakeholders Team gathers feedback Product Owner uses demo to guide future
decisions Spend no more than 2-3 hours preparing the
demoNO POWERPOINT!
![Page 31: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/31.jpg)
Sprint Retrospective
The team’s chance to build in learning and adjustment
Retrospection is at the heart of the agile principles – creating and responding to change about how the team will perform
Sprint Retrospective: What worked well in this Sprint that we
would do again? What caused us difficulty? What new things do we want to try in the
next Sprint? Celebrate!
![Page 32: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/32.jpg)
Success Factors for Agile
Co-located teams are better Small team size – 8 or less ideally Product owner involvement No multiplexing of team members Sustainable pace Continuous integration of builds Concurrent and automated testing Power of the retrospective
![Page 33: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/33.jpg)
Rally Software
Web Based Scrum Management Software
http://www.rallydev.com/
![Page 34: Agile Scrum in Theory and Practice](https://reader035.vdocuments.mx/reader035/viewer/2022062314/56813056550346895d960e6a/html5/thumbnails/34.jpg)
Agile Scrum in Theory and Practice
Application Development with The Agile Scrum Method
Tom Pletzke, CSM
?