PHP対応のUMLモデリングツールを探してみた。

UMLモデリングツールを探してみた。


条件としてはこんな感じ。
PHPに対応している。
・日本語に対応出来る。
・他のUMLモデリングツールと連携出来る。(Eclipseが望ましい)
・リバース・フォワードエンジニアリングに対応している。
・出来ればフリーウェア


こんなところだ。
で、1つだけそれなりに条件を満たしている物を発見した!
あまり日本語環境とかは期待していなかったのだけど
なんと日本製のUMLツールだ!!
ちょっとオシイけどシェアウェアならリバース&フォワードに対応している模様。


1st Modeller


と、言うツール。
ちなみにUMLを書きたいだけならフリー版が利用出来る。
スバラシイ。ハラショー。


で、早速導入してみた。
エンタープライズ版なる物を入れたのだけど
僕の用途ならプロフェッショナル版でもよさそう。
ちなみにシェアの価格は


エンタープライズ:9,870-
プロフェッショナル:3,150-


ちなみにエンタープライズとプロ版の差はエクセル用の出力と印刷機能の有無。
XMLに出力出来るし要らないかな?と言った感じ。
試用期間は30日で試用期間中もフル機能を利用出来る模様。
さて、使用感ですが・・・


イイ!


です。
PHP4に対応してるかとかも不安だったんですが
PHP4で書いた

/**
 * デバッグコメントをHtmlに出力する。
 *
 *
 * @author  Saimushi
 * @package masamune
 * @since   1.0
 */
class Debuger 
{

 /**
  * デバッグモードが定義されている場合にHtmlコメントとして
  * デバッグコメントを出力する。
  * 機能させるにはDEBUG_MODEが定義されている必要がある。
  *
  *
  * @access public
  * @since  1.0
  */
 function & Debug(){
  if (DEBUG_MODE) {
   echo "---------- debug start ----------";
   echo "POST".var_export($_POST, true)."";
   echo "GET".var_export($_GET, true)."";
   echo "SESSION".var_export($_SESSION, true)."";
   echo "COOKIE".var_export($_COOKIE, true)."";
   echo "---------- debug end ----------";
  }
 }
}

こんなソースをクラス図にしてくれます。
さらに!!日本語のコメントもちゃんと拾って来てくれます!!
クラス図からフォワードエンジニアリングでJavaにすると・・・

/*!
 file Debuger.java
 brief 
 author Saimushi
 date 2006/01/05
 par Copyright (c) 2005 Saimushi . All rights reserved .
 */

/*!
 */
public class Debuger
{
 /*!
  *  デバッグモードが定義されている場合にHtmlコメントとして デバッグコメントを出力する。機能させるにはDEBUG_MODE が定義されている必要がある。
  *  public since 1.0
  *  
  *  
 */
 public & Debug()
 {
 }

}

こんな風になります。


スバラシイ〜♪


しかし、PHPフォワードすることは現在出来ないみたいです。
一旦Javaにして拡張子を替えてって感じですかねー・・・
PHP4だとPublicとかありえないから全部リプレースですかね。


なにはともあれかなり実用範囲です。
何せおかげで本来ならセコセコクラス図を手作りしてるはずが
ブログ書く余裕が出来ましたからw
他にも色々とかゆいところに手が届いていてイイですね!
今後の発展にもかなり期待出来ると思います。


現在PHPフレームワークを開発してるんですが
1st Modellerで作ったクラス図をアップして置きます。
ボタン一発でコレはかなり便利なのでお試しあれ。


UMLクラス図


参考URL:http://hp.vector.co.jp/authors/VA017111/index.html