460 likes | 789 Views
“The… ‘relay race’ approach to product development…may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach—where a team tries to go the distance as a unit, passing the ball back and forth—may better serve today’s competitive requirements.
E N D
“The… ‘relay race’ approach to product development…may conflict with the goals of maximum speed and flexibility. Instead a holistic or ‘rugby’ approach—where a team tries to go the distance as a unit, passing the ball back and forth—may better serve today’s competitive requirements Hirotaka Takeuchi and IkujiroNonaka, “The New Product Development Game”, Harvard Business Review,January 1986. We’re losing the relay race
DPR301Scrum, but Stephen Forte @worksonmypc Joel Semeniuk @Joel_Semeniuk Telerik Session Code: DPR301
Bio • Chief Strategy Officer of Telerik • Certified Scrum Master • 21stTechEd of my career! • Active in the Community: • International Conference Speaker for 12+ Years • RD, MVP and INETA Speaker • Co-moderator & founder of NYC .NET Developers Group http://www.nycdotnetdev.com • Wrote a few books: SQL Server 2008 Developers Guide (MS Press) • MBA from the City University of New York • Past: • CTO and co-Founder of Corzen, Inc. (TXV: WAN) • CTO of Zagat Survey
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Remote Teams • Scrum, but for Consulting • Scrum, but for ISVs
Individuals and interactions Responding to change Working software Customer collaboration Following a plan Comprehensive documentation Contract negotiation Process and tools over over over over The Agile Manifesto–a statement of values Source: www.agilemanifesto.org
Back to the Basics • “Agile” is about “values” not “rules” and rigid adherence to a process • Agile is about embracing change
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Remote Teams • Scrum, but for Consulting • Scrum, but for ISVs
Agile Methodologies • XP • Scrum • DSDM • FDD • Kanban • Some Additional Agile Practices • TDD • BDD • DDD
What methods are in play today ? Source: Forrester/Dr. Dobb’s Global Developer Technographics Survey, Q3 2009
Don’t change Scrum • To quote Ken Schwaber: “If you don’t like Scrum, we welcome and invite you to devise something else. Just don’t call it Scrum.” http://kenschwaber.wordpress.com/2010/09/08/scrum-as-a-framework/
But wait • “I use Scrum, but…..”
You are not alone Source: Forrester/Dr. Dobb’s Global Developer Technographics Survey, Q3 2009
Agile is like a buffet table • It is ok to mix and match from different agile methodologies • Just make sure your features are compatible • Just make sure you eat healthy ;) http://www.agileproductdesign.com/blog/2009/kanban_over_simplified.html
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Outsourcing • Scrum, but for Consulting • Scrum, but for ISVs
Enterprise Characteristics • Employ traditional PMO driven project management • Budgets are set a year ahead without proper assessment • Slow to change • Technology considered separate than Business • Tend to promote silos and shared resources • Tend to have a lot of work in progress • Tend to have meeting cultures • Failure is common and accepted • Business VS Technology culture
Challenges when Implementing Agile • Corporate culture • Redefining Teams and Silos • Use of Silos to control flow (BA, PM, Development, Test) • Silos involved in many concurrent projects • Changing the Perception of Agile • Getting Buying to Start • Changing Expectations of the Business • Communication becomes most time consuming problem • Getting people to pay attention
Implementing Agile • Starting • Don’t highlight “Agile” – leverage “Lean Principles” • Find a mission critical “all hands on deck” project • Drive buy in for a “do whatever it takes” attitude • Form a Dedicated Cross Functional Team • Find an experienced Scrum Master • Contract if necessary • Use short focused Sprints • Drive Product Backlog Management • Use a Structured Decomposition Model such as FDD • Choose a Prioritization Model • Get Business Involved in Prioritization
Implementing Agile • During the First Project • Show results in first iteration • Communicate, Communicate, Communicate • Time box EVERYTHIG • Meetings • Feature implementations • Analysis and Design • Make it a race • Make QA part of EVERY sprint • Most organizations leave until the end • Force Sprint Reviews and Acceptance • More likely to happen if high priority project • Celebrate EVERY victory publically
Implementing Agile • Post Project – when you are successful • Document the Project • Show Results • Go on Tour, Brag, Evangelize the Practices • Act as consultants • Create a Roadmap • Next Project • Start with a similar team • Stay visible • Don’t force organizational change…let the organization change to accommodate the projects • Process Improvement and continual change • Metrics Matter!! Start measuring, Start Reporting
Best Practices • Use Lean to Drive Change from the Top Down • Find riskiest and most troubled project • Assessment Projects Prior to Budget Allocations • Remove Silos Between Roles • Get Business Behind You through Demonstration of Success
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Remote Teams • Scrum, but for Consulting • Scrum, but for ISVs
Remote Team Characteristics • A team where one or more members are not in the same office • Usually in another time zone • Sometimes in another country • Language barriers • Sometimes a 3rd party • Contractor • Outsourcing
Key Challenges for Agile • Due to lack of proximity, time zones, and language barriers you lose the high bandwidth communication • Hard to do sprint planning • Hard to do a “Stand-Up” daily meeting remotely
Implementing Agile I • Extra reliance on tools • Web/Cloud based tools for collaboration and planning • TeamPulse • Communication tools are a must • Skype • IM • Google Docs • Sharepoint • Reliance on CI and TFS • Automated test, build, and reporting tools a must
Implementing Agile II • High bandwidth teams • Use collaboration tools to increase communication • www.planningpoker.com • Iteration Planning • Gather the team in one location for the first sprint planning meeting • And as many others as possible • Sprint planning via video conference • Stand up meetings • Video Skype to make sure they are standing!
Implementing Agile III-Time Zones • The Daily Scrum is flexible! • If the team is ahead of you in Time Zone • Hold the meeting at the end of their day • What did I do today? • What will I do tomorrow? • What do I need from you today? • If the team is behind of you in Time Zone • Hold the meeting at the start of their day • What did I do yesterday? • What will I do today? • What do I need from you today?
Best Practices • Make the communication a measurable deliverable • Write it into the contract • If the remote team is large enough (off-shore environment) place a FTE from your office on site • Developer rotation
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Remote Teams • Scrum, but for Consulting • Scrum, but for ISVs
Consulting Characteristics • Types of Projects • Time and Materials • Fixed Cost, Fixed Duration • Fixed Everything • Maturity of Customers is Variable • Cost is most important • Greater emphasis on • Sales and account management • Creating long term work • Project management and Business Analysis
Key Challenges for Agile • Customer Maturity • Need for up-front commitment • Change is a source of conflict • Management buy-in • Custom processes • Culture
Implementing Agile • Realize – you may not be able to be agile • Time and Material engagements usually follow customer processes and are rarely agile • Culture of customer and organization may prevent agility • Educate your customers – then educate them again, and again.. And again • Estimates become constraints • Use advanced estimation and planning techniques • Tracking your customer • Quality Assurance and Acceptance is difficult for Customers
Best Practices • Know your customer • Fixed Duration and Fixed Cost is OK • Fixed features should be avoided • Isolation from customer processes • Educate all stakeholders • Blend with Engagement Relationship Practices from Prince2 • Track EVERYTHING – Tears of joy dry fast • Customers as product owner • Combine with Business Analyst Role • Fixed Features – Run Away. • Immature Customer – Heavily Educate or Waterfall • Commoditize your deliverables
Best Practices • Avoid Detailed Time Tracking/Reporting – Invites Micromanagement • Don’t pretend to be Agile when you can’t be • Customers as “partners” never work • Maintenance and Support can be more Agile • Explore how Kanban can help • Build time in for Education • Focus on Visual Mocks to drive requirements • Invest in a repeatable and reliable sizing tool • Involve your customer during bids • RFP’s are a crap-shoot • Use FDD for requirements decomposition
Agenda • Back to the basics: Agile Manifesto • Where does Scrum fit in the Agile universe? • Scrum, but for the Enterprise • Scrum, but for Remote Teams • Scrum, but for Consulting • Scrum, but for ISVs
Facts about Joel • Joel *always* talks about the insurance company • And always mentions Pet insurance • Steve hates pets • Joel is a pet • Joel has no insurance • Obama to the resuce • Yes we can! • Steve voted for the other guy (the one with the crazy VP chick) • Oops • Always cuts me off • Talks a lot • Loves the Queen of England • Gets the last word • Was in the Canadian Military (with 6 others) • It was an Agile team • Was in therapy • IBM paid for it
ISV Characteristics • Development is driven by marketing • The team is usually in the same location • The team mostly has hard deadlines • Publically stated deliverables tied to revenue • Must ship XYZ the same day as VS 2010 launch
Key Challenges for Agile • Disengaged Product owners • Agile Estimation is a challenge • Management usually nervous • Deadlines tied to revenue • Public roadmaps • Critical bugs can derail an iteration • Larger emphasis on documentation and samples
Implementing Agile I • Agile needs buy-in from the top • CEO needs to set the example • ScrumMaster (for Scrum) is the most critical person • Needs to be free of other deliverables • Lots of political capital • Estimation will target a date, not features • Still use the cone of uncertainty but • Have a hard date, re-estimate the product backlog items that will make it to the release
Implementing Agile II • Consider having a separate team for bugs and service packs • If not, allocate XX% of your sprint backlog for bugs and “legacy” • Documentation and samples become backlog items • Add a product documentation specialist and sample developer to the team • Not on a separate team
Best Practices • Keep your Scrum Master independent of the team • Be as transparent as your business will allow • Estimate on features not time • Planning poker is vital, and needs participation of all key members
Session Evaluations Tell us what you think, and you could win! All evaluations submitted are automatically entered into a daily prize draw* Sign-in to the Schedule Builder at http://europe.msteched.com/topic/list/ * Details of prize draw rules can be obtained from the Information Desk.
Required Slide © 2010 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.