Your SlideShare is downloading. ×
0
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Five Key Numbers to Gauge your Agile Engineering Efforts
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Five Key Numbers to Gauge your Agile Engineering Efforts

9,893

Published on

Talk given at Agile Tech DC, May 14, 2011

Talk given at Agile Tech DC, May 14, 2011

Published in: Technology
3 Comments
16 Likes
Statistics
Notes
No Downloads
Views
Total Views
9,893
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
3
Likes
16
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Speed up feedback loops, know whether you’re building the right thing, whether it’s going to make you money, know if you understood the requirements, be more responsive to your customers, change direction quickly
  • What if you could engineering things in such a way so that you could produce a constant stream of new features at a steady rate, regardless of the age and/or size of the system?
  • OBJECTIVES Understand how various agile engineering practices help to flatten the cost of change curve See why lowering transaction costs is a key theme of agile engineering practices Be exposed to some ways to evaluate the maturity of their own agile engineering effortsHave ideas about how to improve their implementation of agile engineering practices
  • This exposes the limit of how quickly you can work within your team context.
  • Collective code ownershipSimple designGroup designTransparency in version controlReduce the WTH’s per minute in a code reviewPAIRING
  • You need a shared contextBuild trust through interactionIf you aren’t working regularly side-by-side with your teammates, the team knowledge and cohesion is going to fracture
  • Transcript

    • 1. Five Key Numbers to Gauge your Agile Engineering Efforts
      Jeff Nielsenjeff@jeffnielsen.com
      Agile Tech DC
      May 14, 2011
    • 2. There are many benefits to working incrementally in short cycles . . .
    • 3. . . . if you can pull it off
    • 4. Agile engineering practices are supposed to enable a flattened cost-of-change curve
      TDD
      refactoring
      continuous integration
      pair programming
      coding standard
      automated builds
      automated tests
      . . .
      Craig Davidson, http://www.agileadvisor.com/2009/01/yagni-and-cost-of-change-curve.html
    • 5. But it’s not sufficient simply to do the practices(They’re not binary)
    • 6. How do we knowhow effectivewe are atflattening the curve?
    • 7. Five key numbers . . .Not intended to be comprehensive or even very scientific
    • 8. Seconds
      20
      #1How long until you see feedback from a test after writing or changing a line of code?
      16
      12
      8
      4
      0
    • 9. #2How many one-line changes can you commitand push to testin an hour?Following the team’s practices, of course
      20
      16
      12
      8
      4
      0
      Commits
    • 10. The speed of the feedback affects the speed at which you can work
    • 11. 5
      4
      3
      2
      1
      0
      #3How many people on your team can explain the details of any particular section of code?
    • 12. 100%
      #4What percentage of your team members did you pair with in the last two days?
      80%
      60%
      40%
      20%
      0%
    • 13. “Promiscuous” pairing speeds up communication and builds trust
    • 14. #5How many manual steps does it take to get a build into production?
      15
      12
      9
      6
      3
      0
      Steps
    • 15. Higher transaction costs drive longer cycles and bigger batches
    • 16. To lower the cost-of-change curve, we must lower the transaction costs associated with adding features
    • 17. Make it cheaper to
      Change code
      Check in code
      Understand the code
      Communicate with your teammates
      Push code to production
    • 18. If we can make changes cheaply enough . . .
      . . . the cost savings from quicker feedback and increased learning outweighthe costs of overhead and rework.
    • 19. 120
      96
      72
      48
      24
      0
      BONUS
      What’s theaverage typing speed of the programmers on your team?

    ×