• Like
Agiles2008 - Distributed Agile
Upcoming SlideShare
Loading in...5
×

Agiles2008 - Distributed Agile

  • 253 views
Uploaded on

Presentation given by Matt Gelbwaks and Emilio Gutter at Agiles2008, Buenos Aires

Presentation given by Matt Gelbwaks and Emilio Gutter at Agiles2008, Buenos Aires

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

Views

Total Views
253
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
3
Comments
0
Likes
0

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. Distributed Agile Software for the new world order! Matt Gelbwaks Emilio Gutter
  • 2. Introduction Agile is hard Distributed Agile is harder
  • 3. Why use Distributed Agile if it is so hard?
  • 4. The Elements of Agile
  • 5. Principals (from agilemanifesto.org) •  Satisfy the Customer (working software) •  Welcome changing requirements and priorities •  Deliver incrementally and frequently •  Personal interactions - all roles •  Motivated teams (and customers) •  Promote sustainability through “good” processes •  Technical excellence (maintain no debts) •  Maintain simplicity •  Support self organization •  Relish retrospection
  • 6. The Maths of Agile
  • 7. Definitions! •  Theorem – a theoretical statement that can be proved through other propositions or formulas. •  Corollary – a proposition that is incidentally proved in proving another proposition •  Lemma – a subsidiary proposition introduced in proving some other proposition; a helping theorem •  Postulate – a proposition that requires no proof, being self- evident
  • 8. 1st Postulate of Agile Development •  Agile is really about being reactive to changing business environments, not following “Agile Practices”
  • 9. Matt & Emilio’s 1st Theorem of Development •  The fusion of all the Agile Practices allows teams to maximize their throughput and more reliably meet their product owner’s expectations.
  • 10. Corollary to 1st Theorem •  Neglecting one or more of the Agile Practices makes your team neither un-Agile nor necessarily unable to meet your Product Owners Expectations
  • 11. Lemma to Corollary •  Neglecting one or more of the Agile Practices reduces your team’s throughput and their reliability in meeting expectations.
  • 12. Matt & Emilio’s 2nd Theorem of Development •  If the intent of the Agile Manifesto is to guide teams to maximize the value they can produce for the Business, then they must take into consideration the Business’ operating model.
  • 13. Corollary to 2nd Theorem •  Taking into consideration the Business’ operating model will force the team to make compromises to the extent in which they can undertake various Agile Practices.
  • 14. Corollary to Corollary to 2nd Theorem •  This reduces the direct Business Value that might be achieved when employing all the Agile Practices to their fullest.
  • 15. 2nd Postulate of Agile Development •  Any team, by adoption of Agile Practices will become better, more effective, and more efficient.
  • 16. Matt & Emilio’s 3rd Theorem of Development •  Once teams grow beyond the ideal size, they become distributed by definition, even though we don’t recognize it.
  • 17. Corollary to the 3rd Theorem •  Some of the Agile Practices must be adjusted to work in a distributed environment, but that does not make the teams any less agile in their development
  • 18. Principals (from agilemanifesto.org) •  Satisfy the Customer (working software) •  Welcome changing requirements and priorities •  Deliver incrementally and frequently •  Personal interactions - all roles •  Motivated teams (and customers) •  Promote sustainability through “good” processes •  Technical excellence (maintain no debts) •  Maintain simplicity •  Support self organization •  Relish retrospection
  • 19. Practices for Distributed Agile •  On-site chartering •  Cross-functional teams on every location •  Itinerant team member •  Communication patterns •  What about core XP practices?
  • 20. Some True Life Examples •  Business: On-line travel agency •  Project purpose: Allow customers to book flights marketed by a new low cost carrier •  Size: ~30 people •  Locations: US; India; Argentina USA USA Argentina India
  • 21. Some True Life Examples •  Business: Point of Sale Reservations System •  Project purpose: Allow online travel agencies to manage and reuse unused eTickets for travelers who had banked them •  Size: ~20 people •  Locations: US; Poland; Ireland USA Poland Ireland M
  • 22. Some True Life Examples •  Business: Large File Transfer •  Project purpose: Allow organizational users to transfer large files (100MB+) using MS Outlook through an unobtrusive plugin and a separate server •  Size: 65+ people - 6 teams, each having collocated developers and QA with shared Architects, Tech Pubs, and Product Owners •  Locations: US and Bulgaria + 2 remote developers USA - 3 Teams Roving Mentor M Bulgaria - 3 Teams