8/10/2019 Agile Development and Data With Scrum and TDD 1
1/21
Agile Development and DataWith Scrum and TDDAndy Leonard
VSTeamSystemCentral.com
With thanks to Brian Knight, SQL Server MVPSQLServerCentral.com
8/10/2019 Agile Development and Data With Scrum and TDD 1
2/21
Scrum, Defined
Agile methodology
Scrum is application of Agile
Rugby term Self-organizing teams
Iterative approaches of 30 dayscalled sprints
Adopt whatever engineeringpractice works for you
8/10/2019 Agile Development and Data With Scrum and TDD 1
3/21
Daily ScrumHosted by ScrumMaster
Attended by all, but Stakeholdersdont speak
Same time every day
Answer: 1) What did you do
yesterday? 2) What will you do
today? 3) Whats in your way?Team updates Sprint Backlog; ScrumMaster
updates Blocks List
PO
Product Owner: Set
priorities
Roles
SM
ScrumMaster:
Manage process,remove blocks
T
Team: Develop
product
SH
Stakeholders:
observe & advise
Key Artifacts
Product BacklogList of requirements &
issues
Owned by Product Owner
Anybody can add to it
Only Product Owner prioritizes
Sprint GoalOne-sentence summary
Declared by Product Owner
Accepted by team
Sprint BacklogList of tasks
Owned by team
Only team modifies it
Blocks ListList of blocks & unmade
decisions
Owned by ScrumMasterUpdated daily
IncrementVersion of the product
Shippable functionality (tested,
documented, etc.)
Key Meetings
Sprint Planning MeetingHosted by ScrumMaster; -1 day
In: Product Backlog, existing
product, business & technology
conditions
1. Select highest priority items in Product
Backlog; declare Sprint Goal
2. Team turns selected items into Sprint
Backlog
Out:: Sprint Goal, Sprint Backlog
Sprint Review MeetingHosted by ScrumMaster
Attended by all
Informal, 4-hour, informational
Team demos Increment
All discuss
Hold retrospectiveAnnounce next Sprint Planning
Meeting
Product
Backlog
Development Process
Increment
Sprint Planning Meeting
Daily Scrum
Daily Work
Sprint Goal
Sprint
Backlog
Blocks List
Product
Sprint Review Meeting
Sprint:
30 days each
Product
Backlog
Increment
8/10/2019 Agile Development and Data With Scrum and TDD 1
4/21
Scrum Methodology
8/10/2019 Agile Development and Data With Scrum and TDD 1
5/21
The Scrum Master
Represents management to theproject
Typically filled by a ProjectManager or Team Leader
Responsible for keepingmeetings short and direct and
removing impediments
8/10/2019 Agile Development and Data With Scrum and TDD 1
6/21
The Scrum Team
Typically 5-10 people
Cross functional QA, Programmers, UI, DBAs, etc
Members should be full timeunless role is minor (likesysadmin)
Teams are self-organizing Optimally, membership only
changes between sprints
8/10/2019 Agile Development and Data With Scrum and TDD 1
7/21
Daily Scrums
Daily and 15 mins at most Can cancel the weekly status meetings!
Answer three questions: What did you do yesterday?
What will you do today?
Are there any impediments in your way?
Not for problem-solving Chickens and pigs are invited
Only pigs can talk
8/10/2019 Agile Development and Data With Scrum and TDD 1
8/21
Sample Roadblocks
My ____ broke and I need a new one today. I still haven't got the software I ordered a
month ago. I need help debugging a problem with
______. I'm struggling to learn ______ and would like
to pair with someone on it. I can't get the vendor's tech support group to
call me back. Our new contractor can't start because no
one is here to sign her contract. I can't get the ____ group to give me any
time and I need to meet with them. The department VP has asked me to work on
something else "for a day or two."
8/10/2019 Agile Development and Data With Scrum and TDD 1
9/21
Taskboard
Notes--Just a place to jot a note or two Story--The story description ("As a user I want to...") shown on that row. To Do--This holds all the cards that are not done or in process. Tests Specified--I like to do "Story Test-Driven Development," which
means the tests are written before the story is coded. I'm not a stickler
about it but it does help when there's time to specify the tests (at a highlevel) in advance. This column just contains a checkmark to indicate thetests are specified. Ideally, not a lot of work (in the form of task cards)crosses this column without a checkmark in it.
Work In Process--Any card being worked on goes here. The programmerwho chooses to work on it moves it over when she's ready to start thetask. Often this happens during the Daily Scrum when someone says, "I'mgoing to work on the boojum today."
To Verify--A lot of tasks have corresponding test task cards. So, if there'sa "Code the boojum class" card there is likely one or more task cardsrelated to testing: "Test the boojum," "Write FitNesse tests for theboojum," "Write FitNesse fixture for the boojum," etc. Some task cardsdon't often get corresponding test cards ("Fix Bug #321 in Bugzilla") sothose are placed in the "To Verify" column.
Done--Cards pile up over here when they're done. They're removed at theend of the sprint. Sometimes I remove some or all during a sprint if there
are a lot of cards.
8/10/2019 Agile Development and Data With Scrum and TDD 1
10/21
Sample Task lists
8/10/2019 Agile Development and Data With Scrum and TDD 1
11/21
Sample task boards
8/10/2019 Agile Development and Data With Scrum and TDD 1
12/21
Sprints
Usually 30 days in length
No changes allowed during this
sprint unless team agrees Need overlap
Need a theme for each sprint
Make the application run on SQLServer in addition to Oracle
Convert to a new reportingstructure.
8/10/2019 Agile Development and Data With Scrum and TDD 1
13/21
Big Visible Charts
8/10/2019 Agile Development and Data With Scrum and TDD 1
14/21
Product Backlog
8/10/2019 Agile Development and Data With Scrum and TDD 1
15/21
Sprint Backlog
8/10/2019 Agile Development and Data With Scrum and TDD 1
16/21
Sprint Burndown Chart
8/10/2019 Agile Development and Data With Scrum and TDD 1
17/21
Sprint Review Meeting
Entire team presents the iteration
Typically in form of demo
Very informal with 2-hour prep time rule Participants
Customers
Management
Product Owner
Other engineers
8/10/2019 Agile Development and Data With Scrum and TDD 1
18/21
Scrum to large groups
8/10/2019 Agile Development and Data With Scrum and TDD 1
19/21
References
Ken Schwaber is one of theoriginators of Scrum and haswritten two books on Scrum:
Agile Software Development withScrum with Mike Beedle.
Agile Project Management withScrum
http://xp123.com/ http://www.mountaingoatsoftwa
re.com
http://xp123.com/http://www.mountaingoatsoftware.com/http://www.mountaingoatsoftware.com/http://www.mountaingoatsoftware.com/http://www.mountaingoatsoftware.com/http://xp123.com/8/10/2019 Agile Development and Data With Scrum and TDD 1
20/21
Questions?
8/10/2019 Agile Development and Data With Scrum and TDD 1
21/21
Thank You!
www.AndyLeonard.net
Visit
www.VSTeamSystemCentral.com