Assessing the business value of Agile Engineering Practices

455 views
341 views

Published on

Published in: Software, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
455
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Assessing the business value of Agile Engineering Practices

  1. 1. 24 June 2014 © Agile Institute 2008-2014 1 …a taste of… Essential Agile Engineering Practices Rob Myers Agile Roots 19 June 2014
  2. 2. 24 June 2014 © Agile Institute 2008-2014 2 …a taste of… Essential Agile Engineering Practices @agilecoach #AgileRoots 19 June 2014
  3. 3. 24 June 2014 © Agile Institute 2008-2014 3
  4. 4. 24 June 2014 © Agile Institute 2008-2014 4 Test-Driven Development Continuous Integration Pair ProgrammingCollective Code Ownership Relentless Refactoring Sustainable Pace Creative Slack CRC Cards ATDD Mocks Legacy Characterization Tests Spikes Emergent Design
  5. 5. 24 June 2014 © Agile Institute 2008-2014 5
  6. 6. five focusing steps 1. Identify the constraint. 2. Exploit the constraint: Maximize efficiency at the constraint. 3. Subordinate all else to the constraint: Allow the constraint to set the pace. 4. Elevate the constraint: Invest (wisely) in “more, better, faster.” 5. Repeat. 24 June 2014 © Agile Institute 2008-2014 6
  7. 7. 24 June 2014 © Agile Institute 2008-2014 7
  8. 8. 24 June 2014 © Agile Institute 2008-2014 8
  9. 9. 24 June 2014 © Agile Institute 2008-2014 9 “The results of the case studies indicate that the pre-release defect density of the four products decreased between 40% and 90% relative to similar projects that did not use the TDD practice. Subjectively, the teams experienced a 15–35% increase in initial development time after adopting TDD.” http://research.microsoft.com/en-us/projects/esm/nagappan_tdd.pdf, Nagappan et al, © Springer Science + Business Media, LLC 2008
  10. 10. 24 June 2014 © Agile Institute 2008-2014 11 “Laurie Williams of the University of Utah …has shown that paired programmers are only 15% slower than two independent individual programmers, but produce 15% fewer bugs. Since testing and debugging are often many times more costly than initial programming, this is an impressive result.” "Agility counts", The Economist, 20 Sep 2001
  11. 11. beyond academia • The obvious: • Fewer defects. • Cross-training. • The subtle: • Collaboration, courage, & creative problem-solving. • Self-control, self-discipline, valuable breaks, fewer interruptions. • Readable code, less ego-centric code. • Fewer “heroes” (a.k.a. single points of failure). 24 June 2014 © Agile Institute 2008-2014 12
  12. 12. 24 June 2014 © Agile Institute 2008-2014 13 “If it’s painful, do it often.” -- attributed to Kent Beck, who is not a masochist.
  13. 13. so boring, a computer could do it • What it provides: • Rapid, automated feedback. • We know we’re testing/deploying a version from a stable snapshot. • Often generates valuable metrics. • What it helps avoid: • Dependency integration defects, merge conflicts, lingering broken builds. • A need for branching, & branched releases. • Code freezes. 24 June 2014 © Agile Institute 2008-2014 14
  14. 14. a short Continuous Integration recipe 1. A build server. 2. A code repository. 3. A fast suite of automated tests. 4. Build scripts. 5. A Buildmeister. 6. A CI tool (optional, but adds zest) 24 June 2014 © Agile Institute 2008-2014 15
  15. 15. 24 June 2014 © Agile Institute 2008-2014 16 Test-Driven Development Continuous Integration Pair ProgrammingCollective Code Ownership Relentless Refactoring Sustainable Pace Creative Slack CRC Cards ATDD Mocks Legacy Characterization Tests Spikes Emergent Design
  16. 16. 24 June 2014 © Agile Institute 2008-2014 17 Rob.Myers@agileInstitute.com http://PowersOfTwo.agileInstitute.com/ @agilecoach

×