ログイン
検索
メインメニュー
フォーラム一覧   -   トピック一覧
   astah*への改善アイデア
     クラスにもERのように論理名を設定したい
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 トピック
eikichi
投稿日時: 2010-9-13 11:26
新米
登録日: 2008-12-5
居住地:
投稿: 13
クラスにもERのように論理名を設定したい
最近、参照されない情報を実行可能な知識にすべく、wordやexcelではなく、なるべくastahを使って書くようにしています。
このとき、プレゼンテーションについて悩んでいます。
クラスやその属性の名前は、実装を考えて英語名をつけますが、それを実装者以外(設計者やユーザ)に見せるときは、日本語名でなければ伝わり辛いため、別のドキュメントとして用意するようになっています。
これは、外部設計(概要クラス)と内部設計(詳細クラス)にも影響が出ています。仕様を考え、詳細をつめ、フォワードエンジニアリングでクラスを生成し、実装・リファクタリングの後、リバースエンジニアリングをすると、変更された名前を外部設計でのクラスに反映しなければならないにもかかわらず、大抵忘れられる(忙しいなどの理由で後回しにされる)ため、知識の差異が発生してしまいます。
「忘れる方が悪い」という言い分もあるかもしれませんが、そもそも、同じ知識・情報が同じエンティティでないことがおかしい。コーダーも結局はコメント欄(Javadocコメント)に日本語名を書くため、クラスに設定できる情報の1つとしてあってもおかしくないと思います。また、コメント欄に書いてしまうと、astah*community/professionalで開いて、クラスを選択しないと見えないため、紙やastah*shareを利用することもできません。astah*で書いた情報を参照するのは、コーダーだけでなく、プロジェクトメンバやステークホルダー全員であるため、「見える化」のためにも、プレゼンテーション面の機能を追加していただけると、非常に助かります。

なお、論理名/物理名の表示切替機能が既にあるERを話の対象外にしたのは、
・ERとクラスで表現するレベルが違う(ERよりもう少し具体的なレベルの情報を参照したいときもある)
・ERに設定できる情報がクラスに比べて少ない(クラスに多くの情報を書き込むことになる)
・ERからクラスを生成したとき、クラスに設定した情報(ステレオタイプなど)が消されてしまう(バグ?ver.6.2.1現在)
など、いくつかありますが、個人的に一番の理由は、ERでは関係に名前をつけることができない(つけても表示できない)ことです。TM(T字形ER)はRelationをEntityで表記することで関係を表現できますが、伝統的なERのRelationはEntityを線でつなげるだけで、どういった関係であるかを表現できないのです。せめて名前を付けることができればよいのですが、astah*community/professionalでは表示できないため、クラスを主に利用している次第です。

運用の問題もはいり、話題が多岐に渡ってしまって、わかり辛い文面になってしまったかもしれませんが、ご検討頂けるとありがたいです。あるいは、astah*をいろんなことに利用する情報交換会・勉強会などを開いてもらえるとうれしいです(オブジェクト倶楽部のモデリング大会よりもう少し込み入った感じのもので)。
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » クラスにもERのように論理名を設定したい eikichi 2010-9-13 11:26
     Re: クラスにもERのように論理名を設定したい webmaster 2010-9-14 9:28
       Re: クラスにもERのように論理名を設定したい eikichi 2010-9-27 13:21

投稿するにはまず登録を