ストラタジーナム メニュー

2007年3月24日土曜日

UML中級講座 第110回 ノードのメタモデル

筆者は、普段はできるだけ車や電車を使わず自転車で移動することを心がけています。自転車乗りの人はよくご存知だと思いますが、自転車は、道が平らであると長い距離も苦にならず、どこまでも気楽に行くことができます。
従って、自宅のある新宿から青山とか六本木辺りは、毎日我が庭のように走り回っていましたが、オフィスを移転するまでは、赤坂方面にはほとんど足を踏み入れることはありませんでした。
これはひとえに、赤坂近辺が名前の通り起伏が激しく坂道が多いためでした。赤坂のオフィスのまわりには、かつて幽霊が多く出現したので幽霊坂と名付けられた坂や、のっぺらぼうが出現することで有名な紀伊国坂、忠臣蔵で有名な南部坂など、大小様々な坂がたくさんあります。
しかし不思議なことに、赤坂と言う名前の坂は存在しません。この辺りは、かつて第2次大戦前は赤坂区と呼ばれたほど広範な地域を包含していた地名なので、現在赤坂と呼ばれている地域以外の隣接する区の地名も探してみましたが見つかりませんでした。そして調べて行くうちに、この謎を解くヒントは「元赤坂」という現在も残る地名にあることが解りました。
江戸時代の地図を見ると、赤坂と言う坂はありませんが、[元赤坂町」という町名がそのころから既に存在していたことがわかります。場所も現在の元赤坂とほぼ同じ地域を指し迎賓館から赤坂離宮を中心とした一帯を指す地名です。この辺りは、江戸時代は紀伊和歌山藩の中屋敷があった所ですが、江戸時代以前は茜山(あかねやま)と呼ばれる小さな山だったようです。茜山の語源も諸説あるようですが、一説によると古代の染料の原材料である茜がたくさん生えていたからと言われています。そうして、その茜山に登る坂道が茜坂(あかねざか)と呼ばれていたようです。現在、紀伊国坂と呼ばれる坂も茜山に登る当時の山道の一つです。
そして茜坂が訛って赤坂となったと言う説が、最も有力な説になっています。この説の一つの傍証として、明治の始めの頃、紀伊国坂の麓に茜坂小学校と呼ばれる学校が存在していた事があげられます。(但し、古名が伝わって名付けられたのか、伝説をもとに名付けられたのか、今となっては不明)
恐らく、紀州藩の屋敷を建てる時に地形も多少変わってしまい、赤坂もしくは茜坂と呼ばれる元の地形、原風景は存在しなくなってしまったのだと思いますが、地名だけは伝えられて来たようです。




ノードのメタモデル

図10−03の左図は、ノードのメタモデルを表しています。ノードは、クラスを特化しており、クラスの性質を継承します。ノードには、ハードウエア環境を示すデバイス(<<Device>>)と、ソフトウエア環境を示す実行環境(<<Execution Environment>>)の二種類があり、ノード同士を入れ子にすることが可能です。

また、ノード間のネットワークを示すコミュニケーションパスは、クラス間の関係である関連の一種として定義されます。

図10−03




2007年3月21日水曜日

UML中級講座 第109回 成果物のメタモデル

最近は、様々な用事で忙殺されております。今週は、前回にも書きましたように横浜のチベットにこもっておりますが、今週末から来週にかけてはOMG総会のためサンディエゴへ出張することになりました。
また、昨年秋にオフィスを引越したばかりですが、入居しているビルがなんと耐震強度が弱いことが判明して建替えることになってしまい、来月中にどこか別の場所へ引越さなければならないことになりました。

筆者は生来、引越が好きな方ですが、まだ一年も経っていない上に、新しい物件を見に行く暇もない状態で、正直の所辟易しています。
筆者のささやかな希望としては、青山近辺で、すぐそばに気の利いた静かなカフェがあり、お客様が来られたら、カフェでエスプレッソでも飲みながら談笑する、というのが良いのですが、そんな所は、なかなか見つからないでしょうね。

成果物のメタクラス

図10-02は、成果物(Artifact)のメタモデル図です。
成果物は、ソースコードのファイルとか実行モジュールとか言った、ソフトウエア開発プロセス上で物理的実体を持つものを表しますので、クラスの一種として定義することも可能ですが、UML2.1では、図10-02のように分類子を特化してクラスとは別に独立して定義しています。これは、恐らく、クラスから定義すると、成果物では使わない様々な性質を継承してしまうことを嫌ったからだと思います。
また、このために、逆に、オペレーションとかプロパティ(属性等)と言ったクラスでははじめから用意されているものを、定義付けしてやる必要があります。(関連は、分類子が元から持っている性質ですので定義不要。)

具現は、主にコンポーネントやノードが対象になりますが、メタモデル上では、「packageableElement」を包括的に指定しています。これにより、成果物はモデル図中で用いられる全てのエレメントを定義するモデル図ファイルであることも可能になります。

図10-02




2007年3月19日月曜日

UML中級講座 第108回 ノードの種類

最近は、仕事で横浜の方へよく行きます。横浜と言っても、港の方ではなく、かつて横浜のチベットと言われた山の方ですが、このチベットと呼ばれる地域は横浜市内に何ヶ所もあるそうで、横浜出身の人が話をすると我こそは本当のチベットだと言って秘境自慢争いが始まるほどです。

筆者が通っている所は、港北ニュータウンの中で、都筑区と呼ばれる所にあり、スギ花粉の多い所です。
このあたりは、かなり古くから開発された所らしく、貝塚や縄文遺跡に始まり、平安時代に編纂された続日本後紀には、都筑郡の「杉山神社」が霊験あらたかであると記録されています。
また、東海道より古いと言われる中原街道もこの地域をまっすぐに縦断しており、杉山神社も分社に分社を重ね、今では70以上になり、元々どこにあった神社なのか解らなくなってしまったほどです。郷土史家の間では、数多くの杉山神社の中で、延喜式に記された大元の神社はどれか?と言うことが話題になっています。

筆者は全くの門外漢なのですが、この手の話題は好きな方なので、かつて、有力な候補を廻ってみたことがあります。古来、有力候補としていくつかの杉山神社が揚がっていますが、筆者は新吉田の杉山神社が最有力と見ています。「杉山」という小字名があること、古墳が祭られていることのほかに、いかにも杉が好んで栄えそうな場所にあることが、杉山神社という名の起こりを想起させる点が、気に入っている点です。

ノードの種類

ノードには2種類あります。一つは、主にコンピュータ資源であるハードウエアを表すもので、デバイス(<<Device>>)と呼ばれ、もう一つは、主にソフトウエア環境を示すもので、実行環境(<<ExecutionEnvironment>>)と呼ばれます。共に、成果物、Artifact、を配備することができます。


図H10は、実行環境の例で、J2EE環境下に各種のJarが配備されている状況を示しています。

図H10

また、図H09はデバイスの例で、2つのデバイス・ノードがコミュニケーションパスで繋がれてネットワークを形成しています。また、左のデバイス・ノードには、実行環境ノードが配備されています。

図H09