eXtreme Programming: A Practitioner's Approach


Published on

The slides for our presentation at BarCamp Saigon on 15th Nov 2008. For more information, please visit http://eastagile.com.

Published in: Technology, News & Politics

eXtreme Programming: A Practitioner's Approach

  1. eXtreme Programming A Practitioner's Approach
  2. Outline XP Overview XP Values XP Practices XP FAQs Demo Q&A
  3. XP Overview What is XP? Nothing to do with Windows XP A software engineering methodology (a form of agile software development) prescribing a set of practices (aka XP best practices). A discipline of software development based on values of simplicity, communication, feedback, courage, and respect (Jeffries, 2001). A development process that is more responsive to customer needs (quot;agilequot;) than traditional methods, while creating software of better quality (Wikipedia, 2008). How to apply XP? 5 values 12 best practices
  4. XP Values Communication Customer - Developer Developer - Developer Simplicity Start with the simplest solution. Extra functionality can then be added later. Feedback From the system From the customer From the team Courage Refactoring Persistence Respect Respect other team members' work
  5. XP Practices The Planning Game: Release Planning Iteration Planning Pivotal Tracker as XP Management Tool
  6. XP Practices Stand-up meeting
  7. XP Practices Continuous Testing Unit / Functional tests applying Test Driven Development
  8. XP Practices Continuous Testing GUI test with Selenium
  9. XP Practices Continuous Testing Acceptance Test by customer
  10. XP Practices Pair Programming Working environment
  11. XP Practices Pair Programming Working in pair ...
  12. XP Practices Pair Programming ... and active participation
  13. XP Practices Onsite Customer Communicate via phone ...
  14. XP Practices Onsite Customer ... via standard messenger software
  15. XP Practices Onsite Customer ... and web-based real-time group chat tool
  16. XP Practices Small Release System Metaphor Simple Design Refactoring Collective Code Ownership Continuous Integration 40-Hours Work Week Coding Standards
  17. XP FAQs How big a project will XP work with? Won't pair programming cut productivity in half? Isn't it annoying having someone looking over your shoulder while you program? Why just pair programming? Why not 3 or 4 or 100 programmers?
  18. Demo Pivotal Tracker: project management tool Test Driven Development Refactoring Pair Programming Ruby on Rails Facebook
  19. References Jeffries R., 2001, quot;XProgrammingquot; . Available at: http://www. xprogramming.com/xpmag/whatisxp.htm [Accessed November 13th 2008] Wikipedia, 2008, quot;Extreme Programmingquot; . Available at: http: //en.wikipedia.org/wiki/Extreme_Programming [Accessed November 13th 2008] Brewer J., Design J., 2001, quot;Extreme Programming FAQquot;. Available at: http://www.jera.com/techinfo/xpfaq.html [Accessed November 13th 2008] Wells D., 2006, quot;Extreme Rulesquot; . Available at: http://www. extremeprogramming.org/rules.html [Accessed November 13th 2008]
  20. Q&A (Source: http://forpd.ucf.edu/strategies/QUESTION.jpg)