Your SlideShare is downloading. ×
0
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
Agile the Pivotal Way
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

Agile the Pivotal Way

291

Published on

Given at the DaVinci Institute 3/20

Given at the DaVinci Institute 3/20

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
291
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
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

Transcript

  1. agile developmentTHE PIVOTAL WAYMike GehardSoftware Engineer, Bouldermgehard@pivotallabs.com@pivotallabs@mikegehard
  2. PIVOTAL LABS• 200+ people in San Francisco, New York, Boulder, Los Angeles, Boston, London (for now)• Ruby on Rails, iOS and Android• Big name clients• Makers of Pivotal Tracker (used by 500K people)• Agile/XP since beginning of time GRUELING, HARD CORE, DISCIPLINED DEVELOPMENT PROCESS 2
  3. FIRST, WE FEED 3
  4. THEN WE STAND 4
  5. AND THEN PAIR 5
  6. AND THEN PAIR 6
  7. WE TAKE OUR BREAKS 7
  8. AND REPLENISH 8
  9. A GRUELING DAY• 08:45 Breakfast• 09:05 All Hands Standup• 09:15 Team Standups• Lunch noon-ish• Ping pong at will• Done around 18:00* (*your mileage may vary) 9
  10. IT’S ABOUT SUSTAINABILITY• Consistent, predictable delivery is at a premium• Tired developers leave bugs• Tired developers leave• Short-term bursts of productivity cost more in the long termHappy developers = productive developers 10
  11. BUILDING SUSTAINABLE SOFTWARE IN A SUSTAINABLE WAY amazing secrets revealed!
  12. GOALS OF OUR SOFTWAREPROJECTS• Get V1 of new product to market quickly• Malleable, change based on feedback• Predictable schedule with no surprises• Low bug count• Performant, scalable• Help client teams go faster and maintain it 12
  13. TRADITIONAL SOFTWAREDEVELOPMENT IS EXPENSIVE• Growing maintenance debt• Rising defect rate• Increasing cost of change 13
  14. 14
  15. EFFECTIVE (AND SUSTAINABLE)SOFTWARE DEVELOPMENT...• Is mostly about communication• Needs to allow for change• Takes discipline and rigor• Needs to be constantly adjusted The XP philosophy embraces and enables these ideas. 15
  16. OUR HISTORY WITH XP• Started with “by the book” XP in 1999• Helped Beck et al with the early books• Great early experiences with XP• Thinking is always evolving• Various changes/additions to the process Bottom line: it’s a truly different way to build software, with awesome results. And it’s fun, day after day. 16
  17. CORE PRACTICES October 12, 2012
  18. ALL PAIRING, ALL THE TIME 18
  19. PAIR PROGRAMMING• Developers sit in pairs• All machines are communal• No laptops/iPhones• Ping pong pairing• Frequent pair rotation• UX designers pair with developers as needed 19
  20. PAIRING BENEFITS• Higher quality code• Shares codebase knowledge quickly• Very high bus count• More focus• Greater discipline around other technical practices Pairing is our competitive advantage. 20
  21. PAIRING COMBINATIONS 21
  22. PAIRING COMBINATIONS 22
  23. PAIRING COMBINATIONS 23
  24. PAIRING COMBINATIONS ? ? ? ? ? ? ? ? 24
  25. PAIRING COMBINATIONS ? ? ? ? ? ? ? ? 25
  26. PAIRING COMBINATIONS 26
  27. 100% TEST DRIVEN• No production code written without a failing test• No code checked in without running tests• Focus on organization and readability of tests• Focus on keeping tests fast• Tests are for design and regression Keeps cost of change constant. 27
  28. RUTHLESS REFACTORING• Code evolution• Incremental design towards patterns• It takes discipline, but pairing helps Tells you when something is resistant to change. 28
  29. CONTINUOUS INTEGRATION• Critical to maintain constant cost of change• When to release is a business decision 29
  30. THE TEAM 30
  31. THE TEAM• Small, typically 2-4 pairs• Co-located, or intermingled-then-remote• Daily standups, weekly planning meetings• Same hours• Stable anchor, but frequent cross-team rotation Software development is a team sport! 31
  32. INVOLVED CUSTOMER• Within earshot and always available• Empowered to make decisions• Maintains prioritized backlog• Accepts/rejects stories continuously• Close collaboration with design/UX Constantly aware of situation. 32
  33. 33
  34. RETROSPECTIVES
  35. TECHNICAL EXPERTS • Lead in specific tech area • Guest pairs on teams as needed • Blog & tech talk regularly 35
  36. HIRING FOR APTITUDE ANDCULTURAL FIT
  37. THANK YOUMike GehardSoftware Engineermgehard@pivotallabs.com@pivotallabs@mikegehard 37

×