pnp agile tech ed india
TRANSCRIPT
Agile in the Ivory Tower: How patterns & practices builds guidance
Blaine WastellProgram ManagerMicrosoftSession Code:
Session Objectives And Takeaways
Session Objectives: Learn how p&p uses agile techniques Learn the experience from practitioners using agile process in over a dozen projects Why is agile important and what is unique about p&p’s perspective?Understand the challenges and techniques used to scale agile in a distributed team environment
Key Take-aways:Walk away with an understanding about what has worked well and consistentlyWalk away with justification for using these practices in your (customer) teams
Our Ivory Tower
Future Project Lifecycle
Research Project Planning
Code & Guidance Development
Code Release
Vision & Scope M0CTP
Weekly code & guidance dropsGuidance Release
Media Release
FINALRelease
Understanding the Problem Building the Solution Describing the Solution
NOTE – Team stays together after code release to build media and guidance based on code. A project is considered DONE when all of the features have been released
Planning Code Development Testing Guidance Development Media & Marketing Dev Final Production & Release
Flow
Effort
Candidate architectureUser Stories
Conchango Diagram
Customer Connected Engineering
Communication Breadth: Codeplex communitiesDepth: Customer Advisory Boards
Think in terms of stories not featuresSoftware from the customer perspective
Frequent checkpoints with customersUsing frequent drops to the communitiesCustomer workshopsAdvisory meetings
Planning and EstimationBe date driven Maintain prioritizedstory backlogChoose initial t-shirt sizePlay the planning gameMonitor velocityPlan for iteration zero
“Plans are nothing; planning is everything.” - Dwight D. Eisenhower.
Low-Fi Iteration Planning: Warm
Hi-Fi Iteration Planning: Still Warm
Team Formation
Program managementDev lead + developersTest lead + testersTechnical Writer(s)Domain experts (SMEs)
Core teams with consistent membersConsultants available
But it’s about what you do, not job titles!
Team Tasks… The Game What do you do on the team?
Product Portfolio
Customer
Design and CodingRisk Assesment
Business
ArchPdMDevPgMTest
Distributed TeamsThis is the reality of software development todayMaximize communication
Join project kick off iterationMore formal story management
There is only one team not local and remoteEveryone participates in daily stand-ups
Frequent on site visits Time zones harder to manage than distance
pig > chicken > cow
Quality
Done Dungvs Donvs
Quality – Done (Feature Level)A story is done when:
The acceptance criteria are agreed upon
The team has a test/set of tests (preferably automated) that prove the acceptance criteria are met
The code to make the acceptance tests pass is written
The unit tests and code are checked in
The Continue Integration (CI) server can successfully build the code base
The acceptance tests pass on the bits the CI server creates
No other acceptance tests or unit tests are broken
Documentation is written for the feature
The customer proxy signs off on the story
Process Agnostic PracticesUnit testing (tests are assets not liability)Test-Driven Development (TDD)Continuous Integration (CI)Acceptance testing (automate what makes sense)Iteration planningDaily stand-upsRetrospectivesSustainable pace
You don’t have to be agile to get benefits…
Challenges
Too many cooksRewarding teamsTeam continuity
Teams should feel empowered and encouraged to address their challenges within the team
Learn from us!
Come see the p&p space
Questions?
Related Content
Microsoft patterns & practicesmsdn.microsoft.com/practices
Codeplex communitiescodeplex.com/Project/ProjectDirectory.aspx?TagName=patterns%20%26%20practices
SummaryAgile is not a silver bullet p&p successfully uses Distributed Agile
Find ways to connect with your customer early and oftenContinuous integration gives confidence to respond to changeAgile works because of short delivery cycles and constant improvementWhere possible work with someone that successfully applied agile on a previous project
question & answer
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,
IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.