Difference between revisions of "Agile Architecture: Process and Design Tips to Support Flexible Systems"

Line 25: Line 25:
* [[Agile TDD and Refactoring]]
* [[Agile TDD and Refactoring]]
* [[Agile Design and Modeling for Advanced Object Design with Patterns]]
* [[Agile Design and Modeling for Advanced Object Design with Patterns]]
* [[Agile Acceptance Test-Driven Development: Requirements as Executable Tests]
* [[Agile Acceptance Test-Driven Development: Requirements as Executable Tests]]
== Course Content ==
== Course Content ==

Revision as of 09:19, 3 March 2008


1 day.

This one-day seminar introduces you to the techniques and tips to build agile architectures. This spans not only design tips, but also related agile method practices. You will learn a set of lightweight analysis tools to better understand the domain, the constraints, and variation points. You will learn simple collaborative techniques to help align the business goals of product management with the architectural goals. We will explore the concept of “pull design” in software development, and design principles that enhance agility at an architectural level. You will leave with an understanding of the major techniques and guidelines for agile architectures, and pointers to useful learning aids to quicken your journey.

Who can benefit

  • Developers, architects, technical leaders.


  • experience in building systems

Skills Gained

Upon completion of this course, students should be able to:

  • apply lightweight domain and architectural analysis
  • describe dozens of design and agile methods tips for developing an agile architecture
  • facilitate design workshops
  • work with product management to align business and architectural goals
  • facilitate the creation of “agile architectural documentation”

Related Courses


Course Content

  • Pull design: principles and examples
  • Agile process tips for an agile architecture
  • Agile SAD workshops: technical memos and N+1 sketch-views
  • Lightweight domain modeling and architectural analysis
  • Release and iteration planning with product management
  • Tiger teams and master programmers
  • Architects as teachers
  • Architectural CoPs
  • HAL and simulation layers
  • Understanding the “m-architecture”