TOGAF (The Open Group Architecture Framework) defines an architecture framework as follows:

"An architecture framework is a tool which can be used for developing a broad range of different architectures. It should describe a method for designing an information system in terms of a set of building blocks, and for showing how the building blocks fit together. It should contain a set of tools and provide a common vocabulary. It should also include a list of recommended standards and compliant products that can be used to implement the building blocks."

This definition provides a TOGAF view of what an architectural framework should do….

  • An architectural framework provides the necessary methodology or method by which the architecture tasks and activities are done.
  • An architectural framework provides the definition of the deliverables that the architecture methodology should / must produce.

I like this definition, as many frameworks provide a description of the deliverables, but provide little guidance on how to go about producing the required deliverables. Neglecting the methodology can have sever consequences, such as, weak governance, poor IT business alignment and a lack of buy-in.

How effective is your architectural framework?

Technorati Tags: , , , , ,

The IEEE 1471-2000 standard, also known as "Recommended Practice for Architectural Description of Software-Intensive Systems", describes a conceptual framework for architecture description and was published in October 2000. The scope of this recommended practice encompasses those products of system development that capture architectural information, where architectural descriptions are used for the following:

  • Expression of the system and its evolution
  • Communication among the system stakeholders
  • Evaluation and comparison of architectures in a consistent manner
  • Planning, managing, and executing the activities of system development
  • Expression of the persistent characteristics and supporting principles of a system to guide acceptable change
  • Verification of a system implementation’s compliance with an architectural description
  • Recording contributions to the body of knowledge of software-intensive systems architecture

 

The IEEE 1471 Framework

The framework is conceptual and can be considered as a meta-framework, it does not specify the format or media for an architectural description, however it does specify certain, minimal required content of an architecture description. The key terms and concepts that are described by this framework includes:

  • Architectural description (AD): A collection of products to document an architecture.
  • System: A collection of components organized to accomplish a specific function or set of functions.
  • System stakeholder: An individual, team, or organization (or classes thereof) with interests in, or concerns relative to, a system.
  • View: A representation of a whole system from the perspective of a related set of concerns
  • Viewpoint: A specification of the conventions for constructing and using a view. A pattern or template from which to develop individual views by establishing the purposes and audience for a view and the techniques for its creation and analysis.
  • Concerns: are those interests which pertain to the system’s development, its operation or any other aspects that are critical or otherwise important to one or more stakeholders. Concerns include system considerations such as performance, reliability, security, distribution, and evolvability.

 

IEEE-1471

click here for larger image

 

The framework can be described as follows:

  • A system has one (1) architecture
  • An architecture is described by one or more architectural descriptions
  • An architectural description is composed of one or more of stakeholders, concerns, viewpoints, views, and models
  • A stakeholder has one or more concerns
  • A concern has one or more stakeholders
  • A viewpoint covers one or more concerns and stakeholders
  • A view conforms to one (1) viewpoint
  • A viewpoint defines the method and patterns of a model
  • A view has one or more models and a model is part of one or more views
  • A viewpoint library is composed of viewpoints (reference architecture).

 

This conceptual framework provides an excellent foundation on which to build robust architectural descriptions. What I like about this framework is that it’s stakeholder and purpose focused, two factors that often become lost in an intensive architectural effort. All architecture must be stakeholder focused and deliver architectures that stakeholders can understand and which stakeholders can use for decision making.

  • How well are you architectures described?
  • Are the various stakeholder needs described and addressed with appropriate viewpoints?
  • Are they understood, that is, have they resulted in the right technology decisions?

 

< Technorati Tags: , , , , , , , ,

I like to describe architecture as the "art and science of seeing the big picture, it’s components and their inter-relationships". In the book "The art of systems architecting" the authors describe architecture as both and art and a science.

 

architecture-methods

 

  • Normative - solution-based: This architecture method is founded on a strong science-based approach, prescribing architecture as is should be, as it’s described in building codes, handbooks and civil codes. This method for the development of architecture create well defined patristic architecture.
  • Rational - method-based: This architecture method is founded on a strong mathematical and scientific principles to arrive at a solution, strongly based on systems analysts and engineering.
  • Participative - stakeholder-based: This architecture method is founded on understanding he complexities that exists when working with multiple stakeholders. The objective of the approach is to reach consensus. Concurrent engineering and brainstorming a both tools used in this method, typically this is approach us characterised as "architecture by committee".
  • Heuristic - lessons-learned: This architecture method is founded on common sense, driven by what is sensible in the given context. This contextual sense results from the collective experience of those involved in the architecture. Heuristics or lessons learned from experience, for example to simplify, are used as guides in the development of the architecture.

 

Considering the holistic nature of enterprise architecture and the complexities involved, the integration of these four classic architectural methods into how we develop enterprise architecture make for a robust outcome. The enterprise architecture methodology used needs to integrate these four paradigms.

  • Is your architecture methodology solution-based?
  • Is your architecture methodology method-based?
  • Is your architecture methodology heuristic-based?
  • Is your architecture methodology stakeholder-based?

 

Technorati Tags: , , , , ,, , , , ,