JP7210917B2 - Verification information generation device, verification information generation method, and verification information generation program - Google Patents
Verification information generation device, verification information generation method, and verification information generation program Download PDFInfo
- Publication number
- JP7210917B2 JP7210917B2 JP2018131115A JP2018131115A JP7210917B2 JP 7210917 B2 JP7210917 B2 JP 7210917B2 JP 2018131115 A JP2018131115 A JP 2018131115A JP 2018131115 A JP2018131115 A JP 2018131115A JP 7210917 B2 JP7210917 B2 JP 7210917B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- transition
- transitions
- verification information
- information generation
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、システムの検証に用いる検証情報を生成する検証情報生成装置、検証情報生成方法、及び検証情報生成プログラムに関する。 The present invention relates to a verification information generation device, a verification information generation method, and a verification information generation program for generating verification information used for system verification.
近年、情報通信技術システム(ICT(Information and Communication Technology)システム)などは社会を支えるインフラの一つとなっており、その重要性は増している。一方で、ICTシステムの大規模化、複雑化が進んでおり、その構築又は変更の実施は困難である。そこで、ICTシステムの構築又は変更を効率的に行うことを目的とした、構成管理技術が注目されている。 In recent years, information and communication technology systems (ICT (Information and Communication Technology) systems) have become one of the infrastructures that support society, and their importance is increasing. On the other hand, ICT systems are becoming larger and more complex, making it difficult to construct or change them. Therefore, a configuration management technique for the purpose of efficiently constructing or modifying an ICT system is attracting attention.
例えば、ICTシステムの構成管理技術は、一般的に、ICTシステムのモデルを開発し、開発したモデルを用いて、ICTシステムの構築又は変更をする。モデル開発を伴うICTシステムの構成管理技術の一つに、ICTシステムが有する部品(状態要素)の構築又は変更する手順を、自動的に生成する技術が知られている。 For example, configuration management techniques for ICT systems generally involve developing a model of the ICT system and using the developed model to build or modify the ICT system. As one of configuration management techniques for an ICT system that involves model development, a technique for automatically generating a procedure for building or changing components (state elements) of the ICT system is known.
特許文献1及び非特許文献1には、システムの構築又は変更後の状態がモデルとして宣言的に記述された情報を用いて、システムの現在の状態と、システムの構築後又は変更後の状態との差分を計算し、システムを構築又は変更する手順を自動的に算出する技術が開示されている。
なお、特許文献1及び非特許文献1で開示されている、システムの状態をモデルとして宣言的に記述する状態モデルについて説明する。なお、特許文献1では、「状態モデル」を「状態マシン群」と呼び、「状態要素」を「状態マシン」と呼んでいる。
A state model that declaratively describes the state of a system as a model disclosed in
状態モデルは、システムを変更する手順において、手順を計算するのに必要な情報を表したデータモデルで、状態要素と状態要素間の依存性とにより構成される。 A state model is a data model that represents the information necessary to calculate a procedure for changing a system, and is composed of state elements and dependencies between the state elements.
状態要素は、独立して状態を持つシステム構成中の部品を表し、手順の計算において考慮される最小の構成単位となる。また、状態要素は、排他的な複数の状態と、その複数の状態間の状態遷移(遷移)により定義される。状態は、システムがとり得る状態を表す。また、状態は、複数の状態を定義でき、必ず一つの現在の状態(現在状態)と、現在の状態から要求により変化する任意の数の状態(要求状態)を含む。 A state element represents a component in the system configuration that has an independent state and is the smallest building block considered in the computation of procedures. A state element is defined by a plurality of exclusive states and state transitions (transitions) between the plurality of states. A state represents a possible state of the system. In addition, a state can define a plurality of states, and always includes one current state (current state) and any number of states (requested states) that change from the current state according to requests.
遷移は、システムがどの状態からどの状態へ変化可能かを表し、同一の状態要素における任意の状態間の変化と定義できる。 A transition represents from which state the system can change to which state, and can be defined as a change between arbitrary states in the same state element.
次に、依存性は、ある状態要素における遷移から、他の状態要素の状態に対して定義される。すなわち、前者の状態要素がその遷移を行うためには、後者の状態要素がその状態でなければならないという条件を表す。 Dependencies are then defined from the transitions in one state element to the states of other state elements. That is, it expresses the condition that the latter state element must be in that state in order for the former state element to make that transition.
なお、状態要素はシステム構成中の部品に対応する。そして、状態要素が行う遷移は、システム構築又は変更の全体の手順のうち部品が行う単一の工程と同義である。 Note that the state elements correspond to parts in the system configuration. A transition performed by a state element is synonymous with a single step performed by a component in the overall procedure of building or modifying a system.
図1を用いて状態モデルについて具体的に説明をする。図1は、状態モデルを説明するための図である。図1では、状態要素TC、UV(例えば、ソフトウェアなどの部品)は長方形で表し、状態f、tは楕円形で表している。なお、状態要素TC、UVは、状態要
素それぞれを識別する識別情報である。
The state model will be specifically described with reference to FIG. FIG. 1 is a diagram for explaining a state model. In FIG. 1, state elements TC and UV (for example, components such as software) are represented by rectangles, and states f and t are represented by ellipses. The state elements TC and UV are identification information for identifying each state element.
また、図1では、現在状態fを二重線の楕円形で表し、要求状態tを黒塗りの楕円形で表している。現在状態fは、例えば、ソフトウェアがインストールされていない状態を表し、要求状態tは、例えば、ソフトウェアがインストールされている状態を表している。 In FIG. 1, the current state f is represented by a double-lined ellipse, and the desired state t is represented by a black ellipse. The current state f represents, for example, a state in which software is not installed, and the desired state t represents, for example, a state in which software is installed.
更に、状態遷移を実線の矢印線で表し、依存性を破線の矢印線で表している。なお、図1では、依存性は、状態要素TCから要求状態tへ至る矢印線で表している。これは、状態要素TCにおける状態遷移が、要求状態tに依存していることを表す。言い換えれば、ある状態要素TCが、他の状態要素UVの状態に依存する状態遷移を含む場合、状態要素TCは状態要素UVに依存する。又は、状態要素TCは状態要素UVへの依存性を持つ。 Furthermore, state transitions are represented by solid arrow lines, and dependencies are represented by dashed arrow lines. In FIG. 1, the dependency is represented by an arrow line leading from the state element TC to the required state t. This indicates that the state transition in the state element TC depends on the desired state t. In other words, a state element TC depends on a state element UV if the state element TC includes a state transition that depends on the state of another state element UV. Alternatively, state element TC has a dependency on state element UV.
続いて、モデル開発の検証に関するテスト技術について説明する。システムの構成管理におけるモデル開発では、モデルの妥当性を確認するために、ソフトウェア開発と同様に、開発物が期待通りのものかを検証する必要がある。しかし、モデル開発の検証に関するテスト技術には、現状デファクトが存在しないため、モデル開発者がソフトウェアテスト技術を流用するなどして、独自のテストを行うにとどまる。 Next, test technology for model development verification will be explained. In model development in system configuration management, in order to confirm the validity of the model, it is necessary to verify whether the developed product is as expected, as in software development. However, since there is currently no de facto test technology for model development verification, model developers use software test technology to conduct their own tests.
テストケース(検証情報)は一般的に、ソフトウェアが多様な入力内容や利用環境に対して適切に動作することを確認するため、それらの多くのパラメータの組み合わせを網羅するよう作成する。ところが、その組み合わせの数は膨大であるため、テスト工数を現実的なものに抑えるためには、組み合わせの取捨選択が必要となる。 Test cases (verification information) are generally created to cover a large number of combinations of parameters in order to confirm that the software operates properly with various input contents and usage environments. However, since the number of combinations is enormous, it is necessary to select combinations in order to reduce the number of test man-hours to a realistic level.
そこで、モデル開発への適用が見込めるソフトウェアテスト技術の一つとしてペアワイズ法がある。ペアワイズ法は、テストの品質(例えば、バグを発見できる精度)を大きく損ねることなく、テストケースに採用する組み合わせを削減できる技術である。具体的には、全てのパラメータ間で全ての値の組み合わせを網羅するテストケースを作成するのではなく、任意の二つのパラメータに着目したとき、その二つのパラメータ間で全ての値の組み合わせが網羅されるテストケースを作成する。 Therefore, the pairwise method is one of the software testing techniques that can be expected to be applied to model development. The pairwise method is a technique that can reduce the number of combinations adopted for test cases without greatly impairing the quality of the test (for example, the accuracy with which bugs can be found). Specifically, instead of creating a test case that covers all combinations of values between all parameters, when you focus on any two parameters, all combinations of values between those two parameters are covered. create a test case that
ウェブサイトのテストケースの作成を例に説明する。図2は、ペアワイズ法を説明するための図である。具体的には、図2は、ユーザがウェブサイトにアクセスする際に利用する、オペレーティングシステム、ブラウザ、検索エンジンを組み合わせた、テストケースを示している。すなわち、ユーザが使用するパラメータの候補として、オペレーティングシステムではOS_W又はOS_Lを、ブラウザではBR_C又はBR_F、検索エンジンではSE_G又はSE_Yを想定したテストケースを示している。 Let's take the creation of test cases for a website as an example. FIG. 2 is a diagram for explaining the pairwise method. Specifically, Figure 2 shows a test case that combines the operating system, browser, and search engine that a user uses to access a website. That is, test cases are shown assuming OS_W or OS_L for the operating system, BR_C or BR_F for the browser, and SE_G or SE_Y for the search engine as candidates for the parameter used by the user.
この場合、パラメータそれぞれがとり得る値は二種類であるため、全てのパラメータ間での全ての値の組み合わせを網羅するテストケースを作成すると、8個(2の3乗個)のテストケースが作成される。 In this case, since each parameter can take two values, if test cases are created that cover all combinations of values between all parameters, 8 (2 3 ) test cases will be created. be done.
しかし、ペアワイズ法では、図2に示すように、4個のテストケースのみが作成される。理由は、図2のどの二つのパラメータ(列)に着目しても、それらのパラメータ間で全ての値を組み合わせた4種類(2の2乗)が網羅されている。このように、任意の二つのパラメータに着目したとき、その二つのパラメータ間で全ての値の組み合わせが網羅されるテストケースを作成するのがペアワイズ法である。 However, in the pairwise method, only four test cases are created, as shown in FIG. The reason is that no matter which two parameters (columns) in FIG. 2 are focused on, four types (2 squared) are covered by combining all values between those parameters. In this way, when attention is paid to two arbitrary parameters, the pairwise method creates test cases that cover all combinations of values between the two parameters.
また、ペアワイズ法では、ソフトウェアの不具合は、多くの場合、少ない要素(例えば、二つか三つの要素)間の組み合わせの問題により発生するという経験則に基づいている。従って、ペアワイズ法では、上述したテストの品質を大きく損ねることなく、テストケ
ース数を削減できる。
Pairwise methods are also based on the rule of thumb that software failures are often caused by combinatorial problems between a small number of factors (eg, two or three factors). Therefore, the pairwise method can reduce the number of test cases without greatly impairing the test quality described above.
更に、一般的なペアワイズ法は、入力や環境をパラメータとしたテスト技術であるため、状態モデルのテストには適さない。対して、状態遷移系を対象としたペアワイズ法は、状態モデルの基本的な概念は状態遷移系と同様であるため、状態モデルのテストに親和性があると考えられる。 Furthermore, the general pairwise method is a testing technique with input and environment as parameters, so it is not suitable for state model testing. On the other hand, the pairwise method for state transition systems is considered to have affinity for testing state models because the basic concept of state models is the same as that of state transition systems.
関連する技術として、非特許文献2には、状態をパラメータとし、遷移を値として、特定の条件を満たしたパスを全て列挙し、列挙したすべてのパスをテストケースとする技術が開示されている。
As a related technique, Non-Patent
また、非特許文献3には、テスト対象をモデル化した状態遷移系のパスを通るイベント列を列挙し、各イベント列に含まれるイベントの各パラメータの値をクラス分割し、イベント列ごとに、イベントをパラメータとし、クラスを値としたペアワイズ法を用いてテストケースを生成する技術が開示されている。
In addition, Non-Patent
しかしながら、非特許文献2、3に開示されている、上述したモデル開発の検証に関するテスト技術では、例えば、ICTシステムがとり得る状態の数が膨大であるにもかかわらず、それら膨大な状態を予め全て用意した上で、テスト処理を行う必要がある。また、実際のシステムは非常に大規模なため、それを現実的な時間で処理するためには、膨大な計算資源が必要になる。
However, in the test techniques related to verification of model development disclosed in Non-Patent
例えば、ICTシステムがとり得る状態を全て記憶できるサイズの記憶部などが必要になるが、通常そのような条件を満たすことは難しい。仮に、そのような条件を満たせたとしても、構築又は変更に関する処理の処理速度は大幅に低下してしまう。 For example, a storage unit with a size that can store all possible states of the ICT system is required, but normally it is difficult to satisfy such a condition. Even if such a condition could be satisfied, the processing speed of the construction or change process would be greatly reduced.
また、非特許文献2、3に開示されている、上述したモデル開発の検証に関するテスト技術では、システム全体から見た状態が異なる場合、部品をペアワイズ法における異なるパラメータとして扱う。そのため、ICTシステムを構成する殆どの部品の状態が同じだとしても、部品の一部でも状態が異なる場合、パラメータ間で全てのパラメータ値(ICTシステムに対する操作)の組み合わせを網羅する検証を行う。
In addition, in the above-described test techniques related to verification of model development disclosed in
ペアワイズ法における、ICTシステムの不具合は、少数の部品間における状態と、操作の組み合わせとにより発生するケースが多いという考え方からすれば、上述したテスト技術における検証は、粒度が細かすぎるため、テストケースが膨大になる。そのため、膨大な計算資源が必要になる。 In the pairwise method, failures in ICT systems are often caused by combinations of states and operations between a small number of parts. becomes enormous. Therefore, enormous computational resources are required.
本発明の目的の一例は、システムにおける計算資源を削減する検証情報生成装置、検証情報生成方法、及び検証情報生成プログラムを提供することにある。 An example of an object of the present invention is to provide a verification information generation device, a verification information generation method, and a verification information generation program that reduce computational resources in a system.
上記目的を達成するため、本発明の一側面における検証情報生成装置は、
システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、状態遷移検出部と、
状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、状態遷移ペア管理部と、
前記状態遷移検出部で検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、遷移選択部と、
前記遷移選択部が選択した前記遷移に基づいてテストケースを生成する、テストケース生成部と、
を有することを特徴とする。
In order to achieve the above object, a verification information generation device according to one aspect of the present invention includes:
a state transition detection unit that detects one or more transitions that can be executed from a target state extracted from the state elements of the state model corresponding to the system;
a state transition pair management unit that manages a plurality of state transition pair information in which states and transitions are associated;
a transition selection unit that selects, from among the transitions detected by the state transition detection unit, a transition having the largest number of state transition pair information detected when a transition that has not yet been selected is executed;
a test case generation unit that generates a test case based on the transition selected by the transition selection unit;
characterized by having
また、上記目的を達成するため、本発明の一側面における検証情報生成方法は、
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を有することを特徴とする。
Further, in order to achieve the above object, a verification information generation method according to one aspect of the present invention includes:
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to the system;
(b) managing a plurality of state transition pair information in which states and transitions are associated; and (c) executing transitions not yet selected among the transitions detected in step (a) selecting the transition with the highest number of said state transition pair information detected in the case;
(d) generating test cases based on the transitions selected in step (c);
characterized by having
更に、上記目的を達成するため、本発明の一側面における検証情報生成プログラムは、
コンピュータに
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を実行させることを特徴とする。
Furthermore, in order to achieve the above object, the verification information generation program in one aspect of the present invention
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to a system;
(b) managing a plurality of state transition pair information in which states and transitions are associated; and (c) executing transitions not yet selected among the transitions detected in step (a) selecting the transition with the highest number of said state transition pair information detected in the case;
(d) generating test cases based on the transitions selected in step (c);
is characterized by executing
以上のように本発明によれば、システムにおける計算資源を削減することができる。 As described above, according to the present invention, computational resources in the system can be reduced.
(実施の形態)
以下、本発明の実施の形態について、図3から図11を参照しながら説明する。
(Embodiment)
Embodiments of the present invention will be described below with reference to FIGS. 3 to 11. FIG.
[装置構成]
最初に、図3を用いて、本実施の形態における検証情報生成装置の構成について説明する。図3は、検証情報生成装置の一例を示す図である。
[Device configuration]
First, with reference to FIG. 3, the configuration of the verification information generation device according to this embodiment will be described. FIG. 3 is a diagram illustrating an example of a verification information generation device;
図3に示すように、検証情報生成装置1は、システム(例えば、ICTシステムなど)における計算資源を削減するための装置である。検証情報生成装置1は、状態遷移検出部2と、状態遷移ペア管理部3と、遷移選択部4と、テストケース生成部5とを有する。
As shown in FIG. 3, the verification
このうち、状態遷移検出部2は、システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する。状態遷移ペア管理部3は、状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する。遷移選択部4は、状態遷移検出部2で検出した遷移のうち、まだ選択していない遷移を実行した場合に検出される状態遷移ペア情報の数が最も多い遷移を選択する。テストケース生成部5は、遷移選択部4が選択した遷移に基づいてテストケースを生成する。
Of these, the state
このように、本実施の形態では、ペアワイズ法の考えに則り、予め生成した状態遷移ペア情報を用いて、必要な範囲のテストケースを生成する。そのため、従来のようにシステムがとり得る膨大な数の状態を、予め全て用意してからシステムの構築又は変更に関する処理を行う必要がないので、処理に必要な計算資源を削減することができる。また、計算資源を削減できるため、より大規模なシステムの検証ができる。更に、テストケースの数を削減できるので、検証をする工数も削減できる。 As described above, in accordance with the concept of the pairwise method, the present embodiment uses state transition pair information generated in advance to generate test cases within a necessary range. Therefore, unlike the conventional system, there is no need to prepare in advance all of the huge number of possible states that the system can take before performing processing related to building or changing the system, so that computational resources required for processing can be reduced. In addition, since computational resources can be reduced, it is possible to verify a larger-scale system. Furthermore, since the number of test cases can be reduced, the man-hours for verification can also be reduced.
続いて、図4を用いて、本実施の形態における検証情報生成装置1の構成をより具体的に説明する。図4は、検証情報生成装置を有するシステムを示す図である。
Next, with reference to FIG. 4, the configuration of the verification
図4に示すように、本実施の形態における検証情報生成装置1は、状態遷移検出部2と、状態遷移ペア管理部3と、遷移選択部4と、テストケース生成部5とに加えて、入力装置6と、出力装置7、記憶部8とを有する。
As shown in FIG. 4, the verification
状態遷移検出部2は、対象とする状態CS1が遷移できる遷移を検出する。具体的には、状態遷移検出部2は、システムに対応する、複数の状態要素を有する状態モデルを取得し、取得した状態モデルを用いて、システム全体の現在の状態CS1を検出する。続いて、状態遷移検出部2は、検出した状態CS1を、検出済みの状態として、検出済みの状態を記憶する状態集合部ES1に記憶する。状態集合部ES1は、検証情報生成装置1内部に設けられている記憶部8、又は、その外部に設けられている不図示の記憶部に設けられる。続いて、状態遷移検出部2は、状態CS1から実行可能な遷移を全て取得する。
The state
また、状態遷移検出部2は、対象とする状態CS1が遷移することで得られる状態NS1を検出し、検出した状態NS1を次の対象とする状態CS1とする。
Further, the state
状態遷移ペア管理部3は、状態遷移ペア管理部3内部の記憶部、又は、上述した記憶部8などに予め設けられる状態遷移ペア記憶部MI1を管理する。状態遷移ペア記憶部MI1は、状態要素が状態を遷移した場合における、遷移の主体と異なる状態要素の状態と、遷移の主体となる状態要素の遷移とを関連付けた状態遷移ペア情報を、複数有する。
The state transition
具体的には、状態遷移ペア管理部3は、状態遷移検出部2が状態CS1を遷移させる場合、状態遷移ペア記憶部MI1を参照して、遷移の主体と異なる状態要素ごとに、遷移させる前の状態要素の状態と、遷移の主体となる状態要素の遷移とに一致する、状態遷移ペア情報を検出する。なお、状態遷移ペア情報を検出した場合、状態遷移ペア管理部3は、状態遷移ペア情報に検出したことを示すチェック情報を関連付ける(チェックする)。
Specifically, when the state
更に、図5、図6を用いて具体的に状態遷移ペア情報の生成方法について説明する。図5、図6は、状態モデルの一例を示す図である。図5に示すシステムは、状態要素(部品)A、Bを有している。部品A、Bそれぞれは、状態fと状態tとを有する。また、部品A、Bが有する状態f、tは、状態fから状態tへ遷移(f→t)する。また、状態tから状態fへ遷移(t→f)する。 Further, a method of generating state transition pair information will be specifically described with reference to FIGS. 5 and 6. FIG. 5 and 6 are diagrams showing examples of state models. The system shown in FIG. 5 has state elements (parts) A and B. In FIG. Parts A and B each have a state f and a state t. Also, the states f and t of the parts A and B transition from the state f to the state t (f→t). Also, the state t transits to the state f (t→f).
図5、6では、状態要素A、B、C(例えば、ソフトウェアなどの部品)は長方形で表し、状態f、tは楕円形で表している。また、図5、6では、現在状態fを二重線の楕円形で表し、要求状態tを黒塗りの楕円形で表している。例えば、現在状態fは、例えば、ソフトウェアがインストールされていない状態を表し、要求状態tは、例えば、ソフトウェアがインストールされている状態を表している。なお、状態遷移を実線の矢印線で表し、依存性を破線の矢印線で表している。 In FIGS. 5 and 6, state elements A, B, and C (for example, software components) are represented by rectangles, and states f and t are represented by ellipses. 5 and 6, the current state f is represented by a double-lined ellipse, and the desired state t is represented by a black ellipse. For example, the current state f represents, for example, a state in which software is not installed, and the desired state t represents, for example, a state in which software is installed. State transitions are indicated by solid arrow lines, and dependencies are indicated by broken arrow lines.
例えば、部品A、Bそれぞれの初期状態が状態fである場合に、部品Aが状態fから状態tへ遷移(A:f→t)したとする。この場合、状態遷移ペア管理部3は、部品Bの状態fと、部品Aの遷移(A:f→t)とを関連付けて状態遷移ペア情報として、状態遷移ペア記憶部MI1に記憶する。
For example, when the initial states of parts A and B are state f, part A transitions from state f to state t (A: f→t). In this case, the state transition
続けて、部品Aが状態tで、部品Bが状態fである場合、部品Bが状態fから状態tへ遷移(B:f→t)したとする。この場合、状態遷移ペア管理部3は、部品Aの状態fと、部品Bの遷移(B:f→t)とを関連付けて状態遷移ペア情報として、状態遷移ペア記憶部MI1に記憶する。
Next, when part A is in state t and part B is in state f, it is assumed that part B transitions from state f to state t (B: f→t). In this case, the state transition
このように、状態遷移ペア情報の全ての組み合わせを、予め状態遷移ペア記憶部MI1に記憶する。ただし、状態遷移ペア管理部3は、依存関係により、成立しない状態遷移ペア情報は状態遷移ペア記憶部MI1に記憶しない。図5において、予め状態遷移ペア記憶部MI1に記憶する状態遷移ペア情報の組み合わせを以下に示す。
In this way, all combinations of state transition pair information are stored in advance in the state transition pair storage section MI1. However, the state transition
(A:f,B:f→t)
(A:f,B:t→f)
(A:t,B:f→t)
(B:f,A:f→t)
(B:f,A:t→f)
(B:t,A:f→t)
(B:t,A:t→f)
(A: f, B: f→t)
(A: f, B: t→f)
(A: t, B: f→t)
(B: f, A: f→t)
(B: f, A: t→f)
(B: t, A: f→t)
(B: t, A: t→f)
なお、状態遷移ペア情報(A:t,B:t→f)は、図5に示すように、依存関係が存在するため、部品Aが状態tのとき、部品Bは遷移t→fを実行できないからである。 Note that state transition pair information (A: t, B: t→f) has a dependency relationship as shown in FIG. Because you can't.
また、システム全体を構成する部品の数が増えても、状態遷移ペア情報の形式には変化はない。図6に示すシステムは、状態要素(部品)A、B、Cを有する。部品A、B、Cそれぞれの初期状態が状態fである場合、部品Aが状態fから状態tへ遷移(A:f→t)したとする。この場合、部品Bの状態fと、部品Aの遷移(A:f→t)とを関連付けて状態遷移ペア情報として、状態遷移ペア記憶部MI1に記憶する。 Also, even if the number of components that make up the entire system increases, the format of the state transition pair information does not change. The system shown in FIG. 6 has state elements (parts) A, B, and C; Assume that the initial state of parts A, B, and C is state f, and part A transitions from state f to state t (A: f→t). In this case, the state f of the component B and the transition of the component A (A: f→t) are associated and stored as state transition pair information in the state transition pair storage section MI1.
図6のシステムの部品A、B、Cそれぞれの初期状態が状態fである場合には、いずれも初期状態状態fから部品Aが状態tへ遷移(f→tを実行)した場合、チェックされる状態遷移ペア情報は(B:f,A:f→t)と(C:f,A:f→t)である。 When the initial state of each of the components A, B, and C in the system of FIG. State transition pair information is (B: f, A: f→t) and (C: f, A: f→t).
なお、上述した状態遷移検出部2が検出する状態及び状態集合部ES1が記憶する状態と、状態遷移ペア情報として記憶される状態とは、同じ粒度ではない。すなわち、状態遷移検出部2が検出する状態及び状態集合部ES1が記憶する状態は、システム全体の状態である。図6の例であれば、部品Aが状態tかつ部品Bが状態fかつ部品Cが状態fと表される情報である。対して、状態遷移ペアとして保持される状態は、任意の一つの部品の状態を示す。
The states detected by the state
続いて、状態遷移ペア管理部3が予め生成する状態遷移ペア情報の生成方法について説明する。システムに含まれる任意の状態要素(部品)のペアについて、一方の状態要素の状態と、他方の状態要素の遷移の組み合わせとを全て生成する。ただし、依存性の都合で実現し得ない状態遷移ペア情報は除外する。
Next, a method of generating state transition pair information generated in advance by the state transition
例えば、図5における任意の部品の状態遷移ペア情報の一例として、部品Aと部品Bのペアの場合であれば、生成する状態遷移ペア情報は上述した通りである。 For example, in the case of a pair of parts A and B as an example of the state transition pair information of an arbitrary part in FIG. 5, the state transition pair information to be generated is as described above.
これは、部品Aの状態f及びtと部品Bの遷移f→t及びt→f、並びに部品Bの状態f及びtと部品Aの遷移f→t及びt→fの全てのペアを列挙している。ただし、依存性の都合で実現し得ない(A:t,B:t→f)は除く。これを、任意の部品のペア全てについて作成する。例えば、図5のシステムにおける部品のペアはAとBのみだが、図6のシステムにおける部品のペアはAとB、AとC、BとCである。 This enumerates all pairs of states f and t of part A and transitions f→t and t→f of part B, and states f and t of part B and transitions f→t and t→f of part A. ing. However, (A: t, B: t→f), which cannot be realized due to dependencies, is excluded. This is created for all pairs of arbitrary parts. For example, the only component pairs in the system of FIG. 5 are A and B, whereas the component pairs in the system of FIG. 6 are A and B, A and C, and B and C.
なお、パラメータの全ての組み合わせについてテストするのではなく、任意の二つのパラメータの組み合わせについてテストするのがペアワイズ法である。 Note that the pairwise method tests not all combinations of parameters, but any combination of two parameters.
遷移選択部4は、状態遷移検出部2により抽出した遷移のうちで、まだ選択していない遷移から実行することで、チェックされる状態遷移ペア情報の数が最も多い遷移T1を選択する。具体的には、遷移選択部4は、現在の対象である状態CS1から各部品(状態要素)が遷移可能な候補のうち、実行することで状態遷移ペア管理部3が管理するチェック済みの状態遷移ペアが最も多くなる遷移を選択する。
The
テストケース生成部5は、状態遷移検出部2が状態遷移系を探索した範囲において、システムを検証するためのテストケース(検証情報)を生成する。テストケースは、例えば、システムの初期状態からある状態まで、部品ごとに実行した遷移の列である。部品の遷移は、システム構築又は変更の全体の手順のうち、部品が行う単一の工程と同義であり、遷移の列は、システム構築又は変更の全体の手順と同義である。
The test
図3のシステムにおいて、部品Aが遷移(A:f→t)を実行した後、部品Bが遷移(B:f→t)を実行するという遷移列は、テストケースの一つである。図7は、テストケース(遷移列)の一例を示す図である。なお、図7はイメージであり、図7の形式に限定されるものではない。 In the system of FIG. 3, a transition sequence in which part A executes transition (A: f→t) and then part B executes transition (B: f→t) is one of the test cases. FIG. 7 is a diagram showing an example of a test case (transition sequence). Note that FIG. 7 is an image, and is not limited to the format of FIG.
入力装置6は、検証情報生成装置1に接続され、状態モデルを検証情報生成装置1へに出力する装置である。出力装置7は、検証情報生成装置1に接続され、検証情報生成装置1から出力されるテストケースを取得する装置である。
The
[装置動作]
次に、本発明の実施の形態における検証情報生成装置1の動作について図8を用いて説明する。図8は、検証情報生成装置の動作の一例を示す図である。以下の説明においては、適宜図3から図7を参酌する。また、本実施の形態では、検証情報生成装置1を動作させることによって、検証情報生成方法が実施される。よって、本実施の形態における検証情報生成方法の説明は、以下の検証情報生成装置の動作説明に代える。
[Device operation]
Next, the operation of the verification
まず、検証情報生成装置1は、検証対象のシステムの状態モデルM1を取得する(ステップA1)。具体的には、検証情報生成装置1は、入力装置6から出力された状態モデルM1を取得する。続いて、検証情報生成装置1は、状態モデルM1からシステム全体の初期状態IS1を検出する(ステップA2)。
First, the verification
その後、検証情報生成装置1は、初期状態IS1を最初の探索対象とし、再帰的に深さ優先探索を行う(ステップA3)。ステップA3の処理については後述する。続いて、検証情報生成装置1は、ステップA3で記憶した全てのテストケースを出力する(ステップA4)。具体的には、検証情報生成装置1は、出力装置7へテストケースを出力する。
After that, the verification
続いて、図9、図10を用いて、ステップA3の動作について詳細に説明する。図9は、ステップA3の疑似コードの一例を示す図である。図10は、ステップA3の動作の一例を示す図である。 Next, the operation of step A3 will be described in detail with reference to FIGS. 9 and 10. FIG. FIG. 9 is a diagram showing an example of pseudo code for step A3. FIG. 10 is a diagram showing an example of the operation of step A3.
最初に、状態遷移検出部2は、現在の対象である状態CS1が検出済みか、又は、状態遷移ペア情報の全てがチェック済みであるか否かを判定する(ステップA131)。
First, the
テストケース生成部5は、現在探索対象の状態CS1が状態集合部ES1に記憶されているか、又は、状態遷移ペア管理部3が管理する状態遷移ペア情報の全てがチェック済みである場合(ステップA131:Yes)、その時点における、遷移を記憶する遷移スタックTS1の内容をテストケースとして、上述した記憶部8などに記憶する(ステップA132)。
If the state CS1 to be searched currently is stored in the state collection unit ES1, or if all of the state transition pair information managed by the state transition
その後、状態遷移検出部2は、現在のステップA3の再帰処理を終了する。
After that, the state
なお、ステップA3は、ステップ全体で、上述した再帰的な深さ優先探索における再帰一段分の処理を表している。また、後述するステップA141で次の段の再帰に進む。また、ステップA132は、再帰処理全体を終了するのではなく、再帰一段分(ステップA3一つ分)を終了する。従って、次の処理は、一つ前の段の再帰のステップA141となる。なお、ステップA141において、最初の段の再帰であった場合、再帰処理全体が終了する。 It should be noted that step A3 as a whole represents processing for one step of recursion in the above-described recursive depth-first search. In step A141, which will be described later, the recursion proceeds to the next stage. Further, step A132 does not end the entire recursive process, but ends one recursive step (one step A3). Therefore, the next process is the recursive step A141 of the previous stage. It should be noted that in step A141, if the recursion is the first stage, the entire recursive process ends.
続いて、状態遷移検出部2は、現在探索対象の状態CS1が状態集合部ES1に含まれているか、又は、状態遷移ペア管理部3が管理する状態遷移ペア情報の全てがチェック済みでない場合(ステップA131:No)、状態CS1を状態集合部ES1に記憶する(ステップA133)。
Next, the state
具体的には、対象とする状態CS1が初期状態に最初に訪れる場合、現在探索対象の状
態CS1が状態集合部ES1に含まれず、かつ状態遷移ペア情報全てがチェック済みではないので、状態遷移検出部2はステップA133の処理を実行する。一方、現在探索対象の状態CS1が初期状態に戻る(二回目以降訪れる)場合、初期状態は必ず最初に探索済みなので、状態集合部ES1に含まれており、再帰を一段終了する。
Specifically, when the target state CS1 first visits the initial state, the current search target state CS1 is not included in the state collection unit ES1 and all of the state transition pair information has not been checked.
なお、状態遷移検出部2は、現在探索対象の状態CS1を探索した場合に、記憶部8に検出済み状態であることを記憶する。例えば、対象とする状態CS1を、状態集合部ES1に追加する。
Note that the state
続いて、状態遷移検出部2は、対象とする状態CS1から実行可能な遷移全て抽出する(ステップA134)。続いて、状態遷移検出部2は、抽出した遷移に、まだ選ばれていない遷移があるか否かを判定する(ステップA135)。状態遷移検出部2は、選ばれていない遷移がある場合(ステップA135:Yes)、ステップA136の処理を実行する。また、選ばれていない遷移がない場合(ステップA135:No)、状態遷移検出部2は、ステップA142の処理を実行する。
Subsequently, the
続いて、状態遷移検出部2は、選ばれていない遷移がある場合、残りの遷移において新たにチェックされる状態遷移ペア情報があるか否かを判定する(ステップA136)。
Subsequently, if there is an unselected transition,
残りの遷移において新たにチェックされる状態遷移ペア情報がある場合(ステップA136:Yes)、状態遷移検出部2は、ステップA137の処理を実行する。また、残りの遷移で新たにチェックされる状態遷移ペア情報がない場合(ステップA136:No)、状態遷移検出部2は、ステップA142の処理を実行する。
If there is state transition pair information to be newly checked in the remaining transitions (step A136: Yes), the
ステップA137においては、遷移選択部4が、ステップA134において状態遷移検出部2により抽出した遷移のうち、まだ選択していない遷移から実行することで、チェックされる状態遷移ペア情報の数が最も多い遷移T1を選択する。具体的には、遷移選択部4は、現在の対象である状態CS1から各部品が遷移可能な候補のうち、実行することで状態遷移ペア管理部3が管理するチェック済みの状態遷移ペアが最も多くなる遷移を選択する。
At step A137, the
続いて、状態遷移検出部2は、例えば、遷移スタックTS1に選択した遷移T1をプッシュする(ステップA138)。続いて、状態遷移検出部2は、対象とする状態CS1が遷移することで得られる状態NS1を検出し、検出した状態NS1を、次の対象とする状態CS1とする。
Subsequently, the
続いて、状態遷移ペア管理部3は、部品の状態と遷移T1との状態遷移ペア情報をチェック済みにする(ステップA139)。具体的には、状態遷移ペア管理部3は、遷移T1を遷移させる主体である部品と異なる部品それぞれの状態を列挙し、その中の任意の一つの状態と遷移T1と一致する状態遷移ペア情報を全て検出する。そして、状態遷移ペア管理部3は、状態遷移ペア情報に検出したことを示すチェック情報を関連付ける。
Subsequently, the state transition
続いて、状態遷移検出部2は、現在探索対象の状態CS1が遷移T1することで得られる状態NS1を探索対象として、再帰的に深さ優先探索を行う(ステップA140)。ただし、状態遷移検出部2は、再帰的な深さ優先探索が完了した場合(再帰処理がここまで戻ってきた場合)、遷移スタックTS1から遷移T1をポップする(ステップA141)。
Subsequently, the state
続いて、状態遷移検出部2は、ステップA137において一度も遷移を選んでいないか否かを判定する(ステップA142)。ステップA137において一度も遷移を選んでい
ない場合(ステップA142:Yes)、状態遷移検出部2は、ステップA132の処理を実行する。ステップA137において一度でも遷移を選んでいる場合(ステップA142:No)、状態遷移検出部2は、ステップA3の処理を終了する(再帰一段分の処理を終了する)。
Subsequently, state
そして、状態遷移検出部2は、ステップA137で選択していない遷移がなくなるまで、ステップA135からA141の処理を繰り返し実行する(ステップA135:Yes)。また、ステップA137で遷移を選択する際、新たにチェックされる状態遷移ペア情報がない遷移だけの場合、ステップA135からA141の繰り返し処理を抜ける(ステップA136:No)。
Then, the state
更に、ステップA135又はステップA136で繰り返し処理を抜けた際、ステップA137で一つも遷移を選択しなかった場合、テストケース生成部5は、その時点での遷移スタックTS1の内容を、テストケースとして記憶部8などに記憶する。すなわち、ステップA134で取得した遷移全てが、新たにチェックされる状態遷移ペア情報がない場合、テストケース生成部5は、その時点での遷移スタックTS1の内容を、テストケースとして記憶部8などに記憶する。そして、状態遷移検出部2は、ステップA3の処理を終了する(再帰一段分の処理を終了する)。
Furthermore, when the iterative process is exited in step A135 or step A136, if no transition is selected in step A137, the
[本実施の形態の効果]
以上のように、本実施の形態によれば、ペアワイズ法の考えに則り、予め生成した状態遷移ペア情報を用いて、必要な範囲のテストケースを生成する。そのため、従来のようにシステムがとり得る膨大な数の状態を、予め全て用意してからシステムの構築又は変更に関する処理を行う必要がないので、処理に必要な計算資源を削減することができる。また、計算資源を削減できるため、より大規模なシステムの検証ができる。更に、テストケースの数を削減できるので、検証をする工数も削減できる。
[Effects of this embodiment]
As described above, according to the present embodiment, in accordance with the idea of the pairwise method, test cases within a necessary range are generated using state transition pair information generated in advance. Therefore, unlike the conventional system, there is no need to prepare in advance all of the huge number of possible states that the system can take before performing processing related to building or changing the system, so that computational resources required for processing can be reduced. In addition, since computational resources can be reduced, it is possible to verify a larger-scale system. Furthermore, since the number of test cases can be reduced, the man-hours for verification can also be reduced.
例えば、状態遷移検出部2は、複数の部品から構成されるICTシステムの状態遷移系を探索するにあたって、遷移選択部4の出力に従い次に実行する遷移を決定しながら探索を行う。また、状態遷移ペア管理部3は、状態遷移検出部2が状態遷移系の遷移を実行する際、遷移の動作主体と異なるICTシステム部品毎に、遷移実行前のICTシステム部品の状態と、実行する遷移とのペア(状態遷移ペア)をチェックする。また、遷移選択部4は、状態遷移検出部2が探索中の状態遷移系の現在状態から実行する遷移を決定するにあたって、遷移の候補のうち、実行することで状態遷移ペア管理部3が管理するチェック済み状態遷移ペアが最も多くなる遷移を選択する。そして、テストケース生成部5は、状態遷移検出部2が状態遷移系を探索した範囲をカバーするテストケースを生成する。
For example, the state
そうすることで、ICTシステムがとり得る膨大な数の状態を、予め全て用意してからICTシステムの構築又は変更に関する処理を行う必要がないので、処理に必要な計算資源を削減することができる。また、計算資源を削減できるため、より大規模なシステムの検証ができる。更に、テストケースの数を削減できるので、検証をする工数も削減できる。 By doing so, it is not necessary to prepare in advance all of the huge number of states that the ICT system can take before performing processing related to construction or modification of the ICT system, so it is possible to reduce the computational resources required for processing. . In addition, since computational resources can be reduced, it is possible to verify a larger-scale system. Furthermore, since the number of test cases can be reduced, the man-hours for verification can also be reduced.
[プログラム]
本発明の実施の形態におけるプログラムは、コンピュータに、図8に示すステップA1からA4、及び、図9、10に示すステップA131からA142を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における検証情報生成装置と検証情報生成方法とを実現することができる。この場合、コンピュータのプロセッサは、状態遷移検出部2と、状態遷移ペア管理部3と、遷移選択部4と、テストケース生成部5として機能し、処理を行なう。
[program]
The program according to the embodiment of the present invention may be any program that causes a computer to execute steps A1 to A4 shown in FIG. 8 and steps A131 to A142 shown in FIGS. By installing this program in a computer and executing it, the verification information generation device and the verification information generation method according to the present embodiment can be realized. In this case, the processor of the computer functions as a
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、状態遷移検出部2と、状態遷移ペア管理部3と、遷移選択部4と、テストケース生成部5のいずれかとして機能してもよい。
Also, the program in this embodiment may be executed by a computer system constructed by a plurality of computers. In this case, for example, each computer may function as one of the
[物理構成]
ここで、実施の形態におけるプログラムを実行することによって、検証情報生成装置を実現するコンピュータについて図11を用いて説明する。図11は、検証情報生成装置を実現するコンピュータの一例を示す図である。
[Physical configuration]
Here, a computer that implements the verification information generation device by executing the program in the embodiment will be described with reference to FIG. 11 . FIG. 11 is a diagram illustrating an example of a computer that implements the verification information generation device.
図11に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU(Graphics Processing Unit)、又はFPGA(Field-Programmable Gate Array)を備えていてもよい。
As shown in FIG. 11 ,
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。
The
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
Further, as a specific example of the
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
Data reader/
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
Specific examples of the
[付記]
以上の実施の形態に関し、更に以下の付記を開示する。上述した実施の形態の一部又は全部は、以下に記載する(付記1)から(付記12)により表現することができるが、以下の記載に限定されるものではない。
[Appendix]
Further, the following additional remarks are disclosed with respect to the above embodiment. Some or all of the embodiments described above can be expressed by the following (Appendix 1) to (Appendix 12), but are not limited to the following description.
(付記1)
システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、状態遷移検出部と、
状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、状態遷移ペア管理部と、
検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、遷移選択部と、
前記遷移選択部が選択した前記遷移に基づいてテストケースを生成する、テストケース生成部と、
を有することを特徴とする検証情報生成装置。
(Appendix 1)
a state transition detection unit that detects one or more transitions that can be executed from a target state extracted from the state elements of the state model corresponding to the system;
a state transition pair management unit that manages a plurality of state transition pair information in which states and transitions are associated;
a transition selection unit that selects a transition having the largest number of state transition pair information detected when a transition that has not yet been selected is executed from among the detected transitions;
a test case generation unit that generates a test case based on the transition selected by the transition selection unit;
A verification information generation device characterized by comprising:
(付記2)
付記1に記載の検証情報生成装置であって、
状態遷移検出部は、遷移選択部により選択された前記遷移を実行した次の状態を、新しい前記対象とする状態とする、
ことを特徴とする検証情報生成装置。
(Appendix 2)
The verification information generating device according to
The state transition detection unit sets the next state after executing the transition selected by the transition selection unit as the new target state,
A verification information generation device characterized by:
(付記3)
付記1又は2に記載の検証情報生成装置であって、
前記状態遷移ペア情報は、前記状態要素と異なる状態要素の状態と、前記遷移とが関連付けた情報である、
ことを特徴とする検証情報生成装置。
(Appendix 3)
The verification information generation device according to
The state transition pair information is information in which a state of a state element different from the state element is associated with the transition,
A verification information generation device characterized by:
(付記4)
付記1から3のいずれか一つに記載の検証情報生成装置であって、
前記状態遷移ペア管理部は、前記遷移を実行した場合、検出される状態遷移ペア情報にチェック情報を関連付ける、
ことを特徴とする検証情報生成装置。
(Appendix 4)
The verification information generation device according to any one of
The state transition pair management unit associates check information with detected state transition pair information when the transition is executed.
A verification information generation device characterized by:
(付記5)
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を有することを特徴とする検証情報生成方法。
(Appendix 5)
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to the system;
(b) managing a plurality of state transition pair information in which states and transitions are associated; and (c) executing transitions not yet selected among the transitions detected in step (a) selecting the transition with the highest number of said state transition pair information detected in the case;
(d) generating test cases based on the transitions selected in step (c);
A verification information generating method, characterized by comprising:
(付記6)
付記5に記載の検証情報生成方法であって、
前記(a)のステップにおいて、前記(c)のステップにより選択された前記遷移を実行した次の状態を、新しい前記対象とする状態とする、
ことを特徴とする検証情報生成方法。
(Appendix 6)
The verification information generation method according to
In the step (a), the next state after executing the transition selected in the step (c) is set as the new target state.
A verification information generation method characterized by:
(付記7)
付記5又は6に記載の検証情報生成方法であって、
前記状態遷移ペア情報は、前記状態要素と異なる状態要素の状態と、前記遷移とを関連付けた情報である、
ことを特徴とする検証情報生成方法。
(Appendix 7)
The verification information generation method according to
The state transition pair information is information that associates a state of a state element different from the state element with the transition,
A verification information generation method characterized by:
(付記8)
付記5から7のいずれか一つに記載の検証情報生成方法であって、
前記(b)のステップにおいて、前記遷移を実行した場合、検出される状態遷移ペア情報にチェック情報を関連付ける、
ことを特徴とする検証情報生成方法。
(Appendix 8)
The verification information generation method according to any one of
In step (b), when the transition is executed, the detected state transition pair information is associated with check information;
A verification information generation method characterized by:
(付記9)
コンピュータに
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を実行させることを特徴とする検証情報生成プログラム。
(Appendix 9)
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to a system;
(b) managing a plurality of state transition pair information in which states and transitions are associated; and (c) executing transitions not yet selected among the transitions detected in step (a) selecting the transition with the highest number of said state transition pair information detected in the case;
(d) generating test cases based on the transitions selected in step (c);
A verification information generation program characterized by executing
(付記10)
付記9に記載の検証情報生成プログラムであって、
前記(a)のステップにおいて、前記(c)のステップにより選択された前記遷移を実行した次の状態を、新しい前記対象とする状態とする、
ことを特徴とする検証情報生成プログラム。
(Appendix 10)
The verification information generation program according to appendix 9,
In the step (a), the next state after executing the transition selected in the step (c) is set as the new target state.
A verification information generation program characterized by:
(付記11)
付記9又は10に記載の検証情報生成プログラムであって、
前記状態遷移ペア情報は、前記状態要素と異なる状態要素の状態と、前記遷移とを関連付けた情報である、
ことを特徴とする検証情報生成プログラム。
(Appendix 11)
The verification information generating program according to appendix 9 or 10,
The state transition pair information is information that associates a state of a state element different from the state element with the transition,
A verification information generation program characterized by:
(付記12)
付記9から11のいずれか一つに記載の検証情報生成プログラムであって、
前記(b)のステップにおいて、前記遷移を実行した場合、検出される状態遷移ペア情報にチェック情報を関連付ける、
ことを特徴とする検証情報生成プログラム。
(Appendix 12)
The verification information generation program according to any one of Appendices 9 to 11,
In step (b), when the transition is executed, the detected state transition pair information is associated with check information;
A verification information generation program characterized by:
以上のように本発明によれば、システムにおける計算資源を削減することができる。本発明は、状態モデルを検証する分野において有用である。 As described above, according to the present invention, computational resources in the system can be reduced. INDUSTRIAL APPLICABILITY The present invention is useful in the field of verifying state models.
1 検証情報生成装置
2 状態遷移検出部
3 状態遷移ペア管理部
4 遷移選択部
5 テストケース生成部
6 入力装置
7 出力装置
8 記憶部
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス
1 verification
112
Claims (6)
状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、状態遷移ペア管理手段と、
前記状態遷移検出手段で検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、遷移選択手段と、
前記遷移選択手段が選択した前記遷移に基づいてテストケースを生成する、テストケース生成手段と、
を有することを特徴とする検証情報生成装置。 State transition detection means for detecting one or more transitions that can be executed from a target state extracted from the state elements of the state model corresponding to the system;
state transition pair management means for managing a plurality of state transition pair information in which states and transitions are associated;
transition selection means for selecting, from among the transitions detected by the state transition detection means, a transition having the largest number of state transition pair information detected when a transition that has not yet been selected is executed;
test case generation means for generating a test case based on the transition selected by the transition selection means;
A verification information generation device characterized by comprising:
状態遷移検出手段は、遷移選択手段により選択された前記遷移を実行した次の状態を、新しい前記対象とする状態とする、
ことを特徴とする検証情報生成装置。 The verification information generation device according to claim 1,
The state transition detection means sets the next state after executing the transition selected by the transition selection means as the new target state,
A verification information generation device characterized by:
前記状態遷移ペア情報は、前記状態要素と異なる状態要素の状態と、前記遷移とを関連付けた情報である
ことを特徴とする検証情報生成装置。 The verification information generation device according to claim 1 or 2,
The verification information generation device, wherein the state transition pair information is information that associates a state of a state element different from the state element with the transition.
前記状態遷移ペア管理手段は、前記遷移を実行した場合、検出される状態遷移ペア情報にチェック情報を関連付ける、
ことを特徴とする検証情報生成装置。 The verification information generation device according to any one of claims 1 to 3,
The state transition pair management means associates check information with state transition pair information detected when the transition is executed.
A verification information generation device characterized by:
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、
(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を実行する検証情報生成方法。 the computer
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to the system;
(b) managing a plurality of state transition pair information with associated states and transitions;
(c) selecting, from among the transitions detected in step (a), a transition having the largest number of state transition pair information detected when a transition that has not yet been selected is executed;
(d) generating test cases based on the transitions selected in step (c);
Verification information generation method that performs
(a)システムに対応する状態モデルの状態要素から抽出した、対象とする状態から実行できる一つ以上の遷移を検出する、ステップと、
(b)状態と遷移とが関連付けられた複数の状態遷移ペア情報を管理する、ステップと、
(c)前記(a)のステップにおいて検出した前記遷移のうち、まだ選択していない遷移を実行した場合に検出される前記状態遷移ペア情報の数が最も多い遷移を選択する、ステップと、
(d)前記(c)のステップにおいて選択した前記遷移に基づいてテストケースを生成する、ステップと、
を実行させることを特徴とする検証情報生成プログラム。
(a) detecting one or more transitions that can be executed from a state of interest extracted from state elements of a state model corresponding to a system;
(b) managing a plurality of state transition pair information with associated states and transitions;
(c) selecting, from among the transitions detected in step (a), a transition having the largest number of state transition pair information detected when a transition that has not yet been selected is executed;
(d) generating test cases based on the transitions selected in step (c);
A verification information generation program characterized by executing
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018131115A JP7210917B2 (en) | 2018-07-10 | 2018-07-10 | Verification information generation device, verification information generation method, and verification information generation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018131115A JP7210917B2 (en) | 2018-07-10 | 2018-07-10 | Verification information generation device, verification information generation method, and verification information generation program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020009271A JP2020009271A (en) | 2020-01-16 |
JP7210917B2 true JP7210917B2 (en) | 2023-01-24 |
Family
ID=69151894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018131115A Active JP7210917B2 (en) | 2018-07-10 | 2018-07-10 | Verification information generation device, verification information generation method, and verification information generation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7210917B2 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016151925A (en) | 2015-02-18 | 2016-08-22 | 日本電信電話株式会社 | Priority imparting device, priority imparting method, and priority imparting program |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1040316A (en) * | 1996-07-18 | 1998-02-13 | Toshiba Corp | Device and method for supporting test of graphics |
-
2018
- 2018-07-10 JP JP2018131115A patent/JP7210917B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016151925A (en) | 2015-02-18 | 2016-08-22 | 日本電信電話株式会社 | Priority imparting device, priority imparting method, and priority imparting program |
Also Published As
Publication number | Publication date |
---|---|
JP2020009271A (en) | 2020-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10747652B2 (en) | Automatic risk analysis of software | |
US10073974B2 (en) | Generating containers for applications utilizing reduced sets of libraries based on risk analysis | |
Sambasivan et al. | Principled workflow-centric tracing of distributed systems | |
CN101473301B (en) | Iterative static and dynamic software analysis | |
US20170068676A1 (en) | Layer Identification and Dependency Analysis for Management of Images | |
US11650905B2 (en) | Testing source code changes | |
US8418093B2 (en) | Method and system for design simplification through implication-based analysis | |
TWI468936B (en) | A system and method for the generation of verification programs | |
KR102013582B1 (en) | Apparatus and method for detecting error and determining corresponding position in source code of mixed mode application program source code thereof | |
JP3822044B2 (en) | Design verification system, design verification method, and computer-readable recording medium storing design verification program | |
JP2007034584A (en) | High order composition device, automatic high order composition method, high order composition program, and gate net list automatic verifying method | |
WO2015073469A1 (en) | Functional validation of software | |
Sun et al. | {KSG}: Augmenting kernel fuzzing with system call specification generation | |
JP2017174418A (en) | Data structure abstraction for model checking | |
US8245166B2 (en) | Optimal correlated array abstraction | |
JP5233355B2 (en) | Property generation system and property verification system | |
US11334349B2 (en) | Removing feature flag-related codebase from applications | |
JP7210917B2 (en) | Verification information generation device, verification information generation method, and verification information generation program | |
US20080295058A1 (en) | Representing binary code as a circuit | |
CN114174983B (en) | Method and system for optimized automatic verification of advanced constructs | |
JP2017041196A (en) | Stub object determination device, method, and program | |
US8352234B2 (en) | Model generation based on a constraint and an initial model | |
JP7380851B2 (en) | Test script generation device, test script generation method and program | |
JP6818568B2 (en) | Communication device, communication specification difference extraction method and communication specification difference extraction program | |
JP5755861B2 (en) | Test case generation apparatus, test case generation method, and test case generation program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210603 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220520 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220531 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220726 |
|
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: 20221213 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221226 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7210917 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |