掲示板一覧   -   トピック一覧
   Enterprise Architect 全般
     モジュール呼出し可視化などの機能はありますか?


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
sugimoto
投稿日時: 2010-11-5 13:45
EA Administrator
投稿: 1895

モジュール呼出し可視化などの機能はありますか?

サポートに寄せられたご質問の要約です。

○ご質問

現在、以下のような機能を探しています。

1. モジュール呼出しの可視化
2. クラス図作成時の詳細なフィルタリング設定
 例)インタフェースや抽象クラスを省略して出力する
3. クラス図、モジュール呼出し図などのエクセル形式出力
4. ソースコード修正時に影響の及ぶ範囲を機械的に特定する

もしEAにありましたら機能名など教えてください。

○回答

1. EAでは「ソースコード読み込み」機能により、クラス図を自動生成することができ、
その際、クラス要素間の関係も作成することができます。

ただし、ソースコード読み込み時に各関数内の処理は解析しておらず、
関数の戻り値や引数において他のクラスを利用している場合は、依存関係を
引くことは可能です。

このため、依存線がある場合は、依存線の接続先のクラス要素の情報を利用していることが
考えられますが、モジュール(関数)を呼んでいるかどうかは確定できません。

本機能については、以下のドキュメントをご覧ください。
https://www.sparxsystems.jp/bin/sourcecode.pdf


このほか、EAにはシーケンス図を自動生成する機能がございます。

この機能ではEAの「デバッグ機能」を利用し、デバッグ時に動作したログを
EAが解析し、シーケンス図を自動生成します。

この図を参照することで、ある機能実行時に、他のクラスのどのメソッドを
呼んでいるかを確認することは可能です。


2. ソースコード読み込みによりクラス図を自動生成した場合に、
インタフェース要素や抽象クラスを非表示にしたいということでしょうか?

ソースコード読み込み時に、これらの要素を読み込まないという設定はありませんが、
インタフェース要素については、図上の表示をフィルタリングする「ダイアグラムフィルタ」
機能を利用することで実現可能かと思います。

手順は、以下の通りです。
1) メインメニューから「表示」→「ダイアグラムフィルタ」を選択
2) 「ダイアグラムフィルタ」画面において右クリックし、「フィルタの新規追加」を実施
3) フィルタ名を入力し、OKボタンを押すと検索対象を選択する画面が
 表示されるので、「要素の種類」を有効にし、条件に"不一致"、
 値に"Interface"と入力します。
4) 「ダイアグラムフィルタ」画面で、該当の名前を有効にすると
 インタフェース要素がフェード(薄い)状態で表示されます。
5) "フェード"を"非表示"に変えることで、インタフェースは非表示になります。


なお、抽象クラス(クラス要素と汎化の関係で接続されたクラス要素)につきましては、
上記のダイアグラムフィルタ機能では非表示にできません。

また、ダイアグラム上から抽象クラスを手動で削除しますと、要素自体は参照
できなくなりますが、子クラス要素の名前の右上に抽象クラスの名前は表示され、
抽象クラスの存在は確認できます。

この右上の名前の表示もやめたい場合は、ダイアグラムのプロパティ画面の
「ダイアグラム」タブ上にある「親クラスをすべて表示」を無効にしてください。


3. クラス図につきましては、「SV入出力アドイン」を利用することにより、
クラス要素およびその中の属性・操作をCSV形式で出力することは可能です。


4. EAでは、ソースコード読み込みにより、ソースコードとクラス要素が連携されます。

ソースコードが修正された場合、そのソースコードに関連するクラス要素が
どの要素と関連があるか?といったことは「トレーサビリティ」サブウインドウなどで
確認することができますので、要素単位で影響範囲を確認することは可能です。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ