Podcastについて

ソフトウェアのアーキテクチャやモデリングに関するPodcastがいくつか有ります。私の気に入っているのは次のものです。

もしiTunesをお使いであればsubscirbe出来ます。どなたか日本でも同じようなことをしませんか?

関連してですが、やはりiTunesでOOPSLAをキーワードにして検索すると、2007年と2008年の講演内容の一部が公開されていることが分ります。

どちらも全部つきあうのは疲れますので、講演者やタイトル(分野)でつまみ食いされてはどうでしょうか?

Podcastについて

handbook of software architectureについて

ソフトウェアアーキテクチャの本は沢山出版されていますが、このURLのことはご存知でしょうか?

有名なBoochさんが気になる各種アーキテクチャを溜め込んで整理されています。内容にアクセスするには登録が必要です。今回はこの紹介だけです。

handbook of software architectureについて

viewとviewpointについて

viewとviewpointという言葉を聞かれた事があると思います。ソフトウェアやシステムのモデリングでは、viewpointというのは対象のある側面だけに注目(そしてそれ以外は気にしない)したモデル(仕様)を書く場合のその注目した側面のことです。例えば、情報要素だけに注目した情報のviewpoint、機能要素にだけ注目した機能viewpoint、物理的な配置に注目した物理viewpoint、またビジネスアナリストの立場からビジネスプロセスviewpointなどが考えられます。viewpointと言わずにperspectiveという言葉を使う場合もあります。viewというのは、そうやって決めたviewpointから対象を眺めた場合に見えるもの、つまりviewpointに限定したモデルないし仕様ということになります。wikipediaには、view modelというエントリがありますのでご覧ください。

いつ頃からこれらの概念が意識されるようになったのか確かな事は分かりませんが、私はISOのRM-ODP標準化活動に参加するようになってなじみの考え方になりました。RM-ODPではviewのことをviewpoint specificationと言っており、五つの標準viewpointをもうけています。その後、IEEE 1471というview/viewpointを一般的に扱う標準がIEEEで作成され、これがISOに持ち込まれて国際標準にするための作業が行われているところです(ISO/IEC JTC1/SC7というのがその検討の場になっています)。

UMLの世界にも“4+1” view modelというものがあり、UMLの標準文書でModelというPackageを拡張する要素を見ると、属性としてviewpoint(String)を書けるようになっています。つまり、ModelというPackageの中に各viewpointモデル(view)を含めることで、対象を複数の視点・観点から見た場合のモデルを構成する事が出来るようになっています。

分かり易いところでは、論理的なモデル図と物理的な配備図をviewpointの異なる別のモデルとして書く事が出来ます。

ただ気をつけるべきは、viewpointを分けて書いたとしても所詮同じ対象を書いているということです。従って、何らかのつながりがあるはずです。例えば、建築物の図面で正面図と側面図というのあり、前から見えるものと横から見えるもの(明らかに違います)を別々の図面で書きますが、正面図の長方形の屋根部分は、側面図で30度の傾きを持っているといったつながりがあります。ソフトウェアやシステムのモデルでも同じことが起きる筈です。RM-ODPではcorrespondence(相関関係)と言いますが、対応付けやマッピングと言う言葉で済む場合もあります。各viewモデルに加え、相関関係も併せて書く事で、モデルや仕様として完成度の高いものになり、うまく行けばモデル駆動開発(MDD)における高品質な入力情報になると思います。

viewとviewpointについて