EFFECTIVE DAILY SCRUM PATTERNS Charles Bradley Professional Scrum Trainer, Scrum.org.
Scrum Under a Waterfall - Benjamin Day Consulting, Inc. · •Scrum.org Classes –Professional...
Transcript of Scrum Under a Waterfall - Benjamin Day Consulting, Inc. · •Scrum.org Classes –Professional...
Scrum Under a Waterfall
Benjamin Day
About Me
• Brookline, MA
• Consultant, Coach, Trainer
• Microsoft MVP for Visual Studio ALM
• Team Foundation Server, Software Testing, Architecture, Windows Azure
• TechEd, VSLive, DevTeach
• Visual Studio Magazine, Redmond Developer News
• Scrum.org Classes – Professional Scrum Developer (PSD) – Professional Scrum Foundations (PSF)
• www.benday.com
• @benday
Warning: Two Shameless Plugs
Plug #1: Scrum.org
© 1993-2012 Scrum.org, All Rights Reserved
Professional Scrum at Scrum.org
Professional Scrum
Product Owner
Professional Scrum Foundations
Professional Scrum Master
Professional Scrum
Developer .NET or Java
Product Owners Executives
Scrum Masters
Architects Business Analysts
DB Specialists Designers
Developers Testers
Everyone
Plug #2: benday.com/training
Plugs complete.
Slid
e 7
Introductory thoughts.
What do I mean by “waterfall”?
• Waterfall = plan-driven
• Gaant charts
• MS Project
• Start dates & end dates
• Phases
What is Scrum Under a Waterfall?
• SUW
• Scrum + plan-driven
• Agile + plan-driven
Assumptions
• SUW exists
• Value of Agile / Scrum is… – Settled – A good thing
Results by style.
The CHAOS Manifesto, Copyright 2011
My $0.02
• SUW is a difficult place to be
…and now a quote by a leading project management expert.
“You can drive with your feet. It doesn’t mean it’s a good idea.” *
* - paraphrased
So what do you do if you’re company does SUW?
Two options.
1. Quit in protest. Get a new job.
2. Try to make it work. – Someone else is paying. – Help them make informed decisions.
Goal for this talk
• Be practical
• Try to see both sides
• Acknowledge that change takes time
Comparisons & Motivations.
Waterfall vs. Scrum
Waterfall Scrum / Agile
Requirements docs Just-in-time, informal requirements
Occasional “customer” involvement Frequent “customer” involvement
Start-to-finish Project Plan Product Backlog. Plan for Sprint. Sketchy beyond that.
Tasks are assigned Assigned tasks are a bottleneck
Potentially large team size Teams of 3 - 9 people
Multiple phases, eventual delivery Working software each Sprint
Resistant to change Change is a expected
Contract says what we build, deliver Contract is a little more T&E
Why Waterfall?
• Comes naturally
• Feels good – We’ve got a plan. – We’ve got dates. – What could possibly go wrong?
• Helps managers manage
• Pin down what’s going to be built
• Minimize uncertainty
Why Scrum / Agile?
• Embraces the uncertainty
• Empirical
• “Forecast” rather than “commitment”
• Self-organization by the “do-ers”
Ever seen a company that is Agile at the top and
Waterfall at the bottom?
Do managers trust their team?
What does the team think about the managers?
Why Waterfall people think Agile-ists are nuts
• (Sandal-wearing anarchists)
• Their estimates are always wrong
• They’re always late
• They’re lazy
• The plan is flawless.
• Devs write crummy, buggy code
• Too complex to not plan.
Why Agile-ists think Waterfall people are nuts
• The plan is largely imposed – “Voluntold”
• What we told them was bogus. – Haven’t the foggiest clue – Just enough to make them go away
• Didn’t have anything real to estimate anyway
• Too complex to plan.
Point of agreement #1: Both out of our minds.
Point of agreement #2: If it’s worth doing,
it’s probably complex.
Making it work.
SUW is the grumpy marriage of two processes.
Why SUW?
• Required by contract
• Required by law
• The Agile Experiment
• Just cuz.
Leverage the strengths of each
• Scrum for day-to-day dev/test activities
• Detect problems with Sprints
• Focus on TDD, DoD & working software
• Waterfall for multi-team coordination
• Waterfall for release planning
Differences for Scrum / Agile
• Changed – Backlog = Project Plan – Less emphasis on Sprint planning – Less negotiation during Sprint
• Same – Daily Scrum – Sprint Burndown – Focus on Definition of Done – Sprint Review – Retrospective
Risks of SUW
• Impedance Mismatch Poor communication
• Lack of trust
• Two sets of books – Extra work? – Lack of transparency?
• Everything is going great…until it isn’t
• Using the Burndown for evil
Using the Burndown for Evil
Making SUW work
• More like making peace
• Set some ground rules
• Must get past – Waterfall: changes = schedule slip = “bug” – Agile: changes = adapting = “feature”
• Avoid “earned value” – “I’m 72.6% done with my task.”
• Transparency
TFS to the rescue!
Team Foundation Server (TFS)
Microsoft Project Server
• Enterprise project management – Tasks – Portfolios of projects – Timesheets – Resources – Approval workflows
• Plug-in to SharePoint
• Accessed via – Web interface – Microsoft Project
TFS & MPS Integration
• TFS Project Server Integration Feature Pack
• Bi-directional sync
• TFS data to/from Enterprise Project Plans
Sample TFS / Project Server Flow
Demo: Requirements from MPS,
Tasks from TFS
Demo: Approve changes &
update dates
Demo: Manage Resources on an
Enterprise Project Plan
Demo: View status for
portfolio of projects
Big win: Both groups stay in their
preferred tools.
Transparency is the key to trust in SUW.
Just the facts, ma’am.
• TFS captures data without judgment
• Is it in source control?
• Does the build work?
• Do the tests pass?
• What’s the bug count?
• What’s the history on that work item?
Summary
• SUW can be awkward
• There can be trust problems
• Use Scrum to detect problems
• TFS & Project Server helps Project Management Impedance Mismatch
• Transparency is the key
Any last questions?
Thank you.
http://www.benday.com | [email protected]
Extras.
$0.02: Orgs are too quick to go “planned”
• “No one ever got fired for choosing IBM.”
• Financial Services – More process where they can afford it – Surprisingly little process where there’s high
risk
• Adopting Agile: gets worse before better
Beware of “no time for xyz” syndrome
• Best practices aren’t optional
• Because there is a “testing” phase, Waterfall sometimes thinks that unit tests can be dropped
“Balancing Agility and Discipline”
• by Boehm & Turner
• Addison-Wesley Professional
• August 2003
Diagnosing Sync Problems
• Blog post
• http://tinyurl.com/75ll9fe
The setup process (1 of 2)
• Install TFS
• Install SharePoint
• Install Microsoft Project Server
• Create 1+ Enterprise Project Plans
• Create 1+ TFS Team Projects
• Run TfsAdmin.exe commands
The setup process (2 of 2) # register pwa and tfs
tfsadmin projectserver /RegisterPWA /pwa:http://demosharepoint/pwa
/tfs:http://demotfs2010:8080/tfs
# map the team project collection
TfsAdmin ProjectServer /MapPWAtoCollection
/pwa:http://demosharepoint/pwa
/collection:http://demotfs2010:8080/tfs/democollection
# upload the field mappings
TfsAdmin ProjectServer /UploadFieldMappings
/collection:http://demotfs2010:8080/tfs/democollection
/useDefaultFieldMappings
# Map to Enterprise Project Plan “Product Xyz”
TfsAdmin ProjectServer /MapPlanToTeamProject
/collection:http://demotfs2010:8080/tfs/democollection
/enterpriseProject:"Product Xyz" /teamproject:DemoAgile
/workItemTypes:"User Story,Task"
Helpful commands for debugging # view the current field mappings
TfsAdmin ProjectServer /DownloadFieldMappings
/collection:http://demotfs2010:8080/tfs/democollection
/filePath:c:\temp\mappingfile.txt
# view the current mapped WITs
tfsadmin projectserver /GetMappedWorkItemTypes
/collection:http://demotfs2010:8080/tfs/democollection
/teamproject:DemoAgile
# get mapped projects
tfsadmin projectserver /GetMappedProjects
/collection:http://demotfs2010:8080/tfs/democollection
Unmap TFS & Project Server
# unmap team project
TfsAdmin ProjectServer /UnmapPlanFromTeamProject
/collection:http://demotfs2010:8080/tfs/democollection
/enterpriseProject:"The Master Plan" /teamproject:DemoAgile
# unmap team project collection
TfsAdmin ProjectServer /UnmapPWAFromCollection
/pwa:http://demosharepoint/pwa
/collection:http://demotfs2010:8080/tfs/democollection
Any last questions?
Thank you.
http://www.benday.com | [email protected]