JP2013200787A - モデル検査装置、モデル検査処理方法及びプログラム - Google Patents

モデル検査装置、モデル検査処理方法及びプログラム Download PDF

Info

Publication number
JP2013200787A
JP2013200787A JP2012069670A JP2012069670A JP2013200787A JP 2013200787 A JP2013200787 A JP 2013200787A JP 2012069670 A JP2012069670 A JP 2012069670A JP 2012069670 A JP2012069670 A JP 2012069670A JP 2013200787 A JP2013200787 A JP 2013200787A
Authority
JP
Japan
Prior art keywords
state
information
state transition
inspection
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012069670A
Other languages
English (en)
Inventor
Akira Fukuda
晃 福田
Noriyuki Katahira
典幸 片平
Weigiang Kong
維強 孔
Masahiko Watanabe
政彦 渡辺
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.)
Kyushu University NUC
Fukuoka Industry Science and Technology Foundation
Cats Co Ltd
Original Assignee
Kyushu University NUC
Fukuoka Industry Science and Technology Foundation
Cats Co 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 Kyushu University NUC, Fukuoka Industry Science and Technology Foundation, Cats Co Ltd filed Critical Kyushu University NUC
Priority to JP2012069670A priority Critical patent/JP2013200787A/ja
Publication of JP2013200787A publication Critical patent/JP2013200787A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】使い勝手の良いモデル検査装置を提供することである。
【解決手段】状態遷移表情報を取得する取得手段と、モデル検査の対象となるシステムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定手段と、取得された前記状態遷移表情報を、イベントの発生を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換手段と、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査手段と、前記検査部での検査結果を表示部に表示させる検査結果表示出力制御手段とを有する構成となる。
【選択図】図2

Description

本発明は、システムの振る舞いを記述した状態遷移表を用いて、該システムのモデル検査を行うモデル検査装置、モデル検査処理方法及びプログラムに関する。
ハードウェアやソフトウェアの設計から導出されたモデルが、設計仕様を満たすか否かを検査するモデル検査の手法が知られている。このモデル検査の手法では、検査対象となるモデルがとりうる状態ごとに、各状態が設計仕様を満たすか否かを網羅的に検査する。
従来、引用文献1に記載されるモデル検査支援装置が知られている。このモデル検査支援装置は、システムの状態遷移を記述する状態遷移表と、システムの状態毎にシステム内の構成要素の取り得る値を記述する制約条件表と、前記状態遷移表に記述したアクションの内容を記述するアクション表とを入力し、これらの表から抽出した記述に基づいて検証すべきシステムの動作と制約条件とを含んだモデル検査プログラムを生成する。そして、その生成されたモデル検査プログラムを、専用のモデル検査ツール(モデル検査器)が実行することにより、ハードウェアやソフトウェアで構築されるシステムが設計仕様を満たすか否かの検査がなされる。
特開2009−157661号公報
ところで、ハードウェア及びまたはソフトウェアにて構築されるシステムを設計するに際して、そのシステムの振る舞いを表す状態遷移表が作成された場合、その状態遷移表を用いて前記システムについてのモデル検査を行うことができる。そして、モデル検査の結果に基づいて状態遷移表の修正が行われ、その状態遷移表の修正と、モデル検査とを繰り返すことにより、所望の振る舞いを行ない得るシステムを設計することができる。このように、システムを設計するに際して、モデル検査が繰り返し行われることになるので、この種のモデル検査の手法にあっては、その使い勝手が良いことが望まれる。
本発明は、このような事情に鑑みてなされたもので、使い勝手の良いモデル検査装置を提供するものである。
また、本発明は、そのようなモデル検査装置においてなされるモデル検査処理の方法(モデル検査処理方法)及びそのモデル検査処理をコンピュータに実行させるためのプログラムを提供するものである。
本発明に係るモデル検査装置は、情報を処理する処理ユニットを有するコンピュータにより構成され、あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行うモデル検査装置であって、前記処理ユニットは、前記状態遷移表情報を取得する取得手段と、モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定手段と、取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換手段と、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査手段と、前記検査手段での検査結果を表示部に表示させる検査結果表示出力制御手段とを有する構成となる。
このような構成により、あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報が取得され、モデル検査の対象となる前記システムが持つべき性質を表す情報が検査性質情報として設定されると、前記状態遷移情報が、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換され、その木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かが検査される。そして、その検査結果が表示部に表示される。
本発明に係るモデル検査装置において、前記検査手段は、前記木構造状態遷移情報にて表される木構造のノード群の階層毎に、前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードを検出する反例検出手段と、前記最上位の階層のノードに対応する状態から検出された前記ノードに対応する状態までの遷移パスを検出する反例ルート検出手段とを有する構成とすることができる。
このような構成により、いずれかの階層において検査性質情報にて表されるシステムが持つべき性質に反する状態を表すノードが検出されると、最上位のノードに対応した状態から検出された前記ノードに対応する状態までの遷移パスが検出される。
また、本発明に係るモデル検査装置において、前記状態遷移表情報を記憶する記憶手段を有し、前記取得手段は、操作部での操作に応じて、前記記憶手段から前記状態遷移表情報を読み出して取得する構成とすることができる。
このような構成により、利用者が、操作部を操作することにより、記憶手段に記憶された状態遷移表情報をモデル検査に供することができるようになる。
また、本発明に係るモデル検査装置において、前記状態遷移表情報は、複数の状態遷移表のそれぞれを表し、前記取得手段は、操作部での操作に応じて、前記複数の状態遷移表から一又は複数の状態遷移表を選択する選択手段を有し、該選択手段にて選択された一又は複数の状態遷移表のそれぞれを表す状態遷移表情報を取得する構成とすることができる。
このような構成により、システムの振る舞いが複数の状態遷移表にて表される場合に、利用者は、操作部を操作することにより、モデル検査に供すべき一又は複数の状態遷移表のそれぞれを表す状態遷移情報を選択することができるようになる。このため、検査対象を絞りこむことが可能となり、より使い勝手の良いものとなる。
また、本発明に係るモデル検査装置において、前記処理ユニットは、操作部での操作に応じて、前記検査手段が前記木構造状態遷移情報を処理して前記状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどるべき階層の数を設定する階層範囲設定手段を有する構成とすることができる。
このような構成により、利用者は、操作部を操作することにより、前記木構造状態遷移情報を処理して前記状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどるべき階層の数を設定することができるようになるので、検査対象を絞りこむことが可能となり、より使い勝手の良いものとなる。
更に、本発明に係るモデル検査装置において、前記処理ユニットは、操作部での操作に応じて、前記検査手段が前記木構造状態遷移情報を処理して前記遷移パスに沿ってたどるべきノードに含まれる変数の初期値及びその取り得る範囲を設定する変数範囲設定手段を有する構成とすることができる。
このような構成により、利用者は、操作部を操作することにより、操作部での操作に応じて、前記検査手段が前記木構造状態遷移情報を処理して前記遷移パスに沿ってたどるべきノードに含まれる変数の初期値及びその取り得る範囲を設定することができるようになるので、検査対象を絞りこむことが可能となり、より使い勝手が良いものとなる。
また、本発明に係るモデル検査装置において、前記検査性質設定手段は、ある条件が正常であることを表す情報を前記検査性質情報として設定し、前記検査手段は、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記条件が正常であることに反する状態を表すノードに到達するか否かを検査する変数制約検査手段を有する構成とすることができる。
このような構成により、システムの振る舞いを表すものとして作成された状態遷移表が、ある条件が正常であることに反する状態に遷移することを表しているか否かを検査することができる。この検査結果に基づいて、ある条件が正常であることに反する状態に遷移しないように状態遷移表を修正することができる。
また、本発明に係るモデル検査装置において、前記検査性質設定手段は、前記状態遷移表において取り得ないイベントと状態との組み合わせを表す情報を前記検査性質情報として設定し、前記検査手段は、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記状態遷移表において取り得ないイベントと状態との組み合わせに対応した状態を表すノードに到達するか否かを検査する不可セル検査手段を有する構成とすることができる。
このような構成により、システムの振る舞いを表すものとして作成された状態遷移表が、取り得ないイベントと状態との組み合わせが状態遷移によって実際に取り得る場合があるか否かを検査することができる。この検査結果に基づいて、取り得ないとしたイベントと状態の組合せとが実際に取り得ないように状態遷移表を修正することができる。
また、本発明に係るモデル検査装置において、前記検査結果出力制御手段は、前記検査手段により検査結果として得られた、前記状態を示すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに至までの各ノードに対応した項目を前記表示部にリスト表示させる構成とすることができる。
このような構成により、イベントの発生により順次遷移するシステムでの各状態に対応した項目が、当該システムが持つべき性質に反する状態に至るまで、表示部にリスト表示されるので、そのリストに基づいてシステムが持つべき性質に反する状態に至る原因を容易につきとめることができる。
更に、本発明に係るモデル検査装置において、前記処理ユニットは、取得された前記状態遷移表情報に基づいて、前記状態遷移表を前記表示部に表示させる状態遷移表出力制御手段と、操作部での操作によって、前記表示部にリスト表示された各ノードに対応する項目が指定されたときに、指定された項目に対応したノードが表す状態に対応する前記状態遷移表における状態とイベントとの組み合わせを検出する手段と、前記状態遷移表出力手段は、前記検出された状態とイベントとの組み合わせを明示的に区別するように前記状態遷移表を前記表示部に表示させる構成とすることができる。
このような構成により、表示部に、システムの振る舞いを表す状態遷移表が表示されるとともに、状態を示すノードをイベントの発生に対応した遷移パスに沿ってたどって前記システムが持つべき性質に反する状態を表すノードに至までの各ノードに対応した項目がリスト表示された状態で、利用者が、操作部を操作することにより、表示部にリスト表示された項目を指定すると、その指定された項目に対応したノードが表す状態に対応する前記状態遷移表における状態とイベントの組との組み合わせが明示されるようになるので、状態遷移表において、システムが持つべき性質に反する状態に至る原因を容易につきとめることができる。
また、本発明に係るモデル検査装置において、自然言語を用いておらず、図式化された状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行う構成とすることができる。
このような構成により、自然言語を用いておらず、図式化された状態遷移表を表す状態遷移表情報を用いてモデル検査がなされるので、モデル検査のための言語習得を特に必要とせず、より使い勝手の良いモデル検査装置を実現することができる。
本発明に係るモデル検査処理方法は、情報を処理する処理ユニットを有するコンピュータにより構成され、あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行うモデル検査装置における前記処理ユニットにて実行される検査処理方法であって、前記状態遷移表情報を取得する取得ステップと、モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定ステップと、取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換ステップと、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査ステップと、前記検査部での検査結果を表示部に表示させる検査結果表示出力制御ステップとを有する構成となる。
本発明に係るプログラムは、あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査に係る処理ステップをコンピュータに実行させるプログラムであって、前記状態遷移表情報を取得する取得ステップと、モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定ステップと、取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換ステップと、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査ステップと、前記検査部での検査結果を表示部に表示させる検査結果表示出力制御ステップと前記コンピュータに実行させる構成となる。
本発明に係るモデル検査装置によれば、あるシステムの振る舞いを表した状態遷移表を表す状態遷移表情報と、モデル検査の対象となる前記システムが持つべき性質を表す情報が検査性質情報とを提供すれば、そのシステムにおいて状態が変化して当該システムが持つべき性質に反する状態に至るか否かが検査され、その検査結果が表示部に表示されるようになるので、その使い勝手がより良いものとなる。
また、本発明に係るモデル検査処理方法及びプログラムによれば、前記モデル検査装置においてなされるモデル検査処理の方法(モデル検査処理方法)及びそのモデル検査処理をコンピュータに実行させるためのプログラムを実現することができる。
本発明の実施の一形態に係るモデル検査装置が実現されるコンピュータのハードウェア構成の一例を示すブロック図である。 本発明の実施の一形態に係るモデル検査装置の機能構成を示す機能ブロック図である。 状態遷移表を用いたモデル検査の処理の流れを示すフローチャートである。 図6に示すフローチャートにおける条件設定処理(ステップS13)の具体的な処理手順を示すフローチャートである。 状態遷移表の一例を示す図である。 状態遷移表の他の一例を示す図である。 検査性質及び階層等の設定画面の一例を示す図である。 処理すべき状態遷移表の選択画面(状態遷移表選択画面)の一例を示す図である。 各変数の設定画面の一例を示す図である。 木構造状態遷移情報の構造例を示す図である。 木構造状態遷移情報における状態遷移の部分的な詳細例に示す図である。 検出された反例(状態)及び反例までのルートの一例を示す図である。 状態遷移表の表示処理と同期した検査結果の表示処理の一例を示すフローチャートである。 検査結果の表示処理と同期した状態遷移表の表示処理の一例を示すフローチャートである。 反例が検出された場合の検査結果の表示画面の一例を示す図である。 検査結果に同期して表示される状態遷移表の表示例を示す図である。 検査結果に同期して表示される状態遷移表の他の表示例を示す図である。
以下、本発明の実施の形態について図面を用いて説明する。
本発明の実施の形態に係るモデル検査装置は、検査の対象となるシステムの振る舞いを記述した状態遷移表(State Transition Matrix:STM)を用いて、そのシステムがもつべき性質に反する状態(反例)が起こり得るか否かを網羅的に検査し、また、起こり得る場合、どのような状態を遷移しつつその性質に反する状態に至るかを検出する(モデル検査)。
このモデル検査装置のハードウェア構成が図1に示される。このモデル検査装置は、一般的なコンピュータにて構成され、内部バスに接続された処理ユニット10(CPU)、一時記憶部11(例えば、メモリ)、ハードディスクドライブ(HDD)、メモリディクス等の情報記録部12、表示部13及び操作部14を備えている。また、上記モデル検査装置の機能構成が図2に示される。図2において、このモデル検査装置は、情報処理部100、性質入力部110及び状態遷移表選択入力部120を有している。情報処理部100は、処理ユニット10の機能によって実現され、状態遷移表選択入力部120は、処理ユニット10の機能とともに、状態遷移表の選択画面を表示する表示部13及び状態遷移表の選択操作を行うための操作部14の機能として実現される。また、性質入力部110は、処理ユニット10の機能とともに、検査性質の設定画面を表示する表示部13及び検査性質の設定操作を行うための操作部14の機能として実現される。
一時記憶部11には、種々の状態遷移表(状態遷移表群)を表す状態遷移表情報を記憶することができる。状態遷移表選択入力部120は、一時記憶部11に記憶された状態遷移表情報から検査対象とすべき状態遷移表情報を選択して情報処理部100に提供する。性質入力部110は、操作部14の設定操作により設定される、モデル検査の対象となるシステムが持つべき性質を表す検査性質情報を情報処理部100に提供する。
情報処理部100は、状態遷移表変換部101(情報変換手段)、検査部102(検査手段)及び出力制御部103(出力制御手段)を有している。状態遷移表変換部101は、状態遷移表選択入力部120から入力される状態遷移表情報を後述するような木構造状態遷移情報に変換する。この木構造状態遷移情報は、情報処理部100により一時記憶部11に格納される。検査部102は、状態遷移表変換部101にて得られた木構造状態遷移情報と、性質入力部110からの検査性質情報とを用いてモデル検査を実行する。検査部102は、反例検出部102a(反例検出手段)と反例ルート検出部102b(反例ルート検出手段)とを有している。反例検出部102aは、前記木構造状態遷移情報にて表される状態群から、入力された検査性質情報で表されるシステムが持つべき性質に反する状態を検出する。反例ルート検出部102bは、前記木構造状態遷移情報にて表される前記状態群において、反例検出部102aにて検出された状態(反例)に至る状態の遷移ルートを検出する。そして、出力制御103が、前記木構造状態遷移情報にて表される状態群において検出された、検査性質情報で表されるシステムが持つべき性質に反する状態に至る状態の遷移ルートを検査結果として表示部13に表示させる。
前述した情報処理部100の各機能は、処理ユニット10(CPU)が一時記憶部11に格納された所定のプログラムを実行することによって実現される。
具体的に、処理ユニット10は、図3に示す手順に従ってモデル検査処理を実行する。
図3において、処理ユニット10(情報処理部100)は、あるシステムの振る舞いを表す情報として既に作成された状態遷移表を表す状態遷移情報を、例えば、情報記録部12から読み出して取得し、一時記憶部11に格納する(S11)。例えば、図5及び図6に示す両替機(システム)の振る舞いを表す2つの状態遷移表、両替部状態遷移表(以下、両替部STMという)及び払出部状態遷移表(以下、払出部STMという)が、取得されたものとする。
両替部STMは図5に示すように構成され、払出部STMは図6に示すように構成される。状態遷移表(STM)は、システムにおいて取り得る状態(STATE)のそれぞれと、該システムにおいて発生し得るイベント(EVENT)のそれぞれとの組に、その組の状態(STATE)においてその組のイベント(EVENT)が発生した際に実行される処理(ACTION)及びその処理により遷移する遷移先の状態を対応づけて表形式(マトリクス状)に表したものである。具体的に、図5に示す両替部STMは、両替機(両替部)において取り得る状態(STOP(停止状態)、WAIT_REQUEST(要求待ち状態)、WAIT_MONEY_TAKE(硬貨取り出し待ち状態))のそれぞれと、両替機(両替部)において発生し得るイベント(「×硬貨準備」、「×紙幣両替」、「硬貨準備信号」)のそれぞれとの組(図5に示すマトリクスにおける状態(STATE)とイベント(EVENT)とが交差する位置にある各セルに対応)に、その組の状態(例えば、STOP(停止状態))においてその組のイベント(例えば、「×硬貨準備」)が発生した際に実行される処理(例えば、硬貨総金額=硬貨総金額+10000、×硬貨準備=false)及びその処理により遷移する遷移先の状態(例えば、WAIT_REQUEST(要求待ち状態))を対応づけてマトリクス状(例えば、3×3マトリクス)に表している。図6に示す払出部STMも同様に、両替機(払出部)において取り得る状態(例えば、WAIT(待ち状態)、RETURN(払出状態))のそれぞれと、両替機(払出部)において発生し得るイベント(例えば、「硬貨用意完了信号」、「×硬貨受取」)のそれぞれとの組に、その組の状態(例えば、WAIT(待ち状態))においてその組のイベント(例えば、「硬貨用意完了信号」)が発生した際に実行される処理(例えば、硬貨用意完了信号=false)及びその処理により遷移する遷移先の状態(例えば、RETURN(払出状態))を対応づけてマトリクス状(例えば、2×2マトリクス)に表している。
なお、「×」印が先頭に付いているイベント(「×硬貨準備」、「×紙幣両替」、「×硬貨受取」)は、外部からの要因(例えば、硬貨を準備する人の行為、両替をして硬貨を受け取る人の行為等)で発生するイベントであって、外部イベントという。前記「×」が付いていないイベント(「硬貨受取完了信号」、「硬貨用意完了信号」)は状態遷移表内での処理(アクション)によって発生するイベントであって、内部イベントという。
図5及び図6に示される前記両替部STM及び払出部STMによって、例えば、次のような両替機の振る舞いが表される。
両替部(図5参照)では、状態STOP(停止状態)で、両替機に払出のための硬貨(例えば、10,000円)が準備されて、外部イベント「×硬貨準備」が発生すると、硬貨総金額に10,000円が加算され、外部イベント「×硬貨準備」が終わり(false)、状態WAIT_REQUEST(要求待ち状態)になる。更に、両替部では、状態WAIT_REQUEST(要求待ち状態)で、利用者による紙幣(例えば、10,000円)の硬貨への両替操作がなされて、外部イベント「×紙幣両替」が発生すると、払出硬貨金額が10,000円に設定され、内部イベント「硬貨用意完了信号」が立ち上げられ(true)、硬貨総金額から払出硬貨金額を差し引いた金額が新たな硬貨総金額とされる。そして、外部イベント「×紙幣両替」が終わり(false)、状態WAIT_MONEY_TAKE(硬貨取り出し待ち状態)になる。
上述したように内部イベント「硬貨用意準備信号」が立ち上げられる(true)と、状態WAIT(待ち状態)にある払出部(図6参照)では、その内部イベント「硬貨用意準備信号」が立ち下げられ(false)、状態RETURN(払出状態)になる。ここで、利用者が両替された硬貨を受け取り、外部イベント「×硬貨受取」が発生すると、内部イベント「硬貨受取完了信号」が立ち上げられ(true)、外部イベント「×硬貨受取」が終わる(false)。そして、状態WAIT(待ち状態)になる。
前述したように状態WAITE_MONEY_TAKE(硬貨取り出し待ち状態)にある両替部では、前記内部イベント「硬貨受取完了信号」が立ち上げられる(true)と、その内部イベント「硬貨受取完了信号」が立ち下げられ(false)、状態WAIT_REQUEST(要求待ち状態)になる。
なお、図5及び図6に示す両替部STM及び払出部STMの各マトリクスにおいて、「/」のあるセルは、対応する状態で対応するイベントが発生しても何もしないことを表している。また、「×」のあるセルは、対応する状態で対応するイベントが発生し得ないことを表している。この「×」のあるセルを、不可セルという。
図3に戻って、処理ユニット10(情報処理部100)は、上述したような両替機の振る舞いを表す両替部STM及び払出部STMの情報を取得する(S11)と、例えば、図7に示すような表示部13に表示される設定画面において操作部14での操作(性質入力部110)により入力される検査性質を設定する(S12)。図7に示す設定画面では、システム(両替機)が持つべき性質(検査性質)として、例えば、状態遷移表(マトリクス)における「不可セルに到達しない」という性質、及び「払出金額がゼロ以上(払出硬貨金額>=0)」という性質が設定される。
なお、上記「不可セルに到達しない」という性質、及び上記「支払金額がゼロ以上」という性質(変数制約というタイプの性質)のほか、次のような性質についても設定(検査)することができる。
「状態AがXのとき、状態BがYである」という性質(制約充足性)の検査、
「状態AがXからX´に遷移するとき、状態BがYである」という性質(必要条件充足性)の検査、
次のような「将来の出来事」に関する性質(時相理論)の検査
○○は将来のいずれかの時点で真
○○は今後常に真
○○は現在、未来の時点新であり、××はその時点まで真でなければならない
××が真となる時点までに、○○は真でなければならない
次に、処理ユニット10(情報処理部100)は、条件設定処理(S13)を実行する。この条件設定処理は、図4に示す手順に従ってなされる。まず、処理可能な状態遷移表情報を特定する識別情報(アイコン、名称等)が、例えば、図8に示すように、表示部13の状態遷移表選択画面に表示される。処理ユニット10は、前記状態遷移表選択画面において操作部14の操作により選択された識別情報にて特定される一又は複数の状態遷移表に対応した状態遷移表情報を一時記憶部11から読み出して(状態遷移表選択入力部120)、処理すべき状態遷移表情報として取得する(S131)。この状態遷移表情報の検査すべき範囲の選択では、複数の状態遷移表(情報)から1または複数の状態遷移表(情報)を選択することも、また、1つの状態遷移表(情報)の一部分を検査すべき範囲として選択することもできる。
次に、図7に示す設定画面における「変数しきい値」の設定により、検査対象変数の検査範囲を設定することができる。処理ユニット10(情報処理部100)は、上述したようにして選択された検査対象となる状態遷移表情報において使用されている変数(外部イベントを表す変数、内部イベントを表す変数を含む)の初期値、最小値及び最大値等を設定するための設定画面を表示部13に表示させる。表示部13に表示された設定画面において操作部14の操作により入力された各変数の初期値、最小値及び最大値等、即ち、各変数の検査範囲が設定される(S132)。例えば、変数「払出硬貨金額」は、整数(int)であって、初期値が「0」、最小値が「0」、最大値が「10000」、変数「硬貨総金額」は、整数(int)であって、初期値が「0」、最小値が「0」、最大値が「10000」に決定される。この場合、変数「払出硬貨金額」及び変数「硬貨総金額」のそれぞれが0円から10,000円の範囲で検査がなされることになる。
なお、図9に示す設定画面において、変数「×硬貨準備」(外部イベント)、変数「×紙幣両替」(外部イベント)、変数「×硬貨受取」(外部変数)、変数「硬貨用意完了信号」(内部イベント)、及び変数「硬貨受取完了信号」(内部イベント)のそれぞれは、true(真)・false(偽)値で表されるブール(bool)タイプであり、初期値がfalse(偽)値に設定されている。
更に、図7に示す表示部13に表示された設定画面において、後述するように前記状態遷移表情報を変換して得られる、イベントの発生または処理を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造(クリプ木構造)となる木構造状態遷移情報の検査対象となる階層の深さを表す深度が、キューサイズとともに設定することができる。処理ユニット10(情報処理部100)は、表示部13に表示された図7に示す設定画面において操作部14の操作により入力された深度を、前記木構造状態遷移情報についての探索階層の深度として決定する(S133)。
上記のようにして、条件設定処理(S13:図4におけるS131〜S133)が終了すると、処理ユニット10(状態遷移表変換部101)は、前述したように検査対象となるものとして選択された状態遷移表情報を、図10に示すような状態をノードとした階層構造(クリプ木構造)の木構造状態遷移情報に変換する(S14)。この木構造状態遷移情報に変換するために、処理ユニット10(状態遷移表変換部101)は、検査対象となる状態遷移表(図5及び図6参照)において外部要因によってその発生タイミングが決まる各外部イベントを「常に起こり得る」とう条件に従って順次自動的に発生させ(自動イベント発火機能)、また、内部イベントを当該状態遷移表で表される条件に従って発生させる。その際、そのイベントの発生及びイベントの発生にともなう処理の結果を表す数値群の値の組み合わせにて表される状態が、前記イベントの発生または処理の実行にともなって遷移する。そして、そのイベントの発生または処理の実行を遷移パスとし、前記変数群の値の組合せにて表される状態をノードとした階層状の木構造(クリプ木構造)となる木構造状態遷移情報(図10参照)が得られる。
例えば、図5に示す両替部STM及び図6に示す払出部STMは、図11に示すようにして木構造状態遷移情報に変換される。
図11において、各状態(図10に示す木構造状態遷移情報における各ノード)が、イベントの発生にともなう処理の結果を表す変数である「払出金額」、「硬貨総金額」、外部イベントの発生の結果を表す変数である「×硬貨準備」、「×紙幣両替」、「×硬貨受取」、内部イベントの発生の結果を表す変数「硬貨用意完了信号」、「硬貨受取完了信号」、両替部STMの状態を表す変数M、及び払出部STMの状態を表す変数Nからなる変数群の値の組み合わせによって表されている。
階層0の初期状態(00)は、全ての変数が初期値であり、
払出硬貨金額=0
×硬貨準備=false
×紙幣両替=false
×硬貨受取=false
硬貨用意完了信号=false
硬貨受取完了信号=false
硬貨総金額=0
M=0
N=0
である。この初期状態は、両替部STMにおける状態STOPに対応している。
初期状態(00)において、外部イベント「×硬貨準備」が発生(発火)すると、階層1の状態(11)
払出硬貨金額=0
×硬貨準備=true
×紙幣両替=false
×硬貨受取=false
硬貨用意完了信号=false
硬貨受取完了信号=false
硬貨総金額=0
M=0
N=0
に遷移する。この状態(11)は、両替部STMの状態STOPにおいて外部イベント「×硬貨準備」が発生した状態に対応する。
前記状態(11)において、前記外部イベント「×硬貨準備」の発生により、両替部STMにおけるセル(E0、S0)での処理(ACTION)が実行されると、階層2の状態(21)
払出硬貨金額=0
×硬貨準備=false
×紙幣両替=false
×硬貨受取=false
硬貨用意完了信号=false
硬貨受取完了信号=false
硬貨総金額=10000
M=1
N=0
に遷移する。両替部STMにおけるセル(E0、S0)での処理の実行により、両替部(両替機)は、状態WAIT_REQUESTになる(図5参照)。
前記状態(21)において、外部イベント「×紙幣両替」が発生(発火)すると、階層3の状態(31)
払出硬貨金額=0
×硬貨準備=false
×紙幣両替=true
×硬貨受取=false
硬貨用意完了信号=false
硬貨受取完了信号=false
硬貨総金額=10000
M=1
N=0
に遷移する。この状態(31)は、両替部STMの状態WAIT_REQUESTにおいて外部イベント「×紙幣両替」が発生した状態に対応する。
前記状態(31)において、前記外部イベント「×紙幣両替」の発生により、両替部STMにおけるセル(E1、S1)左側欄での処理(ACTION)が実行されると、階層4の状態(41)
払出硬貨金額=10000
×硬貨準備=false
×紙幣両替=false
×硬貨受取=false
硬貨用意完了信号=true
硬貨受取完了信号=false
硬貨総金額=0
M=2
N=0
に遷移する。両替部STMにおけるセル(E1、S1)での処理の実行により、両替部(両替機)は、状態WAIT_MONEY_TAKEになる。
以後、同様に、両替部STM及び払出部STMにおける外部イベントの発生、内部イベントの発生、及び処理の実行によって順次状態が遷移する。そして、このようにして得られる状態(00)、(11)、(21)、(31)、(41)、・・・をノードとし、それら状態(ノード)のイベント(外部イベント、内部イベント)の実行また処理(ACTION)の実行を遷移パスとしたつながりが、図10に示すような木構造状態遷移情報として生成される。即ち、両替部STM及び払出部STMが図10に示すような木構造状態遷移情報に変換される。
上述したような状態遷移表情報の木構造状態遷移情報への変換は、前記条件設定処理(S13:図4、図8、図9参照)で設定された状態遷移表の範囲、変数しきい値の範囲、及び探索階層の範囲で実行される。このように検査対象が絞り込まれるので、効率的なモデル検査を行うことができる。
図3に戻って、検査対象の状態遷移表情報(図6及び図7参照)の木構造状態遷移情報(図10及び図11参照)への変換(S14)が終了すると、処理ユニット10(検査部102)は、得られた木構造状態遷移情報において、設定された検査性質(状態遷移表(マトリクス)における「不可セルに到達しない」という性質、及び「払出金額がゼロ以上(払出硬貨金額>=0)」)に反する状態の検出処理を実行する。この検出処理では、前記木構造状態遷移情報において、対象の階層が指定され(S15)、その指定された階層において、検査性質に反する状態が存在するか否かの検査処理が実行される(S16:反例検出部102a)。
この反例検出の処理では、例えば、指定された階層における状態(図10及び図11参照)の1つ1つに対して、変数の値等に基づいて、その状態が、検査性質(例えば、状態遷移表(マトリクス)における「不可セルに到達しない」という性質や「払出金額がゼロ以上(払出硬貨金額>=0)」)に反する状態であるか否かがチェックされる。また、このような手法のほか、充足性モジュロ理論(Satisfiablity Modulo Theory)に従って、指定された階層に含まれる全状態を一階論理公式にて数式化し、その一階論理公式を解くことにより、その指定された階層に検査性質に反する状態が存在するか否かを判定することもできる。そして、指定された階層に検査性質に反する状態が存在すると判定された場合に、更に、前記一階論理公式を部分的に解析することにより、前記指定された階層中の全状態から、前記検査性質に反する状態が特定される。
上記反例検出の処理の過程で、前記検査性質に反する状態が存在しなければ(S17でNO)、前記指定された階層が、検査範囲として設定された探索階層(S13の条件設定処理、図4におけるS132参照)における最下位層であるか否かが判定される(S18)。そして、最下位層でなければ(S18でNO)、前述した処理(S15、S16、S17)に従って、新たに次の階層の指定がなされ、その指定された階層において、検査性質に反する状態(ノード)があるか否か判定がなされる。
このようにして、各階層において検査性質に反する状態が存在するか否かの判定がなされる過程(S15〜S18)において、検査性質に反する状態があると判定されると(S17でYES)、処理ユニット10(反例ルート検出部102b)は、検査対象の木構造状態遷移情報(図10及び図11参照)において、検査性質に反する状態であると判定された状態(ノード)から、遷移パス(イベントの発生または処理の実行に対応)を逆にたどって、初期状態(00)に至るルートを検出する。それにより、例えば、図12に示すように、初期状態(00)から検査性質に反する状態(42)に至る
初期状態(00)→状態(11)→状態(21)→状態(31)→(状態42)
の遷移パスが反例ルートとして検出される(S19)。
上記反例ルートが検出されると(S19)、処理ユニット10(出力制御部103)は、検出された反例ルートに基づいて、検査結果を表示部103に表示させる(S20)。この検査結果の表示処理は、例えば、図13に示す手順に従ってなされる。この検査結果の表示処理は、図14に示す手順に従ってなされる、検査対処として選択された状態遷移表情報に基づいた状態遷移表(両替部STM及び払出部STB)の表示処理と同期してなされる。
図13に示す検査結果表示処理において、処理ユニット10(出力制御部103)は検査結果である反例ルートを、例えば、図15に示すような、状態の遷移一覧として表示部13に表示させる(S31)。図15に示す表示例では、初期状態から、「不可セルに到達しない」という検査性質に反する、両替部STM(図5参照)の不可セル(S1,E2)に至るまでの各状態(ノード)に対応した項目(STEP)がリスト表示されている。各項目は、状態遷移表の種類(STM)、状態遷移表(マトリクス)のセルを特定する位置(STATE、EVENT)、遷移ルート(イベントの発生または処理(ACTION)の実行)及び各変数の値が含まれている。そして、処理ユニット10(出力制御部103)は、上記検査結果を表示させた状態で、イベントの発生待ち状態となる(S32)。
一方、図14に示す状態遷移表表示処理において、処理ユニット10(出力制御部103)は、検査対象となる、例えば、両替部STM(図5参照)及び払出部STM(図6参照)を表示部13に表示させる(S41)。そして、処理ユニット10(出力制御部103)は、前記検査結果表示処理からのコマンド待ち状態になる(S42)。
図13に示す検査結果表示処理では、表示部13に表示された検査結果の一覧表(図15参照)において、操作部14の操作により、1つの状態(ノード)に対応した項目が選択されると、処理ユニット10(出力制御部103)は、選択操作をイベントとして受信し(S33)、その選択された状態を取得する(S34)。そして、処理ユニット10(出力制御部103)は、取得した状態に対応する状態遷移表(図5及び図6参照)におけるセル(またはイベントの発生)を探索し(S35)、得られたセルの表示指示コマンドを状態遷移表表示処理に対して発行する(S36)。以後、検査結果表示処理において、処理ユニット10(出力制御部103)は、前記イベントの発生待ち状態になる(S32)。なお、処理ユニット10(出力制御部103)は、例えば、図15に示す検査結果の一覧表示のように、選択された項目(STEP13、STEP16)を他の項目と区別するように色付けする。
一方、図14に示す状態遷移表表示処理において、前述したように検査結果表示処理からのコマンド待ち状態(S42)となる処理ユニット10(出力制御部103)は、前述したように検査結果表示処理にて発行される前記セルの表示指示コマンドを受信すると(S43)、その表示指示コマンドを確認し(S44)、その表示指示コマンドにて指示される状態遷移表におけるセルの表示色を変える(S45)。そして、処理ユニット10(出力制御部103)は、状態遷移表において、指示されたセルの色を変更した旨を、表示結果表示処理に通知し(S46)、コマンドの待ち状態(S42)になる。
上記のような表示結果処理及び状態遷移表表示処理の同期した実行により、表示結果処理により表示される図15に示す一覧表において、例えば、項目(STEP13)の選択操作がなされると、前述したように、その一覧表においてその選択された項目(STEP13)が他の項目と区別して色付けされるとともに、図16に示すように、前記選択された項目(STEP13)に対応する、払出部STMのセル(S1、E1)と、そのセルを特性する状態(RETURN)及びイベント(×硬貨受取)の欄とが特定の色に色付けされる。また、図15に示す一覧表において、例えば、不可セルに対応した項目(STEP16)の選択操作がなされると、前述したように、その一覧表においてその選択された項目(STEP16)が他の色と区別して色付けされるとともに、図17に示すように、前記選択された項目(STEP16)に対応する、両替部STMの不可セル(S1、E2)と、その不可セルを特定する状態(WAIT_REQUEST)及びイベント(硬貨受取完了信号)の欄とが特定の色に色づけされる。
このような検査結果表示処理と状態遷移表示処理とが同期してなされることにより、
利用者が、操作部14を操作することにより、表示部13に一覧表示された検査結果に係る項目を指定すると、その指定された項目が表す状態に対応する状態遷移表のセルが特定の色により明示されるようになるので、状態遷移表において、システムが持つべき性質に反する状態に至る原因を容易につきとめることができる。
上述したようなモデル検査装置では、例えば、両替機等システムにおいて、取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけてマトリクス形式に表した状態遷移表(両替部STM及び払出部STM)を表す状態遷移表情報が取得され、モデル検査の対象となる前記システムが持つべき性質(「不可セルに到達しない」という性質、「払出金額がゼロ以上(払出硬貨金額>=0)」という性質)を表すが検査性質情報として設定されると、前記状態遷移情報が、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造(クリプ木構造)となる木構造状態遷移情報に変換され、その木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かが検査される。そして、その検査結果(図15参照)が表示部13に表示される。このように、前記モデル検査装置によれば、あるシステムの振る舞いを表した状態遷移表を表す状態遷移表情報と、モデル検査の対象となる前記システムが持つべき性質を表す情報が検査性質情報とを提供すれば、そのシステムにおいて状態が変化して当該システムが持つべき性質に反する状態に至るか否かが検査され、その検査結果が表示部に表示されるようになるので、その使い勝手がより良いものとなる。
モデル検査とは、形式的記述に則したモデルに対して数理的網羅検査を行うことをいう。しかし、形式的記述を表す場合に、自然言語(プログラミング言語)的表現を許してしまうと、抽象的な記述や時系列的に矛盾を生じるような記述、また、原点回帰不能な再帰的な記述を行ってしまう可能性がある。このように、自然言語的な記述は、形式的な記述を行うこと自体に難しさを含んでいるといえる。
これに対して、前述したモデル検査装置では、検査対象となるシステムの記述を行う場合に、自然言語を用いず、状態遷移表情報を用いることにより、分岐処理等の判断系での不確かさを排除し、振る舞いの形式的な記述の難しさを下げることができる。そして、状態遷移表で記述された内容を内部的に、言語的かつ数理的に変換することで、モデル記述者の記述負担を低減し、かつ、記述の不確かさを低減させている。
以上、説明したように、本発明は、モデル検査がより使い勝手の良いものとなるという効果を有し、システムの振る舞いを記述した状態遷移表を用いて該システムのモデル検査を行うモデル検査装置、モデル検査処理方法及びプログラムとして有用である。
10 処理ユニット(CPU)
11 一時記憶部
12 情報記録ユニット
13 表示部
14 操作部
100 情報処理部
101 状態遷移表変換部
102 検査部
102a 反例検出部
102b 反例ルート検出部
103 出力制御部
110 性質入力部
120 状態遷移表選択入力部

Claims (13)

  1. 情報を処理する処理ユニットを有するコンピュータにより構成され、
    あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行うモデル検査装置であって、
    前記処理ユニットは、
    前記状態遷移表情報を取得する取得手段と、
    モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定手段と、
    取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換手段と、
    前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査手段と、
    前記検査手段での検査結果を表示部に表示させる検査結果表示出力制御手段とを有するモデル検査装置。
  2. 前記検査手段は、前記木構造状態遷移情報にて表される木構造のノード群の階層毎に、前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードを検出する反例検出手段と、
    前記最上位の階層のノードに対応する状態から検出された前記ノードに対応する状態までの遷移パスを検出する反例ルート検出手段とを有する請求項1記載のモデル検査装置。
  3. 前記状態遷移表情報を記憶する記憶手段を有し、
    前記取得手段は、操作部での操作に応じて、前記記憶手段から前記状態遷移表情報を読み出して取得する請求項1または2記載のモデル検査装置。
  4. 前記状態遷移表情報は、複数の状態遷移表のそれぞれを表し、
    前記取得手段は、操作部での操作に応じて、前記複数の状態遷移表から一又は複数の状態遷移表を選択する選択手段を有し、該選択手段にて選択された一又は複数の状態遷移表のそれぞれを表す状態遷移表情報を取得する請求項3記載のモデル検査装置。
  5. 前記処理ユニットは、操作部での操作に応じて、前記検査手段が前記木構造状態遷移情報を処理して前記状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどるべき階層の数を設定する階層範囲設定手段を有する請求項1乃至4のいずれかに記載のモデル検査装置。
  6. 前記処理ユニットは、操作部での操作に応じて、前記検査手段が前記木構造状態遷移情報を処理して前記遷移パスに沿ってたどるべきノードに含まれる変数の初期値及びその取り得る範囲を設定する変数範囲設定手段を有する請求項1乃至5のいずれかに記載のモデル検査装置。
  7. 前記検査性質設定手段は、ある条件が正常であることを表す情報を前記検査性質情報として設定し、
    前記検査手段は、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記条件が正常であることに反する状態を表すノードに到達するか否かを検査する変数制約検査手段を有する請求項1乃至6のいずれかに記載のモデル検査装置。
  8. 前記検査性質設定手段は、前記状態遷移表において取り得ないイベントと状態との組み合わせを表す情報を前記検査性質情報として設定し、
    前記検査手段は、前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記状態遷移表において取り得ないイベントと状態との組み合わせに対応した状態を表すノードに到達するか否かを検査する不可セル検査手段を有する請求項1乃至7のいずれかに記載のモデル検査装置。
  9. 前記検査結果出力制御手段は、前記検査手段により検査結果として得られた、前記状態を示すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに至までの各ノードに対応した項目を前記表示部にリスト表示させる請求項1乃至8のいずれかに記載のモデル検査装置。
  10. 前記処理ユニットは、取得された前記状態遷移表情報に基づいて、前記状態遷移表を前記表示部に表示させる状態遷移表出力制御手段と、
    操作部での操作によって、前記表示部にリスト表示された各ノードに対応する項目が指定されたときに、指定された項目に対応したノードが表す状態に対応する前記状態遷移表における状態とイベントとの組み合わせを検出する手段と、
    前記状態遷移表出力手段は、前記検出された状態とイベントとの組み合わせが明示されるように前記状態遷移表を前記表示部に表示させる請求項9記載のモデル検査装置。
  11. 自然言語を用いておらず、図式化された状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行う請求項1乃至10のいずれかに記載のモデル検査装置。
  12. 情報を処理する処理ユニットを有するコンピュータにより構成され、
    あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査を行うモデル検査装置における前記処理ユニットにて実行される検査処理方法であって、
    前記状態遷移表情報を取得する取得ステップと、
    モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定ステップと、
    取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換ステップと、
    前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査ステップと、
    前記検査部での検査結果を表示部に表示させる検査結果表示出力制御ステップとを有するモデル検査方法。
  13. あるシステムにおいて取り得る状態のそれぞれと該システムにおいて発生し得るイベントのそれぞれとの組に、その組の状態においてその組のイベントが発生した際に実行される処理及びその処理により遷移する遷移先の状態を対応づけて表形式に表した状態遷移表を表す状態遷移表情報を用いて前記システムについてのモデル検査に係る処理ステップをコンピュータに実行させるプログラムであって、
    前記状態遷移表情報を取得する取得ステップと、
    モデル検査の対象となる前記システムが持つべき性質を表す情報を検査性質情報として設定する検査性質情報設定ステップと、
    取得された前記状態遷移表情報を、イベントの発生または処理の実行を遷移パスとし、該イベントの発生及びイベントの発生に伴う処理の結果を表す変数群の値の組合せにて表される状態をノードとした階層状の木構造となる木構造状態遷移情報に変換する情報変換ステップと、
    前記木構造状態遷移情報を処理して、状態を表すノードをイベントの発生に対応した遷移パスに沿ってたどって前記検査性質情報にて表される前記システムが持つべき性質に反する状態を表すノードに到達するか否かを検査する検査ステップと、
    前記検査部での検査結果を表示部に表示させる検査結果表示出力制御ステップと前記コンピュータに実行させるプログラム。
JP2012069670A 2012-03-26 2012-03-26 モデル検査装置、モデル検査処理方法及びプログラム Pending JP2013200787A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012069670A JP2013200787A (ja) 2012-03-26 2012-03-26 モデル検査装置、モデル検査処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012069670A JP2013200787A (ja) 2012-03-26 2012-03-26 モデル検査装置、モデル検査処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2013200787A true JP2013200787A (ja) 2013-10-03

Family

ID=49520964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012069670A Pending JP2013200787A (ja) 2012-03-26 2012-03-26 モデル検査装置、モデル検査処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2013200787A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016151710A1 (ja) * 2015-03-20 2016-09-29 株式会社日立製作所 仕様構成装置および方法
JP7009001B1 (ja) 2021-03-02 2022-01-25 株式会社Team F 情報処理装置およびプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07168709A (ja) * 1993-12-15 1995-07-04 Nec Corp プログラムジェネレータ利用仕様シミュレーション方法およびその装置
JPH11328236A (ja) * 1998-05-11 1999-11-30 Nippon Telegr & Teleph Corp <Ntt> 仕様検証装置および方法と仕様検証プログラムを記録した記録媒体
JP2007011605A (ja) * 2005-06-29 2007-01-18 Kansai Electric Power Co Inc:The ソフトウェア動作仕様のモデル検査支援装置およびこれを備えたモデル検査システム並びにモデル検査支援プログラム
JP2007206855A (ja) * 2006-01-31 2007-08-16 Toshiba Corp デジタル回路の自動設計装置、自動設計方法、および自動設計プログラム
JP2009211503A (ja) * 2008-03-05 2009-09-17 Nec Corp ソースコード検証装置、及びソースコード検証方法
JP2012155517A (ja) * 2011-01-26 2012-08-16 Kyushu Univ モデル検査装置、モデル検査方法およびモデル検査プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07168709A (ja) * 1993-12-15 1995-07-04 Nec Corp プログラムジェネレータ利用仕様シミュレーション方法およびその装置
JPH11328236A (ja) * 1998-05-11 1999-11-30 Nippon Telegr & Teleph Corp <Ntt> 仕様検証装置および方法と仕様検証プログラムを記録した記録媒体
JP2007011605A (ja) * 2005-06-29 2007-01-18 Kansai Electric Power Co Inc:The ソフトウェア動作仕様のモデル検査支援装置およびこれを備えたモデル検査システム並びにモデル検査支援プログラム
JP2007206855A (ja) * 2006-01-31 2007-08-16 Toshiba Corp デジタル回路の自動設計装置、自動設計方法、および自動設計プログラム
JP2009211503A (ja) * 2008-03-05 2009-09-17 Nec Corp ソースコード検証装置、及びソースコード検証方法
JP2012155517A (ja) * 2011-01-26 2012-08-16 Kyushu Univ モデル検査装置、モデル検査方法およびモデル検査プログラム

Non-Patent Citations (13)

* Cited by examiner, † Cited by third party
Title
CSNB200800181001; 組み込みソフトウエア2007 モデルに基づく開発方法論のすべて 初版, 20061218, p.30〜35,165〜167, 日経BP社 *
CSNB201000354001; 磯部祥尚、粂野文洋、櫻庭健年、田口研治、田原康之: トップエスイー基礎講座1 ソフトウェア科学基礎 初版, 20080930, p.216-217, 株式会社近代科学社 *
CSNG200401192003; 鶴見誠悟、角川裕次: 'Model Checkingを用いた並行プログラミング学習支援システムの試作' 情報処理学会研究報告 Vol.2002,No.119, 20021213, p.17-24, 社団法人情報処理学会 *
CSNG200801097012; 小池 隆: '状態遷移表に基づくモデル検査の支援環境' 情報処理学会研究報告 Vol.2008,No.116, 20081120, pp.91〜96, 社団法人情報処理学会 *
CSNH200900264003; 銀林 純、上原忠弘、宗像一樹、薮田和夫: 'アプリケーション品質・検証技術への新たな取組み' FUJITSU Vol.60,No.6(通巻355号), 20091110, pp.559〜566, 富士通株式会社 *
CSNJ201010047139; 白石知弘、孔 維強、松本充広、片山徹郎、福田 晃、水島祐紀、片平典幸、渡辺政彦: '状態遷移表モデル検査ツールGarakabu2の設計と開発' 第72回(平成22年)全国大会講演論文集(1) , 20100308, p.1-283〜1-284, 社団法人情報処理学会 *
CSNJ201210003114; 高田沙都子、森 奈実子、村田由香里: 'モデル検査自動化ツールの開発 〜検査自動化と反例解析効率化〜' 第74回(平成24年)全国大会講演論文集(1) , 20120306, p.1-233〜1-234, 一般社団法人情報処理学会 *
JPN6014028534; 組み込みソフトウエア2007 モデルに基づく開発方法論のすべて 初版, 20061218, p.30〜35,165〜167, 日経BP社 *
JPN6014028535; 高田沙都子、森 奈実子、村田由香里: 'モデル検査自動化ツールの開発 〜検査自動化と反例解析効率化〜' 第74回(平成24年)全国大会講演論文集(1) , 20120306, p.1-233〜1-234, 一般社団法人情報処理学会 *
JPN6014028537; 銀林 純、上原忠弘、宗像一樹、薮田和夫: 'アプリケーション品質・検証技術への新たな取組み' FUJITSU Vol.60,No.6(通巻355号), 20091110, pp.559〜566, 富士通株式会社 *
JPN6014028538; 小池 隆: '状態遷移表に基づくモデル検査の支援環境' 情報処理学会研究報告 Vol.2008,No.116, 20081120, pp.91〜96, 社団法人情報処理学会 *
JPN6015000620; 磯部祥尚、粂野文洋、櫻庭健年、田口研治、田原康之: トップエスイー基礎講座1 ソフトウェア科学基礎 初版, 20080930, p.216-217, 株式会社近代科学社 *
JPN6015000621; 鶴見誠悟、角川裕次: 'Model Checkingを用いた並行プログラミング学習支援システムの試作' 情報処理学会研究報告 Vol.2002,No.119, 20021213, p.17-24, 社団法人情報処理学会 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016151710A1 (ja) * 2015-03-20 2016-09-29 株式会社日立製作所 仕様構成装置および方法
JPWO2016151710A1 (ja) * 2015-03-20 2017-05-25 株式会社日立製作所 仕様構成装置および方法
JP7009001B1 (ja) 2021-03-02 2022-01-25 株式会社Team F 情報処理装置およびプログラム
JP2022133979A (ja) * 2021-03-02 2022-09-14 株式会社Team F 情報処理装置およびプログラム

Similar Documents

Publication Publication Date Title
JP5659238B2 (ja) ソースコード変換方法およびソースコード変換プログラム
JP5874891B2 (ja) プログラムテスト装置、プログラムテスト方法、およびプログラム
EP1899876A1 (en) System and method for using model analysis to generate directed test vectors
CN102138130A (zh) 检测规则生成装置、检测规则生成方法和计算机程序
US20090271661A1 (en) Status transition test support device, status transition test support method, and recording medium
JP2011210233A (ja) Gui要素を識別する方法、装置およびシステム
JP5944258B2 (ja) テストケース生成支援装置
CN107783890A (zh) 软件缺陷数据处理方法和装置
JP2013200787A (ja) モデル検査装置、モデル検査処理方法及びプログラム
JP2011022774A (ja) 可用性評価装置及びコンピュータプログラム及び可用性評価方法
JP2005122560A (ja) デッドロック事前検出プログラム
JP6120607B2 (ja) 要件検出装置及び要件検出プログラム
JP2013218492A (ja) ソフトウェアテスト自動評価装置および方法
JP2009230420A (ja) ソースコード品質管理装置
JP6185148B2 (ja) ソフトウェア仕様間依存関係検証装置、及びソフトウェア仕様間依存関係検証方法
JP2013077124A (ja) ソフトウェアテストケース生成装置
JP6375096B2 (ja) 点検支援装置、点検支援方法、および点検支援プログラム
CN110766402A (zh) 交易顺序依赖漏洞检测方法、系统、电子装置及存储介质
KR101664761B1 (ko) 프로젝트 데이터 작성 장치
CN113742213A (zh) 一种用于数据分析的方法、系统和介质
US20080195453A1 (en) Organisational Representational System
US20110138228A1 (en) Verification computer product and apparatus
JP4867331B2 (ja) プロジェクト管理プログラム
JP2019133557A (ja) エラー対応支援プログラム、エラー対応支援装置及びエラー対応支援方法
JP2010140326A (ja) カバレージ測定装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140709

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140904

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150114