Mahmoud Ghoz
Back to TrainingEngineering Excellence

Agile Software Design (ICP-ASD)

Duration3 days
DeliveryOnline or In-Person
CertificationICAgile Certified Professional (ICP-ASD)

About the Course

The ICP-ASD program provides a hands-on learning journey focused on modern software design principles and Agile engineering practices. It enables software professionals to create maintainable, adaptive, and high-quality code aligned with Agile values. Participants explore how to evolve design in the presence of changing requirements, apply test-driven development, and adopt refactoring techniques that foster continuous improvement and sustainable delivery, building flexible architectures that respond rapidly to change.

What You Will Learn

  • Apply Agile values and principles to guide design decisions
  • Describe the importance of emergent design and evolutionary architecture
  • Implement design patterns that support incremental change and maintainability
  • Use TDD, BDD, and refactoring practices to ensure continuous design improvement
  • Evaluate trade-offs between simplicity, flexibility, and performance
  • Recognize the role of clean code and SOLID principles in sustaining agility
  • Establish design practices that support continuous delivery and DevOps alignment
  • Collaborate effectively across cross-functional teams to align design intent

Key Topics & Agenda

  • Agile Design Foundations
  • Design in Agile Contexts: Emergent Design and Evolutionary Architecture
  • Clean Code and Design Practices: SOLID, GRASP, and Code Smells
  • Testing as a Design Tool: TDD and BDD
  • Evolving Design Through Feedback: CI/CD, Reviews, and Telemetry
  • Design for Quality and Sustainability

Related Roles

Developer / Engineer, QA / Test Professional, Change & Transformation Lead

Ready to bring this to your team?

INSIGHTS

Thinking on transformation, leadership, and execution.

Occasional perspectives from Mahmoud Ghoz.