An introduction to architecture frameworks
Architecture frameworks define how to organize the structure and views associated with an architecture. Architecture frameworks can be seen as best practices, describing how and what to describe when creating architecture documents.
Over the years a wealth of architecture frameworks has been created by organizations, both public (like the Departement of Defence’s DoDAF framework) and private (like Capgemini’s IAF ). Recently there has been a shift towards the use of TOGAF as a generally accepted de-facto standard.
Some of the best known enterprise architecture frameworks are the Zachman framework and TOGAF. While these frameworks are primarily targeted at enterprise architects, they do contain some useful material for infrastructure architects as well.
Most architecture frameworks are quite large. The description of TOGAF, for instance, encompasses about 700 pages and the Zachman framework uses 36 cells that each need a full document to describe. Because most frameworks provide an vast amount of knowledge and guidance, using an architecture framework can be quite intimidating.
In the solution architecture realm there are no comprehensive architecture frameworks available. There are however some best practices and de-facto standards when it comes to creating and describing architectures. Two of these are the SEI stack and the 4+1 views.
Architecture frameworks should not be used without modification and adaptation to your own environment and needs. Often architects "cherry-pick" parts of frameworks or combine frameworks to fit their needs. For instance, it is quite common to combine TOGAF with the Zachman framework. Frameworks should be seen as useful guidance, to prevent you from reinventing the wheel.
Which parts you need from a particular framework is dependent on many factors, like:
- Is your architecture implemented in a green field situation or are you dealing with an already existing architecture and IT landscape?
- Are you planning on migrating systems or are you planning on creating new systems?
- Do you run a consolidation project?
- Do you have to handle many changes in a large program or are you running one project only?
Based on the environment as stated above, the culture of the organization (is enterprise architecture already mature in the organization or is nothing in place yet?), and already used standards in for instance software development or project/program management, a selection for a framework can be made.
This entry was posted on Friday 10 May 2013