Extended Education

Agile Architecture



Architecture is a heavy-weight activity, and the magic of Agile makes it unnecessary to bother with up-front design, right?

Wrong on two counts!

Today's Agile projects often find themselves stumbling through domain understanding during the first few iterations with low feature velocity: re-work is the order of the day. Many teams find themselves re-doing their software after a few iterations because the initial software foundations weren't strong enough to support maintainability and evolution beyond that point. Such changes outstrip any reasonable refactoring techniques, and while often labelled "refactoring" these restructurings are rarely behaviour-preserving and are indistinguishable from hacking. They are restructurings done with the insight and domain knowledge gleaned from the first few iterations. However, deferring the architectural focus to this stage is costly and negates most of the time-to-market advantages of Agile techniques.

In this session, agile pioneers and practitioners we underscore the importance of software architecture in an Agile context. Not only will we show its importance to maintainability, feature velocity, test development, GUI design, and organizational structuring, but will describe how to do it. You'll learn how to infuse just enough architecture into your first sprint to lay a foundation for both short-term success in test and GUI design, and long-term success in reduced maintenance cost and feature velocity — all within the spirit and focus of the Agile manifesto.
Dates:

17 Oct 2007

Location:

Copenhagen, Denmark

Venue:

TBD
TBD
Copenhagen, Denmark

Get Directions

Price:

600 Euro

Notes:

This class will be co-thought with James O Coplien (http://users.rcn.com/jcoplien/)

 

Course Comments

Be the first to add a comment on this course…

Please login to comment on this course.

  • The Interactive Marketplace: The Agile Sweet Spot
  • Architecture and Agile time-to-market
  • Breakdown of User Stories and Metaphor
  • The relationship of software architecture to
    • TDD
    • Usability
    • Maintainability
    • Organizational Structure
    • Physical Architecture
  • How much architecture, and when?
  • The MVC-U Four-Level Architecture
  • Creating the architecture: Lightweight domain analysis
  • Carrying through architectural activities into development:
  • User Stories and CRC cards
  • Implementation strategies
  • Re-factoring and Architecture
  • Anyone who has an interest in IT architecture should consider how to keep there architecture agile