eXtreme Programming and Open Source engineering paradigm A comparison
Slides and paper to be available at the iLUG-Calcutta website
Introduction Cross organisational and geographical collaboration and co-operative effort Need to implement an “agile” distributed methodology Comparison of the 2 paradigms with respect to common grounds and conflicts
eXtreme Programming an “agile” software engineering methodology defined by Kent Beck in the early ’90s software “best practices” taken to the eXtreme rapid response to requirement changes small to medium sized developer teams
eXtreme Programming Four basic values Communication Feedback Simplicity Courage
eXtreme “Best Practices” the planning game small iterative releases metaphor testing simple design refactoring
eXtreme “Best Practices” Pair Programming Collective ownership Continuous integration On-site customer Coding standards 40-hour week
OpenSource paradigm original roots in the hacker culture of the early 1960s considerable success in projects incl the Linux Kernel, Apache webserver, Mozilla browser etc Source code is shared
OpenSource paradigm provides source code that is allowed to be studied, modified and redistributed enforced by software licensing policy not a defined ‘standard’ methodology possesses unique character and values
OpenSource Practices distributed development model shared code small releases continuous integration code reuse coding standards
Areas of overlap
Areas of Conflict
Reflections Common values: Communication Feedback Simplicity “The way programmers like to work” Strong XP and OS communities
References Kent Beck: ‘eXtreme Programming explained - Embrace change’ ISBN: K Beck, M Fowler: ‘Planning Extreme Programming’ ISBN: E S. Raymond, B Young: ‘The Cathedral and the Bazaar’ ISBN: ‘Open Sources: Voices from the Open Source Revolution’ ISBN:
XP practices