Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4501978B2 - Data processing apparatus, system, program, and method - Google Patents
[go: Go Back, main page]

JP4501978B2 - Data processing apparatus, system, program, and method - Google Patents

Data processing apparatus, system, program, and method Download PDF

Info

Publication number
JP4501978B2
JP4501978B2 JP2007240710A JP2007240710A JP4501978B2 JP 4501978 B2 JP4501978 B2 JP 4501978B2 JP 2007240710 A JP2007240710 A JP 2007240710A JP 2007240710 A JP2007240710 A JP 2007240710A JP 4501978 B2 JP4501978 B2 JP 4501978B2
Authority
JP
Japan
Prior art keywords
failure
conditional expression
trace
instruction
correction
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.)
Expired - Fee Related
Application number
JP2007240710A
Other languages
Japanese (ja)
Other versions
JP2009070322A (en
Inventor
健次郎 池田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2007240710A priority Critical patent/JP4501978B2/en
Publication of JP2009070322A publication Critical patent/JP2009070322A/en
Application granted granted Critical
Publication of JP4501978B2 publication Critical patent/JP4501978B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

本発明はデータ処理装置、システム、プログラム、及び、方法に関し、特に、動的プログラム検証におけるデータ処理装置、システム、プログラム、及び、方法に関する。   The present invention relates to a data processing apparatus, system, program, and method, and more particularly, to a data processing apparatus, system, program, and method in dynamic program verification.

動的プログラム検証とは、対象となるプログラムに入力値を与えプログラムを実行させて検証を行うテストや、模擬的に同等の処理を行い検証を行うシミュレーション等の技術を用いたプログラムの検証である。動的プログラム検証を行う場合、検証対象となるプログラムに与える入力値の組をあらかじめ作成するか、入力値を自動的に生成するためのルール(制約条件)をあらかじめ用意する必要がある。   Dynamic program verification is verification of a program using a technique such as a test for performing verification by giving an input value to a target program and executing the program, or a simulation for performing verification by performing a similar equivalent process. . When performing dynamic program verification, it is necessary to create in advance a set of input values to be given to a program to be verified, or to prepare rules (constraints) for automatically generating input values.

テストにおける入力値の組(テストケース)を作成する技術としては、例えば同値分割(非特許文献1の52ページ)がある。この技術は、入力値に対する制約条件からプログラムへの適切な入力をあらわす有効同値クラスと不適切な入力をあらわす無効同値クラスとを識別し、必要なテストケースの全数が最小となるようにテストケースを設計する技術である。ところが、実際には入力値に対する制約条件が十分に特定できない場合がある。そして、制約条件が十分に特定できない状態で動的プログラム検証を行うと、検証対象プログラムに内在するバグだけでなく、実システムでは起こり得ない不適切な入力値の組が原因で障害を検出する(テスト・検証が失敗する)ことがある。   As a technique for creating a set of input values (test case) in a test, for example, there is an equivalence division (page 52 of Non-Patent Document 1). This technology distinguishes between valid equivalence classes that represent the appropriate input to the program from the constraints on the input values and invalid equivalence classes that represent the improper input, so that the total number of test cases required is minimized. Is a technology to design. However, in practice, there are cases where the constraint condition for the input value cannot be specified sufficiently. When dynamic program verification is performed in a state where the constraint conditions cannot be specified sufficiently, a failure is detected not only due to a bug inherent in the verification target program but also due to an inappropriate set of input values that cannot occur in the actual system. (Test / verification may fail).

動的プログラム検証で障害を検出した場合には、以下の手順で対処する必要がある。まず、この障害を検出した際の実行トレースを解析し、障害を発生させるための入力値に対する条件(入力値の値域や、他の入力値との大小関係)を特定する。そして、その条件を用いて、検証対象プログラムに内在するバグが原因でテスト・検証が失敗したのか、入力値の組が不適切だったために失敗したのかを判定する。そして、前者の場合にはバグを見つけ出して修正し、後者の場合には入力値に対する正しい制約条件を導き出して同じ障害が発生しないようにする。   When a failure is detected by dynamic program verification, it is necessary to deal with the following procedure. First, the execution trace when this failure is detected is analyzed, and the conditions for the input value (the range of the input value and the magnitude relationship with other input values) for generating the failure are specified. Then, using the condition, it is determined whether the test / verification has failed due to a bug inherent in the program to be verified, or whether the input value pair has failed, or has failed. In the former case, a bug is found and corrected, and in the latter case, a correct constraint condition for the input value is derived so that the same failure does not occur.

障害が発生する原因を調査するための技術として、例えば、実行トレースの生成方法を含むプログラムデバッグ方法が特許文献1に記載されている。この関連する方法では、ディスプレイ装置の画面上にソースプログラムと対応付けて表示された実行トレースを参照しながらデバッグ作業を行う。この方法により障害を発生させるための入力値に対する条件を特定した場合、その条件は特定の入力値の1つ以上の組みとして示されることになる。   As a technique for investigating the cause of the failure, for example, a program debugging method including an execution trace generation method is described in Patent Document 1. In this related method, debugging is performed while referring to an execution trace displayed in association with a source program on the screen of the display device. When a condition for an input value for causing a failure is specified by this method, the condition is indicated as one or more sets of specific input values.

特開平05−046434号公報JP 05-064434 A Glenford J. Myers著 長尾 真監訳「ソフトウェア・テストの技法 第2版」近代科学社、2006年7月31日、pp.52−59Translated by Shin Nagao, Glenford J. Myers, “Software Test Techniques, Second Edition”, Modern Science, July 31, 2006, pp. 52-59

特許文献1、非特許文献1では、動的プログラム検証を行う場合、検出された障害を発生させるための入力値に対する条件を示す際、発生条件を特定の入力値の1つ以上の組として示すだけであった。このため、他の入力値について人手により検証しなければならないという問題があった。   In Patent Document 1 and Non-Patent Document 1, when dynamic program verification is performed, when a condition for an input value for generating a detected fault is indicated, the generation condition is indicated as a set of one or more specific input values. It was only. For this reason, there was a problem that other input values had to be verified manually.

例えば、図2に示すC言語のプログラムに対して動的プログラム検証を行い、図8に示す入力値の場合に、16行目の代入命令“a[pos]=val”で配列境界(下界)違反の障害が検出される。この場合、図3に示すこの障害を検出した際の実行トレースを元にして障害を発生させるための入力値に対する条件を抽出すると、offset=4,idx1=3,idx2=2と言う特定の入力値を組み合わせた条件が障害発生原因として示される。   For example, a dynamic program verification is performed on the C language program shown in FIG. 2, and in the case of the input value shown in FIG. A violation failure is detected. In this case, when the condition for the input value for generating the failure is extracted based on the execution trace at the time of detecting the failure shown in FIG. 3, a specific input of offset = 4, idx1 = 3, idx2 = 2 The condition that combines the values is indicated as the cause of the failure.

ここでidx2=2が入力値として不適切な値であった場合、検証で用いる入力値の組からidx2の値が不適切なためにこの障害を検出した際の実行トレースと同じ実行トレースをたどるものを取り除く必要がある。しかし、idx2=2という情報だけからは、idx2=2以外のどのような条件(例えばidx2>0あるいはidx2<4)で、もしくは他の入力値との大小関係により障害が発生するのか判断がつかない。このため、人手により不適切なidx2の値を定義する条件式を導出する必要があり、手間がかかっていた。   If idx2 = 2 is an inappropriate value as an input value, the same execution trace as the execution trace when this failure is detected is detected because the value of idx2 is inappropriate from the set of input values used for verification. It is necessary to remove things. However, from the information of idx2 = 2 alone, it is possible to determine under what conditions other than idx2 = 2 (for example, idx2> 0 or idx2 <4) or whether the failure occurs due to the magnitude relationship with other input values. Absent. For this reason, it is necessary to derive a conditional expression for defining an inappropriate value of idx2 manually, which is troublesome.

本発明の目的は、上述した課題を解決するデータ処理装置、システム、プログラム、及び、方法を提供することにある。   The objective of this invention is providing the data processor, system, program, and method which solve the subject mentioned above.

本発明のデータ処理装置は、動的プログラム検証において、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する実行トレース修正手段と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する障害発生条件抽出手段とを有する。   In the dynamic program verification, the data processing apparatus of the present invention generates a failure determination conditional expression from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule, and the failure occurrence instruction is determined as the failure determination Execution trace correction means for generating a correction trace replaced with a conditional expression, and the conditional expression of the branch instruction in the correction trace or the failure determination conditional expression are rewritten based on the substitution expression in the correction trace, resulting in a failure. Fault occurrence condition extracting means for extracting as a fault occurrence conditional expression defining a range of input values.

本発明のシステムは、動的プログラム検証において、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する実行トレース修正手段と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する障害発生条件抽出手段とを有する。   In the dynamic program verification, the system of the present invention generates a failure determination conditional expression from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule. An execution trace correcting means for generating a corrected trace replaced in step (b), and rewriting the conditional expression of the branch instruction in the corrected trace to the failure determination conditional expression based on the assignment expression in the corrected trace, and an input value causing a failure Failure occurrence condition extracting means for extracting as a failure occurrence condition expression defining a range of

本発明のプログラムは、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する処理と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する処理とをコンピュータに実行させる。   The program of the present invention generates a failure determination conditional expression from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule, and a modified trace in which the failure occurrence instruction is replaced with the failure determination conditional expression. A failure occurrence conditional expression that defines a range of input values that cause a failure by rewriting the processing to be generated and the conditional expression of the branch instruction in the correction trace to the failure determination conditional expression based on the substitution expression in the correction trace The computer executes the process of extracting as

本発明の方法は、コンピュータが、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成し、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する。   According to the method of the present invention, the computer generates a failure determination conditional expression from the failure occurrence instruction on the execution trace at the time of failure detection, the failure content, and the failure determination rule, and replaces the failure occurrence instruction with the failure determination conditional expression. A fault occurrence condition that generates a correction trace, rewrites the conditional expression of the branch instruction in the correction trace to the fault determination conditional expression based on the assignment expression in the correction trace, and defines a range of the input value that causes the fault Extract as an expression.

本発明によれば、障害を発生させる入力値の条件を、値域を定義した条件式として得ることが可能になる。   According to the present invention, it is possible to obtain a condition of an input value that causes a failure as a conditional expression defining a range.

次に、本発明について図面を参照して詳細に説明する。図1は本発明の第1の実施の形態の構成を示すブロック図である。本発明の第1の実施の形態は、中央処理装置111と、出力装置112と、二次記憶装置113とから構成される。   Next, the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the first embodiment of the present invention. The first embodiment of the present invention includes a central processing unit 111, an output device 112, and a secondary storage device 113.

中央処理装置111は、実行トレース修正手段121と、障害発生条件抽出手段122とから構成される。   The central processing unit 111 includes an execution trace correcting unit 121 and a failure occurrence condition extracting unit 122.

二次記憶装置113は、プログラム記憶部131と、実行トレース記憶部132と、障害内容記憶部133と、障害判定ルール記憶部134とから構成される。   The secondary storage device 113 includes a program storage unit 131, an execution trace storage unit 132, a failure content storage unit 133, and a failure determination rule storage unit 134.

プログラム記憶部131は、図示しない手段によって格納された、図2に示す構造の検証対象プログラム141を記憶している。実行トレース記憶部132は、図示しない手段によって格納された、検証で実行した命令とこの命令を実行した時点で参照される変数値の組を時系列に並べた、図3に示す構造の実行トレース142を記憶している。障害内容記憶部133は、図示しない手段によって格納された、検証で検出した、図4に示す構造の障害内容143(例えば、『a[pos]における配列境界(下界)違反』など)を記憶している。障害判定ルール記憶部134は、図示しない手段によって格納された、図5に示す構造の障害判定ルール144(例えば、“配列の添え字<0”など)を記憶している。障害判定ルール144は、障害内容記憶部133で記憶している障害内容143に対応する障害発生を判定する条件式を導出するためのルールである。   The program storage unit 131 stores a verification target program 141 having a structure shown in FIG. The execution trace storage unit 132 stores an execution trace having the structure shown in FIG. 3 in which a set of instructions executed by verification and variable values referred to at the time of execution of these instructions are stored in a time series. 142 is stored. The failure content storage unit 133 stores the failure content 143 of the structure shown in FIG. 4 (for example, “arrangement boundary (lower bound) violation in a [pos]”) detected by verification and stored by means not shown. ing. The failure determination rule storage unit 134 stores a failure determination rule 144 having a structure shown in FIG. 5 (for example, “array subscript <0”, etc.) stored by means not shown. The failure determination rule 144 is a rule for deriving a conditional expression for determining the occurrence of a failure corresponding to the failure content 143 stored in the failure content storage unit 133.

実行トレース修正手段121は、障害を検出した後に、プログラム記憶部131から検証対象プログラム141を読み取る。そして、実行トレース修正手段121は、障害を検出した後に、実行トレース記憶部132から実行トレース142を読み取る。そして、実行トレース修正手段121は、障害を検出した後に、障害内容記憶部133から障害内容143を読み取る。そして、実行トレース修正手段121は、障害を検出した後に、障害判定ルール記憶部134から障害判定ルール144を読み取る。   The execution trace correcting unit 121 reads the verification target program 141 from the program storage unit 131 after detecting the failure. Then, the execution trace correcting means 121 reads the execution trace 142 from the execution trace storage unit 132 after detecting the failure. Then, the execution trace correcting unit 121 reads the failure content 143 from the failure content storage unit 133 after detecting the failure. Then, the execution trace correcting unit 121 reads the failure determination rule 144 from the failure determination rule storage unit 134 after detecting the failure.

そして、実行トレース修正手段121は、障害内容143と障害判定ルール144から障害判定条件式を導出する。そして、実行トレース修正手段121は、実行トレース142の最後にある障害発生命令を導出した障害判定条件式で置換した、図6に示す構造の修正トレース152を生成する。   Then, the execution trace correcting unit 121 derives a failure determination conditional expression from the failure content 143 and the failure determination rule 144. Then, the execution trace correcting means 121 generates a correction trace 152 having the structure shown in FIG. 6 in which the fault determination conditional expression derived from the fault occurrence instruction at the end of the execution trace 142 is replaced.

障害発生条件抽出手段122は、実行トレース修正手段121から渡される修正トレース152中の分岐命令の条件式乃至障害判定条件式を、修正トレース152中の代入式にもとづいて書き換える。そして、障害発生条件抽出手段122は、書き換えた分岐命令の条件式乃至障害判定条件式を、入力値の値域を定義した条件式として抽出する。そして、障害発生条件抽出手段122は、抽出した条件式群を障害発生条件として出力装置112に出力する。   The failure occurrence condition extraction unit 122 rewrites the conditional expression or the failure determination conditional expression of the branch instruction in the correction trace 152 delivered from the execution trace correction unit 121 based on the substitution expression in the correction trace 152. Then, the failure occurrence condition extracting unit 122 extracts the rewritten branch instruction conditional expression or failure determination conditional expression as a conditional expression defining a range of input values. Then, the failure occurrence condition extraction unit 122 outputs the extracted conditional expression group to the output device 112 as a failure occurrence condition.

次に、本発明の実施の形態の動作について図面を参照して説明する。図7は、中央処理装置111が行う障害発生条件の抽出動作を示すフローチャートである。   Next, the operation of the embodiment of the present invention will be described with reference to the drawings. FIG. 7 is a flowchart showing an operation of extracting a failure occurrence condition performed by the central processing unit 111.

中央処理装置111において、実行トレース修正手段121が、二次記憶装置113の実行トレース記憶部132から障害「hz1」を検出した際の実行トレース142(図3の例を参照)を取得する。さらに、実行トレース修正手段121が、障害内容記憶部133から障害内容143を取得する。さらに、実行トレース修正手段121が、障害判定ルール記憶部134から障害内容143に対応する障害判定ルール144「rule」を取得する(ステップST1)。   In the central processing unit 111, the execution trace correction unit 121 acquires the execution trace 142 (see the example of FIG. 3) when the failure “hz1” is detected from the execution trace storage unit 132 of the secondary storage device 113. Further, the execution trace correcting unit 121 acquires the failure content 143 from the failure content storage unit 133. Further, the execution trace correcting unit 121 acquires the failure determination rule 144 “rule” corresponding to the failure content 143 from the failure determination rule storage unit 134 (step ST1).

実行トレース修正手段121が、障害内容143と対応する障害判定ルール144「rule」から障害判定条件式「ce」を導出する(ステップST2)。そして、実行トレース修正手段121が、実行トレース142の最後にある障害発生命令を障害判定条件式「ce」で置換した修正トレース152を作成する(ステップST3)。   The execution trace correcting unit 121 derives the failure determination conditional expression “ce” from the failure determination rule 144 “rule” corresponding to the failure content 143 (step ST2). Then, the execution trace correction means 121 creates a correction trace 152 in which the fault occurrence instruction at the end of the execution trace 142 is replaced with the fault determination conditional expression “ce” (step ST3).

障害発生条件抽出手段122が、障害「hz1」を発生させるための条件式の集合「C」(以下、障害発生条件式群「C」と表す)を空集合とする(ステップST4)。   The failure occurrence condition extraction unit 122 sets a set of conditional expressions “C” (hereinafter referred to as failure occurrence conditional expression group “C”) for generating the failure “hz1” as an empty set (step ST4).

そして、障害発生条件抽出手段122が、修正トレース152中の全ての分岐命令もしくは障害判定条件式に対して、以下に説明するステップST6からステップST14の処理を行う(ステップST5、ステップST15)。   Then, the failure occurrence condition extraction unit 122 performs the processing from step ST6 to step ST14 described below for all branch instructions or failure determination conditional expressions in the correction trace 152 (step ST5, step ST15).

障害発生条件抽出手段122が、分岐命令もしくは障害判定条件式の実行時点を実行時点「pb」とする(ステップST6)。そして、実行時点「pb」の分岐命令の条件式もしくは障害判定条件式を分岐条件「cb」とする。この時、修正トレース152の実行時点「pb」において参照される変数値により分岐条件「cb」が不成立になる場合には、分岐条件「cb」の否定の条件式を分岐条件「cb」とする(ステップST7)。   The failure occurrence condition extraction unit 122 sets the execution time of the branch instruction or the failure determination conditional expression as the execution time “pb” (step ST6). Then, the conditional expression or failure judgment conditional expression of the branch instruction at the execution time “pb” is set as the branch condition “cb”. At this time, if the branch condition “cb” is not satisfied due to the variable value referenced at the execution time “pb” of the correction trace 152, the negative conditional expression of the branch condition “cb” is set as the branch condition “cb”. (Step ST7).

続いて、障害発生条件抽出手段122が、実行時点「pb」を起点とし修正トレース152の先頭までの命令に対し、以下に説明するステップST9からステップST11の処理を行う(ステップST8、ステップST12)。   Subsequently, the failure occurrence condition extraction unit 122 performs the processing from step ST9 to step ST11 described below on the instruction from the execution time point “pb” to the beginning of the correction trace 152 (step ST8, step ST12). .

障害発生条件抽出手段122が、その命令をチェックする(ステップST9)。そして、代入命令であった場合(ステップST9でYESの場合)、障害発生条件抽出手段122が、代入式の左辺値である変数が分岐条件「cb」中の項として存在するか確認する(ステップST10)。そして、項として存在する場合(ステップST10でYESの場合)には、障害発生条件抽出手段122が、分岐条件「cb」中の対応する項を代入式の右辺の式で書き換える(ステップST11)。   The failure occurrence condition extraction unit 122 checks the instruction (step ST9). If the instruction is an assignment instruction (YES in step ST9), the failure condition extraction unit 122 checks whether a variable that is the left-side value of the assignment expression exists as a term in the branch condition “cb” (step ST10). If it exists as a term (YES in step ST10), the failure condition extraction means 122 rewrites the corresponding term in the branch condition “cb” with the expression on the right side of the substitution expression (step ST11).

次に、障害発生条件抽出手段122が、項の書換えをおこなった分岐条件「cb」が入力値となる変数を含むか否かをチェックする(ステップST13)。そして、入力値となる変数を含む場合(ステップST13のYESの場合)には、障害発生条件抽出手段122が、分岐条件「cb」を障害発生条件式群「C」に加える(ステップST14)。   Next, the failure occurrence condition extraction unit 122 checks whether or not the branch condition “cb” for which the term has been rewritten includes a variable that becomes an input value (step ST13). Then, when a variable that is an input value is included (YES in step ST13), the failure condition extraction unit 122 adds the branch condition “cb” to the failure condition group “C” (step ST14).

そして、障害発生条件抽出手段122が、出力装置112に対して障害発生条件式群「C」を障害発生条件として出力し(ステップST16)、終了する。   Then, the failure occurrence condition extraction unit 122 outputs the failure occurrence condition expression group “C” as a failure occurrence condition to the output device 112 (step ST16), and the process ends.

次に、図7のフローチャートを参照し、実際のデータを用いて詳細に説明する。具体的な例として、図2に示すC言語のプログラム141に対して図8に示す入力値を与えて検証を実行したとする。そして、その結果、プログラム141の16行目の代入命令『a[pos]=val』で、『配列境界(下界)違反』の障害を検出し、その際の実行トレース142が図3に示すとおりになったとする。   Next, with reference to the flowchart of FIG. 7, it demonstrates in detail using actual data. As a specific example, it is assumed that the verification is executed by giving the input value shown in FIG. 8 to the C language program 141 shown in FIG. As a result, a failure of “arrangement boundary (lower bound) violation” is detected by the assignment instruction “a [pos] = val” on the 16th line of the program 141, and the execution trace 142 at that time is as shown in FIG. Suppose that

実行トレース修正手段121は、二次記憶装置113中の実行トレース記憶部132から、障害を検出した際の実行トレース142を取得する。そして、実行トレース修正手段121は、障害内容記憶部133から障害内容143として『a[pos]での配列境界(下界)違反』を取得する。さらに、実行トレース修正手段121は、障害判定ルール記憶部134から対応する障害判定ルール144「rule」『配列の添え字<0』を取得する(ステップST1)。   The execution trace correcting unit 121 acquires an execution trace 142 when a failure is detected from the execution trace storage unit 132 in the secondary storage device 113. Then, the execution trace correcting unit 121 acquires “arrangement boundary (lower bound) violation at a [pos]” as the failure content 143 from the failure content storage unit 133. Furthermore, the execution trace correcting unit 121 acquires the corresponding failure determination rule 144 “rule” “array suffix <0” from the failure determination rule storage unit 134 (step ST1).

繰返しになるが、16行目の代入命令『a[pos]=val』で検出した障害内容143は、『a[pos]での配列境界(下界)違反』である。そこで、実行トレース修正手段121は、対応する障害判定ルール144「rule」『配列の添え字<0』にもとづき障害判定条件式を導出して障害判定条件式「ce」を『pos<0』とする(ステップST2)。そして、実行トレース修正手段121は、実行トレース142「EX」の最後にある障害発生命令をこの障害判定条件式「ce」で置換して図6に示す修正トレース152を作成する(ステップST3)。   Again, the failure content 143 detected by the substitution instruction “a [pos] = val” on the 16th line is “array boundary (lower bound) violation at a [pos]”. Therefore, the execution trace correcting unit 121 derives a failure determination conditional expression based on the corresponding failure determination rule 144 “rule” “array suffix <0” and sets the failure determination conditional expression “ce” as “pos <0”. (Step ST2). Then, the execution trace correcting unit 121 replaces the failure occurrence instruction at the end of the execution trace 142 “EX” with the failure determination conditional expression “ce” to create the correction trace 152 shown in FIG. 6 (step ST3).

障害発生条件抽出手段122が、障害発生条件式群「C」を空集合『{}』とする(ステップST4)。   The failure occurrence condition extraction unit 122 sets the failure occurrence condition expression group “C” as an empty set “{}” (step ST4).

障害発生条件抽出手段122が、修正トレース152中のすべての分岐命令もしくは障害判定条件式に対してステップST6からステップST14の処理を繰り返し実行する(ステップST5とステップST15で示すループ)。   The failure occurrence condition extraction unit 122 repeatedly executes the processing from step ST6 to step ST14 for all branch instructions or failure determination conditional expressions in the correction trace 152 (loop shown by steps ST5 and ST15).

まず、最初の分岐命令もしくは障害判定条件式は、実行時点『2』の『idx1 < idx2』である。そこで、障害発生条件抽出手段122が、実行時点「pb」を『2』とする(ステップST6)。さらに、修正トレース152上の変数値『idx1=3,idx2=2』を参照すると、元の条件式『idx1 < idx2』は不成立となっている。そこで、障害発生条件抽出手段122が、元の条件式の否定の条件式『idx1 >= idx2』を分岐条件「cb」とする(ステップST7)。   First, the first branch instruction or failure determination conditional expression is “idx1 <idx2” at the execution time point “2”. Therefore, the failure condition extraction unit 122 sets the execution time point “pb” to “2” (step ST6). Further, referring to the variable value “idx1 = 3, idx2 = 2” on the correction trace 152, the original conditional expression “idx1 <idx2” is not satisfied. Therefore, the failure occurrence condition extraction unit 122 sets the negative conditional expression “idx1> = idx2” of the original conditional expression as the branch condition “cb” (step ST7).

そして、障害発生条件抽出手段122が、実行時点「pb」(=2)を起点として修正トレース152の先頭までの命令に対してステップST9からステップST11の処理を行う(ステップST8とステップST12で示すループ)。まず、実行時点「pb」(=2)の命令は代入命令ではないので、障害発生条件抽出手段122は、ステップS10、ステップS11を行わない(ステップST9でNO)。次の実行時点『1』の命令は代入命令である(ステップST9でYES)が、その代入式の左辺値である変数『val』は分岐条件「cb」中の項としては存在しないので、障害発生条件抽出手段122はステップS11を行わない(ステップST10でNO)。また実行時点「pb」(=1)は修正トレース152の先頭なので、障害発生条件抽出手段122はST8からの繰り返しを終了する(ステップST12)。   Then, the failure condition extraction means 122 performs the processing from step ST9 to step ST11 on the instruction from the execution time point “pb” (= 2) to the head of the correction trace 152 (shown in steps ST8 and ST12). loop). First, since the instruction at the execution time point “pb” (= 2) is not an assignment instruction, the failure condition extraction unit 122 does not perform Step S10 and Step S11 (NO in Step ST9). The instruction at the next execution time point “1” is an assignment instruction (YES in step ST9), but the variable “val” that is the left-side value of the assignment expression does not exist as a term in the branch condition “cb”. The generation condition extraction unit 122 does not perform step S11 (NO in step ST10). Since the execution time point “pb” (= 1) is the head of the correction trace 152, the failure occurrence condition extracting unit 122 ends the repetition from ST8 (step ST12).

分岐条件「cb」(=『idx1 >= idx2』)は、入力値となる変数idx1とidx2を含む(ステップST13でYES)。そこで、障害発生条件抽出手段122が、分岐条件「cb」を障害発生条件式群「C」に加え、C={『idx1 >= idx2』}とする(ステップST14)。   The branch condition “cb” (= “idx1> = idx2”) includes variables idx1 and idx2 that are input values (YES in step ST13). Therefore, the failure occurrence condition extracting unit 122 adds the branch condition “cb” to the failure occurrence conditional expression group “C” and sets C = {“idx1> = idx2”} (step ST14).

次に、実行時点『2』の分岐命令の次の分岐命令もしくは障害判定条件式は、実行時点『4’』の『pos<0』であるので、障害発生条件抽出手段122が、実行時点「pb」を『4’』とする(ステップST6)。さらに、障害発生条件抽出手段122が、分岐条件「cb」を『pos < 0』とする(ステップST7)。   Next, since the branch instruction or failure determination conditional expression next to the branch instruction at the execution time “2” is “pos <0” at the execution time “4 ′”, the failure occurrence condition extracting unit 122 executes the execution time “ pb "is set to" 4 '"(step ST6). Further, the failure occurrence condition extraction unit 122 sets the branch condition “cb” to “pos <0” (step ST7).

そして、障害発生条件抽出手段122が、実行時点「pb」(=4’)を起点として修正トレース152の先頭までの命令に対してステップST9からステップST11の処理を行う(ステップST8とステップST12で示すループ)。実行時点「pb」(=4’)の命令は代入命令ではないので、障害発生条件抽出手段122は、ステップS10、ステップS11を行わない(ステップST9でNO)。   Then, the failure occurrence condition extraction unit 122 performs the processing from step ST9 to step ST11 on the instruction from the execution time point “pb” (= 4 ′) to the head of the correction trace 152 (in step ST8 and step ST12). Loop shown). Since the instruction at the execution time point “pb” (= 4 ′) is not an assignment instruction, the failure occurrence condition extraction unit 122 does not perform Step S10 and Step S11 (NO in Step ST9).

次の実行時点『3』の命令は代入命令である(ステップST9でYES)。そして、その代入式『pos = idx2 − offset』の左辺値である変数『pos』が分岐条件「cb」中の項として存在する(ステップST10でYES)。そこで、障害発生条件抽出手段122は、分岐条件「cb」中の項『pos』を代入式の右辺の式『idx2 − offset』で書き換えることにより、分岐条件「cb」を『idx2 − offset < 0』とする(ステップST11)。   The next instruction “3” is an assignment instruction (YES in step ST9). Then, the variable “pos” that is the left-side value of the assignment expression “pos = idx2−offset” exists as a term in the branch condition “cb” (YES in step ST10). Therefore, the failure occurrence condition extraction unit 122 rewrites the term “pos” in the branch condition “cb” with the expression “idx2-offset” on the right side of the assignment expression, thereby changing the branch condition “cb” to “idx2-offset <0”. (Step ST11).

次の実行時点『2』の命令は代入命令ではないので、障害発生条件抽出手段122は、ステップS10、ステップS11を行わない(ステップST9でNO)。   Since the instruction at the next execution time point “2” is not an assignment instruction, the failure occurrence condition extraction unit 122 does not perform Step S10 and Step S11 (NO in Step ST9).

更に、次の実行時点『1』の命令は代入命令である(ステップST9でYES)。しかし、その代入式の左辺値である変数『val』は分岐条件「cb」中の項としては存在しないので、障害発生条件抽出手段122はステップS11を行わない(ステップST10でNO)。また実行時点「pb」(=1)は修正トレース152の先頭なので、障害発生条件抽出手段122はST8からの繰り返しを終了する(ステップST12)。   Further, the instruction at the next execution time “1” is an assignment instruction (YES in step ST9). However, since the variable “val” that is the left-side value of the assignment expression does not exist as a term in the branch condition “cb”, the failure occurrence condition extraction unit 122 does not perform step S11 (NO in step ST10). Since the execution time point “pb” (= 1) is the head of the correction trace 152, the failure occurrence condition extracting unit 122 ends the repetition from ST8 (step ST12).

項の書換えを行った分岐条件「cb」(=『idx2 − offset < 0』)は入力値idx2とoffsetを含む(ステップST13でYES)。そこで、障害発生条件抽出手段122は、この分岐条件「cb」を障害発生条件式群「C」に加え、C={『idx1 >= idx2』,『idx2 − offset < 0』}とする(ステップST14)。   The branch condition “cb” (= “idx2−offset <0”) in which the term has been rewritten includes the input value idx2 and offset (YES in step ST13). Therefore, the failure occurrence condition extraction unit 122 adds the branch condition “cb” to the failure occurrence conditional expression group “C”, and sets C = {“idx1> = idx2”, “idx2−offset <0”} (step) ST14).

修正トレース152にはこれ以上分岐命令もしくは障害判定条件式がないので、ステップST5からの繰り返しを終了する(ステップST15)。   Since there are no more branch instructions or failure determination conditional expressions in the correction trace 152, the repetition from step ST5 is terminated (step ST15).

こうして、障害発生条件抽出手段122は、障害発生条件式群「C」を抽出する。そして、障害発生条件抽出手段122は、出力装置112に対して、C={『idx1 >= idx2』,『idx2 − offset < 0』}を障害発生条件として出力し(ステップST16)、終了する。   Thus, the failure occurrence condition extraction unit 122 extracts the failure occurrence condition expression group “C”. Then, the failure occurrence condition extraction unit 122 outputs C = {“idx1> = idx2”, “idx2−offset <0”} to the output device 112 as a failure occurrence condition (step ST16), and ends.

本発明の第1の実施の形態によれば、障害を発生させる入力値の値域を定義した条件式として誤った条件式を導出することを防止することができる。その理由は、修正トレース中に存在する分岐命令の条件式に対して、修正トレース中にある代入命令にもとづいて項の書換えを行い、入力値に対する条件式を自動的に抽出するためである。   According to the first embodiment of the present invention, it is possible to prevent an erroneous conditional expression from being derived as a conditional expression that defines a range of input values that cause a failure. The reason is that the conditional expression for the input value is automatically extracted by rewriting the term for the conditional expression of the branch instruction existing in the correction trace based on the assignment instruction in the correction trace.

また、本発明の第1の実施の形態によれば、動的プログラム検証で検出された障害に対する調査・分析作業を削減することができる。その理由は、検出されたある障害の原因が不正な入力値であることが判明した場合、入力値の値域あるいは他の入力値との関係を表した条件式の形式としてこの障害を発生させる条件を抽出するからである。こうして、その条件に合致する他の入力値を起因とする障害を同じ原因で検出された障害とみなすことができる。このため、あらためて調査・分析作業を実施する必要がなくなるためである。   Further, according to the first embodiment of the present invention, it is possible to reduce the investigation and analysis work for the failure detected by the dynamic program verification. The reason is that if it is found that the cause of a detected failure is an invalid input value, the condition that causes this failure in the form of a conditional expression that expresses the relationship between the input value range or other input values. It is because it extracts. Thus, a failure caused by another input value that matches the condition can be regarded as a failure detected for the same reason. For this reason, there is no need to conduct another survey / analysis work.

また、本発明の第1の実施の形態によれば、動的プログラム検証における入力値が満たすべき値域や他の入力値との大小関係といった制約条件を洗練する作業を削減することができる。その理由は、抽出された条件中に含まれる1つ以上の不正な入力値を表す条件式に対し、その条件式の否定の条件式をそのまま入力値に対する正しい制約条件とすることができるためである。   Further, according to the first embodiment of the present invention, it is possible to reduce the work of refining constraint conditions such as a value range to be satisfied by an input value in dynamic program verification and a magnitude relationship with other input values. The reason is that for a conditional expression representing one or more illegal input values included in the extracted condition, a negative conditional expression of the conditional expression can be used as a correct constraint condition for the input value as it is. is there.

次に本発明の第2の実施の形態について図面を参照して詳細に説明する。図9は、本発明の第2の実施の形態の構成を示すブロック図である。   Next, a second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 9 is a block diagram showing a configuration of the second exemplary embodiment of the present invention.

本発明の第2の実施の形態のデータ処理装置120は、実行トレース修正手段121と、障害発生条件抽出手段122とから構成される。実行トレース修正手段121と、障害発生条件抽出手段122とは、それぞれ、ハードウェアで実現されても良いし、ソフトウェアで実現されても良いし、ハードウェアとソフトウェアの混在により実現されても良い。   The data processing device 120 according to the second exemplary embodiment of the present invention includes an execution trace correcting unit 121 and a failure occurrence condition extracting unit 122. The execution trace correction unit 121 and the failure occurrence condition extraction unit 122 may be realized by hardware, may be realized by software, or may be realized by a mixture of hardware and software.

実行トレース修正手段121は、図示しない手段から、検証対象のプログラム141と、障害検出時の実行トレース142と、検出した障害内容143と、障害判定ルール144を取得する。この図示しない手段は、例えば、操作者が図示しない入力装置から入力する手段であっても良い。そして、実行トレース修正手段121は、取得した障害内容143と障害判定ルール144から障害判定条件式を生成し、取得した実行トレース142上の障害発生命令を、生成した障害判定条件式で置換した修正トレース152を生成する。障害発生条件抽出手段122は、修正トレース152中の分岐命令の条件式乃至前記障害判定条件式を、同修正トレース152中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する。   The execution trace correction means 121 acquires the program 141 to be verified, the execution trace 142 at the time of failure detection, the detected failure content 143, and the failure determination rule 144 from means not shown. The means (not shown) may be means for an operator to input from an input device (not shown), for example. Then, the execution trace correcting unit 121 generates a failure determination conditional expression from the acquired failure content 143 and the failure determination rule 144, and the replacement is performed by replacing the failure occurrence instruction on the acquired execution trace 142 with the generated failure determination conditional expression. A trace 152 is generated. The failure occurrence condition extraction unit 122 rewrites the conditional expression of the branch instruction in the correction trace 152 to the failure determination conditional expression based on the substitution expression in the correction trace 152, and defines the range of the input value that causes the failure. Extracted as a failure condition expression.

こうして、第1の実施の形態と同様の効果を得ることができる。   Thus, the same effect as that of the first embodiment can be obtained.

次に本発明の第3の実施の形態について説明する。図10は、本発明の第3の実施の形態の構成を示すブロック図である。   Next, a third embodiment of the present invention will be described. FIG. 10 is a block diagram showing the configuration of the third exemplary embodiment of the present invention.

本発明の第3の実施の形態は、第1の実施の形態とほぼ同様である。本発明の第3の実施の形態は、出力装置112を有していないことが、第1の実施の形態と異なる。また、本発明の第3の実施の形態は、二次記憶装置113に障害発生条件記憶部135を有することが、第1の実施の形態と異なる。   The third embodiment of the present invention is substantially the same as the first embodiment. The third embodiment of the present invention is different from the first embodiment in that the output device 112 is not provided. Further, the third embodiment of the present invention differs from the first embodiment in that the secondary storage device 113 has a failure occurrence condition storage unit 135.

障害発生条件抽出手段122は、二次記憶装置113の障害発生条件記憶部135に、抽出した障害発生条件式群「C」を格納する。   The failure occurrence condition extraction unit 122 stores the extracted failure occurrence condition expression group “C” in the failure occurrence condition storage unit 135 of the secondary storage device 113.

本発明の第3の実施の形態によれば、制約条件である障害発生条件式を図示しない手段により、あるいは、他日、あるいは、繰り返して利用することが可能になる。その理由は、制約条件を二次記憶装置に格納することで、必要時に読み出すことができるようにしたためである。   According to the third embodiment of the present invention, it is possible to use a failure occurrence conditional expression that is a constraint condition by means not shown, or on another day or repeatedly. The reason is that the constraint condition is stored in the secondary storage device so that it can be read out when necessary.

本発明によれば、動的プログラム検証における入力値に対する制約条件の洗練や、失敗したテスト・検証結果の分析(入力値のカテゴライズ)といった用途に適用できる。   The present invention can be applied to applications such as refinement of constraints on input values in dynamic program verification and analysis of failed test / verification results (categorization of input values).

本発明の第1の実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of the 1st Embodiment of this invention. 本発明の第1、3の実施の形態のプログラム記憶部の構造を示す図である。It is a figure which shows the structure of the program storage part of the 1st, 3rd embodiment of this invention. 本発明の第1、3の実施の形態の実行トレース記憶部の構造を示す図である。It is a figure which shows the structure of the execution trace memory | storage part of the 1st, 3rd embodiment of this invention. 本発明の第1、3の実施の形態の障害内容記憶部の構造を示す図である。It is a figure which shows the structure of the failure content memory | storage part of the 1st, 3rd embodiment of this invention. 本発明の第1、3の実施の形態の障害判定ルール記憶部の構造を示す図である。It is a figure which shows the structure of the failure determination rule memory | storage part of the 1st, 3rd embodiment of this invention. 本発明の第1乃至3の実施の形態の修正トレースの例を示す図である。It is a figure which shows the example of the correction trace of the 1st thru | or 3rd embodiment of this invention. 本発明の第1乃至3の実施の形態の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the 1st thru | or 3rd embodiment of this invention. 本発明の第1乃至3の実施の形態の動的プログラム検証実施時の入力データの例である。It is an example of the input data at the time of the dynamic program verification implementation of the 1st thru | or 3rd embodiment of this invention. 本発明の第2の実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of the 2nd Embodiment of this invention. 本発明の第3の実施の形態の構成を示すブロック図である。It is a block diagram which shows the structure of the 3rd Embodiment of this invention.

符号の説明Explanation of symbols

111 中央処理装置
112 出力装置
113 二次記憶装置
120 データ処理装置
121 実行トレース修正手段
122 障害発生条件抽出手段
131 プログラム記憶部
132 実行トレース記憶部
133 障害内容記憶部
134 障害判定ルール記憶部
141 検証対象プログラム
141 プログラム
142 実行トレース
143 障害内容
144 障害判定ルール
152 修正トレース
111 Central Processing Unit 112 Output Unit 113 Secondary Storage Unit 120 Data Processing Unit 121 Execution Trace Correction Unit 122 Fault Generation Condition Extraction Unit 131 Program Storage Unit 132 Execution Trace Storage Unit 133 Fault Content Storage Unit 134 Fault Determination Rule Storage Unit 141 Target for Verification Program 141 Program 142 Execution trace 143 Failure content 144 Failure judgment rule 152 Correction trace

Claims (10)

動的プログラム検証において、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する実行トレース修正手段と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する障害発生条件抽出手段とを有するデータ処理装置。 In dynamic program verification, a failure determination conditional expression is generated from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule, and a corrected trace in which the failure occurrence instruction is replaced with the failure determination conditional expression The execution trace correcting means to be generated, and the fault that defines the range of the input value that causes the fault by rewriting the conditional expression of the branch instruction in the correction trace to the fault determination conditional expression based on the substitution formula in the correction trace A data processing apparatus comprising failure occurrence condition extraction means for extracting as an occurrence condition expression. 前記障害発生条件式を表示する出力装置を有する請求項1記載のデータ処理装置。 The data processing apparatus according to claim 1, further comprising an output device that displays the failure occurrence conditional expression. 前記障害発生条件式を記憶する手段を有する請求項1および2記載のデータ処理装置。 3. The data processing apparatus according to claim 1, further comprising means for storing the failure occurrence conditional expression. 前記障害内容を記憶する障害内容記憶部を有し、前記実行トレース修正手段が前記障害内容記憶部から前記障害内容を読み出す請求項1乃至3記載のデータ処理装置。 The has a failure content storage unit for storing the type of the failure, the data processing apparatus according to claim 1 or 3 wherein said execution trace correcting means reads the failure content from the failure content storage unit. 前記障害判定ルールを記憶する障害判定ルール記憶部を有し、前記実行トレース修正手段が前記障害判定ルール記憶部から前記障害判定ルールを読み出す請求項1乃至4記載のデータ処理装置。 Wherein a fault determination rule storage unit that stores the fault determination rules, the data processing apparatus according to claim 1 to 4, wherein said execution trace correcting means reads the fault determination rule from the fault determination rule storage unit. 検証対象のプログラムを記憶するプログラム記憶部と、前記実行トレースを記憶する実行トレース記憶部とを有する請求項1乃至5記載のデータ処理装置。 A program storage unit for storing the verified program, data processing apparatus according to claim 1 to 5, wherein and a execution trace storage unit that stores the execution trace. 記障害発生条件式を記憶する障害発生条件記憶部を有する請求項1乃至6記載のデータ処理装置。

The data processing apparatus according to claim 1 to 6, wherein with a failure condition storage unit for storing a pre-Symbol failure condition.

動的プログラム検証において、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する実行トレース修正手段と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する障害発生条件抽出手段とを有するシステム。 In dynamic program verification, a failure determination conditional expression is generated from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule, and a corrected trace in which the failure occurrence instruction is replaced with the failure determination conditional expression The execution trace correcting means to be generated, and the fault that defines the range of the input value that causes the fault by rewriting the conditional expression of the branch instruction in the correction trace to the fault determination conditional expression based on the substitution formula in the correction trace A system having failure occurrence condition extraction means for extracting as an occurrence condition expression. 障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成する処理と、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する処理とをコンピュータに実行させるプログラム。 Processing for generating a failure determination conditional expression from a failure occurrence instruction on the execution trace at the time of failure detection, a failure content, and a failure determination rule, and generating a correction trace by replacing the failure occurrence instruction with the failure determination conditional expression; Rewriting the conditional expression of the branch instruction in the correction trace to the failure determination conditional expression based on the assignment expression in the correction trace, and extracting the conditional expression as a failure occurrence conditional expression that defines a range of the input value that causes the failure. A program to be executed by a computer. コンピュータが、障害検出時の実行トレース上の障害発生命令と障害内容と障害判定ルールとから障害判定条件式を生成し、前記障害発生命令を前記障害判定条件式で置換した修正トレースを生成し、前記修正トレース中の分岐命令の条件式乃至前記障害判定条件式を、前記修正トレース中の代入式に基づいて書き換え、障害発生となる入力値の値域を定義する障害発生条件式として抽出する方法。 The computer generates a failure determination conditional expression from the failure occurrence instruction on the execution trace at the time of failure detection, the failure content, and the failure determination rule, and generates a correction trace in which the failure occurrence instruction is replaced with the failure determination conditional expression, A method of extracting a conditional expression for a branch instruction in the correction trace or the conditional expression for determining a failure based on an assignment expression in the correction trace, and extracting the conditional expression as a failure occurrence conditional expression defining a range of an input value causing a failure.
JP2007240710A 2007-09-18 2007-09-18 Data processing apparatus, system, program, and method Expired - Fee Related JP4501978B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007240710A JP4501978B2 (en) 2007-09-18 2007-09-18 Data processing apparatus, system, program, and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007240710A JP4501978B2 (en) 2007-09-18 2007-09-18 Data processing apparatus, system, program, and method

Publications (2)

Publication Number Publication Date
JP2009070322A JP2009070322A (en) 2009-04-02
JP4501978B2 true JP4501978B2 (en) 2010-07-14

Family

ID=40606469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007240710A Expired - Fee Related JP4501978B2 (en) 2007-09-18 2007-09-18 Data processing apparatus, system, program, and method

Country Status (1)

Country Link
JP (1) JP4501978B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7074739B2 (en) * 2019-10-21 2022-05-24 矢崎総業株式会社 Vulnerability assessment device
JP6966522B2 (en) * 2019-10-21 2021-11-17 矢崎総業株式会社 Vulnerability analyzer
WO2022013944A1 (en) * 2020-07-14 2022-01-20 日本電信電話株式会社 Failure analysis assistance device, failure analysis assistance method, and program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01226042A (en) * 1988-03-04 1989-09-08 Nec Corp Program trace processing system
JPH05210537A (en) * 1992-01-30 1993-08-20 Nec Corp Test item preparing device
JP2001202272A (en) * 2000-01-21 2001-07-27 Nec Ic Microcomput Syst Ltd Debugging method, debugging device using this method and recording medium with debugging method recorded thereon
JP2009032133A (en) * 2007-07-30 2009-02-12 Hitachi Ltd Test case generation system

Also Published As

Publication number Publication date
JP2009070322A (en) 2009-04-02

Similar Documents

Publication Publication Date Title
US11222091B2 (en) Systems and methods for development of web products
US20160179653A1 (en) Source code equivalence verification device and source code equivalence verification method
US8868976B2 (en) System-level testcase generation
US20110126179A1 (en) Method and System for Dynamic Patching Software Using Source Code
JP2019101538A (en) Test script correction device and program
Choi et al. Iterative refactoring of real-world open-source programs with large language models
JP5845888B2 (en) Software correction apparatus, software correction system, software correction method, and software correction program
JP4501978B2 (en) Data processing apparatus, system, program, and method
Gay Improving the readability of generated tests using gpt-4 and chatgpt code interpreter
JP5440287B2 (en) Symbolic execution support program, method and apparatus
WO2018154657A1 (en) Equivalence checking device and equivalence checking program
US12001324B2 (en) Operation pattern generation apparatus, operation pattern generation method and program
Fang et al. Improving the performance of software fault localization with effective coverage data reduction techniques
JP2011150716A (en) Program, apparatus and method for auditing vulnerability
US20220156174A1 (en) Automated identification of lines of code related to errors field
JP6547345B2 (en) Test case generation program, test case generation method and test case generation apparatus
CN108132799B (en) Interprocess static program analysis information extraction method, device and device
JP6116983B2 (en) Entry point extraction device
WO2012049816A1 (en) Model checking device, method, and program
JP2014126900A (en) Program analysis device, program analysis method, and program analysis program
JP6840656B2 (en) Test script modifiers and programs
JP5755861B2 (en) Test case generation apparatus, test case generation method, and test case generation program
JP2018147106A (en) Program analyzer, program analysis method and program analysis program
JP7643544B2 (en) Test generation device, test generation method, and program
JP6524827B2 (en) Information processing apparatus, difference association method, and difference association program

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100304

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100330

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100412

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130430

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140430

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees