JPH08314758A - プログラムテスト進捗管理方法 - Google Patents

プログラムテスト進捗管理方法

Info

Publication number
JPH08314758A
JPH08314758A JP7116835A JP11683595A JPH08314758A JP H08314758 A JPH08314758 A JP H08314758A JP 7116835 A JP7116835 A JP 7116835A JP 11683595 A JP11683595 A JP 11683595A JP H08314758 A JPH08314758 A JP H08314758A
Authority
JP
Japan
Prior art keywords
program
date
name
time
transition
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
Application number
JP7116835A
Other languages
English (en)
Inventor
Junichi Watabe
淳一 渡部
Yosuke Morioka
洋介 森岡
Yukari Furuhata
由香理 降旗
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7116835A priority Critical patent/JPH08314758A/ja
Publication of JPH08314758A publication Critical patent/JPH08314758A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】組み合わせテスト以降のデバッグ作業におい
て、ロードモジュール生成時期とプログラム実行時期の
比較により、各プログラムおよびプログラム遷移の変更
に係わる部分を視覚的に把握できるようにし、テストの
漏れおよび重複を防ぎ、テストデバッグの効率化と品質
の向上を図る。 【構成】プログラム実行ジャーナルファイル入力時、プ
ログラム遷移テーブルの定義内容と比較し、プログラム
遷移による変更をチェックする機能と、同じくロードモ
ジュールファイルのロードモジュール生成日時と比較
し、プログラム修正による変更をチェックする機能と、
その結果より進捗状況を集計し、進捗状況一覧表を編集
・出力する機能からなる。 【効果】組み合わせテスト以降のデバッグにおいて、デ
バッグ作業の進捗状況を視覚的に把握することができ、
テストの漏れおよび重複を防ぎ、テストデバッグの効率
化と品質の向上を図ることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムのソフ
トウエアデバッグ方法に係わり、特に組み合わせテスト
以降のデバッグ効率を上げるのに有効なデバッグ支援ツ
ール方法に関する。
【0002】
【従来の技術】
発明に最も近い公知例 プログラム実行トレース方法(特開昭62−21733
3号公報) 計算機システムのソフトウエア開発では、デバッグ作業
に最も多くの時間が費やされる。なぜならば、システム
構成が複雑化し、コンピュータ処理のプロセスにおける
プログラムの数が多く、その遷移が錯綜しているからで
ある。
【0003】しかし、プログラム生成系支援ツールの技
術(精度)が高度化し、プログラム自動生成率が向上して
いる現在では、デバッグ効率の善し悪しがソフトウエア
の開発スピードを左右する最大の要因であり、デバッグ
を効率的に行うための支援ツールの出現が強く望まれて
いた。
【0004】こういった要求に応えるために、組み合わ
せテスト以降のデバッグに焦点を当てて、従来のデバッ
グ支援ツールは開発された。
【0005】オンライン稼働情報を基に、イベントの通
過時間、時系列的なプログラムの動き、各プログラムの
処理時間とで構成されるトレース情報をダイナミックに
CRTに出力する。この情報を基に、プログラム実行ト
レースを表示する。表示では、タイムチャート形式で各
プログラムの処理時間、サブルーチンへのジャンプなど
の動きが見えるようになる。
【0006】すなわち、イベントの経過時間を基にし
て、プログラムの動きをダイナミックに出力すること
で、プログラムの実行結果を目で検証する方法である。
【0007】
【発明が解決しようとする課題】前記従来技術は、被テ
スト対象プログラムの実行状況を時系列的にシンボリッ
クに表現することにより、ダイナミックなプログラムの
動きを見ることができる。しかし、1プログラム遷移分
のプログラムの動きを見ることはできるが、被テスト対
象とするプログラム全体のプログラム遷移を表現するこ
とはできない。すなわち、システム全体のプログラム遷
移における、テストを実行したプログラム遷移の位置付
けを認識するという視点がなく、このため、テストする
プログラム遷移全体における、終了および未終了したプ
ログラム遷移分の割合が把握できない。したがって、デ
バッグ作業の進捗状況を把握することはできないという
問題点があった。
【0008】また、終了および未終了プログラム遷移の
識別が難しい。したがって、終了したテストを重複して
行ってしまう、あるいはその反対に必要なテストの実行
を漏らしてしまう場合が多くあり、デバッグ作業の効率
と品質の低下を生じるという問題点があった。(を起こ
していた。) また、一部のプログラムを修正した場合には、修正した
プログラムに関係するプログラム遷移分のみをテストす
ればよいが、従来技術では、システム全体のプログラム
遷移を管理し、各々の実行状態を把握していないので、
テストすべきプログラム遷移を早く正確に認識すること
ができないという問題点があった。(できなかった。) 特に、システム構成が複雑になればなるほど、プログラ
ム遷移数、プログラム数は膨大になるため、テストの必
要なプログラム遷移の見極めおよびテスト実行の必要性
の把握は困難になり、デバッグ効率低下の要因ともなっ
ていた。
【0009】本発明の目的は、計算機システムのソフト
ウエア・デバッグにおける組み合わせテスト以降のデバ
ッグを行う際に、単なる時系列的にプログラム実行状況
を表示するトレース情報とは違い、被テスト対象とする
プログラム全体の遷移情報とプログラム実行時の情報と
プログラムのロードモジュール情報を基にして、デバッ
グの進捗情報を収集し、これを解析、編集することによ
り、デバッグの進捗状況を視覚的に捉えられるようにし
た、効率的なデバッグ支援ツールを提供することにあ
る。
【0010】
【課題を解決するための手段】単体テストでプログラム
単位のテストは完了しているため、「組み合わせテス
ト」における主要な確認事項は、プログラム相互間のリ
ンケージエラーの有無である。したがって、新規開発シ
ステムについてはすべてのプログラム遷移をテストする
必要がある。また、既にテストを完了しているシステム
においては、何らかの理由により、プログラム遷移に修
正が生じた場合に、そのプログラム遷移の動作を確認す
ることは当然であるが、個々のプログラムを修正した場
合にも、そのプログラムのみならず、そのプログラムを
含むすべてのプログラム遷移を確認する必要がある。
【0011】そのため、「組み合わせテスト」を効率的
に行うには、テストの必要があるプログラム遷移を見極
め、必要なプログラム遷移のみをテストすればよい。
【0012】本発明ではこの点に着目し、プログラムお
よびプログラム遷移が変更した場合に行うロードモジュ
ール生成時期と、プログラム実行時期の比較により、各
プログラム遷移のテストの必要性を識別する機能を持た
せる。そして、マトリックス形式で表現したプログラム
遷移テーブルに、各プログラム遷移のテスト実行情報を
重ね合わせるように編集することによって、上記目的を
達成する。
【0013】
【作用】本発明では、組み合わせテストを行った場合、
プログラム実行ジャーナルに、テストを行ったプログラ
ム遷移の名称、構成する各プログラムの名称、プログラ
ム遷移テーブルにおける位置、起動日付および時刻、起
動回数を設定する。そして、プログラムのロードモジュ
ールファイルの生成日および時刻と、プログラム実行ジ
ャーナルファイルの実行日および時刻を比較し、テスト
実行日時がロードモジュール生成日時の以前であれば、
起動日付および時刻についてはスペースクリアし、起動
回数についてはゼロを設定する。また、以後であれば、
起動日付および時刻を設定し、起動回数を加算する。
【0014】したがって、テストを実行したプログラム
遷移についてのみ、各ルートを構成するプログラムの起
動回数および起動日時の値が設定されるため、テストの
既実行か未実行かの識別が一見して可能であり、かつテ
ストの進捗の度合いを定量的に把握することが可能であ
り、テストの進捗状況を把握することができる。
【0015】さらに、すべてのプログラム遷移について
テストを完了した後で、プログラムあるいはプログラム
遷移に修正が生じた場合には、修正したプログラムとそ
のプログラムを含むプログラム遷移のプログラムのみ、
あるいは修正したプログラム遷移のプログラムのみの、
起動回数および起動日時の値がクリアされる。
【0016】したがって、修正したプログラムやプログ
ラム遷移部分の把握が容易にかつ正確にできるため、テ
ストの漏れや重複を防ぐことを可能とし、テストデバッ
グ作業の効率化と品質を向上することができる。
【0017】
【実施例】以下、本発明の一実施例を図面を用いて詳細
に説明する。
【0018】まず、図1および図2を用いて本実施例を
実現するためのハードウエア構成と、本実施例が持つ機
能を実現するための手段を説明する。
【0019】図1は、本発明を実現するための計算機の
ハードウエア構成である。
【0020】図2は、本実施例における処理手順を示し
たシステム構成図(201)である。組み合わせテスト(202)
のテスト実行時の履歴を蓄積した実行ジャーナルファイ
ル(204)と、プログラム遷移テーブル(203)と、ロードモ
ジュールファイル(205)を入力し、実行状況解析機能(20
6)の、プログラム遷移の定義修正による変更をチェック
する機能(207)と、プログラム修正による変更をチェッ
クする機能(208)と、進捗状況を集計し進捗状況一覧表
を編集する機能(209)にて、進捗状況一覧表(210)を出力
することにより実現する。
【0021】これより、本発明の第1の実施例を詳細に
説明する。
【0022】第1の実施例では、デバッグ作業中のシス
テムにおける進捗状況一覧表を出力する方法について詳
細に説明する。出力方法の説明にあたり、始めに図3か
ら図6を用いて、出力に係わる入力情報となるファイル
と、出力情報となる一覧表の構成について説明する。
【0023】図3は、プログラム遷移テーブル(301)の
例である。プログラム遷移テーブル(301)は、ルート名
称欄(302)とプログラム名称欄(303)から構成される。ル
ートとは、コンピュータ処理のプロセスをプログラムに
細分化したときの、1処理を行うために必要なプログラ
ムの遷移である。ルートには、各々識別するために名称
を付与し、この名称をルート名称欄に定義する。プログ
ラム名称欄には、各ルートのプログラムについて実行順
に左から右へとプログラム名称を定義する。
【0024】本例では、(304)はルート名称が「ルート
1」であることを、(305)は、「ルート1」のプログラ
ム遷移では、「3つのプログラム『ProgA』『Pr
ogB』『ProgC』が『ProgA→ProgB→
ProgC』の順序に起動する」ことを各々意味する。
【0025】図4は、ロードモジュールファイル(401)
の例である。ロードモジュールファイル(401)は、その
ロードモジュールの対象となったプログラムの名称欄(4
02)とロードモジュールの生成日付欄(403)と生成時刻欄
(404)から構成される。本例では、(405)はこのロードモ
ジュールがプログラム名称「ProgA」のロードモジ
ュールであることを、(406)はロードモジュールの生成
日が「1995年1月20日」であることを、(407)は
生成時刻が「9時30分」であることを各々意味する。
【0026】図5は、プログラム実行ジャーナルファイ
ル(501)の例である。プログラム実行ジャーナルファイ
ル(501)は、テストを実行したルート毎に情報を格納す
るルートエントリ(502)の集合体である。ルートエント
リ(502)は、テストを実行したルート名および、そのル
ートを構成する各プログラムの実行状況に関する情報を
格納するプログラムエントリ(503)の集合から構成され
る。プログラムエントリ(503)は、各プログラムの名称
欄(504)、プログラム遷移テーブルにおける位置欄(50
5)、起動回数欄(506)、起動日付欄(507)、起動時刻欄(5
08)から構成される。プログラム遷移テーブルにおける
位置は、ルートを行、レベルと呼ぶプログラムの実行順
序を列とした座標によって示し、プログラム遷移テーブ
ルの最も左上のプログラムを(1,1)とする。
【0027】(501)は、図3に示すプログラム遷移テー
ブル(301)のルート1のテストを実行した実行ジャーナ
ルファイルである。(509)はプログラムの名称が「Pr
ogA」であることを、(510)はプログラム遷移テーブ
ルにおいて、プログラムの属するルート位置が「1」で
あることを、(511)はレベル位置が「1」がであること
を、(512)はプログラムの起動回数が「1回」であるこ
とを、(513)はプログラムの起動日付が「1995年1
月21日」であることを、(514)は起動時刻が「11時
05分」であることを意味する。
【0028】図6は、進捗状況一覧表(601)の例であ
る。進捗状況一覧表(601)は、ルートエントリ欄(602)と
ルートを構成する各プログラムの起動状況を示すプログ
ラムエントリ欄(603)から構成される。プログラムエン
トリ(603)では、プログラム遷移テーブルに対応し、各
プログラムの名称(604)、起動日付(605)、起動時刻(60
6)、起動回数(607)の各情報が1単位となり、プログラ
ムの起動した順に左から右へと並ぶように表示される。
本例では、(608)はルート名が「ルート1」であること
を、(609)はレベル1のプログラム名称が「Prog
A」であることを、(610)は起動日付が「1995年1
月21日」であることを、(611)は起動時刻が「11時
05分」であることを、(612)は起動回数が「1回」で
あることを各々意味する。
【0029】それでは、図3で示すプログラム遷移テー
ブル(301)と、図4で示すロードモジュールファイル(40
1)と、図5で示すプログラム実行ジャーナルファイル(5
01)から、図6に示す進捗状況一覧表(601)を出力する方
法を説明する。
【0030】まず、実行ジャーナルファイル(501)のル
ートエントリ(502)からルート名を参照することによ
り、ルート1のテストを実行したことを認識し、進捗状
況一覧表(601)の(608)には「ルート1」が設定される。
【0031】次に、(207)の機能を用いて、実行ジャー
ナルファイル(501)のルートエントリ(502)の各プログラ
ムエントリについて起動順序の早いものから順次プログ
ラム情報を参照する。1番目のプログラムエントリを参
照し、プログラム名称が「ProgA」であることを認
識する。プログラム名称「ProgA」をキーとして、
ロードモジュールファイル(401)を検索する。
【0032】(208)の機能を用いて、一致するプログラ
ム名称「ProgA」を検索し、そのロードモジュール
生成日付(406)および生成時刻(407)と、実行ジャーナル
ファイル(501)の起動日付(513)および起動時刻(514)を
比較する。その結果、ロードモジュール生成日時の方が
起動日時よりも古いため、テストを実行したと認識し、
(209)の機能により、進捗状況一覧表(601)の(609)には
プログラム名称「ProgA」が、(610)には、実行ジ
ャーナルファイルのプログラム起動日付「1995年1
月21日」が、(611)には、同ファイルのプログラム起
動時刻の「11時05分」が、(612)には、同ファイル
の起動回数「1回」が各々設定される。
【0033】尚、実行ジャーナルファイル(501)のプロ
グラムエントリでは、プログラム毎にプログラム遷移テ
ーブル(301)における位置を座標によって認識してい
る。進捗状況一覧表(601)では、この座標の値を基にプ
ログラム遷移テーブル(301)での位置に対応した位置
に、各ルートおよび各プログラムの実行情報を設定す
る。本例では、「ルート1」の「ProgA」のルート
位置は「1」(510)、レベル位置は「1」(511)であるた
め、進捗状況一覧表では図6の(609)、(610)、(611)、
(612)に示すような位置に情報が出力される。
【0034】以降のプログラムエントリについても同様
の方法で進捗状況一覧表(601)のプログラムエントリに
値が設定される。
【0035】以上、第1の実施例では、デバッグ作業に
おいてテストを実行したプログラム遷移(ルート)につい
て、プログラム遷移に対応した表形式として実行情報を
出力することにより、デバッグの進捗状況が把握でき
る。さらに、テストの実行の有無がルート単位に一目で
識別できるため、テストの実行漏れや重複を防ぐことが
できる。
【0036】次に、本発明の第2の実施例を詳細に示
す。
【0037】第2の実施例では、デバッグが終了したシ
ステムに対して、プログラム修正あるいは遷移の変更が
生じた場合に、変更に係わる部分のみクリアされた進捗
状況一覧表を出力し、その後、テストにより新たに進捗
情報が反映される方法について詳細に説明する。
【0038】始めに、図7から図11を用いて、プログ
ラムの修正あるいは遷移の変更に係わる進捗情報をクリ
アする方法について説明する。
【0039】図7は、図3のプログラム遷移テーブル(3
01)において、プログラムの遷移を変更したプログラム
遷移テーブル(701)である。本例では、「ルート1」の
プログラム遷移において、プログラム「ProgB」を
プログラム「ProgZ」に置換し、「ProgA→P
rogB→ProgC」から、「ProgA→Prog
Z→ProgC」に変更を行ったことを意味する。
【0040】図8は、図4のロードモジュールファイル
(401)に、プログラム遷移の変更に伴い、ロードモジュ
ールファイルが変更(更新)されたものである。本例で
は、プログラム「ProgB」をプログラム「Prog
Z」に置換したことに伴い、プログラム「ProgA」
に修正が生じ、修正後、新たにプログラム「Prog
A」のロードモジュールを生成したことにより、ロード
モジュールの生成日(802)が「1995年1月22
日」、生成時刻(803)が「17時30分」に変更し
たことを意味する。さらに、新たにプログラム名称「P
rogZ」のロードモジュールが追加され、そのロード
モジュールの生成日(804)が「1995年1月22
日」、生成時刻(805)が「17時34分」であることを
意味する。
【0041】図9は、デバッグ終了時のプログラム実行
ジャーナルファイル(901)の例である。本例では、プロ
グラム名称「ProgA」とプログラム名称「Prog
B」の実行ジャーナルを示している。
【0042】図10は、プログラムの修正および遷移情
報の変更に係わる部分のみクリアされたプログラム実行
ジャーナルファイル(1001)の例である。本例では、プロ
グラム名称「ProgA」、プログラム名称「Prog
Z」の実行ジャーナルファイルが、クリアされているこ
とを意味している。
【0043】図11は、変更に係わる部分のみクリアさ
れた進捗状況一覧表(1101)の例である。本例では、プロ
グラム名称「ProgA」、プログラム名称「Prog
Z」の進捗情報が、クリアされていることを意味してい
る。
【0044】それでは、図7で示すプログラム遷移テー
ブル(701)と、図8で示すロードモジュールファイル(80
1)と、図9で示すプログラム実行ジャーナルファイル(9
01)から、図10に示すプログラム実行ジャーナルファ
イル(1001)の初期化及び、図11に示す進捗状況一覧表
(1101)を出力する方法を説明する。
【0045】まず、前述の第1の実施例のように、(20
7)の機能を用いて、プログラム遷移テーブル(701)とプ
ログラム実行ジャーナルファイル(901)から順次プログ
ラム情報を参照する。プログラム遷移テーブル(701)の
1番目のプログラムエントリ(703)を参照し、プログラ
ム名称が「ProgA」であることを認識する。次に、
同じルート位置およびレベル位置での、プログラム遷移
テーブルのルート名称(702)およびプログラム名称(703)
と、プログラム実行ジャーナルファイルのルート名称(9
02)およびプログラム名称(903)を比較する。その結果、
双方ともルート名称とプログラム名称が一致するので、
遷移情報に変更がないと認識する。次に、(208)の機能
にて、このプログラム名称「ProgA」をキーとし
て、ロードモジュールファイル(801)を検索し、そのロ
ードモジュール生成日付(802)および生成時刻(803)と、
プログラム実行ジャーナルファイル(901)の起動日付(90
5)および起動時刻(906)を比較する。ここで、ロードモ
ジュール生成日時の方が起動日時よりも新しいため、プ
ログラムの修正が発生したと認識する。その結果、(20
9)の機能により、進捗状況一覧表(1101)の(1102)には、
プログラム名称「ProgA」が、(1103)と(1104)に
は、スペースが、(1105)には、起動回数「0回」が各々
設定される。尚、(208)の機能により、プログラム実行
ジャーナルファイル(1001)も同様に、プログラム名称(1
003)には、プログラム名称「ProgA」が、起動日付
(1005)と起動時刻(1006)はスペースクリア、起動回数(1
004)には「0回」というように初期値が設定される。
【0046】次に、(207)の機能にて、プログラム遷移
テーブル(701)の2番目のプログラムエントリ(704)を参
照し、プログラム名称が「ProgZ」であることを認
識する。次に、同じルート位置およびレベル位置での、
プログラム遷移テーブル(701)のルート名称(702)および
プログラム名称(704)と、プログラム実行ジャーナルフ
ァイル(901)のルート名称(902)およびプログラム名称(9
07)を比較する。その結果、ルート名称は一致するがプ
ログラム名称は一致しないので、遷移情報に変更があっ
たと認識し、前述のプログラム修正時と同様に、(209)
の機能により、プログラム進捗状況一覧表(1101)の(110
6)には、プログラム名称「ProgZ」が、(1107)と(1
108)には、スペースが、(1109)には、起動回数「0回」
が各々設定される。尚、(208)の機能により、プログラ
ム実行ジャーナルファイル(1001)も同様に、プログラム
名称(1007)は、プログラム名称「ProgZ」に変更、
起動日付(1009)と起動時刻(1010)はスペースクリア、起
動回数(1008)には「0回」というように初期値が設定さ
れる。
【0047】これ以降のプログラムエントリについて
も、変更が認められた時は同様の方法で進捗状況一覧表
のプログラムエントリに値が設定される。尚、変更が認
められなかった時は、第1の実施例の方法で進捗状況一
覧表のプログラムエントリに値が設定される。
【0048】次に、図7、図8、図12および図13を
用いて、プログラムの修正による影響部分のテストを行
い、新たに進捗情報が反映される方法について説明す
る。
【0049】図12は、図11により進捗情報がクリア
された後に、プログラム遷移「ルート1」のテストを行
った場合のプログラム実行ジャーナルファイル(1201)の
例である。本例では、プログラム名称「ProgA」と
プログラム名称「ProgZ」の実行ジャーナルを示し
ている。
【0050】図13は、同様に変更に係わる部分のテス
トを行った後の進捗状況一覧表(1301)の出力例である。
本例では、プログラム名称「ProgA」とプログラム
名称「ProgZ」の起動回数がそれぞれ「1回」とな
っており、テスト実行済みであることを意味している。
【0051】それでは、図7で示すプログラム遷移テー
ブル(701)と、図8で示すロードモジュールファイル(80
1)と、図12で示すプログラム実行ジャーナルファイル
(1201)から、図13に示す進捗状況一覧表(1301)を出力
する方法を説明する。
【0052】まず、前述の第1の実施例のように、(20
7)の機能を用いて、プログラム遷移テーブル(701)とプ
ログラム実行ジャーナルファイル(1201)から順次プログ
ラム情報を参照する。
【0053】プログラム遷移テーブル(701)の1番目の
プログラムエントリ(703)を参照し、プログラム名称が
「ProgA」であることを認識する。次に、同じルー
ト位置およびレベル位置での、プログラム遷移テーブル
(701)のルート名称(702)およびプログラム名称(703)
と、プログラム実行ジャーナルファイル(1201)のルート
名称(1202)およびプログラム名称(1203)を比較する。そ
の結果、双方ともルート名称とプログラム名称が一致す
るので、遷移情報に変更がないと認識できる。次に、(2
08)の機能により、このプログラム名称「ProgA」
をキーとして、ロードモジュールファイル(801)を検索
し、そのロードモジュール生成日付(802)および生成時
刻(803)と、プログラム実行ジャーナルファイル(1201)
の起動日付(1205)および起動時刻(1206)を比較する。そ
の結果、ロードモジュール生成日時の方が起動日時より
も古いため、テストを実行したと認識し、(209)の機能
により、進捗状況一覧表(1301)の(1302)には、プログラ
ム名称「ProgA」が、(1303)には、プログラム実行
ジャーナルファイル(1201)の起動日付(1205)「1995
年1月23日」が、(1304)には、同ファイルの起動時刻
(1206)「10時24分」が、(1305)には、同ファイルの
起動回数(1204)「1回」が各々設定される。
【0054】次に、(207)の機能を用いて、プログラム
遷移テーブル(701)の2番目のプログラムエントリ(704)
を参照し、プログラム名称が「ProgZ」であること
を認識する。次に、同じルート位置およびレベル位置で
の、プログラム遷移テーブルのルート名称(702)および
プログラム名称(704)と、プログラム実行ジャーナルフ
ァイル(1201)のルート名称(1202)およびプログラム名称
(1207)を比較する。その結果、双方ともルート名称とプ
ログラム名称が一致するので、遷移情報に変更がないと
認識できる。次に、(208)の機能により、このプログラ
ム名称「ProgZ」をキーとして、ロードモジュール
ファイル(801)を検索し、そのロードモジュール生成日
付(804)および生成時刻(805)と、プログラム実行ジャー
ナルファイル(1201)の起動日付(1209)および起動時刻(1
210)を比較する。その結果、ロードモジュール生成日時
の方が起動日時よりも古いため、テストを実行したと認
識し、(209)の機能により、進捗状況一覧表(1301)の(13
06)には、プログラム名称「ProgZ」が、(1307)に
は、プログラム実行ジャーナルファイル(1201)の起動日
付(1209)「1995年1月23日」が、(1308)には、同
ファイルの起動時刻(1210)「10時30分」が、(1309)
には、同ファイルの起動回数(1208)「1回」が各々設定
される。
【0055】これ以降のプログラムエントリについて
も、同様の方法で進捗状況一覧表(1301)のプログラムエ
ントリに値が設定される。
【0056】以上、第2の実施例では、デバッグが終了
したシステムに対して、プログラム修正あるいは遷移の
変更が生じた場合に、変更に係わる部分のみクリアされ
た進捗状況一覧表が出力され、一目でテストを行う必要
がある部分の識別ができる。さらに、このクリアされた
部分のみの必要最低限のテストを行うことにより、シス
テム内の全てのプログラムのテストを行ったことが確認
できる。この結果、変更の影響がない部分についてのテ
ストが省略できるため、テストデバッグ作業の効率化を
図ることができる。
【0057】
【発明の効果】本発明は、以上に説明した処理手順を有
するので、以下に記載するような効果を有する。組み合
わせテスト以降のデバッグにおいて、システム全体のプ
ログラム遷移を一括管理し、各プログラム遷移のプログ
ラムごとに、プログラム起動日時とプログラム生成およ
び修正日時と比較することによって、テストの実行状態
を識別し、さらに、これを編集してプログラム遷移全体
について出力することにより、デバッグ作業の進捗状況
を視覚的に把握することができ、テストの漏れおよび重
複を防ぎ、テストデバッグの効率化と品質の向上を図る
ことができる。
【図面の簡単な説明】
【図1】計算機の機器構成図である。
【図2】実施例を実現するためのシステム構成図であ
る。
【図3】プログラム遷移テーブル構造の例である。
【図4】プログラム実行ジャーナルファイル構造の例で
ある。
【図5】ロードモジュールファイル構造の例である。
【図6】進捗状況一覧表レイアウト構造の例である。
【図7】修正後のプログラム遷移テーブルの定義例であ
る。
【図8】プログラム修正によるロードモジュール再生成
後のロードモジュールファイルの例である。
【図9】テストデバッグ終了時のプログラム実行ジャー
ナルファイルの例である。
【図10】プログラムの修正あるいは遷移情報の変更が
生じた場合の、変更に係わる部分がクリアされたプログ
ラム実行ジャーナルファイルの例である。
【図11】プログラムの修正あるいは遷移情報の変更が
生じた場合の、変更に係わる部分がクリアされた再テス
ト実行前の進捗状況一覧表の例である。
【図12】再テスト実行後のプログラム実行ジャーナル
ファイルの例である。
【図13】プログラムの修正あるいは遷移情報の変更が
生じた場合の、再テスト実行後の進捗状況一覧表の例で
ある。
【符号の説明】
201…処理手順を示すシステム構成図、 202…組み合
わせテスト実行、203…プログラム遷移テーブルファイ
ル、204…プログラム実行ジャーナルファイル、205…ロ
ードモジュールファイル、206…進捗状況解析機能、 2
07…プログラム遷移変更チェック機能、208…プログラ
ム修正変更チェック機能、209…進捗状況集計およびリ
スト編集・出力機能、210…進捗状況一覧表、 301…
プログラム遷移テーブル構造、302…ルート名称欄、
303…プログラム名称欄、 304…ルート名称、305
…プログラムエントリ、401…ロードモジュールファイ
ル構造、402…プログラム名称欄、 403…ロードモジュ
ール生成日付欄、404…ロードモジュール生成時刻欄、4
05…1番目のプログラムのプログラム名称、406…1番
目のプログラムのロードモジュール生成日付、407…1
番目のプログラムのロードモジュール生成時刻、501…
プログラム実行ジャーナルファイル構造、502…ルート
エントリ、 503…プログラムエントリ、504…プ
ログラム名称欄、 505…プログラム遷移座標位置
欄、506…プログラム起動回数欄、 507…プログラム起
動日付欄、508…プログラム起動時刻欄、 509…1番目
のプログラムのプログラム名称、510…1番目のプログ
ラムのルート位置、511…1番目のプログラムのレベル
位置、512…1番目のプログラムの起動回数、513…1番
目のプログラムの起動日付、514…1番目のプログラム
の起動時刻、601…進捗状況一覧表の構造、 602…ルー
トエントリ欄、603…プログラムエントリ欄、 604…プ
ログラム名称欄、605…プログラム起動日付欄、 606…
プログラム起動時刻欄、607…プログラム実行回数欄、
608…ルート名称、609…1番目のプログラムのプログ
ラム名称、610…1番目のプログラムの起動日付、611…
1番目のプログラムの起動時刻、612…1番目のプログ
ラムの実行回数、701…プログラム遷移テーブル構造、
702…ルート名称、703…1番目のプログラムのプ
ログラム名称、704…2番目のプログラムのプログラム
名称、801…ロードモジュールファイル構造、802…1番
目のプログラムのロードモジュール生成日付、803…1
番目のプログラムのロードモジュール生成時刻、804…
4番目のプログラムのロードモジュール生成日付、805
…4番目のプログラムのロードモジュール生成時刻、90
1…プログラム実行ジャーナルファイル構造、902…1番
目のルートのルート名称、903…1番目のプログラムの
プログラム名称、904…1番目のプログラムの起動回
数、905…1番目のプログラムの起動日付、906…1番目
のプログラムの起動時刻、907…2番目のプログラムの
プログラム名称、908…2番目のプログラムの起動回
数、909…2番目のプログラムの起動日付、910…2番目
のプログラムの起動時刻、1001…プログラム実行ジャー
ナルファイル構造、1002…1番目のルートのルート名
称、1003…1番目のプログラムのプログラム名称、1004
…1番目のプログラムの起動回数、1005…1番目のプロ
グラムの起動日付、1006…1番目のプログラムの起動時
刻、1007…2番目のプログラムのプログラム名称、1008
…2番目のプログラムの起動回数、1009…2番目のプロ
グラムの起動日付、1010…2番目のプログラムの起動時
刻、1101…進捗状況一覧表の構造、1102…1番目のプロ
グラムのプログラム名称、1103…1番目のプログラムの
起動日付、1104…1番目のプログラムの起動時刻、1105
…1番目のプログラムの起動時刻、1106…2番目のプロ
グラムのプログラム名称、1107…2番目のプログラムの
起動日付、1108…2番目のプログラムの起動時刻、1109
…2番目のプログラムの起動回数、1201…プログラム実
行ジャーナルファイル構造、1202…1番目のルートのル
ート名称、1203…1番目のプログラムのプログラム名
称、1204…1番目のプログラムの起動回数、1205…1番
目のプログラムの起動日付、1206…1番目のプログラム
の起動時刻、1207…2番目のプログラムのプログラム名
称、1208…2番目のプログラムの起動回数、1209…2番
目のプログラムの起動日付、1210…2番目のプログラム
の起動時刻、1301…進捗状況一覧表の構造、1302…1番
目のプログラムのプログラム名称、1303…1番目のプロ
グラムの起動日付、1304…1番目のプログラムの起動時
刻、1305…1番目のプログラムの起動時刻、1306…2番
目のプログラムのプログラム名称、1307…2番目のプロ
グラムの起動日付、1308…2番目のプログラムの起動時
刻、1309…2番目のプログラムの起動回数。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】処理を行うために必要な1つあるいは複数
    のプログラムを、処理ごとに、起動する順番に並べたプ
    ログラム遷移テーブルと、プログラムのソースコードあ
    るいは前記テーブルのロードモジュール生成に関する情
    報を記憶するロードモジュールファイルと、プログラム
    の起動情報を記憶する実行ジャーナルファイルと、前記
    テーブルを作成および編集するためのエディタと、前記
    テーブルおよびプログラムのロードモジュールを生成す
    るコンパイラを有し、 ロードモジュールを生成した日時とプログラムの起動日
    時を比較し、プログラム起動日時がロードモジュール生
    成日時以後であった場合には、当該プログラムのみなら
    ずそのプログラムを含むプログラム遷移のすべてのプロ
    グラムに対する起動回数を加算し、 プログラム起動日時がロードモジュール生成日時以前で
    あった場合には、当該プログラムのみならずそのプログ
    ラムを含むプログラム遷移のすべてのプログラムに対す
    る起動回数をゼロとし、その後のテスト実行により新た
    に起動回数を集計し、プログラム遷移テーブルの各プロ
    グラムごとの起動回数、起動日付、起動時刻といったテ
    スト実行情報を出力することを特徴とする、プログラム
    テスト進捗管理方法。
JP7116835A 1995-05-16 1995-05-16 プログラムテスト進捗管理方法 Pending JPH08314758A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7116835A JPH08314758A (ja) 1995-05-16 1995-05-16 プログラムテスト進捗管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7116835A JPH08314758A (ja) 1995-05-16 1995-05-16 プログラムテスト進捗管理方法

Publications (1)

Publication Number Publication Date
JPH08314758A true JPH08314758A (ja) 1996-11-29

Family

ID=14696809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7116835A Pending JPH08314758A (ja) 1995-05-16 1995-05-16 プログラムテスト進捗管理方法

Country Status (1)

Country Link
JP (1) JPH08314758A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7591019B1 (en) 2009-04-01 2009-09-15 Kaspersky Lab, Zao Method and system for optimization of anti-virus scan
JP2011145966A (ja) * 2010-01-18 2011-07-28 Yamato Scale Co Ltd Cpu内蔵装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7591019B1 (en) 2009-04-01 2009-09-15 Kaspersky Lab, Zao Method and system for optimization of anti-virus scan
JP2011145966A (ja) * 2010-01-18 2011-07-28 Yamato Scale Co Ltd Cpu内蔵装置

Similar Documents

Publication Publication Date Title
Shehady et al. A method to automate user interface testing using variable finite state machines
US6941546B2 (en) Method and apparatus for testing a software component using an abstraction matrix
US7134049B2 (en) System and method for sequencing and performing very high speed software downloads concurrent with system testing in an automated production environment
US20090271661A1 (en) Status transition test support device, status transition test support method, and recording medium
EP2133795A1 (en) System and method for testing a software product
US20050204344A1 (en) Program analysis device, analysis method and program of same
US6775827B1 (en) Real-time program audit software
US20010011370A1 (en) Interactive software testing system and method
US20070094189A1 (en) Test case extraction apparatus, program and method for software system
US20160321586A1 (en) Selecting tests for execution on a software product
US5940617A (en) Debugger for controlling execution of software installed in object to be controlled on the basis of state transition model, debugging method thereof, record medium thereof, and method for correlating function specifications and code addresses
US20090327874A1 (en) Validation assisted document conversion design
US20070245327A1 (en) Method and System for Producing Process Flow Models from Source Code
CN114139923A (zh) 任务关联性分析方法、装置及计算机可读存储介质
JP4675639B2 (ja) データ処理システム、アプリケーションプログラムのカスタマイズパラメータを表示する方法およびコンピュータプログラム製品
Anderson Xcode 4 unleashed
JPH08314758A (ja) プログラムテスト進捗管理方法
JP2005338987A (ja) 例外テスト支援プログラム及び例外テスト支援装置
CN115757175A (zh) 一种交易日志文件处理方法及装置
US5448736A (en) Method for generating a program comprised of such a portion of a series of operator-inputted commands as will produce an operator-selected one of a number of results
JPH10149301A (ja) スクリプト作成装置
US20080126293A1 (en) Method and apparatus for dynamically creating scenario based test designs from hierarchical use cases
AU778165B2 (en) Real-time program audit software
JP2012133669A (ja) 保全計画管理システムおよび保全計画管理方法
JP2525393B2 (ja) 論理シミュレ−ションのテストカバレ−ジ方式