1 / 54

Scrum in the Enterprise with Microsoft Visual Studio 2010.

FT09. Scrum in the Enterprise with Microsoft Visual Studio 2010. Simon Bennett Managing Consultant, EMC Consulting Certified Scrum Trainer / Practitioner. Agenda. What is Scrum? What do we mean by “Enterprise Scrum”? Applying Scrum with VS 2010 Multi Team Configuration (Demo)

betty_james
Download Presentation

Scrum in the Enterprise with Microsoft Visual Studio 2010.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FT09 Scrum in the Enterprise with Microsoft Visual Studio 2010. Simon Bennett Managing Consultant, EMC Consulting Certified Scrum Trainer / Practitioner

  2. Agenda • What is Scrum? • What do we mean by “Enterprise Scrum”? • Applying Scrum with VS 2010 • Multi Team Configuration (Demo) • Enterprise Bug Modelling • Process Template anatomy • Team Foundation Server extensibility

  3. What is Scrum? • Scrum is a Project Delivery Framework • Both Iterative & Incremental • Based on the Agile Manifesto • Working Software is the measure of progress • Harnesses change for competitive advantage • Multiple “Inspect & Adapt” points • Promotes close customer collaboration

  4. Scrum was designed for small teams • 7 +/- 2 people per team • Single Product Owner • Scrum scales easily up to about 3 teams • Most standard process templates can support projects of this size • Scrum for Team System 2.2 (TFS 2008) is the most widely used template in this market

  5. Enterprise Scrum • Larger Variation than in single team Scrum • Need to balance consistency & adaptability • By supporting varied project configurations without template modifications • Multiple indicators: • More than 30 developers on a single project • Multiple PO’s / Work Streams / BU’s • Inter woven cadence

  6. Supporting Enterprise Scrum in 2010 • Acceptance Test Driven Development • Hundreds of Teams, dynamically adjustable • Working in different cadences • Starting on different days • Or in different time zones • Flexible Bug Modelling • Integrated with Test & Lab Manager • All integrated into one great ALM solution

  7. Enterprise Friendly Deployment • Install – drops the bits • Deploy – pushes the template to the Team Project Collections of your choice • Create – your empty project • Configure – set up the standard template to fit the project & Team Environment

  8. Template Deployment Tool

  9. TFS 2008 • We could link WIT’s • But in a “flat” structure • Relationships were implicit

  10. Forget Flatland Visual Studio 2010

  11. Work Item Hierarchy Example Product Backlog Item Sprint Backlog Task Implemented By Tested By Impeded By Acceptance Test Impediment

  12. Relationships are bi-directional Product Backlog Item Sprint Backlog Task Implements Tests Impedes Acceptance Test Impediment

  13. Adding a Linked Work Item • You must select the correct Link Type and Work Item Type when adding a linked item.

  14. So what can you do with that?

  15. Support for ATDD

  16. Inferring Ready

  17. Planning Scope • Builds on the Iteration Path • Allows for complex multi-team projects • Supported with three Work Item Types • Uses an Event Service to collect metrics in real time to support Release Planning

  18. Planning Scope Iteration Path

  19. Planning Scope Work Items Release ImplementedBy ImplementedBy Sprint Implements Team Implements

  20. Looks complex, but it can easily handle This Or even this

  21. Supported by all the standard Reports

  22. Teams Starting on Different Days

  23. That looks hard & complex! • It is. (Well complex anyway) • But real life enterprise projects are complex • Thankfully there is help from the ScrumMaster’s workbench • Easier to create a project now than in 2.2 • 3.0 Projects start empty

  24. Project Configuration DEMO

  25. Bugs

  26. ATDD in practice Tested By Failed By AcceptanceTest ProductBacklogItem BugReport Tested By AcceptanceTest

  27. After a PBI is “Done” Bugs are prioritised by the Product Owner not QA BacklogItem Highest Priority We need these done in 30 days! Bugs are a normal part of the planning process, and are prioritised just like PBI’s. Bug BacklogItem BacklogItem These aren’tcritical, but it would be nice. Bug Bug BacklogItem This bug isn’thurtinganybody. BacklogItem Lower Priority Bug

  28. The implication is... • That a lot of the time, developers can’t “fix” a bug • In many organisations, a bug only specifies an opinion on pre-existing incorrect behaviour • It follows that the PO must inspect and modify all bugs to ensure that they describe not just the problem, but also the desired behaviour.

  29. Scheduling Bug Fixes Fails Scheduled BugReport ProductBacklogItem AcceptanceTest Test for a class of desirable behaviour Container for Scheduling + Statement of Value to the Business Description of an instance of Negative Application Behaviour

  30. Building an incremental regression suite • The Product Backlog Item Lifecycle Done Not Started In Progress Broken Deprecated

  31. In Summary • Enterprise Scrum Solution • Multiple PO / Workstream support • Supports Vast Numbers of teams • Starting on different days • Working to different cadences • All supported by standard reports • Support for ATDD & Regression Testing • “Always Accurate” Historical Backlog

  32. FT09 Process Customization with Microsoft Visual Studio 2010 Stuart Preston stuartpreston.net/blog

  33. Agenda • Process Template anatomy • Implementing Link Hierarchy • Team Foundation Server extensibility • Summary

  34. Process Template Anatomy Microsoft Visual Studio Team Foundation Server 2008 Sharepoint/WSS Version Control Reports Work Item Tracking

  35. Process Template Anatomy Microsoft Visual Studio Team Foundation Server 2010 Sharepoint/WSS Version Control Reports Work Item Tracking Lab Management Hierarchical Link Types Build Test Management

  36. Process Template Anatomy Microsoft Visual Studio Team Foundation Server 2010 Work Item Tracking Hierarchical Link Types

  37. Inside The Template: Work Item Tracking TypeDefinitions LinkTypes Queries

  38. ImplementedBy.xml Product Backlog Item • <?xmlversion="1.0" encoding="utf-8"?> • <LinkTypes> • <LinkTypeReferenceName="Scrum.ImplementedBy" • Topology="Tree" • ForwardName="Implemented By" • ReverseName="Implements“ /> • </LinkTypes> Implemented By Sprint Backlog Task Implements Tree = Parent/Child relationship

  39. ImplementedBy.xml ? • <?xmlversion="1.0" encoding="utf-8"?> • <LinkTypes> • <LinkTypeReferenceName="Scrum.ImplementedBy" • Topology="Tree" • ForwardName="Implemented By" • ReverseName="Implements“ /> • </LinkTypes> Implemented By ? Implements

  40. Product Backlog Item: Link Tabs

  41. Product Backlog Item: Link Tabs

  42. How to only show specific links • <TabLabel="Implements"> • [...] • <WorkItemLinkFiltersFilterType="include"> • <FilterLinkType="Scrum.ImplementedBy" FilterOn="reversename" /> • </WorkItemLinkFilters> • <WorkItemTypeFiltersFilterType="include"> • <FilterWorkItemType="Product Backlog Item" /> • </WorkItemTypeFilters> • <ExternalLinkFiltersFilterType="excludeAll"/> • [...]

  43. Where do these numbers come from?

  44. Team Foundation Server extensibility • TFS notifications can be Plain Text email, HTML email or a SOAP message. • Scrum for Team System installs an ASP.NET web service to handle the message generated when a work item is saved.

  45. demo Team Foundation Server notifications

  46. What did we cover? • Used the Alerts Editor to create a subscription • Set the endpoint to be a ASP.NET web service with a Notify web method • “Do something” with the inbound message • Text message when a Work Item is saved with a certain state. • Send a tweet through the Twitter API when your build completes.

  47. Scrum for Team System calculated fields • Rules stored in customizable XML files • Default rules allow cover common scenarios • Set “parent” Product Backlog Item state to “Done” when all Acceptance Tests pass. • Sum the work remaining for a Product Backlog Item based on linked Sprint Backlog Items. • Divide two fields on the same form to calculate the Return on Investment field. • Modify the XML rules yourself and even write a Custom Processor. See http://consultingblogs.emc.com/crispinparker

  48. In Conclusion • With Scrum for Team System 3.0. You can easily manage multi team Enterprise Scrum projects using Visual Studio 2010 • Integrates with Test & Lab Manager • A richer experience was created by: • Leveraging the TFS notification mechanism • Customising Link Types • User Centric design in Team Explorer elements

  49. References • Scrum for Team Systemwww.scrumforteamsystem.com • Simon’s blog consultingblogs.emc.com/simonbennett • Stuart’s blogstuartpreston.net/blog • Microsoft Visual Studio 2010 Beta 2 websitemsdn.microsoft.com/en-us/vstudio/dd582936.aspx

More Related