1 / 24

The Bold, New Extreme Programming Experiment - Now in Its Ninth Year

The Bold, New Extreme Programming Experiment - Now in Its Ninth Year. Brian Spears Follett Software Company McHenry , IL 2009 Agile Conference Student: Nick Chou. OUTLINE. INTRODUCTION LET’S TRY IT ALL OUR EGGS IN ONE BASKET TECHNOLOGY CHOICE, TEST FIRST PAYS OFF HITTING OUR STRIDE

komala
Download Presentation

The Bold, New Extreme Programming Experiment - Now in Its Ninth Year

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The Bold, New Extreme Programming Experiment - Now in Its Ninth Year Brian Spears Follett Software Company McHenry, IL 2009 Agile Conference Student: Nick Chou

  2. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  3. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  4. INTRODUCTION • In April 2001, members of the Destiny team attended a Chicago Process Improvement Network (C-SPIN) meeting where Martin Fowler spoke about Extreme Programming (XP). • Destiny quickly established itself as a market-leading product and the success story continues today.

  5. INTRODUCTION • The team began with 11 members (8 developers, 1 project lead, 1 product manager, 1 customer representative) has grown in the past 8+ years to 51 members (33 developers). • Author’sinitial role on the team was as a developer. Most of histime is spent in a role that is part Technical Lead, part XP Coach, and part Technical Support Escalation Liaison role.

  6. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  7. LET’S TRY IT • The team in 2001 was to build the library management system. • The requirement was to move away from the legacy approach of a single client-server install per school to a web-based centralized product to run all the libraries in a district.

  8. LET’S TRY IT • Of the 8 developers on the team, 2 were technical leads, one of whom also assumed an “XP Coach” role. The Project Lead as well acted as an XP Coach. A Product Manager was on the team as well as a writer/business analyst who served as the voice of the Customer on the team. • Developers, committed to XP principles, built a simple framework using jUnit and HTTPunit for running suites of Unit Tests (UT) and Acceptance Tests (AT’s).

  9. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  10. ALL OUR EGGS IN ONE BASKET This was a significant milestone for several reasons: • The results of the initial iterations were promising, and management shifted from putting a significant chunk of development resources behind the effort to committing the bulk of its development resources. • We were doubling the size of the team when XP was thought of as a small team process. Would it work as well with a team that was larger? • Testers were being added to the team. Some thought of the UT’s and AT’s as replacing our traditional manual testers (our testers are not developers). How would we incorporate the testers into the team?

  11. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  12. TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • Business model changes dictated that we changed databases from Oracle to Microsoft SQL Server. • Coming from a C-ISAM, non-SQL database in our legacy products, such a change would have taken months of effort and require complete manual retesting of all features. • On the Destiny team, this was accomplished in a single 3-week iteration.

  13. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  14. HITTING OUR STRIDE • Developers automated the test steps, and testers assisted with some manual testing toward the end of the iteration. • Testers have proven time and again that their efforts manually test the product (in this case, run through the Automated AT steps one last time manually) will spot visual or other issues that were missed.

  15. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  16. NON-STANDARD XP • Note cards were one of the first things we abandoned. • All of our business logic unit tests and all of our acceptance tests populate data through all layers to the database. • In the past year authordistributed out AT runs. With the new distributed approach, our AT run time is down under 3 hours again and we are utilizing existing hardware (our developer workstations) to a greater degree off hours.

  17. NON-STANDARD XP • For several years authorfought hard to not develop experts. Author still to try not to depend on a SINGLE expert in any one technology or feature, but this code base is too big for everyone to be a generalist. • Author have found a need to regression test before every release. Keeping 33 developers busy at the iteration boundary and achieving true release quality at every 2 week boundary has not been practical.

  18. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  19. KEY TO SUCCESS • Management backing • Team buy in • Coach role • Simplest thing that could work and workingwithin iterations • Adapt • One big room • Tester roles • Test first

  20. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  21. CHALLENGES TODAY • Team size = harder to stay agile and get momentum tochange. Dividing into 2 and then 3 and now 4 sub teamsworking on different types of stories (still all in the samecode base) has helped to some degree keep that small teamfeel and empowerment to change. • Four sub teams all working in the same code base createsa real problem with managing the number of broken AT’sand UT’s.

  22. OUTLINE • INTRODUCTION • LET’S TRY IT • ALL OUR EGGS IN ONE BASKET • TECHNOLOGY CHOICE, TEST FIRST PAYS OFF • HITTING OUR STRIDE • NON-STANDARD XP • KEY TO SUCCESS • CHALLENGES TODAY • SUMMARY

  23. SUMMARY • A healthy XP project can run for a long time, but you need to change and adapt along the way.

  24. Q&A

More Related