ちえの和webページ
James E. Rumbaugh
unknown -
オブジェクト指向分析手法OMTの開発者
ジェームス・ランボー氏は最近来日していて、1999年2月2日京王プラザホテルで「UMLとビジュアルモデリング」と題した講演を行った。彼の属するラショナルソフトウエア社の主催によるセミナーで、いまでは同僚の グラディ・ブーチ氏 やイバー・ヤコブソン氏もそれぞれ日をおいて講演している。
ランボー氏は長年GE(ゼネラル・エレクトリック社)でソフトウエア工学の専門家として働く過程で、1980年代の初め、VLSI用のCADシステムのためにオブジェクト指向言語DSMを開発し、それを使いやすくするための方法論を模索するなかで共同でOMT法が開発されたのだった。
広く読まれて、オブジェクト指向分析設計の分野ではバイブル的存在になっている彼の主著(共著)"Object-Oriented Modeling and Design"は1991年に出版されたが、すぐに邦訳され日本の読者も多いはずだ。筆者も数年前オブジェクト指向をシステム開発に取り入れようとして参考書を探したが、広い視野から、かみくだいて解説してある本は当時ランボーのOMTしかなかったように記憶している。この本にはそれ以降かなりお世話になった。オブジェクト指向開発についての一般的な誤解の一つに、開発が容易になり短期間ですむはずだという見解が根強くあるが、ランボー氏は上記著書の中でその考えを明快に否定している。
「オブジェクト指向開発による主な利益は開発時間の短縮ではない。オブジェクト指向開発は従来の開発方法と比べてより時間のかかるものである」
オブジェクト指向開発の最も顕著な利益は、コンピュータ・システムの構造が人間に分かり易い形に構成されるという点にある。このことはそのシステムの変更時や、そのシステムを土台にした次のシステムの開発時に威力を発揮する。つまり、最初に作ってそれでおしまいではなく、 「継続的な改変と成長の過程にこそ生きたシステムがある」 という観点に立ったときに初めてオブジェクト指向開発の本領が発揮されるのである。このことは通常の一回限りの受託開発では往々にして忘れられるか理解されないことが多く、特にマネージャクラスがわかっていないとプロジェクトは予算と納期の狭間で深刻な困難に直面することになる。
ジェームス・ランボーはマサチューセッツ工科大学で物理学の修士号を、さらにコンピュータ科学で博士号を取得している。(カリフォルニア工科大学の天文学修士ももらっているらしい)そのあと、GE(ゼネラル・エレクトリック社)に入社してニューヨーク州にある研究開発センターで25年以上研究員をした。1994年請われてラショナルソフトウエア社に入社し、そこにいたブーチ氏と議論しながらブーチ法とOMT法をより共通の手法に統合していく作業を続けた。1996年にはヤコブソン氏の会社オブジェクトリー社がラショナル社に買収されたことで、ヤコブソン氏のOOSE法も統合作業に加わることになった。こうしてかなりの知名度を持つ3つのオブジェクト技法が1つにまとまり、それをベースにUMLが提出されたのだった。
UMLは永いこと待ち望まれていた標準化されたオブジェクト指向分析設計手法の第一候補で、OMT、ブーチ法をはじめ、ヤコブソンOOSE法、シュレィアー・メラー法、その他の分析手法を統合したものになっている。1997年11月にOMGによって承認され、現在もリアルタイムシステムへの対応やXML対応などの拡張、改訂作業が続いている。ランボー氏はOMGの委員として改訂作業に参加している。
1989年5月に設立されたオブジェクト指向技術を標準化するための非営利団体で、分散オブジェクト技術(CORBA)などの標準化もここが行っている。
ちょっと話題はずれるが、コンピュータによる設計から開発までの支援システムとしてのCASEは1980年代にかなり興隆したが、その後失速してしまった。その理由は、多くのCASEツールがあったにもかかわらず、各々独自のモデリング技術に基づいて閉じられた世界を作っていたため、どのツールを使うにしてもかなりのリスクを覚悟をする必要があったことである。おまけに相当奥が深い世界なので習熟するのにかなりの労力(コスト)を想定しなければならなかったこともあり、使う側からみるとどれが本命なのかわからないまま、その世界に入るのに二の足を踏んでしまうのだった。UMLはこうした状況を打破する柱になる可能性を秘めている。共通のモデリングに基づいて、共通のインターフェイスが確立すれば、CASEの世界はまた新たに復活するかもしれない。
最後にランボー氏の著書から抽象化について述べた部分を引用したい。抽象化はオブジェクト指向に基づくかどうかにかかわりなく、コンピュータ・システム分析/設計の核心である。
「抽象とは、ある実体の根本的で固有な面に焦点を当て、偶然的な性質は無視することである。....分析段階で抽象を利用することは、適用領域の概念だけを扱い、 問題が理解されるまで設計や実装に関する決定を行わない ということを意味する」
「抽象化は問題のある側面を選択的に検討することである。抽象化の目標は、ある目的にとって重要な側面を分離抽出し、重要でない側面を捨て去ることである。 抽象化は常にある目的に対するものでなければならない。 なぜならその目的によって、重要なもの重要でないものが決定されるからである。 同じ物事に対してその目的に応じて異なった多くの抽象化が可能である」
かれの言っていることは、こうして言われてみればなるほどとすぐ納得できることなのだが、実際の分析作業の局面ではよく忘れられがちな内容なのだ。
| オブジェクト指向方法論OMT | J・ランボー/M・ブラハ/W・プレメラニ/F・エディ/W・ローレンセン著/羽生田栄一監訳 | トッパン | 1992年7月 | 6200円 |
|---|---|---|---|---|
| 「月刊ドクター・ドブス・ジャーナル日本版」1999年4月号 | 翔泳社 | 1999年4月 | 1380円 | |
| 「James RUMBAUGH インタビュー」 | ||||
感想、ご意見など自由にご記入ください