Microsoftと「望まれないモデリング言語」:モデリング戦略の転換点(2/2 ページ)
MicrosoftにとってUMLは「望まれない言語」だという。一方で、サポートし、共存していくべき一連の技術の1つとも見られる。Microsoftは相互運用性をシリアスに考えなければならないのである。
MicrosoftのUML戦略
OMGにおけるMicrosoftの交渉代理人という役割を担うことになったクック氏は、9月以降、自身のブログにMicrosoftのモデリング戦略とUMLについて書いている。
以下はクック氏が10月7日に投稿したUMLとDSLに関する記述だ。
「では、UMLは本当にDSLと矛盾するものだろうか? この2つはまったく異なる哲学の上に成り立っているのか? わたしはそうは思わない。結局、UMLはドメイン固有言語の1つのセットに過ぎないのだ。ユースケースや状態遷移ダイアグラムをモデル化したいとき、ほかにどんなDSLを利用するだろう?」
クック氏はこう続ける。「ソフトウェアアーキテクチャは、結局のところ、トレードオフだ。そしてここにも明確な1つの例がある。UMLは比較的標準化されているため、実装化やドキュメンテーション、トレーニング、配備などのコストは、複数のインストレーションで償却できる。しかしその一方で、個々の解決すべき問題に、UMLが必ずしも十分に対応できるとは限らない。UMLが包含できないドメインは数多くある。OMGがビジネスモデリングに活動範囲を拡大している理由はそこにある」
さらにクック氏は次のように指摘する。
「DSLのUMLオリエンテッドなアプローチは“プロファイル”、すなわちUMLモデルに付加的データを追加して、オリジナルのUML定義よりも特殊なドメインをターゲットにできるようにすることである。DSLアプローチに関してよくある質問は、1つの問題に対して異なる多様なアプローチが増殖していく危険性を指摘するものだ。わたしもその懸念があると考える。一方のUML+プロファイル方式には、シンプルな問題に対して、逆に面倒なソリューションになりかねないという欠点がある」
ブーチ氏は、「UML標準はメタモデルにフォーカスし、グラフィカルプレゼンテーションはあまり重点を置いていない」と話す。また、UMLがさまざまな垂直市場に受け入れられてきたことやExecutable UMLなどが開発された事実は「UMLが成熟したものであることを示している」と自信を見せる。
ただ、MicrosoftはUMLのサポートを約束する一方で、いくつか疑問を投げかけている。
クック氏は11月2日、次のような記事をブログに投稿している。
「しかし、UMLは複数の言語をマップできることが期待されている。UMLクラスダイアグラムは、VB.NetやJava、C#、C++、そしておそらくはJavaScript、COBOL、Pythonで記述されたプログラムに正確にマップできるべきだ。同様に、それらのクラスダイアグラムにリンクされたUMLシーケンスダイアグラムは、それらのプログラムの実行トレースを可視化できるべきであり、コンポーネントモデルはそれらのクラスダイアグラムのインタフェースが実装したポートを代表できることが求められる。今日、そうした正確なマッピングはルールを曲げない限り実現できない。しかし、いずれそうした世界が実現するだろう。そのとき、UMLはどのような意味を持つだろう? もちろん何らかの意味はあるはずだ。でなければ、UMLは何にでも使える図形とラインのための言語だとしか言えなくなる」
Microsoftのコネクテッドシステム部門コーポレート副社長、ロバート・ワーブ氏は、「Mはテキスト型の言語だが、UMLは多くのダイアグラムを持つグラフィカルな言語であり、M言語とUMLは競合するものではなく、むしろ相互に補完するものだ」とする。ただ、UMLは学校で教えらており、ソフトウェアモデリングに携わる開発者の多くが馴染んでいるため、Microsoftとしてもそうしたユーザーの要求に応える必要はあるというわけだ。
結局、UMLは「望まれない言語」なのか、それともMicrosoftがサポートし、共存していくべき一連の技術の1つなのだろうか。もちろん後者だろう。Microsoftは相互運用性をシリアスに考えなければならない。
おそらく開発者たちは今後、Microsoftの予想以上にUMLを強く求めるようになるだろう。ここは注目したい。Microsoftは複雑なものを大衆にもたらすことで知られている。Osloの最終リリースが何らかの回答を示してくれると思うのだが。
あなたどう思いますか?
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Editorial items that were originally published in the U.S. Edition of “eWEEK” are the copyrighted property of Ziff Davis Enterprise Inc. Copyright (c) 2011. All Rights Reserved.
関連記事
Microsoftが「Oslo」のコンポーネントをリリース
MicrosoftはProfessional Developers Conferenceで、自社のモデリング技術「Oslo」のコンポーネントをリリースした。同社が提供したのは、Osloリポジトリ、新しい宣言型モデリング言語「M」、「Quadrant」と呼ばれる新しいビジュアルモデリングツールの各CTP(コミュニティー技術プレビュー)版である。
Visual Basicの指導者がMicrosoftの「Oslo」チームに移籍
Visual Basic(VB)の主席アーキテクトのポール・ビック氏が、Microsoftの広範なソフトウェアモデリング構想である「Oslo」プロジェクトに移籍する。Microsoftにとって、Osloは.NETに匹敵する巨大なプロジェクトになるという見方もある。- MicrosoftがApacheConで相互運用性の取り組みをアピール
Microsoftのオープンソース戦略を率いるサム・ラムジー氏は、Apache Software Foundationの「ApacheCon」カンファレンスで、相互運用性とオープンソースソフトウェア分野における同社の取り組みについて語った。
「プライベート」クラウドコンピューティングが人気上昇中
「プライベート」クラウドコンピューティングは、ファイアウォールの内側に置かれた小規模なクラウド型ITシステムを通じてサービスを提供するものだ。メインストリームバージョンと異なるのは、内輪のネットワークで完結するという点だ。- Microsoftのレイ・オジー氏、オープンソースやAzureなどを語る
Microsoftのチーフソフトウェアアーキテクト、レイ・オジー氏は、「Microsoft Professional Developers Conference」においてeWEEKとのインタビューに応じ、オープンソースや相互運用性、ソフトウェアモデリング、Windows Azureクラウドオペレーティングシステムなど、さまざまなテーマについて熱心に語った。