JPH1195990A - プログラム構造表示方法および装置 - Google Patents
プログラム構造表示方法および装置Info
- Publication number
- JPH1195990A JPH1195990A JP25736397A JP25736397A JPH1195990A JP H1195990 A JPH1195990 A JP H1195990A JP 25736397 A JP25736397 A JP 25736397A JP 25736397 A JP25736397 A JP 25736397A JP H1195990 A JPH1195990 A JP H1195990A
- Authority
- JP
- Japan
- Prior art keywords
- display
- display data
- attribute
- name
- attribute information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】
【課題】 オブジェクト指向プログラムのクラス間の関
係、属性やメソッドの依存関係を適確に把握し得るプロ
グラム構造表示方法および装置を提供する。 【解決手段】 ソースプログラムからオブジェクト指向
プログラミング言語のクラス名、属性名、メソッド名、
およびクラス間の関係、属性とメソッド間の依存関係を
含む表示データを表示データ抽出手段1で抽出し、この
抽出した表示データを表示データ管理手段2で管理し、
表示データをノードとラインの図形を用いて表示するた
めに必要な表示属性情報を表示属性情報管理手段3で管
理し、属性マッピング手段4により表示データと表示属
性情報とをマッピングし、該表示属性情報を付加した表
示データをビジュアル化手段5に渡して、該表示属性情
報を付加された表示データをノードとラインの図形を用
いて表示する。
係、属性やメソッドの依存関係を適確に把握し得るプロ
グラム構造表示方法および装置を提供する。 【解決手段】 ソースプログラムからオブジェクト指向
プログラミング言語のクラス名、属性名、メソッド名、
およびクラス間の関係、属性とメソッド間の依存関係を
含む表示データを表示データ抽出手段1で抽出し、この
抽出した表示データを表示データ管理手段2で管理し、
表示データをノードとラインの図形を用いて表示するた
めに必要な表示属性情報を表示属性情報管理手段3で管
理し、属性マッピング手段4により表示データと表示属
性情報とをマッピングし、該表示属性情報を付加した表
示データをビジュアル化手段5に渡して、該表示属性情
報を付加された表示データをノードとラインの図形を用
いて表示する。
Description
【0001】
【発明の属する技術分野】本発明は、オブジェクト指向
プログラミング言語で記述されたソースプログラムを解
析し、該ソースプログラムの構造を表示するプログラム
構造表示方法および装置に関し、特にソフトウェアのリ
バースエンジニアリングにおけるオブジェクト指向プロ
グラミング言語の構造を表示するプログラム構造表示方
法および装置に関する。
プログラミング言語で記述されたソースプログラムを解
析し、該ソースプログラムの構造を表示するプログラム
構造表示方法および装置に関し、特にソフトウェアのリ
バースエンジニアリングにおけるオブジェクト指向プロ
グラミング言語の構造を表示するプログラム構造表示方
法および装置に関する。
【0002】
【従来の技術】オブジェクト指向言語プログラムのメン
テナンスおよび再利用を目的としたリバースエンジニア
リングでは、クラス間の関係、属性とメソッドの依存関
係を把握することが重要である。従来、例えば文献:オ
ブジェクトモデルを構築する際に可能な支援機能の実装
(情報処理学会第53回全国大会4D-4(1996))に記載さ
れているように、クラス間の関係をオブジェクト指向設
計法(例えば、OMT法)を用いて表示することを検討
したものがある。
テナンスおよび再利用を目的としたリバースエンジニア
リングでは、クラス間の関係、属性とメソッドの依存関
係を把握することが重要である。従来、例えば文献:オ
ブジェクトモデルを構築する際に可能な支援機能の実装
(情報処理学会第53回全国大会4D-4(1996))に記載さ
れているように、クラス間の関係をオブジェクト指向設
計法(例えば、OMT法)を用いて表示することを検討
したものがある。
【0003】
【発明が解決しようとする課題】上述した従来のオブジ
ェクト指向設計法では、属性やメソッドの依存関係まで
を表示する方法がなく、これらの属性やメソッドの依存
関係を利用者が直観的に把握することが困難であった。
このため、プログラム再利用時に依存関係を誤解してプ
ログラムを変更し、意図しない変更になってしまうとい
う問題があった。
ェクト指向設計法では、属性やメソッドの依存関係まで
を表示する方法がなく、これらの属性やメソッドの依存
関係を利用者が直観的に把握することが困難であった。
このため、プログラム再利用時に依存関係を誤解してプ
ログラムを変更し、意図しない変更になってしまうとい
う問題があった。
【0004】本発明は、上記に鑑みてなされたもので、
その目的とするところは、オブジェクト指向プログラム
のクラス間の関係、属性やメソッドの依存関係を適確に
把握し得るプログラム構造表示方法および装置を提供す
ることにある。
その目的とするところは、オブジェクト指向プログラム
のクラス間の関係、属性やメソッドの依存関係を適確に
把握し得るプログラム構造表示方法および装置を提供す
ることにある。
【0005】
【課題を解決するための手段】上記目的を達成するた
め、請求項1記載の本発明は、オブジェクト指向プログ
ラミング言語で記述されたソースプログラムを解析し、
該ソースプログラムの構造を表示するプログラム構造表
示方法であって、前記ソースプログラムからオブジェク
ト指向プログラミング言語のクラス名、属性名、メソッ
ド名、およびクラス間の関係、属性とメソッド間の依存
関係を含む表示データを抽出して管理し、前記表示デー
タをノードとラインの図形を用いて表示するために必要
な表示属性情報を管理し、前記表示データと表示属性情
報とをマッピングし、該表示属性情報を付加した前記表
示データを生成し、この生成された表示属性情報を付加
された表示データをノードとラインの図形を用いて表示
することを要旨とする。
め、請求項1記載の本発明は、オブジェクト指向プログ
ラミング言語で記述されたソースプログラムを解析し、
該ソースプログラムの構造を表示するプログラム構造表
示方法であって、前記ソースプログラムからオブジェク
ト指向プログラミング言語のクラス名、属性名、メソッ
ド名、およびクラス間の関係、属性とメソッド間の依存
関係を含む表示データを抽出して管理し、前記表示デー
タをノードとラインの図形を用いて表示するために必要
な表示属性情報を管理し、前記表示データと表示属性情
報とをマッピングし、該表示属性情報を付加した前記表
示データを生成し、この生成された表示属性情報を付加
された表示データをノードとラインの図形を用いて表示
することを要旨とする。
【0006】請求項1記載の本発明にあっては、ソース
プログラムからオブジェクト指向プログラミング言語の
クラス名、属性名、メソッド名、クラス間の関係、属性
とメソッド間の依存関係を含む表示データを抽出し、該
表示データと該表示データをノードとラインの図形を用
いて表示するために必要な表示属性情報とをマッピング
し、表示属性情報を付加した前記表示データをノードと
ラインの図形を用いて表示するため、クラス間の関係の
みならず、属性やメソッドの依存関係をもグラフィカル
に把握することができる。
プログラムからオブジェクト指向プログラミング言語の
クラス名、属性名、メソッド名、クラス間の関係、属性
とメソッド間の依存関係を含む表示データを抽出し、該
表示データと該表示データをノードとラインの図形を用
いて表示するために必要な表示属性情報とをマッピング
し、表示属性情報を付加した前記表示データをノードと
ラインの図形を用いて表示するため、クラス間の関係の
みならず、属性やメソッドの依存関係をもグラフィカル
に把握することができる。
【0007】また、請求項2記載の本発明は、請求項1
記載の発明において、オブジェクト指向プログラミング
言語のクラス名、属性名、メソッド名を表示する際に、
クラス名、属性名、メソッド名を含む表示データ種別に
よりノードおよびラインの図形の色および形を変えて表
示を行い、クラス間の関係および属性とメソッドの依存
関係を表示する際に、継承、集約を含む表示データ種別
によりノードおよびラインの図形の色および形を変えて
表示を行うことを要旨とする。
記載の発明において、オブジェクト指向プログラミング
言語のクラス名、属性名、メソッド名を表示する際に、
クラス名、属性名、メソッド名を含む表示データ種別に
よりノードおよびラインの図形の色および形を変えて表
示を行い、クラス間の関係および属性とメソッドの依存
関係を表示する際に、継承、集約を含む表示データ種別
によりノードおよびラインの図形の色および形を変えて
表示を行うことを要旨とする。
【0008】請求項2記載の本発明にあっては、クラス
名、属性名、メソッド名を含む表示データ種別によりノ
ードおよびラインの図形の色および形を変えて、クラス
名、属性名、メソッド名を表示し、継承、集約を含む表
示データ種別によりノードおよびラインの図形の色およ
び形を変えて、クラス間の関係および属性とメソッドの
依存関係を表示する。
名、属性名、メソッド名を含む表示データ種別によりノ
ードおよびラインの図形の色および形を変えて、クラス
名、属性名、メソッド名を表示し、継承、集約を含む表
示データ種別によりノードおよびラインの図形の色およ
び形を変えて、クラス間の関係および属性とメソッドの
依存関係を表示する。
【0009】更に、請求項3記載の本発明は、請求項1
記載の発明において、表示データのうち、クラス名、属
性名、メソッド名、およびクラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるというよ
うに段階的に表示を行うことを要旨とする。
記載の発明において、表示データのうち、クラス名、属
性名、メソッド名、およびクラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるというよ
うに段階的に表示を行うことを要旨とする。
【0010】請求項3記載の本発明にあっては、クラス
名、属性名、メソッド名、クラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるように段
階的に表示を行う。
名、属性名、メソッド名、クラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるように段
階的に表示を行う。
【0011】請求項4記載の本発明は、オブジェクト指
向プログラミング言語で記述されたソースプログラムを
解析し、該ソースプログラムの構造を表示するプログラ
ム構造表示装置であって、前記ソースプログラムからオ
ブジェクト指向プログラミング言語のクラス名、属性
名、メソッド名、およびクラス間の関係、属性とメソッ
ド間の依存関係を含む表示データを抽出する表示データ
抽出手段と、この表示データ抽出手段により抽出された
前記表示データを管理する表示データ管理手段と、前記
表示データをノードとラインの図形を用いて表示するた
めに必要な表示属性情報を管理する表示属性情報管理手
段と、前記表示データと表示属性情報とをマッピング
し、該表示属性情報を付加した前記表示データを生成す
るマッピング手段と、該マッピング手段により生成され
た前記表示属性情報を付加された表示データをノードと
ラインの図形を用いて表示するビジュアル化手段とを有
することを要旨とする。
向プログラミング言語で記述されたソースプログラムを
解析し、該ソースプログラムの構造を表示するプログラ
ム構造表示装置であって、前記ソースプログラムからオ
ブジェクト指向プログラミング言語のクラス名、属性
名、メソッド名、およびクラス間の関係、属性とメソッ
ド間の依存関係を含む表示データを抽出する表示データ
抽出手段と、この表示データ抽出手段により抽出された
前記表示データを管理する表示データ管理手段と、前記
表示データをノードとラインの図形を用いて表示するた
めに必要な表示属性情報を管理する表示属性情報管理手
段と、前記表示データと表示属性情報とをマッピング
し、該表示属性情報を付加した前記表示データを生成す
るマッピング手段と、該マッピング手段により生成され
た前記表示属性情報を付加された表示データをノードと
ラインの図形を用いて表示するビジュアル化手段とを有
することを要旨とする。
【0012】請求項4記載の本発明にあっては、ソース
プログラムからオブジェクト指向プログラミング言語の
クラス名、属性名、メソッド名、クラス間の関係、属性
とメソッド間の依存関係を含む表示データを抽出し、該
表示データと該表示データをノードとラインの図形を用
いて表示するために必要な表示属性情報とをマッピング
し、表示属性情報を付加した前記表示データをノードと
ラインの図形を用いて表示するため、クラス間の関係の
みならず、属性やメソッドの依存関係をもグラフィカル
に把握することができる。
プログラムからオブジェクト指向プログラミング言語の
クラス名、属性名、メソッド名、クラス間の関係、属性
とメソッド間の依存関係を含む表示データを抽出し、該
表示データと該表示データをノードとラインの図形を用
いて表示するために必要な表示属性情報とをマッピング
し、表示属性情報を付加した前記表示データをノードと
ラインの図形を用いて表示するため、クラス間の関係の
みならず、属性やメソッドの依存関係をもグラフィカル
に把握することができる。
【0013】また、請求項5記載の本発明は、請求項4
記載の発明において、前記表示属性情報管理手段の表示
属性情報は、オブジェクト指向プログラミング言語のク
ラス名、属性名、メソッド名に対して表示データ種別に
よりノードおよびラインの図形の色および形を変えて表
示するためにクラス名、属性名、メソッド名を含む表示
データ種別によりノードおよびラインの図形の色および
形を指定する情報、およびクラス間の関係および属性と
メソッドの依存関係を表示種別によりノードおよびライ
ンの色および図形を変えて表示するために継承、集約を
含む表示データ種別によりノードおよびラインの図形の
色および形を指定する情報を含むことを要旨とする。
記載の発明において、前記表示属性情報管理手段の表示
属性情報は、オブジェクト指向プログラミング言語のク
ラス名、属性名、メソッド名に対して表示データ種別に
よりノードおよびラインの図形の色および形を変えて表
示するためにクラス名、属性名、メソッド名を含む表示
データ種別によりノードおよびラインの図形の色および
形を指定する情報、およびクラス間の関係および属性と
メソッドの依存関係を表示種別によりノードおよびライ
ンの色および図形を変えて表示するために継承、集約を
含む表示データ種別によりノードおよびラインの図形の
色および形を指定する情報を含むことを要旨とする。
【0014】請求項5記載の本発明にあっては、クラス
名、属性名、メソッド名を含む表示データ種別によりノ
ードおよびラインの図形の色および形を変えて、クラス
名、属性名、メソッド名を表示し、継承、集約を含む表
示データ種別によりノードおよびラインの図形の色およ
び形を変えて、クラス間の関係および属性とメソッドの
依存関係を表示する。
名、属性名、メソッド名を含む表示データ種別によりノ
ードおよびラインの図形の色および形を変えて、クラス
名、属性名、メソッド名を表示し、継承、集約を含む表
示データ種別によりノードおよびラインの図形の色およ
び形を変えて、クラス間の関係および属性とメソッドの
依存関係を表示する。
【0015】更に、請求項6記載の本発明は、請求項4
記載の発明において、前記ビジュアル化手段は、表示デ
ータのうち、クラス名、属性名、メソッド名、およびク
ラス間の関係を最初に表示し、次に利用者により選択さ
れたクラス、属性およびメソッドに関連する関係のみの
表示に切り替えるというように段階的に表示を行う段階
的ビジュアル化手段を有することを要旨とする。
記載の発明において、前記ビジュアル化手段は、表示デ
ータのうち、クラス名、属性名、メソッド名、およびク
ラス間の関係を最初に表示し、次に利用者により選択さ
れたクラス、属性およびメソッドに関連する関係のみの
表示に切り替えるというように段階的に表示を行う段階
的ビジュアル化手段を有することを要旨とする。
【0016】請求項6記載の本発明にあっては、クラス
名、属性名、メソッド名、クラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるように段
階的に表示を行う。
名、属性名、メソッド名、クラス間の関係を最初に表示
し、次に利用者により選択されたクラス、属性およびメ
ソッドに関連する関係のみの表示に切り替えるように段
階的に表示を行う。
【0017】
【発明の実施の形態】以下、図面を用いて本発明の実施
の形態について説明する。
の形態について説明する。
【0018】図1は、本発明の一実施形態に係るプログ
ラム構造表示装置の構成を示すブロック図である。同図
に示すプログラム構造表示装置は、オブジェクト指向プ
ログラム構造におけるクラス間の関係だけでなく、属性
やメソッドの依存関係をも含め、オブジェクト指向プロ
グラミング言語のクラス名、属性名、メソッド名、およ
びクラス間の関係、属性やメソッドの依存関係を、ノー
ドとラインの図形を用いて、色や形を変化させて表示す
るものであり、表示データ抽出手段1、表示データ管理
手段2、表示属性情報管理手段3、属性マッピング手段
4、およびビジュアル化手段5から構成されている。な
お、本実施形態では、オブジェクト指向プログラミング
言語としてJava言語を用いるものとする。
ラム構造表示装置の構成を示すブロック図である。同図
に示すプログラム構造表示装置は、オブジェクト指向プ
ログラム構造におけるクラス間の関係だけでなく、属性
やメソッドの依存関係をも含め、オブジェクト指向プロ
グラミング言語のクラス名、属性名、メソッド名、およ
びクラス間の関係、属性やメソッドの依存関係を、ノー
ドとラインの図形を用いて、色や形を変化させて表示す
るものであり、表示データ抽出手段1、表示データ管理
手段2、表示属性情報管理手段3、属性マッピング手段
4、およびビジュアル化手段5から構成されている。な
お、本実施形態では、オブジェクト指向プログラミング
言語としてJava言語を用いるものとする。
【0019】図1において、表示データ抽出手段1は、
Java言語で記述されたソースプログラムを解析し、Java
言語の予約語に基づいて、クラス名、属性名、メソッド
名およびクラス間の関係、属性やメソッドの依存関係を
抽出し、表示データ管理手段2にデータを渡す。
Java言語で記述されたソースプログラムを解析し、Java
言語の予約語に基づいて、クラス名、属性名、メソッド
名およびクラス間の関係、属性やメソッドの依存関係を
抽出し、表示データ管理手段2にデータを渡す。
【0020】例えば、 の場合、クラス名はCommunication 、属性名はservise=
null、メソッド名はdisConnectServer()、クラス間の関
係は多重(new())として抽出する。
null、メソッド名はdisConnectServer()、クラス間の関
係は多重(new())として抽出する。
【0021】表示データ管理手段2は、表示データ抽出
手段1により抽出された表示データを、図2に示すよう
にクラス名管理表11、属性名管理表13、メソッド名
管理表14、クラス間関係管理表12、属性メソッド間
関係管理表15、メソッド間関係管理表16でそれぞれ
一意なデータ識別子を用いて表構造的に管理する。
手段1により抽出された表示データを、図2に示すよう
にクラス名管理表11、属性名管理表13、メソッド名
管理表14、クラス間関係管理表12、属性メソッド間
関係管理表15、メソッド間関係管理表16でそれぞれ
一意なデータ識別子を用いて表構造的に管理する。
【0022】更に詳しくは、表示データ管理手段2は、
図2に示すように、表示データ抽出手段1で抽出したク
ラス名をクラス名管理表11でクラス識別子であるクラ
スIDと、クラス名と、クラス名呼び出し(インスタン
ス化される)のクラス識別子である呼出しクラスID
と、クラス名という表示属性を識別するためのノード識
別子であるノードID(全て1)で管理する。また、属
性名は属性名管理表13で属性識別子である属性ID
と、属性名と、どのクラスに所属する属性名かを識別す
る所属クラス識別子である所属クラスIDと、属性名と
いう表示属性を識別するためのノードID(全て2)を
管理する。メソッド名は、メソッド名管理表14でメソ
ッド識別子であるメソッドIDと、メソッド名と、どの
クラスに所属するメソッド名かを識別する所属クラスI
Dと、メソッド名という表示属性を識別するためのノー
ドID(全て3)を管理する。
図2に示すように、表示データ抽出手段1で抽出したク
ラス名をクラス名管理表11でクラス識別子であるクラ
スIDと、クラス名と、クラス名呼び出し(インスタン
ス化される)のクラス識別子である呼出しクラスID
と、クラス名という表示属性を識別するためのノード識
別子であるノードID(全て1)で管理する。また、属
性名は属性名管理表13で属性識別子である属性ID
と、属性名と、どのクラスに所属する属性名かを識別す
る所属クラス識別子である所属クラスIDと、属性名と
いう表示属性を識別するためのノードID(全て2)を
管理する。メソッド名は、メソッド名管理表14でメソ
ッド識別子であるメソッドIDと、メソッド名と、どの
クラスに所属するメソッド名かを識別する所属クラスI
Dと、メソッド名という表示属性を識別するためのノー
ドID(全て3)を管理する。
【0023】クラス間の関係は、クラス間関係管理表1
2でクラスIDと、どのクラスと関係(継承、多重等)
があるかを識別する関係クラス識別子である関係クラス
IDと、その関係を識別するライン識別子であるライン
IDを管理する。また、属性とメソッドの依存関係につ
いては、メソッドから属性への依存関係を属性メソッド
間関係管理表15でメソッドIDと、依存関係のある属
性名の識別子である関係属性識別子、すなわち関係属性
IDと、属性とメソッドの依存関係であることを識別す
るラインIDを管理し、メソッドとメソッドの依存関係
をメソッド間関係管理表16でメソッドIDと、依存関
係のあるメソッド名の識別子である関係メソッド識別
子、すなわち関係メソッドIDと、メソッドとメソッド
の依存関係であることを識別するラインIDを管理す
る。
2でクラスIDと、どのクラスと関係(継承、多重等)
があるかを識別する関係クラス識別子である関係クラス
IDと、その関係を識別するライン識別子であるライン
IDを管理する。また、属性とメソッドの依存関係につ
いては、メソッドから属性への依存関係を属性メソッド
間関係管理表15でメソッドIDと、依存関係のある属
性名の識別子である関係属性識別子、すなわち関係属性
IDと、属性とメソッドの依存関係であることを識別す
るラインIDを管理し、メソッドとメソッドの依存関係
をメソッド間関係管理表16でメソッドIDと、依存関
係のあるメソッド名の識別子である関係メソッド識別
子、すなわち関係メソッドIDと、メソッドとメソッド
の依存関係であることを識別するラインIDを管理す
る。
【0024】例えば、クラス名管理表11はクラス名Se
ssion のクラスIDを2、クラス名をSession 、呼出し
クラスIDを1、ノードIDを1として管理する。
ssion のクラスIDを2、クラス名をSession 、呼出し
クラスIDを1、ノードIDを1として管理する。
【0025】また、表示属性情報管理手段3は、図3に
示すように、オブジェクト指向プログラミング言語であ
るJava言語のクラス名、属性名、メソッド名をノードと
して表示するための表示属性である色や形に関するノー
ド属性管理表21、およびクラス間の関係、属性やメソ
ッドの依存関係をラインとして表示するための表示属性
である色や形に関するライン属性管理表22を、それぞ
れ一意なデータ識別子を用いて表構造的に管理する。
示すように、オブジェクト指向プログラミング言語であ
るJava言語のクラス名、属性名、メソッド名をノードと
して表示するための表示属性である色や形に関するノー
ド属性管理表21、およびクラス間の関係、属性やメソ
ッドの依存関係をラインとして表示するための表示属性
である色や形に関するライン属性管理表22を、それぞ
れ一意なデータ識別子を用いて表構造的に管理する。
【0026】すなわち、表示属性情報管理手段3は、表
示データをノードやラインの図形を用い、色や形を変化
させて表示するために、図3に示すように、ノードに関
する表示属性情報をノード属性管理表21でノードI
D、ノード名、色、形状により管理し、またラインに関
する表示属性情報をライン属性管理表22でラインI
D、ライン名、色、形状により管理する。
示データをノードやラインの図形を用い、色や形を変化
させて表示するために、図3に示すように、ノードに関
する表示属性情報をノード属性管理表21でノードI
D、ノード名、色、形状により管理し、またラインに関
する表示属性情報をライン属性管理表22でラインI
D、ライン名、色、形状により管理する。
【0027】属性マッピング手段4は、表示データ管理
手段2で管理している表示データと表示属性情報管理手
段3で管理している表示属性情報を、それぞれノードや
ラインの図形を表す表示属性の識別子でマッピングし、
ビジュアル化手段5に表示データを渡し、これにより表
示データ管理手段2で管理している表示データに対して
表示に必要な表示属性情報を付加させることが可能とな
る。
手段2で管理している表示データと表示属性情報管理手
段3で管理している表示属性情報を、それぞれノードや
ラインの図形を表す表示属性の識別子でマッピングし、
ビジュアル化手段5に表示データを渡し、これにより表
示データ管理手段2で管理している表示データに対して
表示に必要な表示属性情報を付加させることが可能とな
る。
【0028】詳しくは、属性マッピング手段4は、表示
データ管理手段2と表示属性情報管理手段3が管理する
データを基に、クラス名管理表11のノードIDとノー
ド属性管理表21のノードIDを、属性名管理表13の
ノードIDとノード属性管理表21のノードIDを、メ
ソッド名管理表14のノードIDとノード属性管理表2
1のノードIDを、ノードで表示するためのマッピング
を行う。また、クラス間関係管理表12のラインIDと
ライン属性管理表22のラインIDを、属性メソッド間
関係管理表15のラインIDとライン属性管理表22の
ラインIDを、メソッド間関係管理表16のラインID
とライン属性管理表22のラインIDを、ラインで表示
するためのマッピングを行う。この属性マッピング手段
4で行った表示データをビジュアル化手段15へ渡す。
データ管理手段2と表示属性情報管理手段3が管理する
データを基に、クラス名管理表11のノードIDとノー
ド属性管理表21のノードIDを、属性名管理表13の
ノードIDとノード属性管理表21のノードIDを、メ
ソッド名管理表14のノードIDとノード属性管理表2
1のノードIDを、ノードで表示するためのマッピング
を行う。また、クラス間関係管理表12のラインIDと
ライン属性管理表22のラインIDを、属性メソッド間
関係管理表15のラインIDとライン属性管理表22の
ラインIDを、メソッド間関係管理表16のラインID
とライン属性管理表22のラインIDを、ラインで表示
するためのマッピングを行う。この属性マッピング手段
4で行った表示データをビジュアル化手段15へ渡す。
【0029】例えば、Session クラスの場合、クラス名
管理表11とノード属性管理表21とのマッピングによ
り、クラス名Session を表すノードの色が黒、形状が□
(四角)という表示属性が付与される。また、クラス間
関係管理表12とライン属性管理表22とのマッピング
により、クラス名StreamClientからの多重を表すライン
の色が灰、形状が→(矢印)という表示属性が付与され
る。
管理表11とノード属性管理表21とのマッピングによ
り、クラス名Session を表すノードの色が黒、形状が□
(四角)という表示属性が付与される。また、クラス間
関係管理表12とライン属性管理表22とのマッピング
により、クラス名StreamClientからの多重を表すライン
の色が灰、形状が→(矢印)という表示属性が付与され
る。
【0030】ビジュアル化手段5は、属性マッピング手
段4より表示データを受け取り、オブジェクト指向プロ
グラム構造のクラス間の関係、属性やメソッドの依存関
係をノードやラインの色、形で表示する。また、利用者
の操作により、選択された表示データの関係のみを段階
的に表示したモデル図(レベルオブジェクトモデル図)
を利用者に提供する。従って、オブジェクト指向プログ
ラミング言語であるJava言語のクラス名、属性名、メソ
ッド名、クラス間の関係、属性やメソッドの依存関係を
ノードやラインの図形を用いて、色や形を変化させた
り、段階的に表示することが可能となり、オブジェクト
指向プログラムのクラス間の関係、属性やメソッドの依
存関係の把握が可能となる。
段4より表示データを受け取り、オブジェクト指向プロ
グラム構造のクラス間の関係、属性やメソッドの依存関
係をノードやラインの色、形で表示する。また、利用者
の操作により、選択された表示データの関係のみを段階
的に表示したモデル図(レベルオブジェクトモデル図)
を利用者に提供する。従って、オブジェクト指向プログ
ラミング言語であるJava言語のクラス名、属性名、メソ
ッド名、クラス間の関係、属性やメソッドの依存関係を
ノードやラインの図形を用いて、色や形を変化させた
り、段階的に表示することが可能となり、オブジェクト
指向プログラムのクラス間の関係、属性やメソッドの依
存関係の把握が可能となる。
【0031】更に詳しくは、ビジュアル化手段5は、属
性マッピング手段4から渡された表示データを基に、ま
ず図4(図中は色の識別なし)のようにJava言語のクラ
ス名、そのクラス内の属性名、メソッド名をノードの表
示属性に従い表示する。次に、ビジュアル化手段5は順
次、各クラス名、属性名、メソッド名を表示した後、ク
ラス間の関係をラインの表示属性に従い表示する。その
際、ライン上にはその関係を文字列で表示する。また、
ビジュアル化手段5は各ノードを管理しており、利用者
によってクラス名や属性名、メソッド名が選択される
と、ライン表示を全て消去し、選択されたクラス名、属
性名等のノードIDを属性マッピング手段4へ渡し、属
性マッピング手段4は再度そのノードに対して、表示デ
ータと表示属性のマッピングを行った後、ビジュアル化
手段5へ表示データを渡す。図5(図中は色の識別な
し)は、利用者がメソッド名disConnectServer()を選択
したときに表示する例である。
性マッピング手段4から渡された表示データを基に、ま
ず図4(図中は色の識別なし)のようにJava言語のクラ
ス名、そのクラス内の属性名、メソッド名をノードの表
示属性に従い表示する。次に、ビジュアル化手段5は順
次、各クラス名、属性名、メソッド名を表示した後、ク
ラス間の関係をラインの表示属性に従い表示する。その
際、ライン上にはその関係を文字列で表示する。また、
ビジュアル化手段5は各ノードを管理しており、利用者
によってクラス名や属性名、メソッド名が選択される
と、ライン表示を全て消去し、選択されたクラス名、属
性名等のノードIDを属性マッピング手段4へ渡し、属
性マッピング手段4は再度そのノードに対して、表示デ
ータと表示属性のマッピングを行った後、ビジュアル化
手段5へ表示データを渡す。図5(図中は色の識別な
し)は、利用者がメソッド名disConnectServer()を選択
したときに表示する例である。
【0032】上述したように、本実施形態では、従来、
OMT法で用いられているオブジェクトの構造と関係を
記述しているモデル図(OMTオブジェクトモデル図)
で表示するクラス間の関係だけでなく、属性やメソッド
の依存関係をも含め、ノードやラインの図形を用いて、
色や形を変化させたり、利用者の指示するクラス間の関
係、属性やメソッドの依存関係のみを段階的に表示する
モデル図(レベルオブジェクトモデル図)を利用者に提
供している。
OMT法で用いられているオブジェクトの構造と関係を
記述しているモデル図(OMTオブジェクトモデル図)
で表示するクラス間の関係だけでなく、属性やメソッド
の依存関係をも含め、ノードやラインの図形を用いて、
色や形を変化させたり、利用者の指示するクラス間の関
係、属性やメソッドの依存関係のみを段階的に表示する
モデル図(レベルオブジェクトモデル図)を利用者に提
供している。
【0033】
【発明の効果】以上説明したように、本発明によれば、
ソースプログラムからオブジェクト指向プログラミング
言語のクラス名、属性名、メソッド名、クラス間の関
係、属性とメソッド間の依存関係を含む表示データを抽
出し、該表示データと該表示データをノードとラインの
図形を用いて表示するために必要な表示属性情報とをマ
ッピングし、表示属性情報を付加した前記表示データを
ノードとラインの図形を用いて表示するので、オブジェ
クト指向プログラミング言語の構造であるクラス間の関
係、および属性やメソッドの依存関係をグラフィカルに
把握することができ、プログラムのメンテナンスおよび
再利用に有効である。
ソースプログラムからオブジェクト指向プログラミング
言語のクラス名、属性名、メソッド名、クラス間の関
係、属性とメソッド間の依存関係を含む表示データを抽
出し、該表示データと該表示データをノードとラインの
図形を用いて表示するために必要な表示属性情報とをマ
ッピングし、表示属性情報を付加した前記表示データを
ノードとラインの図形を用いて表示するので、オブジェ
クト指向プログラミング言語の構造であるクラス間の関
係、および属性やメソッドの依存関係をグラフィカルに
把握することができ、プログラムのメンテナンスおよび
再利用に有効である。
【0034】また、本発明によれば、表示データ種別に
よりノードおよびラインの図形の色および形を変えて、
クラス名、属性名、メソッド名を表示し、継承、集約を
含む表示データ種別によりノードおよびラインの図形の
色および形を変えて、クラス間の関係および属性とメソ
ッドの依存関係を表示するとともに、またクラス名、属
性名、メソッド名、クラス間の関係を最初に表示し、次
に利用者により選択されたクラス、属性およびメソッド
に関連する関係のみの表示に切り替えるように段階的に
表示を行うので、クラス間の関係および属性やメソッド
の依存関係を段階的に明確に把握することができる。
よりノードおよびラインの図形の色および形を変えて、
クラス名、属性名、メソッド名を表示し、継承、集約を
含む表示データ種別によりノードおよびラインの図形の
色および形を変えて、クラス間の関係および属性とメソ
ッドの依存関係を表示するとともに、またクラス名、属
性名、メソッド名、クラス間の関係を最初に表示し、次
に利用者により選択されたクラス、属性およびメソッド
に関連する関係のみの表示に切り替えるように段階的に
表示を行うので、クラス間の関係および属性やメソッド
の依存関係を段階的に明確に把握することができる。
【図1】本発明の一実施形態に係るプログラム構造表示
装置の構成を示すブロック図である。
装置の構成を示すブロック図である。
【図2】図1のプログラム構造表示装置に使用されてい
る表示データ管理手段で管理する管理表を示す図であ
る。
る表示データ管理手段で管理する管理表を示す図であ
る。
【図3】図1のプログラム構造表示装置に使用されてい
る表示属性情報管理手段で管理する管理表を示す図であ
る。
る表示属性情報管理手段で管理する管理表を示す図であ
る。
【図4】図1のプログラム構造表示装置に使用されてい
るビジュアル化手段により表示される表示例を示す図で
ある。
るビジュアル化手段により表示される表示例を示す図で
ある。
【図5】図1のプログラム構造表示装置に使用されてい
るビジュアル化手段により表示される表示例であって、
特に利用者がメソッド名disConnectServer()を選択した
場合の表示例を示す図である。
るビジュアル化手段により表示される表示例であって、
特に利用者がメソッド名disConnectServer()を選択した
場合の表示例を示す図である。
【符号の説明】 1 表示データ抽出手段 2 表示データ管理手段 3 表示属性情報管理手段 4 属性マッピング手段 5 ビジュアル化手段
Claims (6)
- 【請求項1】 オブジェクト指向プログラミング言語で
記述されたソースプログラムを解析し、該ソースプログ
ラムの構造を表示するプログラム構造表示方法であっ
て、 前記ソースプログラムからオブジェクト指向プログラミ
ング言語のクラス名、属性名、メソッド名、およびクラ
ス間の関係、属性とメソッド間の依存関係を含む表示デ
ータを抽出して管理し、 前記表示データをノードとラインの図形を用いて表示す
るために必要な表示属性情報を管理し、 前記表示データと表示属性情報とをマッピングし、該表
示属性情報を付加した前記表示データを生成し、 この生成された表示属性情報を付加された表示データを
ノードとラインの図形を用いて表示することを特徴とす
るプログラム構造表示方法。 - 【請求項2】 オブジェクト指向プログラミング言語の
クラス名、属性名、メソッド名を表示する際に、クラス
名、属性名、メソッド名を含む表示データ種別によりノ
ードおよびラインの図形の色および形を変えて表示を行
い、クラス間の関係および属性とメソッドの依存関係を
表示する際に、継承、集約を含む表示データ種別により
ノードおよびラインの図形の色および形を変えて表示を
行うことを特徴とする請求項1記載のプログラム構造表
示方法。 - 【請求項3】 表示データのうち、クラス名、属性名、
メソッド名、およびクラス間の関係を最初に表示し、次
に利用者により選択されたクラス、属性およびメソッド
に関連する関係のみの表示に切り替えるというように段
階的に表示を行うことを特徴とする請求項1記載のプロ
グラム構造表示方法。 - 【請求項4】 オブジェクト指向プログラミング言語で
記述されたソースプログラムを解析し、該ソースプログ
ラムの構造を表示するプログラム構造表示装置であっ
て、 前記ソースプログラムからオブジェクト指向プログラミ
ング言語のクラス名、属性名、メソッド名、およびクラ
ス間の関係、属性とメソッド間の依存関係を含む表示デ
ータを抽出する表示データ抽出手段と、 この表示データ抽出手段により抽出された前記表示デー
タを管理する表示データ管理手段と、 前記表示データをノードとラインの図形を用いて表示す
るために必要な表示属性情報を管理する表示属性情報管
理手段と、 前記表示データと表示属性情報とをマッピングし、該表
示属性情報を付加した前記表示データを生成するマッピ
ング手段と、 該マッピング手段により生成された前記表示属性情報を
付加された表示データをノードとラインの図形を用いて
表示するビジュアル化手段とを有することを特徴とする
プログラム構造表示装置。 - 【請求項5】 前記表示属性情報管理手段の表示属性情
報は、オブジェクト指向プログラミング言語のクラス
名、属性名、メソッド名に対して表示データ種別により
ノードおよびラインの図形の色および形を変えて表示す
るためにクラス名、属性名、メソッド名を含む表示デー
タ種別によりノードおよびラインの図形の色および形を
指定する情報、およびクラス間の関係および属性とメソ
ッドの依存関係を表示種別によりノードおよびラインの
色および図形を変えて表示するために継承、集約を含む
表示データ種別によりノードおよびラインの図形の色お
よび形を指定する情報を含むことを特徴とする請求項4
記載のプログラム構造表示装置。 - 【請求項6】 前記ビジュアル化手段は、表示データの
うち、クラス名、属性名、メソッド名、およびクラス間
の関係を最初に表示し、次に利用者により選択されたク
ラス、属性およびメソッドに関連する関係のみの表示に
切り替えるというように段階的に表示を行う段階的ビジ
ュアル化手段を有することを特徴とする請求項4記載の
プログラム構造表示装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25736397A JPH1195990A (ja) | 1997-09-22 | 1997-09-22 | プログラム構造表示方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25736397A JPH1195990A (ja) | 1997-09-22 | 1997-09-22 | プログラム構造表示方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1195990A true JPH1195990A (ja) | 1999-04-09 |
Family
ID=17305349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25736397A Pending JPH1195990A (ja) | 1997-09-22 | 1997-09-22 | プログラム構造表示方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1195990A (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006216028A (ja) * | 2005-02-07 | 2006-08-17 | Microsoft Corp | 分散システムのためのベースラインアーキテクチャ・モニタアプリケーション |
JP2008123254A (ja) * | 2006-11-13 | 2008-05-29 | Nippon Shoken Technology Kk | Java言語プログラムを用いた大規模業務系の影響分析ツール |
JP2009251769A (ja) * | 2008-04-02 | 2009-10-29 | Hitachi Ltd | クラス構造生成方法、クラス構造生成プログラムおよびクラス構造生成装置 |
JP2010250655A (ja) * | 2009-04-17 | 2010-11-04 | Hitachi Ltd | ソフトウェアの開発支援方法、開発支援装置及び開発支援プログラム |
US8438531B2 (en) * | 2009-12-01 | 2013-05-07 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images |
US8533626B2 (en) | 2009-12-01 | 2013-09-10 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images based on user zone of focus |
JP2013190890A (ja) * | 2012-03-13 | 2013-09-26 | Hitachi Ltd | ソフトウェア開発支援装置及び影響波及分析支援手法 |
US8645901B2 (en) | 2009-12-01 | 2014-02-04 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images based on a cursor |
US8671386B2 (en) | 2008-01-31 | 2014-03-11 | Kabushiki Kaisha Toshiba | Program generating apparatus and block diagram generating apparatus |
JP2016539421A (ja) * | 2013-11-19 | 2016-12-15 | グーグル インコーポレイテッド | コールパスファインダ |
-
1997
- 1997-09-22 JP JP25736397A patent/JPH1195990A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006216028A (ja) * | 2005-02-07 | 2006-08-17 | Microsoft Corp | 分散システムのためのベースラインアーキテクチャ・モニタアプリケーション |
JP2008123254A (ja) * | 2006-11-13 | 2008-05-29 | Nippon Shoken Technology Kk | Java言語プログラムを用いた大規模業務系の影響分析ツール |
US8671386B2 (en) | 2008-01-31 | 2014-03-11 | Kabushiki Kaisha Toshiba | Program generating apparatus and block diagram generating apparatus |
JP2009251769A (ja) * | 2008-04-02 | 2009-10-29 | Hitachi Ltd | クラス構造生成方法、クラス構造生成プログラムおよびクラス構造生成装置 |
JP2010250655A (ja) * | 2009-04-17 | 2010-11-04 | Hitachi Ltd | ソフトウェアの開発支援方法、開発支援装置及び開発支援プログラム |
US8438531B2 (en) * | 2009-12-01 | 2013-05-07 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images |
US8533626B2 (en) | 2009-12-01 | 2013-09-10 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images based on user zone of focus |
US8645901B2 (en) | 2009-12-01 | 2014-02-04 | Cadence Design Systems, Inc. | Visualization and information display for shapes in displayed graphical images based on a cursor |
JP2013190890A (ja) * | 2012-03-13 | 2013-09-26 | Hitachi Ltd | ソフトウェア開発支援装置及び影響波及分析支援手法 |
JP2016539421A (ja) * | 2013-11-19 | 2016-12-15 | グーグル インコーポレイテッド | コールパスファインダ |
US10042746B2 (en) | 2013-11-19 | 2018-08-07 | Google Llc | Callpath finder |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6154212A (en) | Method and apparatus for constructing network interfaces | |
AU732374B2 (en) | A management interworking unit and a method for producing such a unit | |
CN109857870A (zh) | 用于知识图谱的可视化本体构建系统及方法 | |
JPH1195990A (ja) | プログラム構造表示方法および装置 | |
CN111988176A (zh) | 一种基于仿真拓扑结构的故障定位系统可视化方法 | |
CN106557457A (zh) | 一种基于qt的自动生成跨平台复杂流程图的系统 | |
CN110096560A (zh) | 基于图库一体的数据管理方法、设备、存储介质及装置 | |
CN114978925B (zh) | 一种物模型创建方法及系统 | |
CN111625312A (zh) | 一种app换肤方法、装置、电子设备及存储介质 | |
CN105389381B (zh) | 一种用于城市路灯的电子地图标识绘制系统及方法 | |
CN108733441A (zh) | 一种适用于大规模电网符号设备的渲染可视化方法及系统 | |
CN114780005A (zh) | 图形绘制方法、装置、电子设备以及存储介质 | |
CN111930965B (zh) | 一种用于知识图谱的本体结构的构建方法及系统 | |
CN115981625A (zh) | 一种可扩展的电力系统接线图界面建模方法及系统 | |
CN115700505A (zh) | 一种自动构建并动态配置可视化大屏的方法及系统 | |
CN110995806B (zh) | 一种资源状态转换方法、装置、设备及存储介质 | |
CN100476725C (zh) | 一种自动生成等值线图片文件的方法 | |
EP0838761A2 (en) | Dynamic maps and server-based map editing | |
JP3282701B2 (ja) | データベース情報ビジュアル化アプリケーションプログラム開発支援システム | |
CN111538878A (zh) | 一种基于qt的数据采集平台数据的展示方法及装置 | |
CN111507861A (zh) | 一种用电数据处理以及可视化方法和系统 | |
JPH0583253A (ja) | 網監視方式 | |
CN107704367A (zh) | 一种资源周期信息展示方法和装置 | |
CN117315076A (zh) | 一种基于元宇宙技术的动态制图方法及系统 | |
JP3494337B2 (ja) | 視覚的データ分析結果の特徴情報生成装置 |