SlideShare a Scribd company logo
1 of 26
Scrum & Visual Studio 2010 Scrum process targeting in .NET with Visual Studio & TFS 2010
About Scott Koland Senior Consultant @ Magenic Specialize in: WPF & Silverlight Scrum .NET / C# email: scottko@magenic.com twitter: @scottkoland blog: www.scottkoland.com/blog
Agenda Scrum Fundamentals Scrum in Team Foundation Server 2010 Scrum with the MS VS Scrum 1.0 Process Template Ensuring Quality Unit Testing Planning & Estimating
Why Scrum? What problem is Agile and Scrum solving? Long development time Software project high failure rate Poor quality Unmet customer needs Unsatisfactory working environments (iterative death marches) Lack of timely feedback
What kind of problem?
Scrum Works Higher success rates Produces higher quality Has high stakeholder satisfaction Yields better ROI Delivers systems to market sooner 76% of organizations reporting in 2009 have one or more agile project underway* *Dr. Dobb’s Journal’s July 2009 State of the IT Union Survey - www.ambysoft.com/surveys/stateOfITUnion200907.html
Scrum Process 24 hours Daily Scrum Meeting Backlog tasks expanded by team Sprint Sprint Backlog Potentially Shippable Product Increment Product Backlog As prioritized by Product Owner Vision
Scrum Roles Product Owner Customer Voice, Product Vision ScrumMaster Manager of the Process The Team Anyone who commits to doing work Everyone is a Developer
Scrum Artifacts Product Backlog Sprint Backlog Burndown Charts Working Software
Demo Scrum project in Visual Studio 2010
Quality How do we validate what is built? What does success look like?
Done Team defines done (Definition of Done) Should be a specific list, e.g. Code complete Tests pass Everything checked-in Acceptance criteria from Product owner met Potentially Shippable Fit for Purpose
Bug Fixing Goals Quickly fix and move on? Ignore? Or improve software.
Fixing a Bug Verify write a failing unit test  Fix the bug 	unit test should pass meets the team definition of done Verify rerun all tests  refactor and re-verify as necessary Check In code Close Task & Bug work items Red Green Refactor
Demo Unit Testing and Bug Resolution
Why Unit Tests help when fixing bugs? Document developer intent Verify existence (and resolution) of a bug Reduce bugs
Planning Planning is continuous in Scrum Release Planning Sprint Planning Meeting Continually groom the Product Backlog Estimation is difficult in software
Cone of Uncertainty
Agile and the Cone of Uncertainty initial concept software release T Shirt Sizes Hours Story Points e.g. Small = 2 Medium = 5 Large = 12 Extra Large = 25 XX Large = 60 < 16 hours Modified Fibonacci – Planning Poker 0, 1/2, 1, 2, 3, 5, 8, 13, 20, 40, 100 time certainty Source: http://agile101.net/2009/08/18/agile-estimation-and-the-cone-of-uncertainty/
Planning & Estimation Demo Planning and Task Boards from Urban Turtle
Estimation
Continuous Integration Imperative to developing robust software quickly Inspect and Adapt Fail early Team Foundation Build 2010
Scrum Industry Two companies Scrum Alliance Scrum.org (Ken Schwaber; aligned with Microsoft) Scrum.org saw need for Scrum Developer Training beyond Certified ScrumMaster. http://www.scrum.org/originsofscrumorg
Professional Scrum Developer From Microsoft & Scrum.org 5 day Training Program for Developers Scrum training with Visual Studio & TFS
Questions? Scott Koland email: scottko@magenic.com twitter: @scottkoland blog: www.scottkoland.com/blog
Resources Scrum.org guide http://www.scrum.org/scrumguides/ Scrum 1.0 Template for TFS http://visualstudiogallery.msdn.microsoft.com/en-us/59ac03e3-df99-4776-be39-1917cbfc5d8e VS 2010 RTM VM with TFS 2010 and Labs Blog: http://blogs.msdn.com/b/briankel/archive/2010/06/25/now-available-visual-studio-2010-rtm-virtual-machine-with-sample-data-and-hands-on-labs.aspx Labs: http://download.microsoft.com/download/9/E/2/9E2CCC64-CF5A-4E47-9DC8-C6CEA9344740/VisualStudio2010RTM-ALM-Labs.zip VM: http://www.microsoft.com/downloads/details.aspx?FamilyID=592e874d-8fcd-4665-8e55-7da0d44b0dee&displaylang=en Estimation & Cone of uncertainty http://abdulmoniem.wordpress.com/2010/04/19/software-estimation-chapter-4-review-where-does-estimation-error-come-from/ Complexity http://www.noop.nl/2008/08/simple-vs-complicated-vs-complex-vs-chaotic.html http://www.agileevolution.com/blog/2010/10/5/scrum-and-complexity-theory.html http://deepfreeze9.blogspot.com/2007/09/software-complex-vs-complicated.html http://www.lostgarden.com/2006/04/managing-game-design-risk-part-i.html

More Related Content

Viewers also liked

Implementing Scrum with Microsoft Team Foundation Service (TFS)
Implementing Scrum with Microsoft Team Foundation Service (TFS)Implementing Scrum with Microsoft Team Foundation Service (TFS)
Implementing Scrum with Microsoft Team Foundation Service (TFS)Aspenware
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
TFS Administration Overview
TFS Administration OverviewTFS Administration Overview
TFS Administration OverviewSteve Lange
 
Team Foundation Server Demo
Team Foundation Server DemoTeam Foundation Server Demo
Team Foundation Server Demophase2int
 
Droisys development process_v_1.1
Droisys development process_v_1.1Droisys development process_v_1.1
Droisys development process_v_1.1Droisys Inc
 
Transform your industry using the New Style of IT
Transform your industry using the New Style of ITTransform your industry using the New Style of IT
Transform your industry using the New Style of ITPierre-Marie Delpech
 
Droisys development process
Droisys development processDroisys development process
Droisys development processDroisys Inc
 
Soen 423 Project Report Revised
Soen 423 Project Report   RevisedSoen 423 Project Report   Revised
Soen 423 Project Report RevisedAli Ahmed
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure CallNadia Nahar
 
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...Prise en compte de la dimension temporelle dans la modélisation des systèmes ...
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...Pierre-Marie Delpech
 
Nuts and Bolts of Scrum Template (extended)
Nuts and Bolts of Scrum Template (extended)Nuts and Bolts of Scrum Template (extended)
Nuts and Bolts of Scrum Template (extended)Alexei Govorine
 
Job Training Methods and Process
Job Training Methods and ProcessJob Training Methods and Process
Job Training Methods and ProcessNadia Nahar
 
Enterprise-architecture on purpose
Enterprise-architecture on purposeEnterprise-architecture on purpose
Enterprise-architecture on purposeTetradian Consulting
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development processjhericks
 

Viewers also liked (18)

Implementing Scrum with Microsoft Team Foundation Service (TFS)
Implementing Scrum with Microsoft Team Foundation Service (TFS)Implementing Scrum with Microsoft Team Foundation Service (TFS)
Implementing Scrum with Microsoft Team Foundation Service (TFS)
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
TFS Administration Overview
TFS Administration OverviewTFS Administration Overview
TFS Administration Overview
 
Tfs introduction
Tfs introductionTfs introduction
Tfs introduction
 
Team Foundation Server Demo
Team Foundation Server DemoTeam Foundation Server Demo
Team Foundation Server Demo
 
Droisys development process_v_1.1
Droisys development process_v_1.1Droisys development process_v_1.1
Droisys development process_v_1.1
 
Transform your industry using the New Style of IT
Transform your industry using the New Style of ITTransform your industry using the New Style of IT
Transform your industry using the New Style of IT
 
Droisys development process
Droisys development processDroisys development process
Droisys development process
 
EA Workshop 1
EA Workshop 1EA Workshop 1
EA Workshop 1
 
Soen 423 Project Report Revised
Soen 423 Project Report   RevisedSoen 423 Project Report   Revised
Soen 423 Project Report Revised
 
Remote Procedure Call
Remote Procedure CallRemote Procedure Call
Remote Procedure Call
 
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...Prise en compte de la dimension temporelle dans la modélisation des systèmes ...
Prise en compte de la dimension temporelle dans la modélisation des systèmes ...
 
.Net template solution architecture
.Net template solution architecture.Net template solution architecture
.Net template solution architecture
 
Nuts and Bolts of Scrum Template (extended)
Nuts and Bolts of Scrum Template (extended)Nuts and Bolts of Scrum Template (extended)
Nuts and Bolts of Scrum Template (extended)
 
Job Training Methods and Process
Job Training Methods and ProcessJob Training Methods and Process
Job Training Methods and Process
 
Enterprise-architecture on purpose
Enterprise-architecture on purposeEnterprise-architecture on purpose
Enterprise-architecture on purpose
 
Scrum with VS2010
Scrum with VS2010  Scrum with VS2010
Scrum with VS2010
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development process
 

Recently uploaded

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Recently uploaded (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Scrum process in visual studio 2010

  • 1. Scrum & Visual Studio 2010 Scrum process targeting in .NET with Visual Studio & TFS 2010
  • 2. About Scott Koland Senior Consultant @ Magenic Specialize in: WPF & Silverlight Scrum .NET / C# email: scottko@magenic.com twitter: @scottkoland blog: www.scottkoland.com/blog
  • 3. Agenda Scrum Fundamentals Scrum in Team Foundation Server 2010 Scrum with the MS VS Scrum 1.0 Process Template Ensuring Quality Unit Testing Planning & Estimating
  • 4. Why Scrum? What problem is Agile and Scrum solving? Long development time Software project high failure rate Poor quality Unmet customer needs Unsatisfactory working environments (iterative death marches) Lack of timely feedback
  • 5. What kind of problem?
  • 6. Scrum Works Higher success rates Produces higher quality Has high stakeholder satisfaction Yields better ROI Delivers systems to market sooner 76% of organizations reporting in 2009 have one or more agile project underway* *Dr. Dobb’s Journal’s July 2009 State of the IT Union Survey - www.ambysoft.com/surveys/stateOfITUnion200907.html
  • 7. Scrum Process 24 hours Daily Scrum Meeting Backlog tasks expanded by team Sprint Sprint Backlog Potentially Shippable Product Increment Product Backlog As prioritized by Product Owner Vision
  • 8. Scrum Roles Product Owner Customer Voice, Product Vision ScrumMaster Manager of the Process The Team Anyone who commits to doing work Everyone is a Developer
  • 9. Scrum Artifacts Product Backlog Sprint Backlog Burndown Charts Working Software
  • 10. Demo Scrum project in Visual Studio 2010
  • 11. Quality How do we validate what is built? What does success look like?
  • 12. Done Team defines done (Definition of Done) Should be a specific list, e.g. Code complete Tests pass Everything checked-in Acceptance criteria from Product owner met Potentially Shippable Fit for Purpose
  • 13. Bug Fixing Goals Quickly fix and move on? Ignore? Or improve software.
  • 14. Fixing a Bug Verify write a failing unit test Fix the bug unit test should pass meets the team definition of done Verify rerun all tests refactor and re-verify as necessary Check In code Close Task & Bug work items Red Green Refactor
  • 15. Demo Unit Testing and Bug Resolution
  • 16. Why Unit Tests help when fixing bugs? Document developer intent Verify existence (and resolution) of a bug Reduce bugs
  • 17. Planning Planning is continuous in Scrum Release Planning Sprint Planning Meeting Continually groom the Product Backlog Estimation is difficult in software
  • 19. Agile and the Cone of Uncertainty initial concept software release T Shirt Sizes Hours Story Points e.g. Small = 2 Medium = 5 Large = 12 Extra Large = 25 XX Large = 60 < 16 hours Modified Fibonacci – Planning Poker 0, 1/2, 1, 2, 3, 5, 8, 13, 20, 40, 100 time certainty Source: http://agile101.net/2009/08/18/agile-estimation-and-the-cone-of-uncertainty/
  • 20. Planning & Estimation Demo Planning and Task Boards from Urban Turtle
  • 22. Continuous Integration Imperative to developing robust software quickly Inspect and Adapt Fail early Team Foundation Build 2010
  • 23. Scrum Industry Two companies Scrum Alliance Scrum.org (Ken Schwaber; aligned with Microsoft) Scrum.org saw need for Scrum Developer Training beyond Certified ScrumMaster. http://www.scrum.org/originsofscrumorg
  • 24. Professional Scrum Developer From Microsoft & Scrum.org 5 day Training Program for Developers Scrum training with Visual Studio & TFS
  • 25. Questions? Scott Koland email: scottko@magenic.com twitter: @scottkoland blog: www.scottkoland.com/blog
  • 26. Resources Scrum.org guide http://www.scrum.org/scrumguides/ Scrum 1.0 Template for TFS http://visualstudiogallery.msdn.microsoft.com/en-us/59ac03e3-df99-4776-be39-1917cbfc5d8e VS 2010 RTM VM with TFS 2010 and Labs Blog: http://blogs.msdn.com/b/briankel/archive/2010/06/25/now-available-visual-studio-2010-rtm-virtual-machine-with-sample-data-and-hands-on-labs.aspx Labs: http://download.microsoft.com/download/9/E/2/9E2CCC64-CF5A-4E47-9DC8-C6CEA9344740/VisualStudio2010RTM-ALM-Labs.zip VM: http://www.microsoft.com/downloads/details.aspx?FamilyID=592e874d-8fcd-4665-8e55-7da0d44b0dee&displaylang=en Estimation & Cone of uncertainty http://abdulmoniem.wordpress.com/2010/04/19/software-estimation-chapter-4-review-where-does-estimation-error-come-from/ Complexity http://www.noop.nl/2008/08/simple-vs-complicated-vs-complex-vs-chaotic.html http://www.agileevolution.com/blog/2010/10/5/scrum-and-complexity-theory.html http://deepfreeze9.blogspot.com/2007/09/software-complex-vs-complicated.html http://www.lostgarden.com/2006/04/managing-game-design-risk-part-i.html

Editor's Notes

  1. This presentation will introduce some Scrum basics and show how Scrum can be used in TFS and Visual Studio 2010.Scrum is about Roles, Timeboxes, and Artifacts.
  2. Historically long time lag; Inflexible, unrealisticLittle or no feedback between analyst and developerEach phase must be 100% complete before moving on to the nextCan’t see the details from that heightResults in the paralysis of analysisIf we built similar systems with the same technologies over and over, it would probably work.If all conditions are ideal, it just might work.Any methodology requiring perfection to succeed is flawed.
  3. Ralph Stacey’s Agreement &amp; Certainty MatrixSimple – Easily knowable. Car key.Complicated – not simple, but still knowable. (Pre computer) Car operation.Complex – not fully knowable, but reasonable to predict (Car traffic).Chaotic – neither knowable nor predictableBaking a cake. Easy to generate success once the basics are understood. Few techniques to master; once mastered, high likelihood of success.Complicated – Not simple, but still knowable. Have many parts. Launching a rocket to the moon. No easy straightforward recipe; success requires many people &amp; teamwork, unanticipated results are common.Complex – Not fully knowable, but reasonable. Unable to fully predict.Raising a child. Car traffic.Chaotic – neither knowable nor predicable.
  4. Empirical process
  5. Scrum is a framework within the Agile software development methodologies.Empirical process; designed for complex projectsEmphasizes Self Managed teamsIterative, Time Boxed
  6. Map to TFS p 86.
  7. Overview Demo (20 - 30 minutes)Adding Project &amp; Selecting Process TemplateAreas &amp; Iterations (Release and Sprint planning some like to renumber Sprints after release; manual processSprints (All Sprints query)Details of Sprint 1Sprint goalRetrospectiveShow Product Backlog &amp; PBI’s Area for estimation.Work Items / Tasks / Linked items etc.Bug (handled later)Sprint BurndownRelease BurndownVelocity- Must alter each “Current Sprint” query
  8. Okay, great, we have self directed, cross functional software teams creating our products. But how do we go about ensuring quality in such a team organization?How can we ensure quality in a software project?
  9. Checklist Manifestop. 100
  10. So what are my goals when finding and fixing a bug? Many times in software development, our goal is to resolve the defect and implement a fix as quickly as possible. While this is a good goal, a better goal is to establish a mechanism in our codebase that verifies the existence of the bug, and documents the intent of the developer who is fixing the bug.
  11. In Visual Studio projects that utilize unit testing, it is recommended to follow this process to resolve a bug.
  12. (15 minutes Prep: open ShoppingCart; ShoppingCartTest; bug; task)Look at bugGet LatestRun unit testsFailing unit testRerun tests – fail (Red)Fix codeRerun tests – pass (Green)RefactorLink taskCheck in I’ve been assigned this bug. I’ll open the bug.I’ll get the latest codebase and run the unit tests. (all tests pass)I’ll then reproduce the bug (the issue is reproducible)Now, I need to inspect the code and determine what component is failing. I’ve worked on this code frequently, so I already know this is in the Shopping Cart’s AddItem method.Now, I’ll write my failing unit test and run tests. Notice how the one fails.And now I’ll fix my defect. All of my tests pass, now I’ll rerun the app and verify the defect is resolved.Now, here is where I would check in the code and close out the bug.
  13. In conclusion, I will leave you with a few aspects of why unit tests can be important when resolving defects. While this was a simple example, you could see how having many documented bugs will reduce the introduction of new bugs to the codebase as they help document the developers intent.Also, verifying the existence of a bug and documenting it with a unit test ensures that steps have been taken to reduce the likelihood that it will crop up again in the future.Thank you.
  14. Sprint Planning Meeting – What, then How10% of a Sprint should be spent grooming the product backlog.
  15. Boehm, B (1981). Software Engineering Economics, Prentice-Hall.McConnell, S (2006). Software Estimation: Demystifying the Black Art, Microsoft Press.- At Initial Concept, we are unlikely to accurately estimate an item. 16x more likely to vary, from low to highAs project progresses, we must work to reduce the cone. It doesn’t reduce itself
  16. EstimationPlanning PokerPlanning BoardUrban Turtle ToolShow different views of same data in Planning BoardTask BoardPlanning is a continuous process with Scrum. From the initial release plan to each Sprint Planning Meeting and into daily work, planning is continuous because the direction is changing due to inspection and adaptation.One aspect that goes hand in hand with planning is estimating. Estimating is one of the most challenging aspects of software development to do well. Scrum has some excellent planning techniques to allow for effective planning, and allow for continuous improvement in planning software development.
  17. Why do I care?
  18. Right click Builds &gt; New Build Definition ...Trigger = CIBuild Controller; new in 2010 (manages Build Agents)(can Queue builds against specific Build Agents)(can also use TFS Admin Console)Required output folder on \\\\server\\shareRequires solution to buildCan configure auto unit test execution