読者です 読者をやめる 読者になる 読者になる

Technically Impossible

Lets look at the weak link in your statement. Anything "Technically Impossible" basically means we haven't figured out how yet.

TOGAFの概要

これは2008年に投稿したエントリーで、以前のブログから引き継いだものに加筆したものです。

TOGAFのAFはArchitecture Framework。フレームワークとは開発手法やツール。TOGAFとはアーキテクチャ開発のための手法やツールをまとめたものと言えるでしょう。
よくEA (Enterprise Architecture)と呼ばれますが、そのようなArchitectureを開発するためのフレームワークのひとつです。

まずアーキテクチャの定義を確認すると、ANSI/IEEE Std 1471-2000では次のように定義されています。

The fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.*1

TOGAFではこの定義に倣い、次のように定義しています。

A formal description of a system, or a detailed plan of the system at a component level to guide its implementation*2

The structure of components, their inter-relationships, and the principles and guidelines governing their design and evolution over time.*3

アーキテクチャというのは、「コンポーネント群(システム)に対するデザイン、展開についての指針をまとめたもの」と言えそうです。
システム実装に関する詳細設計がアーキテクチャというわけではないので、具体的な実像を指し示すものではなく、かなり漠然とした抽象的な世界を指し示すものになります。

ちなみにEAのE、エンタープライズはTOGAFでは次のように定義されています。

an "enterprise" as any collection of organizations that has a common set of goals.*4

あくまでも、「ゴールが同じ」組織の集合体なわけですから、必ずしも、

enterprise = 企業

とは限らないということです。*5

そのような組織のためのアーキテクチャを開発するための手法、ツールを提供するTOGAFは、次の要素から構成されています。

The TOGAF ADM (Architecture Development Method)
 いわゆる開発手法。特徴は、

  • 反復式のアプローチ。
  • Viewを用いて、複雑に組み合わされた要件を整理する。

The Enterprise Continuum
 アーキテクチャ資産、それはたとえばモデルだったりパターンだったり、アーキテクチャに関する記述もそう、そのような知識の集積を指しています。Virtual Repositoryと呼ばれます。

The TOGAF Resource Base
 文字通り参照モデル。TOGAFではBB (Building Block)と呼ばれるビジネス機能、サービスを組み合わせてアーキテクチャを構築します。その構成の基礎中の基礎を提供します。ここには次の2つのモデルが含まれており、

  • The TOGAF Foundation Architecture
  • III-RM (The Integrated Information Infrastructure Reference Model)

特に前者は、さらに次の2つを含んでいます。

  • TRM (The TOGAF Technical Reference Model)
  • SIB (The TOGAF Standards Information Base)

これらを図示すると、このようにまとまります。
f:id:espio999:20140909085920g:plain

こちらのWikiも参考に、ご参照ください。

*1:システム基盤を具体化するコンポーネント群とそれらの相互関係、それらをデザイン、展開させていくための原則。

*2:システムの公式記述、もしくはコンポーネント・レベルでのシステムの実装指針を記した詳細な計画。

*3:相互関係のあるコンポーネント群の構成、それらの長期にわたるデザインと展開のための原理原則、管理方針。

*4:エンタープライズ”とは、共通のゴールを有する組織の集合体。

*5:EAというのはある会社のためのものかもしれないし、業界全体や企業グループのためのものかもしれない、場合によってはもっとこじんまりと特定部署、複数部署のためのものでもあるかもしれない。