Unfamiliar with emergent architecture? InfoQ has a whole section of articles, although they're a bit hit or miss. Gartner lists seven properties of Emergent Architecture (below). I like the part where it stresses that it revolves around individuals acting in their own interests. "Scarcity of resources" as a driver of EA resonates with me, as some of the best architecture decisions I've been involved with resulted from desperately trying to reduce a h/w or resource cost, sometimes to 5% of the original projection.
Abel Avram has a very good response article that highlights several EA lists and includes a quote by Bruce Robertson of Gartner, "architect the lines, not the boxes’, which means managing the connections between different parts of the business rather than the actual parts of the business themselves."
If you work for a large enterprise, there's a good paper from the scalingsoftwareagilityblog on the principles of agile architecture [pdf].
Gartner's Characteristics of Emergent Architecture:
- Non-deterministic - In the past, enterprise architects applied centralised decision-making to design outcomes. Using emergent architecture, they instead must decentralise decision-making to enable innovation.
- Autonomous actors - Enterprise architects can no longer control all aspects of architecture as they once did. They must now recognise the broader business ecosystem and devolve control to constituents.
- Rule-bound actors - Where in the past enterprise architects provided detailed design specifications for all aspects of the EA, they must now define a minimal set of rules and enable choice.
- Goal-oriented actors - Previously, the only goals that mattered were the corporate goals but this has now shifted to each constituent acting in their own best interests.
- Local Influences: Actors are influenced by local interactions and limited information. Feedback within their sphere of communication alters the behaviour of individuals. No individual actor has data about all of an emergent system. EA must increasingly coordinate.
- Dynamic or Adaptive Systems: The system (the individual actors as well as the environment) changes over time. EA must design emergent systems sense and respond to changes in their environment.
- Resource-Constrained Environment: An environment of abundance does not enable emergence; rather, the scarcity of resources drives emergence.
Title: If you're architecting the boxes and not the lines it does.
No comments:
Post a Comment