Agile Development and Data With Scrum and TDD Andy Leonard VSTeamSystemCentral.com With thanks to Brian Knight, SQL Server MVP SQLServerCentral.com.

Slides:



Advertisements
Similar presentations
“Something called agile”
Advertisements

ITEC 370 Lecture 24 Lifecycles. Review Questions? –Grades for Requirements/Design Doc F give prototype demonstration –Testing plan for your software Maintenance.
What is Agile? Agile is a software methodology based on iterative and incremental development, where requirements and solutions evolve through collaboration.
Agenda −Scrum with TFS 2010 using MSF for Agile 5.0 −Planning the Project −How do you plan the project? −Project planning in TFS 2010 −Planning a Sprint.
CSE 403 Lecture 24 Scrum and Agile Software Development Reading:
ECE44x SCRUM Overview slides adapted from Marty Stepp
Agile Project Management with Scrum
Lecture 3 CS171: Game Design Studio 1I UC Santa Cruz School of Engineering 12 January.
Process and tools Individuals and interactions over Following a plan Responding to change over Comprehensive documentation Working software over Contract.
An Introduction to Agile SCRUM Methodology
Scrum. An evolutionary/iterative/incremental/agile software process The main roles in Scrum are: – Scrum team: Team of software developers – Scrum master.
Intro to Scrum. What is Scrum? An answer to traditional “fixed cost / strict requirements” contracts which had very high rates of failure Recognizes the.
Presentation from: See Also: scrumreferencecard.com/ScrumReferenceCard.pdf.
Scrum CS These slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
© Timothy Korson Page 1 Scrum by Dr. Korson For CPTR 209 Software Engineering Version
Morning – 9am Getting Started Agile Manifesto Values & Principles Scrum Framework ~~ 10:40 to 11:00 Break ~~ Scrum Roles Backlog Grooming Estimation.
Agile development By Sam Chamberlain. First a bit of history..
An Introduction to Scrum
An Introduction to Agile SCRUM Methodology
Agile-SCRUM. Introduction to SCRUM Sanil Xavier What is Scrum?
Agile Methodologies for Project Management By – Komal Mehta.
Trusted IT Group. The challenge: 40 active, concurrent IT projects  Unsatisfactory Project Delivery.
Sprint – Weekly cadence
0 End-to-End SDLC with Agile Methodologies Baiju Joseph, Senior QE Manager,Yahoo! & Srinivasan Desikan, Master System Technologist, HP 17 th Dec
CSE G674/2009 Project Project Management Section Presented by: Amir Aref Adib.
Agile Software Development Brian Link
What is Scrum Process? Where is it used? How is it better?
Software Engineering- Scrum 徐 瑋 Alen 林芳瑜 Flora 1.
SCRUM introduction 6 April Scrum Team are known as pigs because they’re committed to delivering Sprint Goal People who are involved but not dedicated.
Release and Iteration Planning September 13, 2008.
SCRU M Scrum Overview - Commonly Used Terms Ali Qureshi, parorrey.com – 31 st Aug, 2015 PI Media parorrey.com.
Stephen Chief Strategy Officer Telerik
1 - Agile in a nutshell. 2 - Basic principles ●Relies on an iterative, incremental development mechanism with continuous adaptation to customer requirements.
Process is continuously improving Have Definition of Done (DoD) DoD achievable within each iteration Team respects DoD The bottom line Delivering working,
Dr. Nguyen Hai Quan.  Why SCRUM?  What is SCRUM?  Some terms  SCRUM Meetings  Sprint  Estimation  Product backlog  Sprint backlog  Whiteboard.
Copyright © 2015 Curt Hill Software Development Paradigms What do you need to know?
The Scrum Framework with Team System Andy Leonard VSTeamSystemCentral.com.
Het einde van het beroep van tester - Wat Agile, DevOps en Scrum betekenen voor het testvak -
Presentation from: See Also: scrumreferencecard.com/ScrumReferenceCard.pdf.
Copyright © by Mark J. Sebern Software Engineering Process I SE 2800.
SCRUM.
PV213 EIS in Practice: 06 – Development process 1 PV213 Enterprise Information Systems in Practice 06 – Development process.
AGILE - IMPLEMENTATION (C) CLARION TECHNOLOGIES. ability to move quickly and easily…. AGILE MEANING (LITERALLY)
Lecture 5 17/9/15. What is Scrum? Scrum is one of the leading agile software development processes Agile framework for completing complex projects. Originally.
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
Agile Ceremonies. Agile - Ceremonies cer·e·mo·ny serə ˌ mōnē noun 1. a formal religious or public occasion, typically one celebrating a particular event.
Agile CRM Applying the Scrum Methodology for Deployment Neil Benson.
Software Quality Assurance Chip Ene, February 14, 2015.
#msdevcon Community Track IMPLEMENTATION OF SCRUM Bernardin Katić Insa Investment Software AG.
Managing Agile Software Development Teams Using Scrum AKA: Wrangling Developers for Fun and Profit!
Informed Traveler Program and Applications Agile / Scrum Overview Jerry Inberg.
The Scrum Framework Presented by Somnath Ghosh Scrum Practitioner 24 hours weeks.
Copyright © Curt Hill Scrum Software Development Paradigms What is a Scrum?
Scuola Politecnica Dipartimento DITEN Università degli Studi di Genova An Introduction to Scrum and XP Prof. Riccardo Berta.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum.
Wael Ellithy, Ph.D. Arx ICT
SCRUM Scrum and Agile Software Development Reading:
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Agile Scrum Management
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Scrum CS These outstanding slides were created by Kevin Schenk, BS in Computer Science, Purdue University, 2012.
Product Backlog List of things that needs to be done to make the product come into existence 
Scrum MODULE 3 – Part 3.
The End of the first Sprint
Summarizing Our Models to Date
© University of Liverpool
Agile Project Management with Scrum Katharina Pflügler
Scrum Science NGSS: Engineering, Technology, Applications of Science
Scrum in Action.
Presentation transcript:

Agile Development and Data With Scrum and TDD Andy Leonard VSTeamSystemCentral.com With thanks to Brian Knight, SQL Server MVP SQLServerCentral.com

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

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’

Scrum Methodology

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

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

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

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."

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.

Sample Task lists

Sample task boards

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”.

Big Visible Charts

Product Backlog

Sprint Backlog

Sprint Burndown Chart

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

Scrum to large groups

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 re.comhttp:// re.com

Questions?

Thank You! Visit