ログイン
検索
メインメニュー
開発者ブログ
ChangeVisionメンバーズ分布マップ
フォーラム一覧   -   トピック一覧
   astah*の使い方
     【クラス図からER図に変換する】多重度について
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
jrebirth
投稿日時: 2008-2-22 16:58
新米
登録日: 2008-1-4
居住地:
投稿: 7
【クラス図からER図に変換する】多重度について
クラス図で指定した多重度をER図に反映させる方法はありますでしょうか?

クラス図からER図への変換を試みているのですが、
すべての関連の多重度が「多対多」になってしまい困っています。
「多対一」や「一対多」に変更することはできなかったので、
関連自体を一度消して付け直す必要がありました。

変換元のクラス図では多重度を「0..* 対 1」や「1 対 0..*」のように設定しています。
集約や誘導可能性もいろいろ変えて試しましたが結果は変わりません。

マニュアルにも目を通したのですが、
変換時の詳細については載っていなかったので、
ここで質問させていただくことにしました。

どうぞよろしくお願いします。
Kota
投稿日時: 2008-2-26 18:16
開発者
登録日: 2006-5-9
居住地:
投稿: 151
Re: 【クラス図からER図に変換する】多重度について
jrebirthさん、ご指摘ありがとうございます。
ちょっとわかりにくですね。

[クラス図からER図のコンバート:依存型リレーションシップ]
・関連端に集約をつけると集約側のクラスが親として依存型リレーションシップに変換されます。
・関連にステレオタイプIdentifyingを付加し、
両側の関連端多重度が1対多と判定できる場合(一方のみ多重度1、一方のみ多重度0...1)、
1側の関連端が親として依存型リレーションシップに変換されます。

依存型リレーションシップ








依存型リレーションシップ結果








[クラス図からER図のコンバート:非依存型リレーションシップ]
・関連にステレオタイプNon-Identifyingを付加し、
両側の関連端多重度が1対多と判定できる場合(一方のみ多重度1、一方のみ多重度0...1)、
1側の関連端が親として非依存型リレーションシップに変換されます。

非依存型リレーションシップ













非依存型リレーションシップ結果














しかしながら、以下のバグを制限事項として報告させてください。
以下は次回バグFIX版リリースにておそらく解消いたします。
・[3195]ER図からクラス図へ変換するとき、非依存型リレーションシップの変換先の関連にステレオタイプ
Non-Identifyingが付加されない不具合
・[3196]クラス図からER図へ変換するとき、クラス間に関連があり、他方の関連端が集約のとき、変換すると、
依存型リレーションシップなのに図要素に"親は必須"がfalseのような表示をしてしまう不具合
・[3197]クラス図からER図へ変換するとき、クラス間に関連があり、関連が、ステレオタイプ
Non-Identifyingを持ち、関連端の一方の多重度が1のとき、変換先の非依存型リレーションシップは
親は必須"がfalseになってしまう不具合。
・[3198]クラス図からER図へ変換するとき、不正なモデルができることがある不具合。

しばらく、ご不便をおかけしますがよろしくお願いします。
jrebirth
投稿日時: 2008-2-27 11:05
新米
登録日: 2008-1-4
居住地:
投稿: 7
Re: 【クラス図からER図に変換する】多重度について
Kotaさん

丁寧なご説明ありがとうございました。
ステレオタイプで指定するということがわかり助かりました。
また、不具合についての説明もありがとうございます。

おかげさまで、必要なところにステレオタイプを追加することで、
うまく変換することができました。
現時点で変換に不具合のある部分については手作業で対応しようと思います。

次のバグFIX版リリースを楽しみにしています。
どうもありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を