JPH06187138A - 階層的グラフ解析方法及びその装置 - Google Patents

階層的グラフ解析方法及びその装置

Info

Publication number
JPH06187138A
JPH06187138A JP5184701A JP18470193A JPH06187138A JP H06187138 A JPH06187138 A JP H06187138A JP 5184701 A JP5184701 A JP 5184701A JP 18470193 A JP18470193 A JP 18470193A JP H06187138 A JPH06187138 A JP H06187138A
Authority
JP
Japan
Prior art keywords
node
file
graph
directed graph
display threshold
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.)
Granted
Application number
JP5184701A
Other languages
English (en)
Other versions
JP2544887B2 (ja
Inventor
Gary M Laskoski
ギャリー・マイケル・ラスコスキ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06187138A publication Critical patent/JPH06187138A/ja
Application granted granted Critical
Publication of JP2544887B2 publication Critical patent/JP2544887B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use
    • Y10S715/965Operator interface with visual structure or function dictated by intended use for process control and configuration
    • Y10S715/966Computer process, e.g. operation of computer
    • Y10S715/967Visual or iconic programming

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Digital Computer Display Output (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 コンピュータ・プログラムの構造を簡潔に表
示するためのシステム及び方法を提供する。 【構成】 ソース・プログラム13を解析して有向グラ
フ・ファイル14に変換する。有向グラフ・ファイル
は、全てのファンクション(ノード)をリストするファ
ンクションリスト・ファイルと、ファンクション間(ア
ーク)の全てのファンクションコールをリストするファ
ンクションコールリスト・ファイルからなる。階層的グ
ラフ解析(HGA)ファンクション15は、各ノードに
ついて、そのノードから出て到達できる全てのノードの
組を含む「ノード・リーチ」を計算する。さらに、表示
される最大ノード・リーチを示すノード表示閾値21を
決める。そして、そのノード表示閾値を用いて、表示さ
れるノードのみを含むHGA有向グラフを作成する。最
後に、表示ファンクション17がそのHGA有向グラフ
を表示する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータ・プログ
ラムの構造を解析するためのシステムに関する。特に、
コンピュータ・プログラムの構造を簡潔に表示するため
のコンピュータ・システム及びプロセスに関するもので
ある。
【0002】
【従来の技術】プログラム理解ツールの目的は、既存の
ソフトウェア・システムに対するプログラマの理解を助
けることである。この目的のためのいくつかのプログラ
ム理解ツールは、プログラマに対しグラフィカル様式に
よってソフトウェア・システムにみられるある呼出し関
係を提示する。例えば、制御流れと相互ファンクション
コールである。この情報をグラフとして表示することの
主な利点は、ノード間の呼出し関係を容易に視認できる
ことである。この表現によってプログラマは、ほんの僅
かかいま見るだけで、グラフのノードがどのような階層
的関係にあるか、そしてそのグラフ中の各ノードが他の
ノードとどのように関係しているかを知ることができ
る。この技術における問題の1つは、表示されるグラフ
が複雑になるにつれて、末端ユーザにとってはそのグラ
フの有用性が失われてしまうことである。実際非常に複
雑なグラフの場合、この問題は非常に深刻なものとな
り、従って表示されたグラフがプログラム理解の目的の
ために実質的に役に立たなくなる。
【0003】
【発明が解決しようとする課題】グラフの複雑さを決定
する最も重要な要素は、グラフに含まれるノードとアー
クの数の間の関係である。この複雑さの1つの目安は、
米国国立標準局(NBS)によって「サイクロマティッ
ク数(cyclomatic number)」として
提示されている(NBS Special Publi
cation 500−99、1982年12月刊)。
このサイクロマティック数による複雑度の評価は、ある
グラフ、Gに対して以下の計算から決定される。即ち、 サイクロマティック複雑度(G)=アーク数(G)−ノ
ード数(G)+2(コンポーネント数)
【0004】上記の式で「コンポーネント数」は、グラ
フGを構成する結合されていないサブコンポーネントの
数である。例えば複雑度数が12までのグラフならば、
プログラム理解の目的に使用できそうであるが、複雑度
47の例では、使用の限界を越えているようである。こ
の場合、グラフのノード同士の関係が、多数のアークに
よって隠されることもある。従来技術による実際のプロ
グラムの解析においては、複雑度数が数百に及ぶプログ
ラムは決して珍しくない。いくつかのプログラムにおい
ては、数千の複雑度数のものさえみられた。
【0005】
【課題を解決するための手段】本発明の目的は、コンピ
ュータ・プログラムの構造を簡潔に表示するためのシス
テム及びその方法を提供することである。コンピュータ
・プログラムの構造は、有向グラフのファイルで表現さ
れる。このファイルは階層的グラフ解析プロセスに渡さ
れる。このプロセスは、(a)入力グラフ中の各ノード
についての「ノード・リーチ」を計算し、(b)そのグ
ラフについての「ノード表示閾値」を決定し、(c)そ
の選択されたノード表示閾値においてそのグラフを変換
する。それから変換されたグラフは表示プロセスに渡さ
れ、表示プロセスはその変換されたグラフを表示媒体上
に表示する。
【0006】
【実施例】図1は、本発明の好適例における基本的要素
を描いたシステム図である。コンピュータ・システム1
1は、グラフ解析ファンクション19を含む。グラフ解
析ファンクション19は、解析ファンクション12、階
層的グラフ解析(Hierarchical Grag
h Analysis)(HGA)ファンクション1
5、及び表示ファンクション17から構成される。解析
ファンクション12は、ソース・ファイル13からソー
ス・コード入力を受取り、有向グラフ・ファイル14を
作成する。このファイルは、ファンクションリスト・フ
ァイルとファンクションコールリスト・ファイルからな
る。HGAファンクション15は有向グラフ・ファイル
14から入力を受取り、HGAノード・リーチ・ファイ
ル20を作成してノード表示閾値21を決定し、そして
HGA有向グラフ16を作る。表示ファンクション17
は、HGA有向グラフ・ファイル16から入力を受取
り、表示装置18上に出力する。
【0007】図2は、解析ファンクション12の制御流
れを描いた流れ図である。解析対象の各ソース・プログ
ラム13について、プログラムファンクション定義(フ
ァンクションX)の最初に到達するまでそのソース・コ
ードが走査される(201)。そのソースの最後に達し
たならば(202)、解析ファンクションが終了する。
もし達しないならば、有向グラフ・ファイル14内のフ
ァンクションリスト・ファイルにファンクション記録が
書込まれる(203)。(このステップは、次のフォー
マット、即ちProgramFunction(ファン
クションX)の記録を書込むことにより実行される。)
【0008】次に、ソース・ファイル13内のファンク
ションXについてのファンクション定義が、ファンクシ
ョンコール(別のファンクション、即ちファンクション
Yの呼出し)のために走査される(204)。もし続く
ファンクションコールが無い場合(205)、処理は続
行され201において次のファンクションを探索する。
もし続くファンクションコールがあれば、有向グラフ・
ファイル12内のファンクションコールリスト・ファイ
ルにファンクションコール記録が書込まれる(20
6)。(このステップは、次のフォーマット、即ちPr
ogramFunctionCall(ファンクション
X、ファンクションY)の記録を書込むことにより実行
される。)その後、処理は続行され204において現在
のファンクション定義内の別のファンクションコールを
探索する。
【0009】図2の処理の後、ファンクションコールリ
スト・ファイルには、解析されたソース・コード・プロ
グラムのプログラム・ファンクション間の呼出し(コー
ル)リストが含まれている。また、ファンクションリス
ト・ファイルには、解析されたソース・コード・プログ
ラムの全プログラムファンクションのリストが含まれて
いる。図8は、(ファンクションリスト・ファイル70
3とファンクションコールリスト・ファイル704から
なる)有向グラフ・ファイルのサンプル702を示した
ものであり、この解析処理をソース・コード・ファイル
のサンプル701に対して適用することによって作られ
たものである。このファンクションリスト・ファイル
は、「ノード・セット」とも呼ばれ、最終的なグラフ表
示において「ノード」として表示されることになるファ
ンクション(プログラム)からなる。また、ファンクシ
ョンコールリスト・ファイルは、「アーク・セット」と
も呼ばれ、最終的なグラフ表示における「アーク」(ノ
ードと呼出されたファンクションとの間のリンク)から
なる。
【0010】図3は、階層的グラフ表示(HGA)ファ
ンクションを実行する主要なステップを示している。先
ず、グラフの各ノードについて「ノード・リーチ」が計
算される(301)。このプロセスは、図4及び以下に
詳細に記載されている。次に、302においてそのグラ
フの「ノード表示閾値」が決定される。このプロセス
は、図5及び図6並びに以下に詳細に記載されている。
最後に、302で決定されたノード表示閾値において、
グラフは「HGA有向グラフ」16に変換される(30
3)。このプロセスは、図7及び以下により詳細に記載
されている。HGA有向グラフ16は有向グラフ14の
サブセットとなり、さらに最終的に出力装置18上に表
示するために表示ファンクション17によって利用され
る。
【0011】図4は、グラフの各ノードについてのノー
ド・リーチを計算するプロセスを示している。このプロ
セスの最後において、グラフの各ノードはそれに対する
ノード・リーチ値を決定される。各ノード・リーチ値
は、1から元のグラフのノード数までの範囲内である。
所与のノード、NodeXがグラフ内の他のいずれかの
ノード(NodeX以外)へ出て行くアークを全く持た
ない場合、ノード・リーチ値は1に等しくなる。所与の
ノードに対する最大のノード・リーチ値は、グラフのノ
ード数に等しくなる。これは、所与のノード、Node
Xからグラフの全てのノードにパスが存在する場合であ
る。
【0012】401において、処理のためにノード・セ
ット14Aから1つのノードを得る。このノードは、4
02で一時的ファイル(ノード・リーチット・ファイ
ル)の中に置かれることにより、このノードからスター
トして到達する可能性のあるノードの組に含まれたこと
を表す。次に、403においてアーク・セット14Bか
ら1つのアークを得る。このアークは、特定の形を採る
(ソース・ノードとターゲット・ノードを持つ)。40
4で、そのアークのソース・ノードが処理中のノードで
あるかどうか検査される。もしそうでなければ、別のア
ークが403において得られる。もしそうであれば、4
05において関係するターゲット・ノードが既にノード
・リーチット・ファイル中にあるかどうかが検査され
る。もしなければ、406において関係するターゲット
・ノードがノード・リーチット・ファイルへ置かれる。
次に、407において処理中のノードが関係するターゲ
ット・ノードと等しくなるようセットされる。それか
ら、408においてアーク・セット14Bにまだアーク
が残っているかどうかが検査される。もし残っていれ
ば、403において前記の処理が続行される。残ってい
なければ、409においてノード・リーチが、その時の
一時的ノード・リーチット・ファイルの全ノード数に等
しくなるようにセットされ、そして410においてその
ノード・リーチ値は、HGAノード・リーチ・ファイル
20内にその関係するノードとともに置かれる。それか
ら、411においてノード・セット14A内にさらに処
理すべきノードが残っているかどうか検査される。もし
残っていれば、401において前記の処理が続行され
る。残っていなければ、各ノードに対するノード・リー
チ値が計算されたことになり、処理は終了する。
【0013】図5及び図6は、そのグラフに対するノー
ド・リーチ表示閾値21を決定するプロセスを示してい
る。この閾値は、選択されたそのグラフ表示ファンクシ
ョンが、末端ユーザとの直接対話が可能であるかどうか
によって2つの方法の内のいずれかによって決定するこ
とができる。
【0014】もし末端ユーザとの対話が望ましければ、
そのユーザがノード表示閾値をセットしてもよい。好適
例においては、この形態の末端ユーザ対話は、コンピュ
ータ・モニタ18等の動的表示媒体と結び付いている。
この場合、末端ユーザは対話的にノード表示閾値を異な
る値に設定することが可能で、そのユーザは容易に特定
のプログラム理解タスクのための必要な詳細を十分に見
ることができる。このプロセスは、図5に示されてい
る。501において、閾値のユーザ入力が要求される。
次に502において、入力値をHGAノード・リーチ・
ファイル20中の値の組と比較することによって、入力
値が「適切」かどうかが検査される。もし入力値がその
ファイル内の値の1つでなければ、替わりの値が再び5
01において要求される。もし入力値が認められれば、
その値はノード表示閾値21として設定され、表示ファ
ンクション17によって利用される。(表示ファンクシ
ョン17は汎用的ステップであることを注記する。この
中には、コンピュータ表示装置上にグラフ表示を行うた
めの多くのツールが存在する。例えば、バックマン・イ
ンフォメーション・システムズ・インコーポレーション
によるバックマン・アナリスト・リエンジニアリング・
ツール等である。)
【0015】末端ユーザとの対話が必要でなければ、ノ
ード表示閾値を選択するための所定の方法が必要であ
る。好適例では、所与のグラフの平均ノード・リーチを
ノード表示閾値をして利用してもよい。図6にはこのプ
ロセスが示されている。501において、HGAグラフ
に関係する全てのノード・リーチ値がHGAノード・リ
ード・ファイル20から読込まれる。この数字の組の平
均値が505において計算される。この(最も近い整数
に丸められた)平均値が、506においてノード表示閾
値21として設定され、表示ファンクション17によっ
て利用される。
【0016】図7は、図5及び図6に示したように有向
グラフ14について計算されたノード表示閾値21にお
いて、有向グラフ14をHGA有向グラフ16に変換す
るプロセスを示している。601において、ノード・セ
ット14Aからノードを得る。そしてその関係するノー
ド・リーチが、HGAノード・リーチ・ファイル20か
ら得られる。次に602において、その関係するノード
・リーチがノード表示閾値21より大きいかあるいは等
しいかどうかが検査される。もし小さければ、そのノー
ドは表示されず(それはHGA有向グラフ・ファイルに
追加されない)、さらに処理は以下に示す604におい
て続行される。もし閾値より大きいか等しければ、その
ノードがHGA有向グラフ・ファイル16に追加される
(HGAノード・セット16A)。次に604において
処理されるべきノードがまだ残っているかどうか検査さ
れる。もし残っていれば、ステップ601で説明したよ
うに処理が行われる。残っていなければ、有向グラフ1
4内の各々のアーク・リンクが以下のように処理され
る。
【0017】605において、処理されるべきアークが
アーク・セット14Bから得られる。そのアークは、特
定の形である(ソース・ノードとターゲット・ノードを
持つ)。606において、ソース・ノードに関係するノ
ード・リーチ(HGAノード・リーチ・ファイル20か
ら得られた)がそのノード表示閾値21より大きいかあ
るいは等しいかが検査される。もし小さければ、新しい
アークが605において得られる。もし閾値より大きい
か等しければ、607において、そのターゲット・ノー
ドに関係するノード・リーチ(同じくHGAノード・リ
ーチ・ファイル20から得られた)がノード表示閾値2
1より大きいかあるいは等しいかどうかが検査される。
もし小さければ、新しいアークが605において得られ
る。もし大きいか等しければ、処理中のそのアークがH
GA有向グラフ16のHGAアーク・セット部分16B
に追加される。(HGA有向グラフ16は、HGAノー
ド・セット16A及びHGAアーク・セット16Bから
なる。)次に、処理されるべきアークがまだ残っている
かどうか検査される。もし残っていなければ、処理は終
了する。残っていれば、605において示したように別
のアークが得られ、処理が続けられる。
【0018】本発明の好適例は記載されたとおりである
が、本発明の範囲内において改良が可能であることは当
業者であれば理解できるであろう。
【0019】
【発明の効果】本発明によって、コンピュータ・プログ
ラムの構造を簡潔に表示するためのシステム及びその方
法が提供される。
【図面の簡単な説明】
【図1】本発明のシステム構造を示すブロック図であ
る。
【図2】本発明の解析ソース・コード・プロセスのため
の制御流れを示す流れ図である。
【図3】階層的グラフ解析(HGA)ファンクションの
ための制御流れを示す流れ図である。
【図4】ノード・リーチ計算ファンクションのための制
御流れを示す流れ図である。
【図5】ノード・リーチ表示閾値決定ファンクションの
ための制御流れを示す流れ図である。
【図6】ノード・リーチ表示閾値決定ファンクションの
ための制御流れを示す流れ図である。
【図7】グラフ変換ファンクションのための制御流れを
示す流れ図である。
【図8】サンプル入力ソース・プログラムのための解析
ファンクションによって作られた有向グラフを示したブ
ロック図である。
【符号の説明】
11 システム 12 解析ファンクション 13 ソース・プログラム 14 有向グラフ・ファイル 15 HGA 16 HGA有向グラフ・ファイル 17 表示ファンクション 18 表示装置 19 グラフ解析 20 HGAノード・リーチ・ファイル 21 ノード表示閾値

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】ソース・コンピュータ・プログラムの構造
    を表示するためのシステムにおいて、 a)出力表示装置に接続されたコンピュータと、 b)前記ソース・コンピュータ・プログラムを解析する
    ためのグラフ解析手段とを有し、 前記グラフ解析手段が、 1)前記ソース・コンピュータ・プログラムを、少なく
    とも1つのノードを有するファンクションリスト・ファ
    イルと少なくとも1つのアークを有するファンクション
    コールリスト・ファイルとを含む有向グラフ・ファイル
    に変換するための解析手段と、 2)前記有向グラフ・ファイルを階層的グラフ解析有向
    グラフ・ファイルに変換するための階層的グラフ解析手
    段と、 3)前記階層的グラフ解析有向グラフ・ファイルを前記
    出力表示装置上に表示するための表示手段とからなるこ
    とを特徴とする、 前記のシステム。
  2. 【請求項2】前記階層的グラフ解析手段が、 a)前記ノードのそれぞれに対するノード・リーチ値か
    らなるノード・リーチ・ファイルを作成するためのノー
    ド・リーチ手段と、 b)前記有向グラフ・ファイルに対するノード表示閾値
    を決めるための閾値決定手段と、 c)前記ノード表示閾値によって修正された有向グラフ
    に相当する階層的グラフ解析有向グラフを作成するため
    のグラフ変換手段とを有することを特徴とする、 請求項1記載のシステム。
  3. 【請求項3】前記ノード表示閾値決定手段が、 前記ノード表示閾値をユーザに求め、そして該ユーザか
    ら受取るための手段からなることを特徴とする、 請求項2記載のシステム。
  4. 【請求項4】前記閾値決定手段が、 前記ノード・リーチ・ファイルに入力されたものを用い
    て前記ノード表示閾値を計算するためのアルゴリズム手
    段からなることを特徴とする、 請求項2記載のシステム。
  5. 【請求項5】ソース・コンピュータ・プログラムの構造
    を表示するためにコンピュータと出力表示装置とを設
    け、 a)前記ソース・コンピュータ・プログラムを、少なく
    とも1つのノードを有するファンクションリスト・ファ
    イルと少なくとも1つのアークを有するファンクション
    コールリスト・ファイルとを含む有向グラフ・ファイル
    に変換するステップと、 b)前記有向グラフ・ファイルを階層的グラフ解析有向
    グラフ・ファイルに変換するステップと、 c)前記階層的グラフ解析有向グラフ・ファイルを前記
    出力表示装置上に表示するステップとを有する、 コンピュータ・システムを動作する方法。
  6. 【請求項6】前記有向グラフ・ファイルを階層的グラフ
    解析有向グラフ・ファイルに変換するステップが、 a)各ノード・リーチ値が前記ファンクションリスト・
    ファイル中の前記ノードの1つに対応しているノード・
    リーチ値を少なくとも1つ含むノード・リーチ・ファイ
    ルを作成し、 b)前記有向グラフ・ファイルのためにノード表示閾値
    を作成し、 c)有向グラフ内のノードの1つが前記ノード表示閾値
    と第1の特定関係を有するノード・リーチ値のうちの関
    連する1つを有する場合にのみ該ノードを階層的グラフ
    解析有向グラフ内に含めることによって、前記ノード表
    示閾値を用いて前記有向グラフを変換して階層的グラフ
    解析有向グラフを作成する各ステップとからなることを
    特徴とする、 請求項5記載のコンピュータ・システムを動作する方
    法。
  7. 【請求項7】前記第1の特定関係が「より大きいかある
    いは等しい」ことであることを特徴とする請求項6記載
    のコンピュータ・システムを動作する方法。
  8. 【請求項8】前記ノート表示閾値を作成するステップ
    が、 該ノード表示閾値をユーザに求め、そして該ユーザから
    受取るステップからなることを特徴とする、 請求項6記載のコンピュータ・システムを動作する方
    法。
  9. 【請求項9】前記階層的グラフ解析有向グラフ・ファイ
    ルを表示するステップの後に新しいノード表示閾値を前
    記ユーザに求め、該ユーザが該新しいノード表示閾値を
    与えたならば、該新しいノード表示閾値を用いて前記有
    向グラフ・ファイルを新しい階層的グラフ解析有向グラ
    フ・ファイルに変換し、その後該新しい階層的グラフ解
    析有向グラフ・ファイルを前記出力表示装置上に表示す
    る各ステップを含むことを特徴とする、 請求項8記載のコンピュータ・システムを動作する方
    法。
  10. 【請求項10】前記ノード表示閾値を作成するステップ
    が、 前記ノード・リーチ・ファイルから該ノード表示閾値を
    算術的に計算するステップからなることを特徴とする請
    求項6記載のコンピュータ・システムを動作する方法。
  11. 【請求項11】前記アークのそれぞれがソース・ノード
    とターゲット・ノードからなり、前記ノード表示閾値を
    用いて前記有向グラフを変更することにより階層的グラ
    フ解析有向グラフを作成するステップが、該アークを構
    成するソース・ノードとターゲット・ノードの双方が該
    ノード表示閾値と第2の特定関係を有する関連ノード・
    リーチ値を有する場合にのみ、該階層的グラフ解析有向
    グラフ内に該アークを含めるステップからなることを特
    徴とする請求項6記載のコンピュータ・システムを動作
    する方法。
JP5184701A 1992-09-03 1993-07-27 階層的グラフ解析方法及びその装置 Expired - Fee Related JP2544887B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US939815 1992-09-03
US07/939,815 US5428554A (en) 1992-09-03 1992-09-03 Hierarchical graph analysis method and apparatus

Publications (2)

Publication Number Publication Date
JPH06187138A true JPH06187138A (ja) 1994-07-08
JP2544887B2 JP2544887B2 (ja) 1996-10-16

Family

ID=25473784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5184701A Expired - Fee Related JP2544887B2 (ja) 1992-09-03 1993-07-27 階層的グラフ解析方法及びその装置

Country Status (2)

Country Link
US (1) US5428554A (ja)
JP (1) JP2544887B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013088461A1 (ja) * 2011-12-12 2015-04-27 株式会社日立製作所 ソフトウェア解析プログラム、および、ソフトウェア解析システム

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE1007551A3 (nl) * 1993-09-24 1995-08-01 Philips Electronics Nv Werkwijze voor het in een rekenmachine automatisch herstellen van consistentie in een hierarchische objektstruktuur na een interaktie door een gebruiker en rekenmachine voorzien van zo een systeem voor automatische consistentieherstelling.
US5596703A (en) * 1993-10-22 1997-01-21 Lucent Technologies Inc. Graphical display of relationships
US5581797A (en) * 1993-10-22 1996-12-03 Lucent Technologies Inc. Method and apparatus for displaying hierarchical information of a large software system
US5701137A (en) * 1995-05-24 1997-12-23 Microsoft Corporation Method for separating a hierarchical tree control into one or more hierarchical child tree controls in a graphical user interface
US6311166B1 (en) 1996-07-25 2001-10-30 Price Waterhouse World Firm Services Bv Method for analyzing effectiveness of internal controls in a model of an accounting system
US6104395A (en) * 1996-08-14 2000-08-15 International Business Machines Corporation Graphical interface method, apparatus and application for opening window of all designated container objects
US5774119A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Graphical interface method, apparatus and application for selection of target object
US6195096B1 (en) 1996-08-14 2001-02-27 International Business Machines Corporation Graphical interface method, apparatus and application for creating and modifying a multiple-value text list
US5818444A (en) * 1996-08-14 1998-10-06 International Business Machines Corporation Method, apparatus and application for object selective but global attribute modification
US5784057A (en) * 1996-08-14 1998-07-21 International Business Machines Corporation Dynamically modifying a graphical user interface window title
US5781193A (en) * 1996-08-14 1998-07-14 International Business Machines Corporation Graphical interface method, apparatus and application for creating multiple value list from superset list
US5872568A (en) * 1996-08-14 1999-02-16 International Business Machines Corporation Application and method for creating a list from pre-defined and user values
US5867157A (en) * 1996-08-14 1999-02-02 International Business Machines Corporation Graphical interface method, apparatus and application for creating and modifying a list of values with multiple components
US5774120A (en) * 1996-08-14 1998-06-30 International Business Machines Corporation Refresh and select-all actions in graphical user interface
US6097887A (en) 1997-10-27 2000-08-01 Kla-Tencor Corporation Software system and method for graphically building customized recipe flowcharts
US6665866B1 (en) * 1999-05-28 2003-12-16 Microsoft Corporation Extensible compiler utilizing a plurality of question handlers
US6493869B1 (en) 1999-05-28 2002-12-10 Microsoft Corporation Inheriting code in a transformational programming system
US6583794B1 (en) 1999-07-01 2003-06-24 Smart Money Interface system for information mapping
US6944851B1 (en) * 2001-04-30 2005-09-13 General Electric Capital Corporation Method and system for executing a computer program
US7356480B2 (en) * 2002-08-01 2008-04-08 International Business Machines Corporation Method of data transformation via efficient path discovery using a digraph
WO2006091119A1 (en) * 2005-02-21 2006-08-31 Intel Corporation Method of stable incremental layout for a hierarchical graph representation
US20070266039A1 (en) * 2006-05-11 2007-11-15 Boykin James R Simplifying A Visual Depiction of A Graph
US9398033B2 (en) 2011-02-25 2016-07-19 Cavium, Inc. Regular expression processing automaton
US9203805B2 (en) 2011-11-23 2015-12-01 Cavium, Inc. Reverse NFA generation and processing
US9426165B2 (en) 2013-08-30 2016-08-23 Cavium, Inc. Method and apparatus for compilation of finite automata
US9426166B2 (en) 2013-08-30 2016-08-23 Cavium, Inc. Method and apparatus for processing finite automata
US9507563B2 (en) 2013-08-30 2016-11-29 Cavium, Inc. System and method to traverse a non-deterministic finite automata (NFA) graph generated for regular expression patterns with advanced features
US9419943B2 (en) 2013-12-30 2016-08-16 Cavium, Inc. Method and apparatus for processing of finite automata
US9904630B2 (en) 2014-01-31 2018-02-27 Cavium, Inc. Finite automata processing based on a top of stack (TOS) memory
US9602532B2 (en) 2014-01-31 2017-03-21 Cavium, Inc. Method and apparatus for optimizing finite automata processing
US9438561B2 (en) * 2014-04-14 2016-09-06 Cavium, Inc. Processing of finite automata based on a node cache
US10110558B2 (en) 2014-04-14 2018-10-23 Cavium, Inc. Processing of finite automata based on memory hierarchy
US10002326B2 (en) 2014-04-14 2018-06-19 Cavium, Inc. Compilation of finite automata based on memory hierarchy

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5985543A (ja) * 1982-11-08 1984-05-17 Fujitsu Ltd プログラム制御構造図の自動生成方式
JPS6180332A (ja) * 1984-09-28 1986-04-23 Toshiba Corp プログラム作成装置
JPS63109578A (ja) * 1986-10-27 1988-05-14 Fujitsu Ltd 論理図概要表示処理方式
JPH03246626A (ja) * 1990-02-23 1991-11-05 Nec Corp 関数のプログラム構造図自動作成ツール

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4613946A (en) * 1984-06-07 1986-09-23 Forman Ernest H Method and apparatus for generating hierarchical displays
US4800510A (en) * 1985-07-31 1989-01-24 Computer Associates International, Inc. Method and system for programmed control of computer generated graphics layout
US4731606A (en) * 1985-08-02 1988-03-15 International Business Machines Corporation Method for rapid windowing of display information in computer graphics
US4852019A (en) * 1986-01-31 1989-07-25 Computer Associates International, Inc. Method and system for retrieval of stored graphs
US5021947A (en) * 1986-03-31 1991-06-04 Hughes Aircraft Company Data-flow multiprocessor architecture with three dimensional multistage interconnection network for efficient signal and data processing
JP2786206B2 (ja) * 1988-07-29 1998-08-13 株式会社日立製作所 機能設計図生成方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5985543A (ja) * 1982-11-08 1984-05-17 Fujitsu Ltd プログラム制御構造図の自動生成方式
JPS6180332A (ja) * 1984-09-28 1986-04-23 Toshiba Corp プログラム作成装置
JPS63109578A (ja) * 1986-10-27 1988-05-14 Fujitsu Ltd 論理図概要表示処理方式
JPH03246626A (ja) * 1990-02-23 1991-11-05 Nec Corp 関数のプログラム構造図自動作成ツール

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2013088461A1 (ja) * 2011-12-12 2015-04-27 株式会社日立製作所 ソフトウェア解析プログラム、および、ソフトウェア解析システム

Also Published As

Publication number Publication date
US5428554A (en) 1995-06-27
JP2544887B2 (ja) 1996-10-16

Similar Documents

Publication Publication Date Title
JP2544887B2 (ja) 階層的グラフ解析方法及びその装置
US5333244A (en) Method of and system for displaying a scalar quantity distribution
US5862382A (en) Program analysis system and program analysis method
JPS63181033A (ja) プログラム自動生成方式
US8788929B2 (en) Script generation
JP2008293486A (ja) ソースコード解析機器、解析プログラムおよび解析方法
JPH0683598A (ja) ジョブフロー仕様書自動作成方法
JP4737624B2 (ja) アプリケーションの障害原因の特定作業支援システム
Ma et al. Stochastic approximations for finite-state Markov chains
JP3997495B2 (ja) ソフトウェア解析装置及びソフトウェア解析方法
JPH05143570A (ja) 故障木作成方法
JPH09288580A (ja) ソースプログラムの最適化装置および最適化方法
JPH0895826A (ja) プログラムテスト方法
KR20220098948A (ko) 전자 장치 및 이의 제어 방법
JPH03230259A (ja) 注釈付加方式
JP3001042B2 (ja) クラス継承評価方式
JPH1097416A (ja) ファイル解析装置
CN117271801A (zh) 知识图谱的构建方法、装置、电子设备和可读存储介质
CN114265894A (zh) 一种数据可视化评价方法、装置、设备及存储介质
CN115934519A (zh) 基于统一建模语言uml流程图的测试方法、设备及介质
JPH01288930A (ja) 離散事象型シミュレーション方式
JPH05233198A (ja) ウィンドウ間対応データ変換装置
WO2017037773A1 (ja) クエリ開発支援方法及びクエリ開発支援装置
Dietrich Slowly decaying classical fields, unitarity, and gauge invariance
JPH0580992A (ja) 手続き・関数関連図出力方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees