|
eXtreme Programming: What it is and When to Use it
Overview
eXtreme Programming (aka XP) is a new approach to software development that is a radical departure from the heavyweight defined processes that have been touted over the last decade as the 'proper' way to develop software. With practices such as welcoming late changing requirements, pair programming, continual refactoring and a 40-hour work week, the consideration of adopting XP has been somewhat controversial.
This course provides attendees with an understanding of what XP is all about from an objective viewpoint. This course will allow attendees to make informed decisions about whether XP is right for their organization and projects, how it can fit into their current approach, and how to adapt XP to optimize their performance. This course immerses you into the details of XP, providing a clear, objective view of the value to be gained with these practices, and the associated costs you can expect to incur.

Format
A blend of lecture, class discussion, group discussions, and exercises.
Seminar Topics
This seminar will examine the XP context, history, philosophy, principles, practices, and experiences to date. Specific topics will include:
- Seminar learning objectives and participant expectations
- The agility movement and XP
- eXtreme Programming - background and history
- XP and other modern approaches a comparison
- The values and principles of XP
- The economics of XP success
- Controlling the four success variables (cost, time, scope and quality) in an XP project
- XP Process model
- XP roles of customer, developer, and management
- The 12 XP practices a cohesive collection of best practices
- Certain key practices and techniques explored, e.g.
1. the Planning Game: including estimation, release & iterationplanning
2. test-driven development
3. measuring project velocity
- To do XP or not: tradeoffs in determining whether XP is a good fit for your projects
- Implementation of XP Projects: prerequisites for success
- Industry case studies: successes, failures and misunderstandings
- Automated tools and other support for successful implementation of XP
- Summary and Wrap-up
|