COST: Contact us
DURATION: 3 days

ICAgile logo


Learn how to use Agile programming practices to create high-quality systems. During our Agile Programming Techniques course, you will gain hands-on experience and practice with tools and techniques for designing and implementing systems. You will apply specifications written in the form of user examples and unit tests to drive development with Test Driven Development (TDD), Behaviour Driven Development (BDD) and Acceptance Test Driven Development (ATDD). This course is ideal for developers and technical testers wanting a better understanding along with the opportunity to practically apply Agile tools and techniques. 


ICAgile Certified Professional in Agile Programming (ICP PRG)

ICAgile accredited course: The ICP-PRG Certification from ICAgile, is granted on the successful completion of this course. This certification is part of the ICAgile Engineering Track along with our Agile Fundamentals and Agile Design and Architecture courses.

Intended for:

  • Developers who wish to design and develop systems using Agile techniques
  • Technical Testers wanting a deeper understanding of Test Driven Development, Behaviour Driven Development and Acceptance Test Driven Development.


You will need to have completed formal Agile training such as our Agile Fundamentals course and a working knowledge of Java or C# is a must.

Learning outcomes:

By the end of this course you will be able to:

  • Create unit tests to test individual classes and modules in isolation
  • Safely refactor legacy code bases without breaking existing code
  • Drive design and development with unit tests using Test Driven Development and Behaviour Driven Development
  • Write automated specifications and acceptance tests


  • Unit testing and dependency injection
  • Refactoring
  • Design 
  • Test Driven Development and Behaviour Driven Development
  • The build process
  • Acceptance Test Driven Development

Method used:

Lecturing is kept to the minimum necessary, most of the learning is achieved through applying the practices and techniques in group exercises.

Take your learning to the next level:

Complete the ICAgile Engineering Track with the following courses: 

Agile Programming Techniques

Related courses:

Course outline:
Agile Programming Techniques Outline (PDF)