Download presentation
Presentation is loading. Please wait.
Published byDella Tyler Modified over 9 years ago
1
Agile Development and Data With Scrum and TDD Andy Leonard VSTeamSystemCentral.com With thanks to Brian Knight, SQL Server MVP SQLServerCentral.com
2
Scrum, Defined Agile methodology Scrum is application of Agile –Rugby term –Self-organizing teams –Iterative approaches of 30 days called sprints –Adopt whatever engineering practice works for you
3
Daily Scrum Hosted by ScrumMaster Attended by all, but Stakeholders don’t speak Same time every day Answer: 1) What did you do yesterday? 2) What will you do today? 3) What’s 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 Backlog List of requirements & issues Owned by Product Owner Anybody can add to it Only Product Owner prioritizes Sprint Goal One-sentence summary Declared by Product Owner Accepted by team Sprint Backlog List of tasks Owned by team Only team modifies it Blocks List List of blocks & unmade decisions Owned by ScrumMaster Updated daily Increment Version of the product Shippable functionality (tested, documented, etc.) Key Meetings Sprint Planning Meeting Hosted 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 Meeting Hosted by ScrumMaster Attended by all Informal, 4-hour, informational Team demos Increment All discuss Hold retrospective Announce 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’
4
Scrum Methodology
5
The Scrum Master Represents management to the project Typically filled by a Project Manager or Team Leader Responsible for keeping meetings short and direct and removing impediments
6
The Scrum Team Typically 5-10 people Cross functional –QA, Programmers, UI, DBAs, etc Members should be full time unless role is minor (like sysadmin) Teams are self-organizing Optimally, membership only changes between sprints
7
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
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."
9
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 high level) in advance. This column just contains a checkmark to indicate the tests 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 programmer who chooses to work on it moves it over when she's ready to start the task. Often this happens during the Daily Scrum when someone says, "I'm going to work on the boojum today." To Verify--A lot of tasks have corresponding test task cards. So, if there's a "Code the boojum class" card there is likely one or more task cards related to testing: "Test the boojum," "Write FitNesse tests for the boojum," "Write FitNesse fixture for the boojum," etc. Some task cards don't often get corresponding test cards ("Fix Bug #321 in Bugzilla") so those are placed in the "To Verify" column. Done--Cards pile up over here when they're done. They're removed at the end of the sprint. Sometimes I remove some or all during a sprint if there are a lot of cards.
10
Sample Task lists
11
Sample task boards
12
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 SQL Server in addition to Oracle” –“Convert to a new reporting structure”.
13
Big Visible Charts
14
Product Backlog
15
Sprint Backlog
16
Sprint Burndown Chart
17
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
18
Scrum to large groups
19
References Ken Schwaber is one of the originators of Scrum and has written two books on Scrum: –Agile Software Development with Scrum with Mike Beedle. –Agile Project Management with Scrum http://xp123.com/ http://www.mountaingoatsoftwa re.comhttp://www.mountaingoatsoftwa re.com
20
Questions?
21
Thank You! www.AndyLeonard.net Andy@AndyLeonard.net Visit www.VSTeamSystemCentral.com Andy@VSTeamSystemCentral.com
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.