JP7062936B2 - Quality prediction program, quality prediction method and quality prediction device - Google Patents

Quality prediction program, quality prediction method and quality prediction device Download PDF

Info

Publication number
JP7062936B2
JP7062936B2 JP2017239805A JP2017239805A JP7062936B2 JP 7062936 B2 JP7062936 B2 JP 7062936B2 JP 2017239805 A JP2017239805 A JP 2017239805A JP 2017239805 A JP2017239805 A JP 2017239805A JP 7062936 B2 JP7062936 B2 JP 7062936B2
Authority
JP
Japan
Prior art keywords
test
software
program
learning model
test results
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.)
Active
Application number
JP2017239805A
Other languages
Japanese (ja)
Other versions
JP2019106136A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017239805A priority Critical patent/JP7062936B2/en
Publication of JP2019106136A publication Critical patent/JP2019106136A/en
Application granted granted Critical
Publication of JP7062936B2 publication Critical patent/JP7062936B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、品質予測プログラム、品質予測方法および品質予測装置に関する。 The present invention relates to a quality prediction program, a quality prediction method and a quality prediction device.

ソフトウェア開発の工程に応じて、ソフトウェアの品質評価のための各種のテストが行なわれる。ソフトウェアの品質評価のためのテストとして、例えば、プログラムテスト、結合テストおよびシステムテストがある。結合テストは、プログラムテストの後の工程で行われ、システムテストは、結合テストの後の工程で行われる。 Various tests for software quality evaluation are performed according to the software development process. Tests for software quality evaluation include, for example, program tests, integration tests and system tests. The integration test is performed in the process after the program test, and the system test is performed in the process after the integration test.

関連する技術として、プロジェクトの状況を、視覚を通じて客観的に評価できるプロジェクト管理装置に関する技術が提案されている(例えば、特許文献1を参照)。また、ソフトウェアの障害予測等の予測性能を向上させる技術が提案されている(例えば、特許文献2を参照)。また、精度よく異常を検出する品質評価システムに関する技術が提案されている(例えば、特許文献3を参照)。 As a related technique, a technique related to a project management device that can objectively evaluate the status of a project visually has been proposed (see, for example, Patent Document 1). Further, a technique for improving the prediction performance such as failure prediction of software has been proposed (see, for example, Patent Document 2). Further, a technique relating to a quality evaluation system for accurately detecting an abnormality has been proposed (see, for example, Patent Document 3).

特開2006-85277号公報Japanese Unexamined Patent Publication No. 2006-85277 特開2013-65084号公報Japanese Unexamined Patent Publication No. 2013-65084 特開2017-161991号公報Japanese Unexamined Patent Publication No. 2017-161991

ソフトウェアの品質は、例えば、テスト結果やテスト項目等に基づいて、評価者により評価される。従って、評価者のスキルによっては、ソフトウェアの品質評価の精度が低くなる可能性がある。 The quality of software is evaluated by an evaluator based on, for example, test results and test items. Therefore, depending on the skill of the evaluator, the accuracy of software quality evaluation may be low.

例えば、プログラムテストのテスト結果に問題点が内在しているにもかかわらず、テスト結果が正常であると判定された場合、後の結合テストやシステムテストで、ソフトウェアの品質に問題があることが判明することがある。 For example, if a problem is inherent in the test result of a program test, but the test result is determined to be normal, there may be a problem with the quality of the software in a later integration test or system test. It may turn out.

上記の場合、ソフトウェア開発の工程が進んでいるため、ソフトウェアに内在する問題点を特定することが難しくなる。従って、ソフトウェア開発における各種のテストについて、ソフトウェアの品質評価の問題点が早い段階で特定されることが望ましい。 In the above case, since the software development process is in progress, it becomes difficult to identify the problems inherent in the software. Therefore, for various tests in software development, it is desirable to identify problems in software quality evaluation at an early stage.

1つの側面として、本発明は、ソフトウェアの問題点を早期に高い精度で予測することを目的とする。 As one aspect, the present invention aims to predict software problems at an early stage with high accuracy.

1つの態様では、品質予測プログラムは、ソフトウェアの過去のプログラムテスト完了時の第1テスト実績に基づいて、テストケース設定率および障害率を算出し、前記第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績と、前記テストケース設定率および前記障害率とを入力として、機械学習を行い、学習モデルを生成し、検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測し、前記テストケース設定率および前記障害率についてのグラフに、前記テストケース設定率および前記障害率が正常である範囲を表示し、且つ複数の前記検証対象ソフトウェアについて予測された前記テスト結果をプロット表示する、処理をコンピュータに実行させる。 In one embodiment, the quality prediction program calculates the test case setting rate and the failure rate based on the first test result at the completion of the past program test of the software, and the program test for the first test result and the software. Machine learning is performed by referring to the storage unit that stores the second test results of the tests to be performed later, and inputting the first test results and the second test results , the test case setting rate, and the failure rate . , A training model is generated, and based on the test result at the completion of the program test of the verification target software and the training model, before the test performed after the program test, the verification target software is performed after the program test. The test results are predicted , the test case setting rate and the range in which the failure rate is normal are displayed on the graph for the test case setting rate and the failure rate, and the prediction is made for the plurality of the verified software. Have the computer perform the process of plotting and displaying the test results .

1つの側面によれば、ソフトウェアの問題点を早期に高い精度で予測することができる。 According to one aspect, software problems can be predicted early and with high accuracy.

品質予測装置の一例を示す機能ブロック図である。It is a functional block diagram which shows an example of a quality prediction apparatus. 学習モデル生成の一例を示す図である。It is a figure which shows an example of a learning model generation. 学習対象データの一例を示す図である。It is a figure which shows an example of the learning target data. 学習モデルを用いた品質予測の一例を示す図である。It is a figure which shows an example of quality prediction using a learning model. 予測結果一覧の一例を示す図である。It is a figure which shows an example of the prediction result list. 予測結果グラフの一例を示す図である。It is a figure which shows an example of the prediction result graph. 学習モデル生成の一例を示すフローチャート(その1)である。It is a flowchart (the 1) which shows an example of a learning model generation. 学習モデル生成の一例を示すフローチャート(その2)である。It is a flowchart (2) which shows an example of learning model generation. 品質予測の処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a quality prediction process. プロット指定処理の流れの一例を示すフローチャートである。It is a flowchart which shows an example of the flow of a plot designation process. 品質予測装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware composition of a quality prediction apparatus.

<品質予測装置の一例>
以下、図面を参照して、実施形態について説明する。図1は、品質予測装置1の一例を示す図である。品質予測装置1は、制御部2と記憶部3とを含む。また、品質予測装置1は、表示装置4および入力装置5に接続されている。表示装置4は、例えば、ディスプレイであり、入力装置5は、例えば、マウスやキーボード等である。
<Example of quality prediction device>
Hereinafter, embodiments will be described with reference to the drawings. FIG. 1 is a diagram showing an example of the quality prediction device 1. The quality prediction device 1 includes a control unit 2 and a storage unit 3. Further, the quality prediction device 1 is connected to the display device 4 and the input device 5. The display device 4 is, for example, a display, and the input device 5 is, for example, a mouse, a keyboard, or the like.

制御部2は、実施形態における各種の制御を行う。制御部2は、データ取得部11と計算部12と静的解析部13と学習モデル生成部14と予測部15と表示制御部16とを含む。記憶部3には、各種のデータが記憶される。学習モデル生成部14および予測部15には、例えば、R言語により実現されてもよい。 The control unit 2 performs various controls in the embodiment. The control unit 2 includes a data acquisition unit 11, a calculation unit 12, a static analysis unit 13, a learning model generation unit 14, a prediction unit 15, and a display control unit 16. Various types of data are stored in the storage unit 3. The learning model generation unit 14 and the prediction unit 15 may be realized by, for example, the R language.

データ取得部11は、記憶部3に記憶されているデータを取得する。計算部12は、各種の計算を行なう。静的解析部13は、ソフトウェアのソースコードに対して静的解析を行う。 The data acquisition unit 11 acquires the data stored in the storage unit 3. The calculation unit 12 performs various calculations. The static analysis unit 13 performs static analysis on the software source code.

実施形態では、静的解析部13は、ソフトウェアのソースコードを解析して、該ソフトウェアのサイクロマティック数およびメソッド数を求める。サイクロマティック数は、循環複雑度とも称され、ソフトウェアの構造が複雑になるに応じて、サイクロマティック数が大きくなる。例えば、ソフトウェアのソースコードに含まれる条件分岐の数が多くなると、サイクロマティック数は大きくなる。サイクロマティック数は、複雑度の一例である。 In the embodiment, the static analysis unit 13 analyzes the source code of the software to obtain the number of cyclomatics and the number of methods of the software. The cyclomatic number is also called the cyclomatic complexity, and the cyclomatic number increases as the structure of the software becomes more complicated. For example, as the number of conditional branches contained in software source code increases, the number of cyclomatics increases. Cyclomatic numbers are an example of complexity.

学習モデル生成部14は、教師データを用いて、機械学習を行い、学習モデルを生成する。学習モデルは、例えば、サポートベクターマシンやニューラルネットワークによる機械学習に基づいて生成されてもよい。また、サポートベクターマシンとしては、例えば、Radial basis function kernel(RBF)カーネルを利用したサポートベクターマシンが用いられてもよい。 The learning model generation unit 14 performs machine learning using the teacher data and generates a learning model. The learning model may be generated based on machine learning by, for example, a support vector machine or a neural network. Further, as the support vector machine, for example, a support vector machine using a Radial basis function kernel (RBF) kernel may be used.

予測部15は、生成された学習モデルと検証対象ソフトウェアのプログラムテスト完了時のテスト結果とに基づいて、検証対象ソフトウェアについてプログラムテストより後に行われるテスト結果を予測する。 The prediction unit 15 predicts the test result of the software to be verified after the program test based on the generated learning model and the test result at the completion of the program test of the software to be verified.

実施形態では、ソフトウェアの品質評価を行なうためのテストには、プログラムテストと結合テストとシステムテストとの3つのテストがあるものとする。ソフトウェアの品質評価を行なうためのテストは、上記の3つのテストには限定されない。結合テストはプログラムテストよりも後の工程で行われ、システムテストは結合テストよりも後の工程で行われる。プログラムテストは、単体テストまたはプログラム単体テストとも称される。 In the embodiment, it is assumed that there are three tests for performing software quality evaluation: a program test, an integration test, and a system test. The tests for quality evaluation of software are not limited to the above three tests. The integration test is performed after the program test, and the system test is performed after the integration test. Program tests are also referred to as unit tests or program unit tests.

予測部15は、結合テストが行なわれる前に、結合テストまたはシステムテストのテスト結果を予測する。結合テストまたはシステムテストは、プログラムテストより後に行われるテストの一例である。予測部15は、予測結果を記憶部3に記憶する。 The prediction unit 15 predicts the test result of the integration test or the system test before the integration test is performed. An integration test or system test is an example of a test performed after a program test. The prediction unit 15 stores the prediction result in the storage unit 3.

表示制御部16は、予測部15による予測結果を、表形式またはグラフ形式で、表示装置4に表示させる制御を行う。予測結果は、表形式やグラフ形式以外の形式で、表示装置4に表示されてもよい。 The display control unit 16 controls the display device 4 to display the prediction result by the prediction unit 15 in a table format or a graph format. The prediction result may be displayed on the display device 4 in a format other than the table format or the graph format.

<学習モデル生成の一例>
図2を参照して、学習モデル生成の一例について説明する。プログラムテストの過去実績は、過去に行なわれたソフトウェアのテスト結果を示す実績である。実施形態では、プログラムテストの過去実績は、ソフトウェア名と開発規模ステップ数とテスト件数と不具合件数とを含む。プログラムテストの過去実績は、第1テスト実績の一例である。
<Example of learning model generation>
An example of learning model generation will be described with reference to FIG. The past results of the program test are the results showing the test results of the software performed in the past. In the embodiment, the past record of the program test includes the software name, the number of development scale steps, the number of tests, and the number of defects. The past results of the program test are an example of the first test results.

ソフトウェア名は、ソフトウェアを特定する名称である。ソフトウェアを特定できる情報であれば、ソフトウェア名以外の情報が採用されてもよい。開発規模ステップ数は、ソフトウェアのソースコードの行数である。テスト件数は、ソフトウェアについて、過去に実施されたプログラムテストの数である。不具合件数は、発生した不具合の件数を示す。該不具合を、障害と称することがある。 The software name is a name that identifies the software. Information other than the software name may be adopted as long as the information can identify the software. The number of development scale steps is the number of lines of software source code. The number of tests is the number of program tests performed on the software in the past. The number of defects indicates the number of defects that have occurred. The defect may be referred to as a failure.

計算部12は、テスト率および障害率を算出する。テスト率は、開発規模ステップ数に対して、実施されたテスト数の率を示す。テスト率は、テストケース設定率やテスト項目設定率等とも称される。障害率は、開発規模ステップ数に対して、抽出された不具合(障害)の率を示す。つまり、障害率は、障害が発生した率(障害発生率)を示す。 The calculation unit 12 calculates the test rate and the failure rate. The test rate indicates the ratio of the number of tests performed to the number of development scale steps. The test rate is also referred to as a test case setting rate, a test item setting rate, or the like. The failure rate indicates the rate of extracted defects (failures) with respect to the number of development scale steps. That is, the failure rate indicates the rate at which a failure has occurred (failure occurrence rate).

例えば、テスト率は、式「テスト率=テスト件数/(開発規模ステップ数/1000)×テスト率基準値」により求められる。該式の場合、開発規模ステップ数は、キロステップで表される。テスト率基準値は、例えば、経験則に基づく値であり、テスト率が適正であるか否かを判定するための基準値である。 For example, the test rate is calculated by the formula "test rate = number of tests / (number of development scale steps / 1000) x test rate reference value". In the case of the formula, the number of development scale steps is expressed in kilosteps. The test rate reference value is, for example, a value based on an empirical rule, and is a reference value for determining whether or not the test rate is appropriate.

例えば、テスト率基準値が「90.9」であり、前後20%の範囲内がテスト率の適正範囲である場合、算出されたテスト率が「72.7~109.1」の範囲内であれば、ソフトウェアの品質は正常であると判定することができる。一方、算出されたテスト率が上記の範囲外であれば、ソフトウェアの品質は不良と判定することができる。 For example, if the test rate reference value is "90.9" and the range of 20% before and after is the appropriate range of the test rate, the calculated test rate is within the range of "72.7 to 109.1". If so, it can be determined that the quality of the software is normal. On the other hand, if the calculated test rate is out of the above range, the quality of the software can be determined to be defective.

障害率は、例えば、式「障害率=不具合件数/(開発規模ステップ数/1000)×障害率基準値」により求められる。障害率基準値も、例えば、経験則に基づく値であり、障害率が適正であるか否かを判定するための基準値である。 The failure rate is calculated by, for example, the formula “failure rate = number of defects / (number of development scale steps / 1000) × failure rate reference value”. The failure rate reference value is also, for example, a value based on an empirical rule, and is a reference value for determining whether or not the failure rate is appropriate.

例えば、障害率基準値が「9.2」であり、前後20%の範囲内が障害率の適正範囲である場合、算出された障害率が「7.4~11.0」の範囲内であれば、品質は正常であると判定することができる。一方、算出された障害率が上記の範囲外であれば、ソフトウェアの品質が不良と判定することができる。 For example, when the failure rate reference value is "9.2" and the range of 20% before and after is the appropriate range of the failure rate, the calculated failure rate is within the range of "7.4 to 11.0". If so, it can be determined that the quality is normal. On the other hand, if the calculated failure rate is out of the above range, it can be determined that the quality of the software is defective.

ただし、上記のテスト率基準値と障害率基準値との何れか一方または両方が、適正な値に設定されていない場合、ソフトウェアの品質評価の精度は低くなる。 However, if either or both of the above test rate reference value and the failure rate reference value are not set to appropriate values, the accuracy of software quality evaluation will be low.

静的解析部13は、ソフトウェアのソースコードを解析して、サイクロマティック数およびメソッド数を求める。 The static analysis unit 13 analyzes the source code of the software to obtain the number of cyclomatics and the number of methods.

学習モデル生成部14には、プログラムテストの過去実績に含まれる複数のソフトウェアについてのソフトウェア名と開発規模ステップ数とテスト件数と不具合件数とが入力される。また、学習モデル生成部14には、各ソフトウェアについて、計算部12が算出したテスト率および障害率が入力される。プログラムテストの過去実績およびソースコードは、記憶部3に記憶されているものとする。 The software name, the number of development scale steps, the number of tests, and the number of defects for a plurality of software included in the past results of the program test are input to the learning model generation unit 14. Further, the test rate and the failure rate calculated by the calculation unit 12 are input to the learning model generation unit 14 for each software. It is assumed that the past results and source code of the program test are stored in the storage unit 3.

また、学習モデル生成部14には、記憶部3に記憶されている過去の不具合件数実績が入力される。過去の不具合件数実績は、ソフトウェアごとの、結合テストおよびシステムテストにおいて抽出された不具合(障害)の数を示す。過去の不具合件数実績は、記憶部3に記憶されているものとする。図2では、該過去の不具合件数実績は、IT・STエラー数として表される。過去の不具合件数実績は第2テスト実績の一例である。 Further, in the learning model generation unit 14, the past number of defects stored in the storage unit 3 is input. The actual number of defects in the past shows the number of defects (failures) extracted in the integration test and the system test for each software. It is assumed that the past record of the number of defects is stored in the storage unit 3. In FIG. 2, the actual number of defects in the past is represented as the number of IT / ST errors. The past number of defects is an example of the second test.

学習モデル生成部14は、入力された各種データに基づいて、学習対象データを生成する。学習モデル生成部14は、ソフトウェアごとの過去の不具合件数実績に基づく教師データを、ソフトウェアごとに、学習対象データに設定する。 The learning model generation unit 14 generates learning target data based on various input data. The learning model generation unit 14 sets the teacher data based on the past number of defects for each software as the learning target data for each software.

結合テストおよびシステムテストにおける過去の不具合実績が「0件」である場合、学習モデル生成部14は、対応するソフトウェアの教師データを「OK」として、学習対象データに設定する。 When the past failure record in the integration test and the system test is "0", the learning model generation unit 14 sets the teacher data of the corresponding software as "OK" and sets it as the learning target data.

結合テストおよびシステムテストにおける過去の不具合実績が「1件」以上である場合、学習モデル生成部14は、対応するソフトウェアの教師データを「NG」として、学習対象データに設定する。 When the past failure record in the integration test and the system test is "1 case" or more, the learning model generation unit 14 sets the teacher data of the corresponding software as "NG" and sets it as the learning target data.

図3は、教師データが付加された学習対象データの一例を示す。学習対象データは、記憶部3に記憶されるものとする。図3の例に示されるように、学習対象データには、ソフトウェアごとに、IT・STエラー数が「0件」の場合、教師データ「OK」が設定され、IT・STエラー数が「1件」以上の場合、教師データ「NG」が設定される。また、教師データ以外のデータは、上述したように、学習モデル生成部14に入力されている。 FIG. 3 shows an example of learning target data to which teacher data is added. It is assumed that the learning target data is stored in the storage unit 3. As shown in the example of FIG. 3, in the learning target data, when the IT / ST error number is “0”, the teacher data “OK” is set and the IT / ST error number is “1” for each software. In the case of "case" or more, the teacher data "NG" is set. Further, data other than the teacher data is input to the learning model generation unit 14 as described above.

図2の例に示されるように、学習モデル生成部14は、教師データが設定された学習対象データを入力として、RBFカーネルを利用したサポートベクターマシンやニューラルネットワーク等を利用した機械学習を行い、学習モデルを生成する。生成された学習モデルは、記憶部3に記憶される。 As shown in the example of FIG. 2, the learning model generation unit 14 performs machine learning using a support vector machine using an RBF kernel, a neural network, or the like, using the learning target data in which the teacher data is set as an input. Generate a learning model. The generated learning model is stored in the storage unit 3.

上述したように、学習モデル生成部14は、ソフトウェアごとの、プログラムテストの過去実績と、結合テストおよびシステムテストの過去の不具合実績(IT・STエラー数)とを入力とし、IT・STエラー数に基づく教師データを用いて、機械学習を行なう。これにより、予測精度の高い学習モデルを生成することができる。 As described above, the learning model generation unit 14 inputs the past record of the program test and the past failure record (IT / ST error number) of the integration test and the system test for each software, and the number of IT / ST errors. Machine learning is performed using the teacher data based on. This makes it possible to generate a learning model with high prediction accuracy.

また、学習モデル生成部14は、ソフトウェアごとのサイクロマティック数およびメソッド数といった要素も加味した機械学習を行い、学習対象モデルを生成する。サイクロマティック数およびメソッド数は予測の精度に影響を及ぼすため、サイクロマティック数およびメソッド数も加味した機械学習が行なわれることで、より予測精度が高い学習モデルを生成することができる。 Further, the learning model generation unit 14 performs machine learning in consideration of elements such as the number of cyclomatics and the number of methods for each software, and generates a learning target model. Since the number of cyclomatics and the number of methods affect the accuracy of prediction, it is possible to generate a learning model with higher prediction accuracy by performing machine learning in consideration of the number of cyclomatics and the number of methods.

また、学習モデル生成部14は、ソフトウェアごとのテスト率および障害率といった要素も加味した学習対象モデルを用いて、機械学習を行なう。テスト率および障害率は評価予測の精度に影響を及ぼすため、テスト率および障害率も加味した機械学習が行なわれることで、さらに予測精度が高い学習モデルを生成することができる。 Further, the learning model generation unit 14 performs machine learning using a learning target model in which factors such as a test rate and a failure rate for each software are taken into consideration. Since the test rate and the failure rate affect the accuracy of the evaluation prediction, it is possible to generate a learning model with higher prediction accuracy by performing machine learning in consideration of the test rate and the failure rate.

学習モデル生成部14は、IT・STエラー数に対して、不具合発生確率を設定する。IT・STエラー数は、結合テストおよびシステムテストで発生した不具合の数を示すため、該IT・STエラー数は、結合テスト時、システムテスト時に、発生する不具合(障害)の確率と相関性がある。 The learning model generation unit 14 sets the probability of occurrence of a defect with respect to the number of IT / ST errors. Since the number of IT / ST errors indicates the number of defects that have occurred in the integration test and the system test, the number of IT / ST errors has a correlation with the probability of defects (failures) that occur during the integration test and the system test. be.

例えば、学習モデル生成部14は、IT・STエラー数と不具合発生確率を以下のように設定してもよい。以下において、IT・STエラー数が多くなるに応じて、不具合発生確率が高くなる。
IT・STエラー数=「0件」の場合、不具合発生確率を「5%」と設定。
IT・STエラー数=「1件から2件」の場合、不具合発生確率を「15%」と設定。
IT・STエラー数=「3件」の場合、不具合発生確率を「30%」と設定。
IT・STエラー数=「4件」の場合、不具合発生確率を「50%」と設定。
IT・STエラー数=「5件」の場合、不具合発生確率を「65%」と設定。
IT・STエラー数=「6件」の場合、不具合発生確率を「75%」と設定。
IT・STエラー数=「7件」の場合、不具合発生確率を「90%」と設定。
IT・STエラー数=「8件以上」の場合、不具合発生確率を「100%」と設定。
For example, the learning model generation unit 14 may set the number of IT / ST errors and the probability of failure occurrence as follows. In the following, as the number of IT / ST errors increases, the probability of failure occurrence increases.
When the number of IT / ST errors = "0", the probability of failure occurrence is set to "5%".
When the number of IT / ST errors = "1 to 2", the probability of failure is set to "15%".
When the number of IT / ST errors = "3", the probability of failure occurrence is set to "30%".
When the number of IT / ST errors = "4", the probability of failure occurrence is set to "50%".
When the number of IT / ST errors = "5", the probability of failure occurrence is set to "65%".
When the number of IT / ST errors = "6", the probability of failure occurrence is set to "75%".
When the number of IT / ST errors = "7", the probability of failure occurrence is set to "90%".
When the number of IT / ST errors = "8 or more", the probability of failure occurrence is set to "100%".

学習モデル生成部14は、機械学習を行い、学習モデルを生成する。IT・STエラー数と不具合発生確率との関係も、機械学習が行なわれることにより、変化する。これにより、結合テストおよびシステムテストで、不具合が発生する確率が、高い精度で予測される。学習モデルは、不具合の発生確率の予測結果(以下、不具合予測発生確率と称する)を含む。 The learning model generation unit 14 performs machine learning and generates a learning model. The relationship between the number of IT / ST errors and the probability of failure occurrence also changes as machine learning is performed. As a result, the probability of failure in the integration test and the system test is predicted with high accuracy. The learning model includes a prediction result of the probability of occurrence of a defect (hereinafter referred to as a probability of occurrence of a defect prediction).

<学習モデルを用いた品質予測の一例>
図4の例を参照して、学習モデルを用いた品質予測の一例について説明する。所定のソフトウェアについて、プログラムテストが実施されると、テスト結果が得られる。該所定のソフトウェアは、検証対象のソフトウェア(検証対象ソフトウェア)である。
<An example of quality prediction using a learning model>
An example of quality prediction using a learning model will be described with reference to the example of FIG. When a program test is performed on a given software, test results are obtained. The predetermined software is software to be verified (software to be verified).

検証対象ソフトウェアは、プログラムテストが完了したソフトウェアであり、結合テストおよびシステムテストで不具合が発生するかを予測する対象となるソフトウェアである。 The software to be verified is the software for which the program test has been completed, and is the software for predicting whether or not a defect will occur in the integration test and the system test.

図4の例のうち、プログラムテスト完了時データは、検証対象ソフトウェアのプログラムテストが完了した際のテスト結果に基づくデータであり、ソフトウェア名と開発規模ステップ数とテスト件数と不具合件数とを含む。図4において、プログラムテスト完了時データは、「PT完了時データ」と表記される。 In the example of FIG. 4, the data at the time of program test completion is data based on the test result when the program test of the software to be verified is completed, and includes the software name, the number of development scale steps, the number of tests, and the number of defects. In FIG. 4, the data at the time of completing the program test is expressed as "data at the time of completing PT".

静的解析部13は、検証対象ソフトウェアのソースコードを分析して、サイクロマティック数およびメソッド数を求める。計算部12は、検証対象ソフトウェアについてのテスト結果に基づいて、上述した式を用いて、テスト率および障害率を算出する。 The static analysis unit 13 analyzes the source code of the software to be verified to obtain the number of cyclomatics and the number of methods. The calculation unit 12 calculates the test rate and the failure rate using the above-mentioned formulas based on the test results for the software to be verified.

予測部15は、上記の各種データを取得する。また、予測部15は、記憶部3に記憶されている学習モデルを取得する。予測部15は、検証対象ソフトウェアについての各種データと学習モデルとに基づいて、検証対象ソフトウェアについての結合テストおよびシステムテストのテスト結果を予測する。 The prediction unit 15 acquires the above-mentioned various data. Further, the prediction unit 15 acquires the learning model stored in the storage unit 3. The prediction unit 15 predicts the test results of the integration test and the system test for the verification target software based on various data and the training model for the verification target software.

生成された学習モデルの予測精度(結合テストおよびシステムテストで不具合が発生するかの予測の精度)は高い。予測部15は、該学習モデルを用いて、検証対象ソフトウェアについての結合テストおよびシステムテストのテスト結果を予測することで、結合テストの前に、早期にソフトウェアの品質を高い精度で評価することができる。 The prediction accuracy of the generated learning model (accuracy of prediction of failure in integration test and system test) is high. The prediction unit 15 predicts the test results of the integration test and the system test for the software to be verified by using the learning model, so that the quality of the software can be evaluated with high accuracy at an early stage before the integration test. can.

予測部15は、検証対象ソフトウェアごとに、予測結果および不具合予測発生確率を付した予測結果一覧を生成する。図5は、予測結果一覧の一例を示す図である。図5の例に示されるように、予測結果一覧には、上述した各種のデータと予測結果と不具合予測発生確率とが付されている。 The prediction unit 15 generates a prediction result list with a prediction result and a defect prediction occurrence probability for each verification target software. FIG. 5 is a diagram showing an example of a list of prediction results. As shown in the example of FIG. 5, the prediction result list includes the above-mentioned various data, the prediction result, and the defect prediction occurrence probability.

予測部15は、プログラムテストが完了した際に、予測結果一覧を生成する。生成された予測結果一覧は、記憶部3に記憶されるものとする。例えば、表示制御部16は、図5の例に示される予測結果一覧を表形式で、表示装置4に表示させてもよい。 The prediction unit 15 generates a prediction result list when the program test is completed. It is assumed that the generated prediction result list is stored in the storage unit 3. For example, the display control unit 16 may display the prediction result list shown in the example of FIG. 5 in a table format on the display device 4.

上記予測結果一覧が表示装置4に表示されることで、評価者に対して、高い精度の予測結果を提示することができる。該予測結果が「NG」を示す場合、対応するソフトウェアには問題点が内在している可能性が高い。 By displaying the prediction result list on the display device 4, it is possible to present the prediction result with high accuracy to the evaluator. If the prediction result indicates "NG", there is a high possibility that the corresponding software has an inherent problem.

プログラムテストが完了した時点で、高い精度で「NG」と予測されたソフトウェアが提示されることで、評価者は、該ソフトウェアに問題点が内在している可能性が高いことを認識できる。つまり、予測結果が「NG」に対応するソフトウェアの品質が低い可能性が高いことを、結合テストよりも前の早い段階で評価者は認識できる。 By presenting the software predicted to be "NG" with high accuracy when the program test is completed, the evaluator can recognize that there is a high possibility that the software has a problem. In other words, the evaluator can recognize that the quality of the software corresponding to "NG" is likely to be low in the prediction result at an early stage before the integration test.

表示制御部16は、予測結果が「NG」である旨、および予測結果が「NG」であるソフトウェア名を強調表示して、表示装置4に表示させてもよい。例えば、表示制御部16は、予測結果が「NG」であるソフトウェア名と、予測結果が「OK」であるソフトウェア名とを異なる色で、表示装置4に表示させてもよい。 The display control unit 16 may highlight the fact that the prediction result is “NG” and the software name whose prediction result is “NG” and display it on the display device 4. For example, the display control unit 16 may display the software name whose prediction result is “NG” and the software name whose prediction result is “OK” in different colors on the display device 4.

上述したように、IT・STエラー数と不具合発生確率との関係について、機械学習が行なわれた不具合予測発生確率を、学習モデルは含む。予測部15は、検証対象ソフトウェアごとに、不具合予測発生確率を予測結果一覧に付加する。 As described above, the learning model includes the probability of failure prediction that machine learning has been performed regarding the relationship between the number of IT / ST errors and the probability of failure occurrence. The prediction unit 15 adds the defect prediction occurrence probability to the prediction result list for each verification target software.

不具合予測発生確率が付加された予測結果一覧が、表示装置4に表示されることで、評価者は、結合テストおよびシステムテストにおいて、不具合(障害)が生じる可能性を定量的な数値として認識できる。 By displaying the prediction result list to which the defect prediction occurrence probability is added on the display device 4, the evaluator can recognize the possibility of failure (failure) as a quantitative numerical value in the integration test and the system test. ..

図6は、予測結果グラフの一例を示す図である。予測結果グラフは、テスト率を横軸とし、障害率を縦軸とした場合における、予測結果をプロット表示したグラフである。黒丸は、予測結果が「OK」であることを示し、「×」は、予測結果が「NG」であることを示す。 FIG. 6 is a diagram showing an example of a prediction result graph. The prediction result graph is a graph in which the prediction results are plotted and displayed when the test rate is on the horizontal axis and the failure rate is on the vertical axis. Black circles indicate that the prediction result is "OK", and "x" indicates that the prediction result is "NG".

表示制御部16は、表示装置4に表示されているプロットのうち、上記の「×」のプロットの指定を受け付けた場合、該「×」のプロット(予測結果が「NG」のプロット)に対応するソフトウェアを示す情報を、表示装置4に表示させてもよい。 When the display control unit 16 accepts the designation of the above-mentioned "x" plot among the plots displayed on the display device 4, it corresponds to the "x" plot (the plot whose prediction result is "NG"). Information indicating the software to be used may be displayed on the display device 4.

例えば、評価者が、入力装置5としてのマウスを操作し、中央の象限内の「×」のプロットにマウスカーソルを合わせ、クリックする操作を行ったとする。制御部2は、該操作を受け付ける。 For example, suppose that the evaluator operates the mouse as the input device 5, puts the mouse cursor on the plot of "x" in the central quadrant, and clicks. The control unit 2 accepts the operation.

表示制御部16は、記憶部3に記憶されている予測結果一覧を参照して、指定された「×」のプロット(操作を受け付けたプロット)に対応するソフトウェアの名称を取得し、表示装置4にソフトウェアの名称を表示させてもよい。例えば、表示制御部16は、表示装置4に、ソフトウェアの名称をポップアップ表示させてもよい。 The display control unit 16 refers to the prediction result list stored in the storage unit 3, acquires the name of the software corresponding to the designated “x” plot (plot for which the operation is accepted), and obtains the name of the software, and the display device 4 May display the name of the software. For example, the display control unit 16 may display the name of the software on the display device 4 in a pop-up manner.

従って、結合テストおよびシステムテストにおけるテスト結果が「NG」であると予測される可能性のあるソフトウェアの名称が表示装置4に表示されるため、評価者は、テスト結果が「NG」であると予測される可能性のあるソフトウェアの名称を認識できる。 Therefore, the name of the software that may be predicted to be "NG" in the integration test and the system test is displayed on the display device 4, and the evaluator determines that the test result is "NG". Recognize possible software names.

ここで、図6の例の予測結果グラフは、9つの象限に区分けされている。中央の象限は、テスト率基準値から前後の所定範囲内であり、且つ、障害率基準値から前後の所定範囲内である。該中央の象限は、設定率および障害率が正常である範囲の一例である。例えば、上述した例では、テスト率基準値は「90.9」であり、障害率基準値は「9.2」である。 Here, the prediction result graph of the example of FIG. 6 is divided into nine quadrants. The central quadrant is within a predetermined range before and after the test rate reference value and within a predetermined range before and after the failure rate reference value. The central quadrant is an example of a range in which the set rate and failure rate are normal. For example, in the above-mentioned example, the test rate reference value is "90.9" and the failure rate reference value is "9.2".

図6の例の予測結果グラフは、テスト率基準値「90.9」を「1.0」とし、障害率基準値「9.2」を「1.0」とした場合における、予測結果をプロット表示したグラフを示す。上述したように、テスト率および障害率は、所定の範囲内であれば、品質が正常であると判定することができる。 The prediction result graph of the example of FIG. 6 shows the prediction result when the test rate reference value "90.9" is set to "1.0" and the failure rate reference value "9.2" is set to "1.0". The graph displayed in plot is shown. As described above, if the test rate and the failure rate are within the predetermined ranges, it can be determined that the quality is normal.

図6の例の中央の象限は、品質が正常であると判定することができる象限を示す。従って、中央の象限の範囲内の全てのプロットは、本来であれば、予測結果が「OK」であることを示す黒丸になっていることが想定される。 The central quadrant in the example of FIG. 6 indicates the quadrant at which quality can be determined to be normal. Therefore, it is assumed that all plots within the range of the central quadrant are originally black circles indicating that the prediction result is "OK".

この点、中央の象限の範囲内に、予測結果が「NG」を示す「×」が入っている場合、検証対象ソフトウェアは、テスト率および障害率による判定では品質が正常であるが、予測結果としては、結合テストおよびシステムテストで不具合(障害)が生じる可能性が高い。 In this regard, if the prediction result contains an "x" indicating "NG" within the range of the central quadrant, the quality of the software to be verified is normal in the judgment based on the test rate and the failure rate, but the prediction result. As for, there is a high possibility that a defect (failure) will occur in the integration test and the system test.

例えば、プログラムテストの過去実績から得られる障害率およびテスト率に基づいて、ソフトウェアの品質評価を行うことが考えられる。ただし、テスト率基準値と障害率基準値とのうち何れか一方または両方が、適正な値に設定されない場合があり、その場合、ソフトウェアの品質評価の精度が低下する。 For example, it is conceivable to evaluate the quality of software based on the failure rate and the test rate obtained from the past results of program testing. However, one or both of the test rate reference value and the failure rate reference value may not be set to appropriate values, in which case the accuracy of software quality evaluation is reduced.

従って、図6の例に示されるように、テスト率および障害率に基づく判定では正常であることが示されるソフトウェアであっても、結合テストおよびシステムテストで不具合(障害)が生じる可能性が高いことを示す予測結果を、評価者に提示することができる。 Therefore, as shown in the example of FIG. 6, even software that is shown to be normal in the judgment based on the test rate and the failure rate is likely to have a defect (failure) in the integration test and the system test. The prediction result indicating that can be presented to the evaluator.

<実施形態の処理の流れの一例>
次に、実施形態の処理の流れの一例について説明する。図7および図8は、学習モデル生成の一例を示すフローチャートである。図7のフローチャートに示されるように、データ取得部11は、記憶部3から、複数のソフトウェアについてのプログラムテストの過去実績を取得する(ステップS1)。
<Example of processing flow of the embodiment>
Next, an example of the processing flow of the embodiment will be described. 7 and 8 are flowcharts showing an example of learning model generation. As shown in the flowchart of FIG. 7, the data acquisition unit 11 acquires the past results of the program test for the plurality of software from the storage unit 3 (step S1).

計算部12は、取得されたプログラムテストの過去実績に基づいて、各ソフトウェアについて、上述した式により、テスト率および障害率を計算する(ステップS2)。静的解析部13は、記憶部3に記憶された各ソフトウェアのソースコードを静的解析し、各ソフトウェアについてのサイクロマティック数およびメソッド数を求める(ステップS3)。 The calculation unit 12 calculates the test rate and the failure rate for each software based on the acquired past results of the program test by the above-mentioned formula (step S2). The static analysis unit 13 statically analyzes the source code of each software stored in the storage unit 3 and obtains the number of cyclomatics and the number of methods for each software (step S3).

データ取得部11は、記憶部3に記憶されている過去の不具合実績から、各ソフトウェアについてのIT・STエラー数を取得する(ステップS4)。ステップS1からステップS4の処理により、各ソフトウェアについての各種データが取得される。 The data acquisition unit 11 acquires the number of IT / ST errors for each software from the past failure records stored in the storage unit 3 (step S4). By the processing of steps S1 to S4, various data about each software are acquired.

学習モデル生成部14は、各ソフトウェアのうち1つを選択する(ステップS5)。学習モデル生成部14は、選択されたソフトウェアに対応するIT・STエラー数が「0」であるかを判定する(ステップS6)。 The learning model generation unit 14 selects one of the software (step S5). The learning model generation unit 14 determines whether the number of IT / ST errors corresponding to the selected software is “0” (step S6).

ステップS6でYESの場合、IT・STエラー数が「0」であるため、選択されたソフトウェアに、教師データとして「OK」を設定する(ステップS7)。ステップS6でNOの場合、IT・STエラー数が1以上であるため、選択されたソフトウェアに、教師データとして「NG」を設定する(ステップS7)。 If YES in step S6, the number of IT / ST errors is "0", so "OK" is set as teacher data in the selected software (step S7). If NO in step S6, the number of IT / ST errors is 1 or more, so “NG” is set as the teacher data in the selected software (step S7).

学習モデル生成部14は、全てのソフトウェアについて、教師データの設定が終了したかを判定する(ステップS9)。ステップS9でNOの場合、処理は、ステップS5に移行する。ステップS9でYESの場合、処理は、「A」からステップS10に移行する。 The learning model generation unit 14 determines whether or not the teacher data setting has been completed for all the software (step S9). If NO in step S9, the process proceeds to step S5. If YES in step S9, the process proceeds from "A" to step S10.

「A」以降の処理について、図8のフローチャートを参照して説明する。上述したように、学習モデル生成部14は、IT・STエラー数に対して、学習モデルに対して、不具合発生確率を設定する(ステップS10)。 The processing after "A" will be described with reference to the flowchart of FIG. As described above, the learning model generation unit 14 sets the failure occurrence probability for the learning model with respect to the number of IT / ST errors (step S10).

学習モデル生成部14は、各ソフトウェアについて、上述した各種のデータ、教師データおよび不具合発生確率を表形式(多次元配列の形式)で表した学習対象データを生成する(ステップS11)。 The learning model generation unit 14 generates learning target data in which the above-mentioned various data, teacher data, and defect occurrence probability are represented in a table format (multidimensional array format) for each software (step S11).

学習モデル生成部14は、学習対象データの教師データを用いて、RBFカーネルを利用したサポートベクターマシンやニューラルネットワーク等による機械学習を行い、学習モデルを生成する(ステップS12)。生成された学習モデルは、記憶部3に記憶される(ステップS13)。 The learning model generation unit 14 uses the teacher data of the training target data to perform machine learning using a support vector machine using an RBF kernel, a neural network, or the like, and generates a learning model (step S12). The generated learning model is stored in the storage unit 3 (step S13).

次に、品質予測の処理の流れの一例について、図9のフローチャートを参照して説明する。データ取得部11は、記憶部3から、複数の検証対象ソフトウェアのプログラムテスト完了時のテスト結果を取得する(ステップS21)。 Next, an example of the flow of quality prediction processing will be described with reference to the flowchart of FIG. The data acquisition unit 11 acquires the test results at the completion of the program test of the plurality of verification target software from the storage unit 3 (step S21).

計算部12は、取得されたプログラムテスト完了時のテスト結果に基づいて、各検証対象ソフトウェアについて、上述した式により、テスト率および障害率を計算する(ステップS22)。 The calculation unit 12 calculates the test rate and the failure rate for each verification target software based on the acquired test result at the completion of the program test by the above-mentioned formula (step S22).

静的解析部13は、記憶部3に記憶された各検証対象ソフトウェアのソースコードを静的解析し、各検証対照ソフトウェアについてのサイクロマティック数およびメソッド数を求める(ステップS23)。 The static analysis unit 13 statically analyzes the source code of each verification target software stored in the storage unit 3 and obtains the number of cyclomatics and the number of methods for each verification control software (step S23).

予測部15は、取得された各検証対象ソフトウェアの各種データについて多次元配列を生成する(ステップS24)。該多次元配列は、図5の例で示した予測結果一覧のうち、予測結果および不具合予測発生確率がない多次元配列である。 The prediction unit 15 generates a multidimensional array for each of the acquired various data of the verification target software (step S24). The multidimensional array is a multidimensional array having no prediction result and defect prediction occurrence probability in the prediction result list shown in the example of FIG.

予測部15は、生成済みの学習モデルと、ステップS24で生成された多次元配列とに基づいて、各検証対象ソフトウェアの品質を予測する(ステップS25)。これにより、各検証対象ソフトウェアについての予測結果が得られる。該予測結果は、上記多次元配列に付加される。 The prediction unit 15 predicts the quality of each software to be verified based on the generated learning model and the multidimensional array generated in step S24 (step S25). As a result, the prediction result for each verification target software can be obtained. The prediction result is added to the multidimensional array.

予測部15は、上記多次元配列の各検証対象ソフトウェアに、上述した不具合予測発生確率を付加し、図5の例で示した予測結果一覧を生成する(ステップS26)。生成された予測結果一覧は、各検証対象ソフトウェアについての予測結果を示し、予測部15は、該予測結果一覧を、学習対象データにフィードバック(追加)してもよい。 The prediction unit 15 adds the above-mentioned defect prediction occurrence probability to each verification target software of the multidimensional array, and generates a prediction result list shown in the example of FIG. 5 (step S26). The generated prediction result list shows the prediction result for each verification target software, and the prediction unit 15 may feed back (add) the prediction result list to the learning target data.

ステップS26で生成された予測結果一覧は、記憶部3に記憶される。表示制御部16は、記憶部3に記憶された予測結果一覧を、表形式またはグラフ形式で表示装置4に表示させる(ステップS28)。 The prediction result list generated in step S26 is stored in the storage unit 3. The display control unit 16 causes the display device 4 to display the prediction result list stored in the storage unit 3 in a table format or a graph format (step S28).

次に、プロット指定処理の流れについて、図10のフローチャートを参照して説明する。表示装置4に、予測結果グラフが表示されている際に、入力装置5としてのマウスにより、何れかのプロットの指定を制御部2が受け付ける(ステップS31)。例えば、評価者が、「×」のプロットにマウスカーソルを合わせてクリックする操作を行うと、制御部2は、該操作を受け付ける。 Next, the flow of the plot designation process will be described with reference to the flowchart of FIG. When the prediction result graph is displayed on the display device 4, the control unit 2 accepts the designation of any plot by the mouse as the input device 5 (step S31). For example, when the evaluator performs an operation of moving the mouse cursor to the plot of "x" and clicking, the control unit 2 accepts the operation.

表示制御部16は、記憶部3に記憶されている予測結果一覧を参照して、指定されたプロットに対応する検証対象ソフトウェアを特定する(ステップS32)。表示制御部16は、特定された検証対象ソフトウェアを、表示装置4に表示させる(ステップS33)。 The display control unit 16 refers to the prediction result list stored in the storage unit 3 and identifies the verification target software corresponding to the designated plot (step S32). The display control unit 16 causes the display device 4 to display the specified software to be verified (step S33).

<品質予測装置のハードウェア構成の一例>
次に、図11の例を参照して、品質予測装置1のハードウェア構成の一例を説明する。図11の例に示すように、バス100に対して、プロセッサ111とRandom Access Memory(RAM)112とRead Only Memory(ROM)113とが接続される。また、該バス100に対して、補助記憶装置114と媒体接続部115とが接続される。
<Example of hardware configuration of quality prediction device>
Next, an example of the hardware configuration of the quality prediction device 1 will be described with reference to the example of FIG. As shown in the example of FIG. 11, the processor 111, the Random Access Memory (RAM) 112, and the Read Only Memory (ROM) 113 are connected to the bus 100. Further, the auxiliary storage device 114 and the medium connection unit 115 are connected to the bus 100.

プロセッサ111はRAM112に展開されたプログラムを実行する。実行されるプログラムとしては、実施形態における処理を行う品質予測プログラムが適用されてもよい。 The processor 111 executes the program expanded in the RAM 112. As the program to be executed, a quality prediction program that performs the processing in the embodiment may be applied.

ROM113はRAM112に展開される品質予測プログラムを記憶する不揮発性の記憶装置である。補助記憶装置114は、種々の情報を記憶する記憶装置であり、例えばハードディスクドライブや半導体メモリ等が適用されてもよい。媒体接続部115は、可搬型記録媒体115Mと接続可能に設けられている。 The ROM 113 is a non-volatile storage device that stores the quality prediction program developed in the RAM 112. The auxiliary storage device 114 is a storage device that stores various information, and for example, a hard disk drive, a semiconductor memory, or the like may be applied. The medium connection unit 115 is provided so as to be connectable to the portable recording medium 115M.

可搬型記録媒体115Mとしては、可搬型のメモリ(例えば、光学ディスクや半導体メモリ等)が適用されてもよい。この可搬型記録媒体115Mに実施形態の処理を行う判定プログラムが記録されていてもよい。上述した制御部2は、与えられた品質予測プログラムをプロセッサ111が実行することにより実現されてもよい。 As the portable recording medium 115M, a portable memory (for example, an optical disk, a semiconductor memory, etc.) may be applied. A determination program for performing the processing of the embodiment may be recorded on the portable recording medium 115M. The control unit 2 described above may be realized by the processor 111 executing a given quality prediction program.

RAM112、ROM113、補助記憶装置114および可搬型記録媒体115Mは、何れもコンピュータ読み取り可能な有形の記憶媒体の一例である。これらの有形な記憶媒体は、信号搬送波のような一時的な媒体ではない。 The RAM 112, ROM 113, auxiliary storage device 114, and portable recording medium 115M are all examples of computer-readable tangible storage media. These tangible storage media are not temporary media such as signal carriers.

<その他>
本実施形態および変形例は、以上に述べた実施の形態に限定されるものではなく、本実施形態および変形例の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
<Others>
The present embodiment and the modified examples are not limited to the embodiments described above, and various configurations or embodiments can be taken within a range that does not deviate from the gist of the present embodiment and the modified examples.

1 品質予測装置
2 制御部
3 記憶部
4 表示装置
5 入力装置
11 データ取得部
12 計算部
13 静的解析部
14 学習モデル生成部
15 予測部
16 表示制御部
111 プロセッサ
112 RAM
113 ROM
1 Quality prediction device 2 Control unit 3 Storage unit 4 Display device 5 Input device 11 Data acquisition unit 12 Calculation unit 13 Static analysis unit 14 Learning model generation unit 15 Prediction unit 16 Display control unit 111 Processor 112 RAM
113 ROM

Claims (8)

ソフトウェアの過去のプログラムテスト完了時の第1テスト実績に基づいて、テストケース設定率および障害率を算出し、
前記第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績と、前記テストケース設定率および前記障害率とを入力として、機械学習を行い、学習モデルを生成し、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測し、
前記テストケース設定率および前記障害率についてのグラフに、前記テストケース設定率および前記障害率が正常である範囲を表示し、且つ複数の前記検証対象ソフトウェアについて予測された前記テスト結果をプロット表示する、
処理をコンピュータに実行させることを特徴とする品質予測プログラム。
Calculate the test case setting rate and failure rate based on the first test results when the software's past program test is completed.
With reference to the storage unit that stores the first test results and the second test results of the tests performed after the program test for the software, the first test results and the second test results, the test case setting rate, and the test case setting rate Using the above failure rate as an input, machine learning is performed to generate a learning model.
Based on the test result at the completion of the program test of the software to be verified and the learning model, the test result to be performed after the program test for the software to be verified is predicted before the test performed after the program test.
The test case setting rate and the range in which the failure rate is normal are displayed on the graph for the test case setting rate and the failure rate, and the predicted test results for the plurality of software to be verified are plotted and displayed. ,
A quality prediction program characterized by having a computer perform processing.
前記第1テスト実績の対象である前記ソフトウェアの複雑度およびメソッド数を解析し、
さらに前記複雑度および前記メソッド数を入力として前記機械学習を行い、前記学習モデルを生成する、
処理を前記コンピュータに実行させることを特徴とする請求項1記載の品質予測プログラム。
The complexity and the number of methods of the software, which is the target of the first test results, are analyzed.
Further, the machine learning is performed by inputting the complexity and the number of methods, and the learning model is generated.
The quality prediction program according to claim 1, wherein the processing is executed by the computer.
前記グラフにプロット表示された何れかの前記テスト結果の指定を受け付けた場合に、該テスト結果に対応する検証対象ソフトウェアを示す情報を表示する、
処理を前記コンピュータに実行させることを特徴とする請求項1または2記載の品質予測プログラム。
When the designation of any of the test results displayed as plots in the graph is accepted, the information indicating the software to be verified corresponding to the test results is displayed.
The quality prediction program according to claim 1 or 2, wherein the processing is executed by the computer.
ソフトウェアの過去のプログラムテスト完了時の第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績を入力として、機械学習を行い、学習モデルを生成し、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測し、
表示装置を制御して、前記検証対象ソフトウェアと、予測された前記テスト結果とを対応付けて表示させると共に、前記第2テスト実績が示す前記ソフトウェアの不具合発生数に応じて設定された値を前記学習モデルに入力して得られる前記検証対象ソフトウェアに発生する不具合の確率の予測を、前記検証対象ソフトウェアおよび前記テスト結果と対応付けて表示させる、
処理をコンピュータに実行させることを特徴とする品質予測プログラム。
Refer to the storage unit that stores the first test results when the past program test of the software is completed and the second test results of the tests performed after the program test for the software, and the first test results and the second test results. Is used as an input to perform machine learning, generate a learning model, and
Based on the test result at the completion of the program test of the software to be verified and the learning model, the test result to be performed after the program test for the software to be verified is predicted before the test performed after the program test.
The display device is controlled to display the verification target software and the predicted test result in association with each other, and the value set according to the number of defects of the software indicated by the second test result is used. The prediction of the probability of failure occurring in the verification target software obtained by inputting to the learning model is displayed in association with the verification target software and the test result.
A quality prediction program characterized by having a computer perform processing.
ソフトウェアの過去のプログラムテスト完了時の第1テスト実績に基づいて、テストケース設定率および障害率を算出し、
前記第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績と、前記テストケース設定率および前記障害率とを入力として、機械学習を行い、学習モデルを生成し、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測し、
前記テストケース設定率および前記障害率についてのグラフに、前記テストケース設定率および前記障害率が正常である範囲を表示し、且つ複数の前記検証対象ソフトウェアについて予測された前記テスト結果をプロット表示する、
処理をコンピュータが実行することを特徴とする品質予測方法。
Calculate the test case setting rate and failure rate based on the first test results when the software's past program test is completed.
With reference to the storage unit that stores the first test results and the second test results of the tests performed after the program test for the software, the first test results and the second test results, the test case setting rate, and the test case setting rate Using the above failure rate as an input, machine learning is performed to generate a learning model.
Based on the test result at the completion of the program test of the software to be verified and the learning model, the test result to be performed after the program test for the software to be verified is predicted before the test performed after the program test.
The test case setting rate and the range in which the failure rate is normal are displayed on the graph for the test case setting rate and the failure rate, and the predicted test results for the plurality of software to be verified are plotted and displayed. ,
A quality prediction method characterized by a computer performing processing.
ソフトウェアの過去のプログラムテスト完了時の第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績を入力として、機械学習を行い、学習モデルを生成し、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測し、
表示装置を制御して、前記検証対象ソフトウェアと、予測された前記テスト結果とを対応付けて表示させると共に、前記第2テスト実績が示す前記ソフトウェアの不具合発生数に応じて設定された値を前記学習モデルに入力して得られる前記検証対象ソフトウェアに発生する不具合の確率の予測を、前記検証対象ソフトウェアおよび前記テスト結果と対応付けて表示させる、
処理をコンピュータが実行することを特徴とする品質予測方法。
Refer to the storage unit that stores the first test results when the past program test of the software is completed and the second test results of the tests performed after the program test for the software, and the first test results and the second test results. Is used as an input to perform machine learning, generate a learning model, and
Based on the test result at the completion of the program test of the software to be verified and the learning model, the test result to be performed after the program test for the software to be verified is predicted before the test performed after the program test.
The display device is controlled to display the verification target software and the predicted test result in association with each other, and the value set according to the number of defects of the software indicated by the second test result is used. The prediction of the probability of failure occurring in the verification target software obtained by inputting to the learning model is displayed in association with the verification target software and the test result.
A quality prediction method characterized by a computer performing processing.
ソフトウェアの過去のプログラムテスト完了時の第1テスト実績に基づいて、テストケース設定率および障害率を算出する計算部と、
前記第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績と、前記テストケース設定率および前記障害率とを入力として、機械学習を行い、学習モデルを生成する学習モデル生成部と、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記プログラムテストより後に行われるテストの前に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測する予測部と、
前記テストケース設定率および前記障害率についてのグラフに、前記テストケース設定率および前記障害率が正常である範囲を表示し、且つ複数の前記検証対象ソフトウェアについて予測された前記テスト結果をプロット表示する表示部と、
を備えることを特徴とする品質予測装置。
A calculation unit that calculates the test case setting rate and failure rate based on the first test results when the software's past program test is completed,
With reference to the storage unit that stores the first test results and the second test results of the tests performed after the program test for the software, the first test results and the second test results, the test case setting rate, and the test case setting rate A learning model generation unit that performs machine learning and generates a learning model using the failure rate as an input.
Based on the test result at the completion of the program test of the software to be verified and the learning model, the prediction of predicting the test result of the software to be verified after the program test before the test performed after the program test. Department and
The test case setting rate and the range in which the failure rate is normal are displayed on the graph for the test case setting rate and the failure rate, and the predicted test results for the plurality of software to be verified are plotted and displayed. Display and
A quality prediction device characterized by being equipped with.
ソフトウェアの過去のプログラムテスト完了時の第1テスト実績および前記ソフトウェアについて前記プログラムテストより後に行われるテストの第2テスト実績を記憶する記憶部を参照し、前記第1テスト実績および前記第2テスト実績を入力として、機械学習を行い、学習モデルを生成する学習モデル生成部と、
検証対象ソフトウェアのプログラムテスト完了時のテスト結果と前記学習モデルとに基づいて、前記検証対象ソフトウェアのプログラムテスト完了時に、前記検証対象ソフトウェアについて前記プログラムテストより後に行われるテスト結果を予測する予測部と、
表示装置を制御して、前記検証対象ソフトウェアと、予測された前記テスト結果とを対応付けて表示させると共に、前記第2テスト実績が示す前記ソフトウェアの不具合発生数に応じて設定された値を前記学習モデルに入力して得られる前記検証対象ソフトウェアに発生する不具合の確率の予測を、前記検証対象ソフトウェアおよび前記テスト結果と対応付けて表示させる表示制御部と、
を備えることを特徴とする品質予測装置。
Refer to the storage unit that stores the first test results when the past program test of the software is completed and the second test results of the tests performed after the program test for the software, and the first test results and the second test results. A learning model generator that performs machine learning and generates a learning model using
Based on the test result at the completion of the program test of the software to be verified and the learning model, a prediction unit that predicts the test result of the software to be verified after the program test at the completion of the program test of the software to be verified. ,
The display device is controlled to display the verification target software and the predicted test result in association with each other, and the value set according to the number of defects of the software indicated by the second test result is used. A display control unit that displays the prediction of the probability of failure occurring in the verification target software obtained by inputting to the learning model in association with the verification target software and the test result.
A quality prediction device characterized by being equipped with.
JP2017239805A 2017-12-14 2017-12-14 Quality prediction program, quality prediction method and quality prediction device Active JP7062936B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017239805A JP7062936B2 (en) 2017-12-14 2017-12-14 Quality prediction program, quality prediction method and quality prediction device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017239805A JP7062936B2 (en) 2017-12-14 2017-12-14 Quality prediction program, quality prediction method and quality prediction device

Publications (2)

Publication Number Publication Date
JP2019106136A JP2019106136A (en) 2019-06-27
JP7062936B2 true JP7062936B2 (en) 2022-05-09

Family

ID=67062679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017239805A Active JP7062936B2 (en) 2017-12-14 2017-12-14 Quality prediction program, quality prediction method and quality prediction device

Country Status (1)

Country Link
JP (1) JP7062936B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112434808B (en) * 2020-11-27 2022-08-09 杭州新州网络科技有限公司 Full-stack type forward neural network deep learning system security analysis and detection method
CN112905475B (en) * 2021-03-11 2022-09-06 湖南化工职业技术学院(湖南工业高级技工学校) Software testing platform based on computer

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187288A (en) 2008-02-06 2009-08-20 Nec Corp Method and device for detecting project modulation
JP2017062551A (en) 2015-09-24 2017-03-30 日本電信電話株式会社 Quality standard calculation device and quality standard calculation method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187288A (en) 2008-02-06 2009-08-20 Nec Corp Method and device for detecting project modulation
JP2017062551A (en) 2015-09-24 2017-03-30 日本電信電話株式会社 Quality standard calculation device and quality standard calculation method

Also Published As

Publication number Publication date
JP2019106136A (en) 2019-06-27

Similar Documents

Publication Publication Date Title
US8087001B2 (en) Computer-implemented systems and methods for software application testing
US9898387B2 (en) Development tools for logging and analyzing software bugs
US8266592B2 (en) Ranking and optimizing automated test scripts
US9760073B2 (en) Technique and tool for efficient testing of controllers in development
EP2960799A1 (en) Defect localization in software integration tests
US8949672B1 (en) Analyzing a dump file from a data storage device together with debug history to diagnose/resolve programming errors
US9384117B2 (en) Machine and methods for evaluating failing software programs
US8434069B2 (en) System and method for effort estimation
US20090292956A1 (en) Trend based test failure prioritization
Jin et al. What helped, and what did not? An evaluation of the strategies to improve continuous integration
JP7062936B2 (en) Quality prediction program, quality prediction method and quality prediction device
JP7202078B2 (en) Maintenance work support system
Gitzel Data Quality in Time Series Data: An Experience Report.
US9405664B2 (en) Automating software testing
Sato et al. Effects of organizational changes on product metrics and defects
JP7440823B2 (en) Information processing device, information processing method and program
US10546080B1 (en) Method and system for identifying potential causes of failure in simulation runs using machine learning
JP6320269B2 (en) Software test support apparatus and software test support program
Jiarpakdee Towards a more reliable interpretation of defect models
JP2017041196A (en) Stub object determination device, method, and program
JP7363164B2 (en) Information processing device, information processing method, and information processing program
JP7385147B2 (en) Inspection schedule creation device and inspection schedule creation program
JP2015158769A (en) fault extraction support device
JP2019194818A (en) Software trouble prediction device
JP7003334B2 (en) Information processing equipment, programs and information processing methods

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200904

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20200904

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210825

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20210826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211224

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: 20220322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220404

R150 Certificate of patent or registration of utility model

Ref document number: 7062936

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150