以前のエントリーでサービスと言う言葉の多重定義から生まれる混乱ついて書きました。同じようなことが、「アーキテクチャ」という言葉についても言えると思います(これについて昔書いたコラム)。
で、アーキテクチャという元々の意味は、「複数のハードウェアモデルで共通に使用される命令セットの外部設計」みたいな意味でした(IBMのS/360アーキテクチャ)。アーキテクチャ(外部設計)の反対語はインプリメンテーション(実装、内部設計)なんて教わったこともあります。X86アーキテクチャとかいう場合も同じ意味ですね。
ところが、クライアント・サーバ・アーキテクチャとなるとちょっとニュアンスが違います。ここでは、構築手法というような意味ですね。プログラムをクライアントとサーバに分けて作りましょうという手法全般について言っているわけであって、特定の外部設計のことを指しているわけではありません。
もうひとつ、テクノロジーの選択肢みたいなものをアーキテクチャと呼ぶこともあります。以前、某米国ベンダーの人(外人)の話を聞いたとき、「リファレンス・アーキテクチャ、要するにわが社のお勧め製品リストですが~」と話していて、ずいぶん正直だなーと思ったことがあります。
さて、EAにおけるアーキテクチャは第一の意味でしょう。要するに企業として共通化された外部設計ということです。一方、SOAのアーキテクチャは第二の意味、つまり、ソフトウェアを部品化(サービス化)しましょうと言う考え方そのものです。
SOAの話をする時に、EAの話も出てくることが多いですが、両者は同じ「アーキテクチャ」という言葉を使っていても全然別のものだと思います。もちろん、EAは企業内システムのすべての要素に関係するので、その意味ではSOAとEAは関係しているのですが、特に強い結びつきがあるかというとそうでもないのではないかと。
サービスと言う言葉と同様、アーキテクチャという言葉のあいまいさも弊害をもたらしていると思います。そう考えると、SOA(サービス指向アーキテクチャ)って世の中を混乱させるために生まれてきたような言葉ですね ^_^;
ちょっと文章わかりにくかったかもしれないので追加。
「1年かけてわが社のEAを作ろう」とは言えます。1年かけて全アプリケーションで共通して使える基本設計書みたいのを作ろうという意味です。
「1年かけてわが社のSOAを作ろう」とは言えないですね。「SOAを使ってわが社のシステムを再構築しよう」とか「わが社のシステムにSOAを適用しよう」なら言えます。SOAをクライアント・サーバ・アーキテクチャに置き換えてみると、もう少しクリアになるかもしれません。
要するにEAの「アーキテクチャ」とSOAの「アーキテクチャ」は類似してはいるのですが、前者が具体的な設計を指すのに対して、後者は設計手法を指す点で、言葉としては根本的な違いがあるということです。
Special
- PR -| 葵♂ | 2005/08/23 19:47 |
|
はじめまして。アーキテクチャと言う言葉が、何かの具体的なカタチを示す言葉として使われることが多いのですね。建築の世界での言葉の建築術・様式・構成等の意味をそのままに、方法論やモデル…つまり「~の考え方」や「~形式」と読み替えると、すっきりしそうな気がしました。 | |
| livinginabox | 2005/08/23 19:56 |
|
> ANSI/IEEE 規格 1471-2000 では、アーキテクチャを次のように定義しています。「システムのコンポーネント、コンポーネント同士と環境との間の関係、およびその設計と進化を支配する原理に体現された、システムの基本的な構造」。 | |
| 葵♂ | 2005/08/24 03:02 |
|
専門家でもないのにコメントして、的外れだったようです。 言葉…難しいですね(笑) | |
| 栗原 潔 | 2005/08/24 09:47 |
|
EAを作る方法論は、一般にアーキテクチャ・フレームワークと呼ぶようです。ザックマン・フレームワークとかFEAF(Federal Enterprise Architecture Framework)とかTOGAF(The Open Group Architecture Framework)などがあります。 | |
| 葵♂ | 2005/08/24 10:46 |
|
目的と手段と道具とその成果物と…様々な対象にアーキテクチャと言う言葉が使われているんですね。確かに、どこかで混乱しそうです。 (実は、法律の考え方にも明るくは無いのですが…衆院選が近いので比喩してみました。でも、相手の言葉を使って説明して戴いたのは、嬉しいです。) ありがとうございました(^-^) | |
| YAMAMOTO Yohei | 2005/08/25 12:19 |
|
ご存知かもしれませんが、アーキテクチャの設計思想・設計手法に関しては architectural style/architectural pattern という言葉があります。SOA の A はこちらに近いような気がします。 | |
| livinginabox.com | 2005/08/25 20:51 |
|
言葉遊びのようになってしまいますが、たとえば「オープンソース」というとソースコードをオープンにするという方針やライセンスをあらわし、「ライブラリソース」というとライブラリのソースコードそのものをあらわす、といったことはありますよね。でも、どちらの場合も「ソース」という言葉は、「何かのプログラミング言語で書かれたソフトウェアの元になるテキスト」をあらわしています。 | |
| 栗原 潔 | 2005/08/25 22:32 |
|
>>YAMOTO Yoheiさん | |
| YAMAMOTO Yohei | 2005/08/26 22:43 |
|
「そうではないと思っている人」はたくさんいますよね。そもそも日本人に architecture といってみたところで、建築学の専門家でもない限りピンとこないですし。僕もいまだにアーキテクチャという言葉はしっくりこないです。頭でわかっているつもりでも。 | |
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
オルタナティブ・ブログは、専門スタッフにより、企画・構成されています。入力頂いた内容は、アイティメディアの他、オルタナティブ・ブログ、及び本記事執筆会社に提供されます。

富士通元社長の山本卓眞氏が残した次代へのメッセージ
Facebook就活はもう古い?
東北をコットンの生産地としてブランディングしたい──リー・ジャパン・細川取締役
東北から始まるイノベーション
貧困国の雇用を創出する印刷屋、丸吉日新堂印刷の挑戦