This course takes students through a basic understanding of the extreme programming (XP) methodology created by Kent Beck and Ward Cunningham. There are numerous books and sources of misinformation available on this process, which makes getting a firm grasp on just what XP is (and isn’t) difficult. This course will eliminate any confusion and set you on right path.

Participants will first discuss XP principles and practices and then use exercises to demonstrate how planning works in XP. A comparison between XP and other methods, such as Scrum, will be included with tips for how to mesh XP with these other options. In addition, participants will discuss how to best introduce XP into your organization and make it succeed in your unique environment.

Course Duration: 2 days
Prerequisites:

A basic understanding of the software development lifecycle is recommended.

Course Objectives:
  • A thorough grasp on Agile principles and values
  • Deep understanding of Agile project management and evolutionary design
  • Master customer practices such as storytelling and story testing
  • Master development tools and build practical skills in automated micro-testing, code smells, refactoring, test-driven development and continuous integration
  • Strategies to integrate these practices into your process and team environment
Course Outline:
  • Introduction to XP
    • XP Overview
    • XP Mini-Simulation
    • Evolutionary Design
  • XP Planning Practices
    • Chartering
    • Understanding User Stories
    • Agile Planning
      • Release Planning
      • Iteration Planning
    • Test-Driven Development
    • Pairing
  • XP Continuous Practices
    • Continuous Integration
    • Design Improvement
    • Small Releases
  • XP Technical Practices
    • Establishing Coding Standards
    • Collective Code Ownership
    • Simple Design
    • System Metaphor
    • Sustainable Pace