JPH02171938A - プログラム開発支援装置 - Google Patents
プログラム開発支援装置Info
- Publication number
- JPH02171938A JPH02171938A JP63328250A JP32825088A JPH02171938A JP H02171938 A JPH02171938 A JP H02171938A JP 63328250 A JP63328250 A JP 63328250A JP 32825088 A JP32825088 A JP 32825088A JP H02171938 A JPH02171938 A JP H02171938A
- Authority
- JP
- Japan
- Prior art keywords
- function
- program
- source code
- symbol
- tree
- 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
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明はコンピュータのプログラムを設計、作成し、か
つそのプログラムが仕様通り動作するかのテストを行う
作業を支援するプログラム開発支援装置に関するもので
ある。
つそのプログラムが仕様通り動作するかのテストを行う
作業を支援するプログラム開発支援装置に関するもので
ある。
従来の技術
]ンビーータのプログラムの開発はまず仕様を決め、そ
の仕様に合うように設計して作成し、仕様通りに動くこ
とを確認して完成する。プログラムの開発はこれらのす
べての段階において誤りがなく、漏れがなく、かつ効率
的に行うことが重要である。
の仕様に合うように設計して作成し、仕様通りに動くこ
とを確認して完成する。プログラムの開発はこれらのす
べての段階において誤りがなく、漏れがなく、かつ効率
的に行うことが重要である。
従来、このようなコンピュータのプログラムの設計、作
成、テストの中の一つあるいは二つの段階を支援する装
置はあったがすべてを作業の流れにそって効率良く支援
する装置はなかった。
成、テストの中の一つあるいは二つの段階を支援する装
置はあったがすべてを作業の流れにそって効率良く支援
する装置はなかった。
発明が解決しようとする課題
従来ある装置はプログラムの設計、作成、テストの作業
を一貫して支援するものはなく、各段階間の移行は手作
業に頼り、効率的でなくまた信頼性も得にくかった。
を一貫して支援するものはなく、各段階間の移行は手作
業に頼り、効率的でなくまた信頼性も得にくかった。
本発明は、プログラムの設計、作成、テストの作業を一
貫して支援し、相互の段階間で必要なデ−タの流れを機
械的に支援し、すべての段階において誤シがなく、漏れ
がなく、かつ効率的に行うことのできるプログラム開発
支援装置を実現するものである。
貫して支援し、相互の段階間で必要なデ−タの流れを機
械的に支援し、すべての段階において誤シがなく、漏れ
がなく、かつ効率的に行うことのできるプログラム開発
支援装置を実現するものである。
課題を解決するための手段
上記目的を達成するために、本発明は設計段階にHCP
のような木構造チャート、作成段階にC言語、テスト段
階にカパレージ(網羅度)測定とパスの通過/未通過の
測定を支援し、相互の段階間で必要なデータの流れを自
動化する。
のような木構造チャート、作成段階にC言語、テスト段
階にカパレージ(網羅度)測定とパスの通過/未通過の
測定を支援し、相互の段階間で必要なデータの流れを自
動化する。
作 用
このように各段階で使用するデータは相互に密接な関係
があるため、本発明のように全段階を一貫して支援する
ことで効率的に作業ができ、かつ信頼性も高くなる。
があるため、本発明のように全段階を一貫して支援する
ことで効率的に作業ができ、かつ信頼性も高くなる。
実施例
以下、図面を参照して本発明の実施例を詳細に説明する
。第1図は本発明によってプログラムの設計、作成、テ
ストの作業をするに当たり、各機能の関係と機能間で引
き渡されるデータとの相互関係を示したものである。
。第1図は本発明によってプログラムの設計、作成、テ
ストの作業をするに当たり、各機能の関係と機能間で引
き渡されるデータとの相互関係を示したものである。
まずプログラムの設計段階ではHCP (Hierar
−chical and Compact descr
iption chart )(7)ような木構造チャ
ートの編集機能11を持ち、必要な情報を入力すること
によってチャート情報12 が作成される。なお、PA
D%YACCnのような他の表現の木構造チャートでも
同様に扱える。
−chical and Compact descr
iption chart )(7)ような木構造チャ
ートの編集機能11を持ち、必要な情報を入力すること
によってチャート情報12 が作成される。なお、PA
D%YACCnのような他の表現の木構造チャートでも
同様に扱える。
プログラムの作成段階ではチャート情報12からソース
コード生成機能13でC言語のようなソースコードを生
成し、プローブ関数理め込み機能14によって前記ソー
スコードの必要な部分にプローブ関数を埋めこみ、ソー
スコード15 ’lE成する。
コード生成機能13でC言語のようなソースコードを生
成し、プローブ関数理め込み機能14によって前記ソー
スコードの必要な部分にプローブ関数を埋めこみ、ソー
スコード15 ’lE成する。
プログラムのテスト段階では実行形式生成機能16 に
おいてソースコード15を用いて実行形式17を作成す
る。作成された実行形式17を用いて、測定機能18は
テストのカパレージ(網羅度)測定と各シンボル毎の実
行の程度およびシンボルの組み合わせに対応するパスの
通過/未通過の程度を測定し、測定結果19に出力する
。
おいてソースコード15を用いて実行形式17を作成す
る。作成された実行形式17を用いて、測定機能18は
テストのカパレージ(網羅度)測定と各シンボル毎の実
行の程度およびシンボルの組み合わせに対応するパスの
通過/未通過の程度を測定し、測定結果19に出力する
。
第2図は設計段階における木構造チャートの編集機能を
説明するための図である。木構造チャートの例としてH
CPで示す。編集機能としてまずシンボル21 をあら
かじめ用意しておき、シンボル21 を組み合わせてプ
ログラムの構造を記述する機能を持つ。このシンボル2
1の右に内容を表す文22を記述する機能を持つ。この
文22の下にステートメント23が記述できる。さらに
シンボル21 に対応するシンボル番号24を自動的に
付加し表示する機能を持つ。これらの機能を木構造チャ
ート編集機能11の中で用いることにより、プログラム
の構造をシンボル21の組み合わせで設計し、文22に
よって内容を決定し、ステートメント23で詳細化する
ことが可能となる。処理をシンボル毎に繰り返すことに
より、第2図のような木構造チャートが出来上がる。
説明するための図である。木構造チャートの例としてH
CPで示す。編集機能としてまずシンボル21 をあら
かじめ用意しておき、シンボル21 を組み合わせてプ
ログラムの構造を記述する機能を持つ。このシンボル2
1の右に内容を表す文22を記述する機能を持つ。この
文22の下にステートメント23が記述できる。さらに
シンボル21 に対応するシンボル番号24を自動的に
付加し表示する機能を持つ。これらの機能を木構造チャ
ート編集機能11の中で用いることにより、プログラム
の構造をシンボル21の組み合わせで設計し、文22に
よって内容を決定し、ステートメント23で詳細化する
ことが可能となる。処理をシンボル毎に繰り返すことに
より、第2図のような木構造チャートが出来上がる。
第3図はソースコード生成機能13とプローブ関数理め
込み機能14の処理内容を説明するものである。コメン
ト文31は文22に対応し、ソースコード生成機能13
にてコメント文としてソースコードに入れられる。実行
文32はソースコードの実行文に対応しシンボルの種類
から生成される“if”とステートメント23の内容か
ら構成される。そのほかに、多分岐のシンボルでは“s
wi −tCh″が生成され、fiD返しでは” fo
r”、”whi−1e”%″dO〜while″がシン
ボルの種類に従って生成される。プローブ関数33はプ
ローブ関数理めこみ機能14によって生成されシンボル
に対応した”分岐”という情報とシンボル番号24に対
応する”1′という情報からなる。“分岐”はi「”や
“swi tch”に対応したデータであり、”繰り返
し“は” for″ ’while″、do〜whil
e”に対応したデータである。その他のプロセスなどは
”非分岐”で表わす。以上のような処理をシンボル番号
1から5まで繰り返すことによシ第3図のソースコード
が出来上がる。
込み機能14の処理内容を説明するものである。コメン
ト文31は文22に対応し、ソースコード生成機能13
にてコメント文としてソースコードに入れられる。実行
文32はソースコードの実行文に対応しシンボルの種類
から生成される“if”とステートメント23の内容か
ら構成される。そのほかに、多分岐のシンボルでは“s
wi −tCh″が生成され、fiD返しでは” fo
r”、”whi−1e”%″dO〜while″がシン
ボルの種類に従って生成される。プローブ関数33はプ
ローブ関数理めこみ機能14によって生成されシンボル
に対応した”分岐”という情報とシンボル番号24に対
応する”1′という情報からなる。“分岐”はi「”や
“swi tch”に対応したデータであり、”繰り返
し“は” for″ ’while″、do〜whil
e”に対応したデータである。その他のプロセスなどは
”非分岐”で表わす。以上のような処理をシンボル番号
1から5まで繰り返すことによシ第3図のソースコード
が出来上がる。
第3図のソースコードすなわち第1図のソースコート1
5から実行形式生成機能16によって実行形式17を生
成する。方法は、C言語ソースコードの一般のコンパイ
ル、リンクによる。
5から実行形式生成機能16によって実行形式17を生
成する。方法は、C言語ソースコードの一般のコンパイ
ル、リンクによる。
測定機能18では実行形式17を用いて第4図に示すよ
うな情報の測定を行う。カパレージ41はテストのカパ
レージ(網羅度)である。この例ではCOカパレージ(
命令実行網羅度)およびC1カパレージ(分岐網羅度)
の二つの定義で測定している。実行結果42はテストに
よって一度も実行のされてない未実行シンボル、全シン
ボル数、−度も通過しなかった未通過分岐および全分岐
数が測定され出力された結果である。実行回数43はシ
ンボル毎に実行した回数を測定したものである。通過回
数44は各分岐毎に通過した回数を測定したものである
。
うな情報の測定を行う。カパレージ41はテストのカパ
レージ(網羅度)である。この例ではCOカパレージ(
命令実行網羅度)およびC1カパレージ(分岐網羅度)
の二つの定義で測定している。実行結果42はテストに
よって一度も実行のされてない未実行シンボル、全シン
ボル数、−度も通過しなかった未通過分岐および全分岐
数が測定され出力された結果である。実行回数43はシ
ンボル毎に実行した回数を測定したものである。通過回
数44は各分岐毎に通過した回数を測定したものである
。
発明の効果
本発明によるプログラム開発支援装置では、第1図に示
すようにプログラムの設計からテストまでの作業を一貫
して支援し、各段階間で必要となるデータは装置の中で
自動的に引き継がれるため、プログラム開発の効率が向
上し、また人手が介在することによる誤りがなくなり信
頼性を向上することができる。
すようにプログラムの設計からテストまでの作業を一貫
して支援し、各段階間で必要となるデータは装置の中で
自動的に引き継がれるため、プログラム開発の効率が向
上し、また人手が介在することによる誤りがなくなり信
頼性を向上することができる。
次に、第2図に示すようにプログラムを木構造チャート
で表現することによりプログラムを視覚的に表現するこ
とができるとともに、この木構造チャートにシンボル番
号を付加することで、テストの条件を簡潔に設定するこ
とができ、テストの効率が向上する。
で表現することによりプログラムを視覚的に表現するこ
とができるとともに、この木構造チャートにシンボル番
号を付加することで、テストの条件を簡潔に設定するこ
とができ、テストの効率が向上する。
第3図に示すように木構造チャートからソースコードを
生成する際に、シンボルの種類とシンボル番号を持つプ
ローブ関数を付加すると、テスト時にこのプローブ関数
を用いてテストのカパレージ測定、シンボル毎の実行の
程度、シンボルの組み合わせに対応するパスの通過/未
通過の程度を測定でき、プログラムの品質向上に役立て
ることができる。結果を第4図のように表わすと、プロ
グラムの品質は視覚的にもきわめてよくわかる。
生成する際に、シンボルの種類とシンボル番号を持つプ
ローブ関数を付加すると、テスト時にこのプローブ関数
を用いてテストのカパレージ測定、シンボル毎の実行の
程度、シンボルの組み合わせに対応するパスの通過/未
通過の程度を測定でき、プログラムの品質向上に役立て
ることができる。結果を第4図のように表わすと、プロ
グラムの品質は視覚的にもきわめてよくわかる。
第1図はプログラムの設計、作成、テストの作業をする
に当たり、本発明による各機能と機能間で引き渡される
データとの相互関係を示したフローを示す図、第2図は
設計段階における木構造チャートの編集機能を説明する
ための図、第3図はソースコード生成機能とプローブ関
数理め込み機能の処理内容を説明する説明図、第4図は
プログラムのテスト時に測定する情報の種類を示す図で
ある。 11・・・木構造チャート編集機能、13・・・ソース
コード生成機能、14・・・プローブ関数理めこみ機能
、18・・測定機能、24・・・シンボル番号、33・
・・プローブ関数、41・・・カパレージ。 第 1 図 代理人の氏名 弁理士 粟 野 重 孝 ほか1名/* コメント 1木/ /ネ コメ〉ト 突イゴ文己 〕 5:*/ /寧 コメシト 莞行立C: 7本 コメ))− 4寧1 5ボ/ /ネ コメ′/)−6*/ 寅デ1丈E。
に当たり、本発明による各機能と機能間で引き渡される
データとの相互関係を示したフローを示す図、第2図は
設計段階における木構造チャートの編集機能を説明する
ための図、第3図はソースコード生成機能とプローブ関
数理め込み機能の処理内容を説明する説明図、第4図は
プログラムのテスト時に測定する情報の種類を示す図で
ある。 11・・・木構造チャート編集機能、13・・・ソース
コード生成機能、14・・・プローブ関数理めこみ機能
、18・・測定機能、24・・・シンボル番号、33・
・・プローブ関数、41・・・カパレージ。 第 1 図 代理人の氏名 弁理士 粟 野 重 孝 ほか1名/* コメント 1木/ /ネ コメ〉ト 突イゴ文己 〕 5:*/ /寧 コメシト 莞行立C: 7本 コメ))− 4寧1 5ボ/ /ネ コメ′/)−6*/ 寅デ1丈E。
Claims (1)
- プログラムの処理手順を木構造チャートで入力し、かつ
木構造チャートの各シンボルにシンボル番号をつけて表
現する手段と、前記木構造チャートから対応するソース
コードを生成する手段と、シンボルの意味と前記シンボ
ル番号を内部のデータに持つプローブ関数を前記ソース
コード内に埋め込む手段と、前記ソースコードからプロ
グラムの実行形式を作る手段と、前記実行形式を用いて
テストのカパレージ測定と各シンボル毎の実行の程度お
よびシンボル間のパスの通過/未通過の程度を測定し出
力する手段を有することを特徴とするプログラム開発支
援装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63328250A JPH02171938A (ja) | 1988-12-26 | 1988-12-26 | プログラム開発支援装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63328250A JPH02171938A (ja) | 1988-12-26 | 1988-12-26 | プログラム開発支援装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02171938A true JPH02171938A (ja) | 1990-07-03 |
Family
ID=18208114
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63328250A Pending JPH02171938A (ja) | 1988-12-26 | 1988-12-26 | プログラム開発支援装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02171938A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0484328A (ja) * | 1990-07-27 | 1992-03-17 | Hitachi Ltd | プログラム作成装置 |
| JPH0484327A (ja) * | 1990-07-27 | 1992-03-17 | Hitachi Ltd | プラント制御システム |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6261130A (ja) * | 1985-09-11 | 1987-03-17 | Fujitsu Ltd | テストカバレツジ自動図示処理方式 |
-
1988
- 1988-12-26 JP JP63328250A patent/JPH02171938A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6261130A (ja) * | 1985-09-11 | 1987-03-17 | Fujitsu Ltd | テストカバレツジ自動図示処理方式 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0484328A (ja) * | 1990-07-27 | 1992-03-17 | Hitachi Ltd | プログラム作成装置 |
| JPH0484327A (ja) * | 1990-07-27 | 1992-03-17 | Hitachi Ltd | プラント制御システム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH09502034A (ja) | より少ない再コンパイル及び再リンケージ処理を可能にする目標プロセスのオブジェクト・コードの別形式を導入することにより、誤り位置とシステムへの新たな要求に起因する修正位置との自動的な識別を可能にする、コンピュータ・ソフトウェア・プロセスにおける不確実性最小化方法 | |
| Rask et al. | Visual studio code vdm support | |
| Sonwane et al. | Bugpilot: Complex bug generation for efficient learning of swe skills | |
| JP2009217664A (ja) | 自動テスト実行システム | |
| JPH02171938A (ja) | プログラム開発支援装置 | |
| JPH0766342B2 (ja) | プログラムテスト装置 | |
| JP2004287869A (ja) | プログラム実行監視装置および方法 | |
| JP3657097B2 (ja) | テストプログラム生成システム | |
| JPH01177165A (ja) | 配列の定義/引用関係検査方式 | |
| JP2004192139A (ja) | デバッグ装置、デバッグ方法および記録媒体 | |
| JPS6261130A (ja) | テストカバレツジ自動図示処理方式 | |
| Almeida et al. | Sound Test Case Generation for Concurrent Mobile Features | |
| Knapen | Type checker for a language with a substructural type system using scope graphs | |
| JPH11154093A (ja) | プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体 | |
| JPS6365542A (ja) | デバツグ方式 | |
| Ge | Improving tool support for software developers through refactoring detection | |
| JPH0954709A (ja) | デバッグ情報表示方法及び表示構造 | |
| JPH07160536A (ja) | 対話型システムのプログラムテスト支援装置 | |
| JP2001043110A (ja) | プログラムのデバッグ方法 | |
| JPH01261737A (ja) | 言語プロセッサの検査自動管理方式 | |
| JPS60167042A (ja) | プログラム編集装置 | |
| CN121543522A (zh) | 测试向量文件生成方法、装置、电子设备、芯片及介质 | |
| JPH03144832A (ja) | プリコンパイラ言語プログラムのシンボリックデバッグ装置 | |
| JPH03189737A (ja) | プログラム開発装置 | |
| JPH09251400A (ja) | プログラムのカバレージトレース方法 |