UML and DSLs Again(1)

Visual Studioのアーキテクト(設計者)であるKeith Short氏のblogから。

UML and DSLs Again
http://blogs.msdn.com/keith_short/archive/2004/04/16/114960.aspx


DSLsというのは、domain-specific languages。直訳すれば「特定領域言語」。ここではモデル化のための言語のことを指している。Visual Studioを作ってはるしとたちがVS2005においてUMLの代わりにDSLsを使用しようと考えているわけだ。以下、冒頭部分をテキトーに翻訳した。


UMLとDSLsふたたび

私は、しばしば聴衆やマイクロソフトへの訪問者とジャーナリストにUMLに対する私たちの立場を説明するように頼まれる(例えばVSLive!インタビュー)。モデル主導型開発(model driven development)についての私たちの考えを読んだ多くの人々は、微妙にanti-UMLっぽい立場に置かれてる特定領域言語 (DSL) に我々が重きを置くと思っているだろう。しかし、それは真実ではないと言わねばならない。(中略) UML以前は、モデリングアプローチは非生産的な混迷期であり、モデルを使うソフトウェア開発はUML1.0において、大きな躍進を遂げたのである。


しかしいかなる理由であれ、UMLUMLベースのツールの存在はアプリケーションを構築していく開発者の方法に大きな変革をもたらさないし、開発者の生産性に大きな貢献もしない。マイクロソフトはもっとも使用されているUMLツールのひとつを出荷したが、それらはVisual Studio Enterprise Architectに付属するVisioをベースにしている。我々は、このツールの使用用途を匿名で開発者から調査したところ、我々は、彼らが自分の仕事をサポートするためにUMLツールを使うことを要求してくる人はごく少数で、そのほとんどの利用者はクラス図とユースケース図を中心としていることがわかった。我々が、クラス図を使いたいという人たちに教えたとき、クラス図から実際に生成されるコードは非常に小さな断片のみだった。


このことが、Whitehorse*1の原動力となったのだ。(つづく)

*1:VS2005に付属されることになっているモデリングツールの開発コードネーム