Technical excellence 20120119

  • 1,518 views
Uploaded on

Slide set from a 20 min. talk at arrowgroup's Agile Evangelists event on 19/01/2012. …

Slide set from a 20 min. talk at arrowgroup's Agile Evangelists event on 19/01/2012.

The talk was about the need for technical excellence, and the central role Test Driven Development plays in achieving that.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,518
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
5
Comments
0
Likes
2

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
  • Gfsdgsdgs dfdsgsdg
  • http://www.flickr.com/photos/fastjack/282707058/
  • http://mikadomethod.wordpress.com/ http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052 http://www.objectmentor.com/resources/articles/WorkingEffectivelyWithLegacyCode.pdf

Transcript

  • 1. In Search of Technical Excellence Wouter Lagerweij @wouterla http://www.lagerweij.com/ Qualogy @qualogy_news http://www.qualogy.com/
  • 2.
    • 10 years of agile in 2011
    • 3. 35% of companies use some form of Agile
    • 4. Results are encouraging
    Agile Forrester research, jan. 2011
  • 5. Many teams are struggling...
    • Slow down (fewer features/sprint)
      • More and more production issues
      • 6. Increased fragility
    • Requests for 'refactoring' stories from the development team
    But...
  • 7. Technical Excellence Looking back on 10 years of Agile (Snowbird 2011) We, the undersigned, believe the Agile community must:
    • Demand Technical Excellence
    • 8. Promote Individual Change and Lead Organizational Change
    • 9. Organize Knowledge and Improve Education
    • 10. Maximize Value Creation Across the Entire Process
  • 11. “ 14 percent, are doing extreme programming practices inside the SCRUM, and there is where we see the fastest teams: using the SCRUM management practice with the XP engineering practices inside.” - Jeff Sutherland, 2011 http://2011.secr.ru/lang/en-en/home/press-center/jeff-sutherland-interview Technical Excellence
  • 12. Extreme Programming http://c2.com/cgi/wiki?ExtremeProgrammingCorePractices
  • 13. Test Driven Development
  • 17. Why Automated Tests?
  • 18. Why Automated Tests?
  • 19. Remember the goal
  • 20. Remember the goal
  • 21.
    • Combinatorial complexity
    • 22. Fine grained => pinpoint errors
    • 23. Code documentation that is in sync
    • 24. Supports changing the code
    Why Unit Tests?
  • 25. Why Test First?
  • 26. Why Test First?
  • 27.  
  • 28.
    • Testable code is cleaner
      • Lower Complexity
      • 29. Loosly Coupled
      • 30. Tighter Cohesion
    • Keeps focus on Simple Design
      • YAGNI, DRY
    • Continuous Refactoring
    http://www.keithbraithwaite.demon.co.uk/professional/presentations/2008/qcon/MeasureForMeasure.pdf Why TDD?
  • 31. We don't have the time! Why NOT ?
  • 32. Software will always have bugs! Why NOT ?
  • 33. My boss won't let me! Why NOT ?
  • 34. Legacy code is hard to test! Why NOT ?
  • 35.
    • As a programmer
      • Keep learning!
      • Estimate including testing
      • 37. Learn to say 'No'
    How?
  • 38.
    • As a Manager
      • Focus on Quality before schedule
      • 39. Encourage teams to set their own standards
      • 40. Encourage people to take training
      • 41. Reserve time for practice
    How?
  • 42. Thanks! Wouter Lagerweij @wouterla http://www.lagerweij.com/ Qualogy @qualogy_news http://www.qualogy.com/
  • 43. Open Space
    • Open format for discussion
    • 44. 4 places to hold them
    • 45. A schedule you can fill
    • 46. 1 Law, 4 Principles, 2 animals
  • 47. The Law of Two Feet If any person finds themselves in a situation where they're neither learning nor contributing , they must use their two feet and go to some more productive place !
  • 48. 4 Principles
    • Whoever comes are the right people
    • 49. Whenever it starts is the right time
    • 50. Whatever happens is the only thing that could have
    • 51. When it's over, it's over
  • 52. 2 Animals
    • Bumblebee
      • You can choose more than one session at the same time
      • 53. It's possible to be in multiple places at the same time
      • 54. Cross-pollinate ideas
    • Butterfly
      • There can be interesting talk outside the sessions!