2012/01/09

FreeMind Import for astah - astahプラグイン

背景
これまで6年ほどマインドマップを描いていて、ツールはMindManager, MiNDPiECE, FreeMind, astahといろいろ使ってきてました。そのため、それぞれのツールで作ったファイルがあるんですが、全てのツールに互換性がある訳じゃなくて「あー、以前描いたマインドマップが見たいのになー。」ってことがありました。
そんな訳で、まずは自分以外からも要望のあったFreeMind → astahを実現してみました。

FreeMind Import for astahとは
ソフトウェア設計支援ツール astah(旧JUDE) に、マインドマップ作成ツール FreeMind のファイル(.mm)をインポートするastahプラグインです。astah UMLprofessionalの何れかにインストールして利用します。
※このプラグインはastahのバージョン6.5.1以上で動作します。
※マインドマップを利用するため、astah communityでは利用できません。
※個人で作ったプロトタイプなので無保証でお願いします。
FreeMindのこんなマインドマップを↑
↑astahにインポートするとこうなります
FreeMindとは
FreeMind(フリーマインド)は、PC上でマインドマッピングナレッジビルディングのための無料のソフトウェアである。 
GPL下でソースコードが公開されているオープンソースソフトウェアである。 Javaで書かれたソースのほかに、バイナリ形式で、Microsoft Windows版、Mac OS X版、Linux (DebianSuSE) 版が公開されている 。
FreeMind - Wikipediaより引用
プロジェクトページ インストール方法など詳細は下記プロジェクトページをご覧ください。

freemind-import-for-astah 

プラグイン開発について astahプラグイン開発チュートリアルとSDKが公開されているので、それをベースに開発しています。 http://astah.change-vision.com/ja/plugin-tutorial/ FreeMindファイル(.mm) 拡張子.mmのXMLファイルであり、XML Schemaが公開されています。 これをJAXBバインディングコンパイラ(xjc)にかけてJavaのモデルクラスを作っています。
$ xjc src/main/resources/schema/freemind.xsd -p com.github.astah.mm2asta.model -d src/main/java
これでFreeMindファイル(.mm)をastah側で読み込むベースは出来たので、あとはプラグイン側で、読み込んだマインドマップのツリー構造通りにastahのマインドマップAPIを使って、astah側のデータを作っています。この処理はこの辺でやってます。 フィードバック
感想、要望、不具合などありましたら @shoito へツイートいただけると嬉しいです。

0 件のコメント: