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

Technically Impossible

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

TOGAFの概要

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というのはある会社のためのものかもしれないし、業界全体や企業グループのためのものかもしれない、場合によってはもっとこじんまりと特定部署、複数部署のためのものでもあるかもしれない。