MiniUMLは、デンマーク技術大学で開発され、ソースコードはMicrosoft Reciprocal License(Ms-RL)ライセンスで公開されています。プログラムに関するレポートも公開されています。
英語のレポートですが、機能概要、実装内容、ツール(VS2008、TFS、Expression Blend2)、パターン(DataModel-View-ViewModel、Observer、Singleton、Utility pattern)等について書かれているので、興味のある方は見てみてはいかがでしょうか。 参考までに、MiniUMLソリューションに含まれている各プロジェクトの概要について示しておきます。
プロジェクトの名前と概要
ファイル名 | 概要 |
---|---|
MiniUML.exe | アプリケーション本体。メインウィンドウの管理、プラグインの管理 |
MiniUML.Model.dll | データと振る舞いを表すモデル |
MiniUML.View.dll | XAMLで定義されたビュー。ウィンドウ、コントロール、テンプレート、リソース等 |
MiniUML.Framework.dll | アプリケーションの主機能を担うクラス群 |
MiniUML.Diagnostics.dll | エラー、デバッグ、エラーダイアログの管理用 |
Plugins/MiniUML.Plugins.Home.dll | Homeメニュー |
Plugins/MiniUML.Plugins.UmlClassDiagram.dll | UML Diaglamメニュー |
Themes/MiniUML.Themes.Blue.dll | 青色のテーマ |
Themes/MiniUML.Themes.Gray.dll | 灰色のテーマ |
まとめ
MiniUMLは、無償で入手できるソフトウェアですが、シンプルなクラス図であれば特に問題なく記述することができます。モデルはXML形式で出力されるのでLINQ to XML等を使ってクラス図を独自に解析することもできます。
また、ソースコードも公開されています。コード量が多いため簡単に理解することはできないかもしれませんが、WPFを利用したGUIツールを作る場合には参考にできるのではないでしょうか。