jsUML2はJavaScript、Canvasタグを使ってUMLを描画するソフトウェアです。

2000年くらいの登場以降、一気に花開くかと思ったUMLですが、エンタープライズの開発くらいでしか聞かれなくなってしまいました。設計段階で全てを表すのはなかなか難しいですが、多数の人たちが開発に関わるならば現状システムをUMLで表してみたりするのは面白いかも知れません。そんなUMLをWebブラウザ上に描けるのがjsUML2です.


jsUML2のデモです。実際にオブジェクトを自分で描けるようになっています。こちらはユースケース図。左側のオブジェクトをクリックして選択し、キャンバスの任意の場所をクリックして配置します。コネクションの場合は二つのオブジェクトをクリックすると自動的にラインが描画されます。


クラス図です。


メソッド、プロパティの追加も簡単です。


コンポーネント図です。


シーケンス図です。


ステーツマシーン図です。


PNG画像として出力できます。日本語も通ります。


ユースケース図を画像出力した例です。


XMLで出力してインポート、エクスポートもできます。

UMLをエディタを使って記述するのはもちろん、現状のソースコードからクラス関係を解析した上でjsUML2で描画するなんてのも面白いかも知れません。

jsUML2はJavaScript製、GPL v3のオープンソース・ソフトウェアです。

MOONGIFTはこう見る

UMLはもはや流行らない技術なのかと言われると、個人的に出はそうではないと思っています。ただしこれまでのように仕様設計を全て終えてUMLからコードを生成するというのはWebシステムには向かないでしょう。むしろ既に書かれたソースを解析してモデリングする方が面白そうです。

そうすることで思っていなかったメソッドが見つかったり、重複している機能が出てくるかも知れません。リファクタリングや現状システム分析にきっと役立つはずです。そうした中、jsUML2のようにテキストからUML描画できるライブラリは役立つと思われます。

デモ:www.jrromero.net/tools/jsUML2

jsuml2 - jsUML2 - A lightweight HTML5/javascript library for UML 2 diagramming - Google Project Hosting