SlideShare a Scribd company logo
Agile is as Agile DoesClint EdmonsonEvangelist, Microsoft
Got process?
Businesses live or die bytheir repeatable processes.
Capability Maturity Model Index
Defined vs. Empirical ProcessesHow would you code an algorithm to keep this room at a constant temperature for the entire day? (What variables would you consider?)Defined processes try to predict the futureEmpirical processes adapt to the futureFrequent inspection Just in time planning
Lean
Eliminate wastePoor requirementsUnnecessary functionality, code, documentationDelays in the development processSlow or poor internal communicationBureaucracyEmpower the team to recognize and eliminate it!
Amplify learningAccept that software development is a continuous learning processIterate to learn and adaptFail early and fail often!
Decide as late as possibleChange happensDon’t fight itAccept it and adapt to itEach iteration should still have an explicit planning phase.
Deliver value as fast as possibleEmbrace continuous deploymentKeep iterations short, short, short!Relish feedback and evolve with the next iteration
Empower the teamAvoid command and control management styleAvoid rigidly defined rolesTeam should have direct access to the customerTeam is responsible for “done done”Give them responsibility and accountability and they will take ownership.
Build integrity inBuild in integrity checks – unit tests become regression testsRefactor aggressively to retain emergent architectural integrityThere should be NO code you’re afraid to touch.
See the wholeUnderstand the whole domain and problem spaceSegregate along functional boundaries instead of cross cutting technical concernsCultivate high value communicationProvide the team with a higher purpose to work towards
Agile
What is Agile?AgileAgile is a movement…represented by a set of methodologies…comprised of a set a best practices.ScrumXPFDDOthersCITDDBDDStandUpsBurn-downDomain ModelProductBacklogRefactorPairwise ProgrammingSprintBacklogFeature Team
Agile ManifestoWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
Agile principlesCustomer satisfaction by rapid delivery of useful softwareWelcome changing requirements, even late in developmentWorking software is delivered frequently (weeks rather than months)Working software is the principal measure of progressSustainable development paceClose, daily co-operation between business people and developers
Agile principlesFace-to-face conversation is the best form of communication (co-location)Projects are built around motivated individuals, who should be trustedContinuous attention to technical excellence and good designSimplicitySelf-organizing teamsRegular adaptation to changing circumstances
Agile Practices(by priority)
Business ValueCustomer representation on teamEvocative vision documentUser storiesUse casesPrioritized backlogFeature teams
Time to marketIterative developmentContinuous integrationRelease often
Quality to marketTest driven requirementsTest driven development (Red, Green, Refactor)Done Done statePair programming
FlexibilityEmergent/evolutionary architecture and designRefactoring (Green code only)Self-organizing teams
VisibilityInformation radiators Project backlogDaily stand-up meetingsCustomer demos
Cost reductionCross-functional teamsCo-located teamsSimple design (YAGNI)
Product lifetimeCollective code ownershipCoding standardsAutomated functional testingRetrospectivesSustainable pace
Supporting practicesTrainingCoaching & mentoringWorkshopsReading circlePlanning poker2 pizza teamsEngaging the community
Success factorsFreedom to changeEnergized teamCommunication with customerCollaborationAttention to qualityIncrementalismAutomationContinuous improvement
Anti-patternsNo definitive processGuestimating & estiquotesHuge casesTechnical debtEgosScrummerfallScrumdamentalismLarge, complex, high risk projects
Agile Adoption“Agile processes have not only gained increasing adoption levels; they have also rapidly joined the mainstream of development approaches.”a “Agile Development:  Mainstream Adoption Has Changed Agility – Jan 2010”, Forrester
Agile Adoption“In the past five years, Forrester has seen a growing interest in the adoption of Agile processes. This interest is slowly changing to adoption. In 2008, even shops that weren’t moving immediately to Agile processes began to take baby steps in that direction.”aa “Make Agile Lean – Dec 2008”, Forresterb “Microsoft ALM Consulting Day – Mar 2009”, Forrester presentation; c “State of Agile Development – July 2008”, Version One
Scrum
SCRUMSimple and lightweight framework for lean and agile practicesTime-boxed events to control chaosSimple, straight forward roles for accountabilityTransparent artifactsEmpirical inspection and adaptation to reach goalsSimple rules that facilitate complex emergent behavior
EventsSprintIterative development period not to exceed one monthSprint planning meeting8 hoursPrioritize product backlog and select items for the sprint backlogDaily stand up meeting15 minutes, What was accomplished since last meeting?What are you doing today?Do you have any impediments?Sprint Review meeting4 hoursReview what was completed and not completed during springDemo the completed work with stakeholdersSprint retrospective3 hoursWhat went well?What could be improved?
RolesProduct ownerTeamScrum master
ArtifactsProduct backlogSpring backlogBurn down chart
ReferencesAgile in a Flash – Langr and OttingerAgile Adoption Patterns - ElssamadisySucceeding with Agile – CohnAgile Project Management with Scrum – SchwaberThe Agile Sumurai – RasmussonUser Stories Applied – Cohn
Clint Edmonsonhttp://www.notsotrivial.netclinted@microsoft@clinted

More Related Content

ODP
Brief Intro to Agile, Benefits & Transition
PPTX
Agile Intro - Saint Louis Day of Dot Net
PDF
Agile and the nature of decision making
PDF
Lean Software Development - Part I
PDF
Introduction to Agile Software Development
PPTX
Agile and Lean Software Development
PPTX
Software development with agile methodologies
PPTX
Fundamentals of Agile
Brief Intro to Agile, Benefits & Transition
Agile Intro - Saint Louis Day of Dot Net
Agile and the nature of decision making
Lean Software Development - Part I
Introduction to Agile Software Development
Agile and Lean Software Development
Software development with agile methodologies
Fundamentals of Agile

What's hot (19)

PPT
Agile Software Development Scrum Vs Lean
PPT
Agile Methodology
PPTX
PPTX
Agile lean software development principles
PPTX
Agile for-college
PPT
Agile development, software engineering
PPTX
An Agile Development Primer
PDF
Introduction to Agile Values & Principles
PPT
Transitioning To Agile Webinar Presentation
PDF
Agile Methodology
PPTX
Agile Adoption - What's the Payoff?
PPTX
Lean software development tips and tricks - Agile Tour Dublin 2014
PDF
Agile Methodology Vs. Others by Sara Berrada
PDF
Are you Agile enough?
PPTX
Agile Methodology Training, Agile Courses
ZIP
Agile Implementation
PPTX
What agile teams think about agile principles
PPTX
Agile 101
PDF
Agile 101
Agile Software Development Scrum Vs Lean
Agile Methodology
Agile lean software development principles
Agile for-college
Agile development, software engineering
An Agile Development Primer
Introduction to Agile Values & Principles
Transitioning To Agile Webinar Presentation
Agile Methodology
Agile Adoption - What's the Payoff?
Lean software development tips and tricks - Agile Tour Dublin 2014
Agile Methodology Vs. Others by Sara Berrada
Are you Agile enough?
Agile Methodology Training, Agile Courses
Agile Implementation
What agile teams think about agile principles
Agile 101
Agile 101
Ad

Viewers also liked (7)

PPTX
Windows Azure jumpstart
PDF
Les pratiques des geants du web
PPTX
Architecting Scalable Applications in the Cloud
PPTX
Peering through the Clouds - Cloud Architectures You Need to Master
PPTX
Application architecture jumpstart
PPTX
Introduction to Windows Azure Virtual Machines
PPTX
Advanced oop laws, principles, idioms
Windows Azure jumpstart
Les pratiques des geants du web
Architecting Scalable Applications in the Cloud
Peering through the Clouds - Cloud Architectures You Need to Master
Application architecture jumpstart
Introduction to Windows Azure Virtual Machines
Advanced oop laws, principles, idioms
Ad

Similar to Agile is as Agile Does (20)

ODP
Why don't small companies do big a agile?
PPT
Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)
PPT
Best Practices When Moving To Agile Project Management
PPT
Why Agile? Why Now? IPMA Forum 2009
PPT
MobileTestingfdsafasfaafdsaaafsafsaaa.ppt
PPTX
Using Agile in the Classroom
PPT
Robert Mc Geachy Common Pitfalls Agile
PPT
Agile intro resources
PPT
Using Agile Processes on Documentum Projects
PPT
Using Agile Processes on Documentum Projects
PPT
Transitioning To Agile
PPTX
Agile software development
PPT
Essential Elements Of Distributed Agile
PDF
Failing with agile
DOCX
Agile Development MethodologiesThree CommunitiesProjec.docx
PDF
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
PPTX
Agile Development at W3i
PPTX
Hardware Firewall with all the detail of
PPTX
Agile with process 3 best for all types of
PPT
Agile Development Overview
Why don't small companies do big a agile?
Our Journey Down the Yellow Brick Road (Agile Adoption @ Directi)
Best Practices When Moving To Agile Project Management
Why Agile? Why Now? IPMA Forum 2009
MobileTestingfdsafasfaafdsaaafsafsaaa.ppt
Using Agile in the Classroom
Robert Mc Geachy Common Pitfalls Agile
Agile intro resources
Using Agile Processes on Documentum Projects
Using Agile Processes on Documentum Projects
Transitioning To Agile
Agile software development
Essential Elements Of Distributed Agile
Failing with agile
Agile Development MethodologiesThree CommunitiesProjec.docx
ANI | Agile Mindset Day @Gurugram | Agile Planning: Effective Practices and C...
Agile Development at W3i
Hardware Firewall with all the detail of
Agile with process 3 best for all types of
Agile Development Overview

More from Clint Edmonson (20)

PPTX
New Product Concept Design.pptx
PPTX
Lean & Agile Essentials
PPTX
MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?
PPTX
Flow, the Universe and Everything
PPTX
Application architecture jumpstart
PPTX
Code smells and Other Malodorous Software Odors
PPTX
State of agile 2016
PPTX
Lean & Agile DevOps with VSTS and TFS 2015
PPTX
Application Architecture Jumpstart
PPTX
Agile Metrics That Matter
PPTX
ADO.NET Entity Framework
PPTX
Windows 8 - The JavaScript Story
PPTX
Windows Azure Jumpstart
PPTX
Windows Azure Virtual Machines
PPTX
A Force of One - Agile and the Solo Developer
PPTX
Visual Studio 2010 Ultimate
PPTX
Visual Studio 2010 - The Good Stuff
PPTX
Architecting Applications the Microsoft Way
PPTX
Intro to VS 2010 & .Net 4.0
PPTX
Sky High With Azure
New Product Concept Design.pptx
Lean & Agile Essentials
MICROSOFT BLAZOR - NEXT GENERATION WEB UI OR SILVERLIGHT ALL OVER AGAIN?
Flow, the Universe and Everything
Application architecture jumpstart
Code smells and Other Malodorous Software Odors
State of agile 2016
Lean & Agile DevOps with VSTS and TFS 2015
Application Architecture Jumpstart
Agile Metrics That Matter
ADO.NET Entity Framework
Windows 8 - The JavaScript Story
Windows Azure Jumpstart
Windows Azure Virtual Machines
A Force of One - Agile and the Solo Developer
Visual Studio 2010 Ultimate
Visual Studio 2010 - The Good Stuff
Architecting Applications the Microsoft Way
Intro to VS 2010 & .Net 4.0
Sky High With Azure

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Cloud computing and distributed systems.
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Approach and Philosophy of On baking technology
PDF
Unlocking AI with Model Context Protocol (MCP)
PPT
Teaching material agriculture food technology
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Spectral efficient network and resource selection model in 5G networks
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Network Security Unit 5.pdf for BCA BBA.
A Presentation on Artificial Intelligence
Reach Out and Touch Someone: Haptics and Empathic Computing
Cloud computing and distributed systems.
Diabetes mellitus diagnosis method based random forest with bat algorithm
Approach and Philosophy of On baking technology
Unlocking AI with Model Context Protocol (MCP)
Teaching material agriculture food technology
The Rise and Fall of 3GPP – Time for a Sabbatical?
Chapter 3 Spatial Domain Image Processing.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Encapsulation_ Review paper, used for researhc scholars
Mobile App Security Testing_ A Comprehensive Guide.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Spectral efficient network and resource selection model in 5G networks
The AUB Centre for AI in Media Proposal.docx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Network Security Unit 5.pdf for BCA BBA.

Agile is as Agile Does

  • 1. Agile is as Agile DoesClint EdmonsonEvangelist, Microsoft
  • 3. Businesses live or die bytheir repeatable processes.
  • 5. Defined vs. Empirical ProcessesHow would you code an algorithm to keep this room at a constant temperature for the entire day? (What variables would you consider?)Defined processes try to predict the futureEmpirical processes adapt to the futureFrequent inspection Just in time planning
  • 7. Eliminate wastePoor requirementsUnnecessary functionality, code, documentationDelays in the development processSlow or poor internal communicationBureaucracyEmpower the team to recognize and eliminate it!
  • 8. Amplify learningAccept that software development is a continuous learning processIterate to learn and adaptFail early and fail often!
  • 9. Decide as late as possibleChange happensDon’t fight itAccept it and adapt to itEach iteration should still have an explicit planning phase.
  • 10. Deliver value as fast as possibleEmbrace continuous deploymentKeep iterations short, short, short!Relish feedback and evolve with the next iteration
  • 11. Empower the teamAvoid command and control management styleAvoid rigidly defined rolesTeam should have direct access to the customerTeam is responsible for “done done”Give them responsibility and accountability and they will take ownership.
  • 12. Build integrity inBuild in integrity checks – unit tests become regression testsRefactor aggressively to retain emergent architectural integrityThere should be NO code you’re afraid to touch.
  • 13. See the wholeUnderstand the whole domain and problem spaceSegregate along functional boundaries instead of cross cutting technical concernsCultivate high value communicationProvide the team with a higher purpose to work towards
  • 14. Agile
  • 15. What is Agile?AgileAgile is a movement…represented by a set of methodologies…comprised of a set a best practices.ScrumXPFDDOthersCITDDBDDStandUpsBurn-downDomain ModelProductBacklogRefactorPairwise ProgrammingSprintBacklogFeature Team
  • 16. Agile ManifestoWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
  • 17. Agile principlesCustomer satisfaction by rapid delivery of useful softwareWelcome changing requirements, even late in developmentWorking software is delivered frequently (weeks rather than months)Working software is the principal measure of progressSustainable development paceClose, daily co-operation between business people and developers
  • 18. Agile principlesFace-to-face conversation is the best form of communication (co-location)Projects are built around motivated individuals, who should be trustedContinuous attention to technical excellence and good designSimplicitySelf-organizing teamsRegular adaptation to changing circumstances
  • 20. Business ValueCustomer representation on teamEvocative vision documentUser storiesUse casesPrioritized backlogFeature teams
  • 21. Time to marketIterative developmentContinuous integrationRelease often
  • 22. Quality to marketTest driven requirementsTest driven development (Red, Green, Refactor)Done Done statePair programming
  • 23. FlexibilityEmergent/evolutionary architecture and designRefactoring (Green code only)Self-organizing teams
  • 24. VisibilityInformation radiators Project backlogDaily stand-up meetingsCustomer demos
  • 26. Product lifetimeCollective code ownershipCoding standardsAutomated functional testingRetrospectivesSustainable pace
  • 27. Supporting practicesTrainingCoaching & mentoringWorkshopsReading circlePlanning poker2 pizza teamsEngaging the community
  • 28. Success factorsFreedom to changeEnergized teamCommunication with customerCollaborationAttention to qualityIncrementalismAutomationContinuous improvement
  • 29. Anti-patternsNo definitive processGuestimating & estiquotesHuge casesTechnical debtEgosScrummerfallScrumdamentalismLarge, complex, high risk projects
  • 30. Agile Adoption“Agile processes have not only gained increasing adoption levels; they have also rapidly joined the mainstream of development approaches.”a “Agile Development: Mainstream Adoption Has Changed Agility – Jan 2010”, Forrester
  • 31. Agile Adoption“In the past five years, Forrester has seen a growing interest in the adoption of Agile processes. This interest is slowly changing to adoption. In 2008, even shops that weren’t moving immediately to Agile processes began to take baby steps in that direction.”aa “Make Agile Lean – Dec 2008”, Forresterb “Microsoft ALM Consulting Day – Mar 2009”, Forrester presentation; c “State of Agile Development – July 2008”, Version One
  • 32. Scrum
  • 33. SCRUMSimple and lightweight framework for lean and agile practicesTime-boxed events to control chaosSimple, straight forward roles for accountabilityTransparent artifactsEmpirical inspection and adaptation to reach goalsSimple rules that facilitate complex emergent behavior
  • 34. EventsSprintIterative development period not to exceed one monthSprint planning meeting8 hoursPrioritize product backlog and select items for the sprint backlogDaily stand up meeting15 minutes, What was accomplished since last meeting?What are you doing today?Do you have any impediments?Sprint Review meeting4 hoursReview what was completed and not completed during springDemo the completed work with stakeholdersSprint retrospective3 hoursWhat went well?What could be improved?
  • 37. ReferencesAgile in a Flash – Langr and OttingerAgile Adoption Patterns - ElssamadisySucceeding with Agile – CohnAgile Project Management with Scrum – SchwaberThe Agile Sumurai – RasmussonUser Stories Applied – Cohn

Editor's Notes

  • #2: Lean & AgilePhoto credits: Flickr creative commons - http://www.flickr.com/photos/randysonofrobert/340282243/
  • #3: Agile is as Agile Does Level 100Lately that the terms Agile and Lean have been thrown around casually with little disregard for what they truly mean and how they can be applied correctly. Join us in this session for a lively, interactive discussion about what it means to be lean and agile and how we can incorporate the principles and practices from each of these industry movements to help us build world class software.
  • #32: State of Agile Development – July 2008, 3,061 respondents from 80 countries.* “Which of the following do you employ within your Agile methods?”
  • #34: Definition: A framework within which people can address complex problems, and productively and creatively develop products of the highest possible value