Notes from the Software Architecture Fundamentals a video series on Safari books online - continued.

Business in constant change

Technologies in constant change

Architectural agility

Technique 1 : Reduce dependencies

Use a Messaging/Bus/Adapters/Architectural Pattern to reduce dependencies

Components can evolve independently

Downsides : Solution becomes more complex, performance goes down.

Technique 2 : Standards

Industry Standards

Corporate Standards

De-facto Standards

Large resource pool, although be wary of average resources, requires good hiring practices.

Better integration

Feasibility (in budget)

Technique 3 : Product agnostic approach

Avoid vendor lock-in using anti-corruption layers

Technique 4 : Domain specific architecture

Generic architecture is difficult to change

Limits scope -> drivers, requirements, business direction, industry trends

Trading -> high performance architecture

Insurance –> Shared?

Business goals, requirements, drivers and industry trends should drive architecture.