Agile Fundamentals – Extreme Programming Course


This course aims to give participants

  • an understanding of the principles of Agile Software development
  • an understanding of the practices of Extreme Programming
  • practice and role play on XP disciplines


This training is for experienced software development professionals who seek to adopt a more agile way of working. It is for software developers, business analysts, quality analysts, project managers and product owners.


To illustrate the concepts of Test Driven Development (TDD), Refactoring and Version Control, the session will involve some light coding. Participants are encouraged to come with laptops, but this is not mandatory.

Course Description

Agile methodologies enable teams accelerate the delivery of business value and respond better to change even late in the development process.

This training explores Extreme Programming, an Agile Methodology that focuses on simplicity, communication and feedback. Participants will work in small teams to deliver a software solution using Extreme Programming practices like small regular releases, test driven development, refactoring, creating user stories and continuous integration.

To arrange this course for your company, email

Course Overview

  1. An Introduction to Agile Software Development
    1. The problems of the Waterfall methodology
    2. The Agile Manifesto and Agile Principles
    3. Different Agile Methods
    4. Agile Contracts
  2. Introduction to Extreme Programming
    1. XP Values:  Communication, Simplicity, Feedback, Courage & Respect
    2. XP team practices
      1. Pair programming
      2. Coding standards
      3. System Metaphor
      4. Incremental and Simple design
      5. Test Driven Development (TDD)
      6. Collective code ownership
      7. Continuous Integration
      8. On-site customer
      9. Planning game
      10. Regular small releases
      11. Sustainable pace
      12. Whole team
      13. Single code base & version control
    3. Refactoring
      1. Iteration and Release Planning
      2. User stories
      3. Estimating user stories
      4. Tasks
      5. Release planning
      6. Retrospectives
      7. Informative Workspace
      8. Spikes
      9. Stand ups
    4. Rights and Responsibilities
      1. Customer rights
      2. Customer Responsibilities
      3. Developer rights
      4. Developer responsibilities
  3. Weaknesses and criticisms of Extreme Programming
  4. Beyond XP
    1. Domain Driven Design (DDD)
    2. Behaviour Driven Development (BDD)
    3. Continuous Delivery (CD)
    4. Metrics and Monitoring
    5. Software design principles and patterns facilitating agility
    6. Microservices
    7. Software Craftsmanship

Praise for the Ikenna Consulting Agile Fundamentals Course

“You came to deliver a lecture in our office last month on ‘Agile Fundamentals’. I must say we learnt a lot and we are already putting some of the principles to work. Personally, I now code using stories as I learnt that day.” – Olaniyi, Developer, Lagos

“I enjoyed the way Ikenna explained the values and principles of agile methodologies with detailed examples from real project experience.” -Anne, Software Development Professional, Yaba, Lagos

“The Agile Fundamentals Course was helpful, insightful and timely” – Emeka, Software Development Professional, Yaba, Lagos

“It was a great session!” -Obi, Software Development Professional, Yaba, Lagos