JP5153470B2 - 状態遷移検証装置および状態遷移検証方法 - Google Patents

状態遷移検証装置および状態遷移検証方法 Download PDF

Info

Publication number
JP5153470B2
JP5153470B2 JP2008160918A JP2008160918A JP5153470B2 JP 5153470 B2 JP5153470 B2 JP 5153470B2 JP 2008160918 A JP2008160918 A JP 2008160918A JP 2008160918 A JP2008160918 A JP 2008160918A JP 5153470 B2 JP5153470 B2 JP 5153470B2
Authority
JP
Japan
Prior art keywords
state
event
state transition
connection relationship
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008160918A
Other languages
English (en)
Other versions
JP2010003084A (ja
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008160918A priority Critical patent/JP5153470B2/ja
Publication of JP2010003084A publication Critical patent/JP2010003084A/ja
Application granted granted Critical
Publication of JP5153470B2 publication Critical patent/JP5153470B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、ソフトウェアの設計者が検討していない状態遷移を指摘する状態遷移検証装置に関する。
ソフトウェアの不具合を検証する従来技術として、設計者がシステムに状態遷移図(または状態遷移表)で表した仕様を入力すると、システムがテストケースを自動生成して検証する技術が下記特許文献1〜4に開示されている。また、ソフトウェアの開発支援をする従来技術として、設計者がシステムに設計仕様の特徴を入力すると、システムが非正常系仕様を折り込んだ仕様を自動作成し提示する技術が下記特許文献5に開示されている。
特開2000−57014号公報 特開平11−306046号公報 特開平9−223040号公報 特開平6−161759号公報 特開2006−85668号公報
しかしながら、上記従来の技術(特許文献1〜4)で開示された検証システムは、状態遷移図または状態遷移表で定義された状態遷移の不具合を抽出することで不具合を検出している。そのため、状態遷移図または状態遷移表に定義していない状態遷移による不具合は検出できない、という問題があった。
また、上記従来の技術(特許文献5)によれば、設計者は、非正常系仕様のモデルに従い、別途、情報伝達過程に関するインスタンス図等を作成する必要がある。そのため、本来の設計とは別の作業を必要とする、という問題があった。
本発明は、上記に鑑みてなされたものであって、設計者が作成した状態遷移図を用いて、設計者が検討していない状態遷移を指摘する状態遷移検証装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかる状態遷移検証装置は、設計者が検討した状態遷移である検証対象ソフトウェアの仕様情報を入力とし、当該仕様情報に記載されたすべての状態について、状態遷移の接続関係を抽出し、得られた接続関係を状態情報とする仕様情報解釈手段と、状態情報と、過去に発生した障害である意図しない状態遷移を示す障害情報とを比較し、設計者が未検討の状態遷移を検出する類似状態検索手段と、を備えることを特徴とする。
この発明によれば、設計者が作成した状態遷移図を用いて、設計者が検討していない状態遷移を指摘することができる、という効果を奏する。
以下に、本発明にかかる状態遷移検証装置および状態遷移検証方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
本実施の形態は、UML(Unified Modeling Language)モデルにおける状態遷移図を対象とする。具体的に、例をあげて説明する。図1および図2は状態遷移の一例を示す図である。図1は、状態11と、イベント12および状態13から構成される。状態11は、イベント12によって状態13に遷移する。図2は、図1に、さらにイベント14と状態15を加えたものである。状態11は、図1の場合に加え、イベント14によって状態15に遷移する。たとえば、図1のように、設計者が、状態11がイベント12によって状態13へ遷移する遷移状態のみを検討していた場合を想定する。しかしながら、図2に示すように、実際には、状態11はイベント14によって状態15に遷移する場合もある。本実施の形態では、設計者が検討していない状態遷移を検出する。
図3は、本実施の形態の状態遷移検証装置の構成例を示す図である。図3の状態遷移検証装置1は、仕様情報解釈部2、類似状態検索部3および障害情報データベース(DB)4を備える。仕様情報解釈部2は、仕様情報ファイル5を受け取ると、仕様情報ファイル5に記載されている状態の一つに着目し、後述の処理により状態情報ファイル6を出力する。類似状態検索部3は、状態情報ファイル6に記載されている状態遷移(状態およびイベント)のデータを、障害情報DB4が格納している状態遷移(状態およびイベント)のデータと比較し、状態情報ファイル6に未定義の状態遷移があった場合、その状態遷移を未定義状態遷移情報ファイル7として出力する。
障害情報DB4は、過去に発生した障害である意図しない状態遷移を示す障害情報を格納したデータベースである。具体的には、障害の状態を含んだ部分的な状態遷移の情報が格納される。図4は、障害の状態を含んだ部分的な状態遷移の情報の一例を示す図である。図4では、障害発生前の状態を状態42とし、状態42で起こったイベントをイベント43とし、障害となっている状態を状態44とする。また、状態42の遷移前の状態を状態40とし、状態40で起こったイベントをイベント41とする。
図5は、障害情報DB4に格納されている障害情報の構成例を示す図である。障害情報は、属性名と、状態(図4の状態42)の属性と、終点で接続しているイベント(図4のイベント41)の属性と、終点で接続しているイベントに始点で接続している状態(図4の状態40)の属性と、始点で接続しているイベント(図4のイベント43)の属性と、始点で接続しているイベントに終点で接続している状態(図4の状態44)の属性によって構成されている。属性名としては、たとえば、「状態名・イベント名」や「状態・イベントの種別」等の項目がある。状態の属性は、たとえば、「R開始可能」や「初期」等であることを表している。終点で接続しているイベントの属性は、たとえば、「J要求」や「開始」等であることを表している。終点で接続しているイベントに始点で接続している状態の属性は、たとえば、「J要求」や「開始」等であることを表している。始点で接続しているイベントの属性は、たとえば、「J要求」や「開始」等であることを表している。始点で接続しているイベントに終点で接続している状態の属性は、たとえば、「Aアイドル」や「終了」等であることを表している。
つづいて、設計者が仕様情報として状態遷移検証装置に入力する仕様情報ファイル5について説明する。仕様情報ファイル5は、検証する製品の状態遷移図による仕様情報である。図6は、仕様情報の一例を示す図である。図6の状態遷移図は、状態21と、状態22と、状態23と、イベント24と、イベント25と、イベント26と、イベント27と、イベント28と、イベント29と、イベント30から構成されている。たとえば、状態21はイベント25によって状態22へ遷移し、状態22はイベント29によって状態23へ遷移すること、等が示されている。
また、図7および図8は、仕様情報ファイル5の仕様情報の構成例を示す図であり、詳細には、要素(状態またはイベント)の種類等を表している。図7は、仕様情報に含まれる状態の種類を表したものであり、ここでは、図6の状態遷移図における状態の種類が示されている。具体的には、図6の状態遷移図に、状態21、状態22および状態23が存在していることが示されている。図8は、仕様情報に含まれるイベントの種類およびイベントに接続している状態を表したものであり、ここでは、図6の状態遷移図におけるイベントの種類と、イベントと状態の接続関係が示されている。たとえば、イベント25は、イベントの終点で状態22と接続し、イベントの始点で状態21と接続している。なお、状態およびイベントの要素IDとは、各要素に付した任意の符号であり、ここでは、符号と同一とする。
また、図7および図8に示す要素のそれぞれに属性情報を付加したものが、個々の要素の仕様情報となる。図9が、ある状態における仕様情報の構成例を示す図であり、図10が、あるイベントにおける仕様情報の構成例を示す図である。図9の仕様情報は、状態の要素IDと状態の属性から構成される。たとえば、状態の要素ID21の状態では、状態名が「Aアイドル」、状態の種別が「初期」等であることが示されている。図10の仕様情報は、イベントの要素IDと、終点の状態の要素IDと、始点の状態の要素IDと、イベントの属性から構成される。たとえば、イベントの要素ID29のイベントでは、終点で状態の要素ID23の状態と接続し、始点で状態の要素ID22の状態と接続している。イベントの属性としては、イベント名が[F要求」、イベントの種別が「開始」等であることが示されている。
また、図11は、仕様情報に入力する属性の例を示す図である。属性名には属性の項目が示され、属性の例には各項目に属性として入力する具体的な内容が示されている。たとえば、属性名が状態名の項目には、「Aアイドル」、「B開始可能」等の属性を入力する。状態遷移検証装置1の類似状態検索部3は、この各要素の属性情報と、障害情報DB4が格納している各要素の属性情報を比較することで、未定義状態遷移を抽出することができる。なお、仕様情報ファイル5のデータには、状態遷移図の各要素の図形としてのデータ(たとえば図6に示す状態遷移図)は含まない。
つづいて、本実施の形態の状態遷移検証装置の動作を図面に基づいて説明する。図3において、状態遷移検証装置1に仕様情報ファイル5を入力すると、仕様情報解釈部2が状態情報ファイル6を出力するための動作を行う。ここで、仕様情報解釈部2の動作を説明する。図12は、仕様情報解釈部2の動作を示すフローチャートである。
最初に、状態遷移検証装置1に状態遷移図による仕様情報ファイル5を入力すると(ステップS1)、仕様情報解釈部2は、特定の状態を基準にして仕様情報ファイル5に記載されているイベントとの接続関係を状態遷移として抽出するため、仕様情報に含まれる状態の1つについて着目する(ステップS2)。つぎに、仕様情報解釈部2は、状態に接続するイベントをカウントするための「cnt1」および「cnt2」を「0」にする(ステップS3)。ここで「cnt1」は、着目した状態に終点で接続しているイベントの個数を表し、「cnt2」は、着目した状態に始点で接続しているイベントの個数を表す。
つぎに、仕様情報解釈部2は、ステップS2で着目した状態と、仕様情報ファイル5に記載されているイベントとの接続関係を状態遷移として抽出するため、仕様情報に含まれるイベントの1つについて着目する(ステップS4)。着目した状態と、着目したイベントの終点で接続している状態が同一である場合(ステップS5:Yes)、仕様情報解釈部2は、「cnt1」に1を追加(ステップS6)するとともに、このときのイベントの要素IDを記録し(ステップS7)、また、このイベントに始点で接続している状態の要素IDを記録する(ステップS8)。
上記処理(ステップS8)後、または、着目した状態と着目したイベントの終点で接続している状態が異なる場合(ステップS5:No)、仕様情報解釈部2は、ステップS9へ進む。つぎに、着目した状態と、着目したイベントの始点で接続している状態が同一である場合(ステップS9:Yes)、仕様情報解釈部2は、「cnt2」に1を追加(ステップS10)するとともに、このときのイベントの要素IDを記録し(ステップS11)、また、このイベントに終点で接続している状態の要素IDを記録する(ステップS12)。
上記処理(ステップS12)後、または、着目した状態と着目したイベントの始点で接続している状態が異なる場合(ステップS9:No)、仕様情報解釈部2は、ステップS13へ進む。ここで、仕様情報解釈部2は、ステップS2で着目した状態の1つと仕様情報ファイル5に記載されている全てのイベントについて、確認が終了していない場合(ステップS13:No)、ステップS4へ戻り別のイベントに着目して同様の確認を繰り返す(ステップS4〜S12)。
全てのイベントについて確認が終了した場合(ステップS13:Yes)、仕様情報解釈部2は、「cnt1」の数を、着目した状態に終点で接続しているイベントの個数として、「cnt2」の数を、着目した状態に始点で接続しているイベントの個数として、それぞれ記録する(ステップS14)。
ここで、仕様情報解釈部2は、仕様情報に記載されている全ての状態について確認が終了していない場合(ステップS15:No)、ステップS2へ戻り別の状態に着目して同様の処理を繰り返し実行する(ステップS2〜S14)。全ての状態について処理が終了すると(ステップS15:Yes)、仕様情報解釈部2は、記録した情報を状態情報ファイル6として出力(ステップS16)し、上記の動作を終了する。
状態情報ファイル6は、ある状態を基準にして部分的な状態遷移を表すものである。図13は、状態情報ファイル6に記載された各状態やイベントの関係を状態遷移図で表した図である。たとえば、状態33を基準とした場合に、状態33に終点で接続しているイベントがイベント32,イベント37であり、それらのイベントと始点で接続している状態が状態31,状態36である。また、状態33に始点で接続しているイベントがイベント34,イベント38であり、それらのイベントと終点で接続している状態が状態35,状態39である。
また、図14および図15は、状態情報ファイル6の状態情報の構成例を示す図である。図14は、状態の要素IDと、始点で接続しているイベントの個数と、終点で接続しているイベントの要素IDと、イベントの始点で接続している状態の要素IDから構成される。特定の要素IDで示される状態(例:上記状態33)に終点で接続しているイベント(例:上記イベント32、イベント37)、およびそのイベントに始点で接続している状態(例:上記状態31、状態36)の情報が示されている。また、上記状態に終点で接続しているイベントの個数が示されている。同様に、図15は、状態の要素IDと、始点で接続しているイベントの個数と、始点で接続しているイベントの要素IDと、イベントの終点で接続している状態の要素IDから構成される。特定の要素IDで示される状態(例:上記状態33)に始点で接続しているイベント(例:上記イベント34、イベント38)、およびそのイベントに終点で接続している状態(例:上記状態35、状態39)の情報が示されている。また、上記状態に始点で接続しているイベントの個数が示されている。
つぎに、状態遷移検証装置1では、仕様情報解釈部2が状態情報ファイル6を出力すると、その状態情報ファイル6を類似状態検索部3に入力する。類似状態検索部3で、状態情報ファイル6に記載されている状態遷移の情報と、状態遷移検証装置1に備える障害情報DB4が格納している各状態遷移の情報とを比較する。ここで、類似状態検索部3の動作を説明する。図16は、類似状態検索部3の動作を示すフローチャートである。
最初に、状態情報ファイル6を受け取ると(ステップS21)、類似状態検索部3は、まず、状態情報ファイル6に記載されている状態の1つ(以降(A)とする)について着目する(ステップS22)。つぎに、類似状態検索部3は、着目した状態に終点で接続しているイベントと、このイベントに始点で接続している状態の状態遷移の1つ(以降(B)とする)について着目する(ステップS23)。具体的には、図13で示す状態33とイベント32と状態31(または状態33とイベント37と状態36)の部分の状態遷移を表す。また、この状態遷移は、図14に示す状態情報ファイル6から、状態とイベントを読み取ることができる。
つぎに、類似状態検索部3は、障害情報DB4が格納している状態の1つ(以降(C)とする)について着目し(ステップS24)、さらに、着目した状態に終点で接続しているイベントと、このイベントに始点で接続している状態の状態遷移の1つ(以降(D)とする)について着目する(ステップS25)。具体的には、図4で示す状態42とイベント41と状態40の部分の状態遷移を表す。
そして、類似状態検索部3は、(B)と(D)が類似しているか否かを判断するため、状態情報ファイル6の各状態遷移と、障害情報DB4が格納している各障害の状態遷移の類似度を計算する(ステップS26)。たとえば、類似度は、各状態、各イベントの属性値を比較し、属性値が一致する場合は類似度の数値として1を加算する。具体的には、図13で示す状態情報ファイル6の状態遷移と、図4で示す障害情報DB4が格納している状態遷移において、状態33と状態42、イベント32とイベント41、および状態31と状態40のそれぞれの属性値(または、状態33と状態42、イベント37とイベント41、および状態36と状態40のそれぞれの属性値)を比較する。
状態遷移が類似しているか否かを判断するため、予め既定したしきい値を用いる。ここではしきい値(X)とする。類似度の値がしきい値(X)未満の場合、類似状態検索部3は、状態情報ファイル6で着目した状態遷移(B)と、障害情報DB4が格納している状態遷移(D)との間で類似していないと判断する。すなわち、状態遷移(B)からは、障害情報DB4が格納している障害は起こらないことを表している。この場合、ステップS36へ進む(ステップS27:No)。
一方、類似度の値がしきい値(X)以上の場合、類似状態検索部3は、状態情報ファイル6に記載されている状態遷移(B)と、障害情報DB4が格納している状態遷移(D)が類似していると判断して(ステップS27:Yes)、つぎに、状態遷移(B)の状態(A)に始点で接続しているイベントの1つ(以降(E)とする)について着目する(ステップS28)。具体的には、図13で示すイベント34(またはイベント38)の部分のイベントを表す。さらに、類似状態検索部3は、状態遷移(D)の状態(C)に始点で接続しているイベントの1つ(以降(F)とする)について着目する(ステップS29)。具体的には、図4で示すイベント43の部分のイベントを表す。
そして、類似状態検索部3は、(E)と(F)が類似しているか否かを判断するため、状態情報ファイル6のイベントと、障害情報DB4が格納しているイベントとの類似度を計算する(ステップS30)。たとえば、類似度は、各イベントの属性値を比較し、属性値が一致する場合は類似度の数値として1を加算する。具体的には、図13で示す状態情報ファイル6の状態遷移および図4で示す障害情報DB4で管理する状態遷移において、イベント34とイベント43の属性値(またはイベント38とイベント43の属性値)を比較する。
イベントが類似しているか否かを判断するため、予め既定したしきい値を用いる。ここではしきい値(Y)とする。類似度の値がしきい値(Y)未満の場合(ステップS31:No)、類似状態検索部3は、障害情報DB4が格納しているイベントと類似するイベントが状態情報ファイル6にはないとして、これを未定義のイベントとして障害情報DB4が格納しているイベントの要素IDを記録する(ステップS32)。また、このイベントに終点で接続している状態(障害情報DB4が格納している状態)の要素IDを記録する(ステップS33)。
ここで、類似状態検索部3が未定義のイベントを検出した場合とは、検証した仕様情報ファイル5には過去に障害を起こした状態遷移と類似する状態遷移があったが、障害を起こしたイベントがなかった(設計者が障害を起こしたイベントを検討していなかった)ことを意味する。
上記処理(ステップS33)後、または、類似度の値がしきい値(Y)以上の場合(ステップS31:Yes)、類似状態検索部3は、障害情報DB4が格納しているイベントと類似するイベントが、状態情報ファイル4に定義されているとしてステップS34へ進む。
ここで、類似度の値がしきい値(Y)以上の場合とは、検証した仕様情報ファイル5には過去に障害を起こした状態遷移と類似する状態遷移があったが、障害を起こしたイベントもあった(設計者が障害を起こしたイベントを検討していた)ことを意味する。
つぎに、類似状態検索部3は、ステップS28で着目した(E)の1つと全ての(F)についての確認が終了していない場合(ステップS34:No)、ステップS29へ戻り別のイベントに着目して同様の確認を繰り返す(ステップS29〜S33)。全ての(F)について確認が終了した場合(ステップS34:Yes)、ステップS35へ進む。
つぎに、類似状態検索部3は、ステップS27で類似度がしきい値(X)以上であると判断した(B)に接続している全ての(E)についての確認が終了していない場合(ステップS35:No)、ステップS28へ戻り別のイベントに着目して同様の確認を繰り返す(ステップS28〜S34)。全ての(E)について確認が終了した場合(ステップS35:Yes)、ステップS36へ進む。また、ステップS27で、類似度がしきい値(X)未満であった場合についても、同様にステップS36へ進む。
つぎに、類似状態検索部3は、ステップS24で着目した(C)の全ての(D)についての確認が終了していない場合(ステップS36:No)、ステップS25へ戻り別の状態遷移に着目して同様の確認を繰り返す(ステップS25〜S35)。全ての(D)について確認が終了した場合(ステップS36:Yes)、ステップS37へ進む。
つぎに、類似状態検索部3は、ステップS23で着目した(B)に対して全ての(C)についての確認が終了していない場合(ステップS37:No)、ステップS24へ戻り障害情報DB4が格納している別の状態に着目して同様の確認を繰り返す(ステップS24〜S36)。全ての(C)について確認が終了した場合(ステップS37:Yes)、ステップS38へ進む。
つぎに、類似状態検索部3は、ステップS22で着目した(A)の全ての(B)についての確認が終了していない場合(ステップS38:No)、ステップS23へ戻り別の状態遷移に着目して同様の確認を繰り返す(ステップS23〜S37)。全ての(B)について確認が終了した場合(ステップS38:Yes)、ステップS39へ進む。
つぎに、類似状態検索部3は、状態情報ファイル6の全ての(A)についての確認が終了していない場合(ステップS39:No)、ステップS22へ戻り別の状態に着目して同様の確認を繰り返す(ステップS22〜S38)。全ての(A)について確認が終了した場合(ステップS39:Yes)、記録した情報を未定義状態遷移情報ファイル7として出力(ステップS40)し、上記の動作を終了する。
未定義状態遷移情報ファイル7は、類似状態検索部3で、状態情報ファイル6と障害情報DB4の内容を比較した結果である。図17は、未定義状態遷移情報ファイル7の構成例を示す図である。未定義状態遷移情報ファイル7は、仕様情報の状態の要素IDと、未定義の状態遷移から構成され、未定義の状態遷移は、障害No.と、状態の属性(図4の状態42)と、始点で接続しているイベント(図4のイベント43)の属性と、始点で接続しているイベントに終点で接続している状態(図4の状態44)の属性を含む。
以上説明したように、本実施の形態によれば、状態遷移検証装置1は、入力された仕様情報に基づき生成した状態情報と過去の障害情報とを比較し、設計者が検討していない未定義の状態遷移を検出することとした。これにより、設計者は、検出された未定義の状態遷移に基づいて効率的に検証を行うことができ、ソフトウェアの完成度を高めることができる。
以上のように、本発明にかかる状態遷移検証装置は、ソフトウェア設計に有用であり、特に、ソフトウェアの設計仕様について検証する場合に適している。
状態遷移図である。 状態遷移図である。 本発明にかかる状態遷移検証装置の構成例を示す図である。 状態遷移図である。 障害情報の構成例を示す図である。 状態遷移図である。 仕様情報の構成例を示す図である。 仕様情報の構成例を示す図である。 仕様情報の構成例を示す図である。 仕様情報の構成例を示す図である。 仕様情報に属性として入力する属性の例を示す図である。 仕様情報解釈部の動作を示すフローチャートである。 状態遷移図である。 状態情報の構成例を示す図である。 状態情報の構成例を示す図である。 類似状態検索部の動作を示すフローチャートである。 未定義状態遷移情報の構成例を示す図である。
符号の説明
1 状態遷移検証装置
2 仕様情報解釈部
3 類似状態検索部
4 障害情報データベース(DB)
5 仕様情報ファイル
6 状態情報ファイル
7 未定義状態遷移情報ファイル
11,13,15,21,22,23,31,35,36,39,40,42,44 状態
12,14,24,25,26,27,28,29,30,32,34,37,38,41,43 イベント

Claims (6)

  1. 設計者が検討した状態遷移である検証対象ソフトウェアの仕様情報を入力とし、当該仕様情報に記載されたすべての状態について、状態遷移の接続関係を抽出し、得られた接続関係を状態情報とする仕様情報解釈手段と、
    前記状態情報と、過去に発生した障害である意図しない状態遷移を示す障害情報とを比較し、設計者が未検討の状態遷移を検出する類似状態検索手段と、
    を備えることを特徴とする状態遷移検証装置。
  2. 前記仕様情報解釈手段は、
    前記仕様情報に記載されたすべての状態について、終点で接続しているイベントとそのイベントに始点で接続している状態との第1の接続関係、および始点で接続しているイベントとそのイベントに終点で接続している状態との第2の接続関係、をそれぞれ抽出し、得られた各接続関係を前記状態情報とすることを特徴とする請求項1に記載の状態遷移検証装置。
  3. 前記類似状態検索手段は、
    前記障害情報に記載された障害発生直前の状態に終点で接続しているイベントとそのイベントに始点で接続している状態との接続関係を第3の接続関係とし、
    前記障害情報に記載された障害発生直前の状態に始点で接続しているイベントとそのイベントに終点で接続している状態との接続関係を第4の接続関係とし、
    前記状態情報として得られたすべての第1の接続関係と、すべての第3の接続関係との比較による類似判断により、当該第1の接続関係の中から前記意図しない状態遷移に移行する可能性のある第1の接続関係を特定し、
    前記特定された第1の接続関係に対応する第2の接続関係のイベントと、前記特定された第1の接続関係と類似する第3の接続関係に対応する第4の接続関係のイベントとの比較により、当該第4の接続関係のイベントが未検討イベントかどうかを判断し、
    未検討イベントであると判断した場合、前記第4の接続関係を、前記設計者が未検討の状態遷移とすることを特徴とする請求項2に記載の状態遷移検証装置。
  4. 仕様情報解釈手段と類似状態検索手段とを備えた状態遷移検証装置における状態遷移検証方法であって、
    前記仕様情報解釈手段が、設計者が検討した状態遷移である検証対象ソフトウェアの仕様情報を入力とし、当該仕様情報に記載されたすべての状態について、状態遷移の接続関係を抽出し、得られた接続関係を状態情報とする仕様情報解釈ステップと、
    前記類似状態検索手段が、前記状態情報と、過去に発生した障害である意図しない状態遷移を示す障害情報とを比較し、設計者が未検討の状態遷移を検出する状態遷移検出ステップと、
    を含むことを特徴とする状態遷移検証方法。
  5. 前記仕様情報解釈ステップは、
    前記仕様情報解釈手段が、前記仕様情報に記載された特定の状態に終点で接続しているイベントとそのイベントに始点で接続している状態との第1の接続関係を抽出する第1の接続関係抽出ステップと、
    前記仕様情報解釈手段が、前記特定の状態に始点で接続しているイベントとそのイベントに終点で接続している状態との第2の接続関係を抽出する第2の接続関係抽出ステップと、
    を含み、
    前記仕様情報解釈手段は、前記特定の状態を変更しながら前記仕様情報に記載されたすべての状態について、前記第1の接続関係抽出ステップおよび前記第2の接続関係抽出ステップを実行し、得られたすべての接続関係を前記状態情報とすることを特徴とする請求項4に記載の状態遷移検証方法。
  6. 前記障害情報に記載された障害発生直前の状態に終点で接続しているイベントとそのイベントに始点で接続している状態との接続関係を第3の接続関係とし、
    前記障害情報に記載された障害発生直前の状態に始点で接続しているイベントとそのイベントに終点で接続している状態との接続関係を第4の接続関係とし、
    前記状態遷移検出ステップは、
    前記類似状態検索手段が、前記状態情報として得られたすべての第1の接続関係と、すべての第3の接続関係との比較による類似判断により、当該第1の接続関係の中から前記意図しない状態遷移に移行する可能性のある第1の接続関係を特定する特定ステップと、
    前記類似状態検索手段が、前記特定された第1の接続関係に対応する第2の接続関係のイベントと、前記特定された第1の接続関係と類似する第3の接続関係に対応する第4の接続関係のイベントとの比較により、当該第4の接続関係のイベントが未検討イベントかどうかを判断する判断ステップと、
    前記類似状態検索手段が、前記判断ステップにより未検討イベントであると判断された場合に、前記第4の接続関係を、前記設計者が未検討の状態遷移であると決定する決定ステップと、
    を含むことを特徴とする請求項5に記載の状態遷移検証方法。
JP2008160918A 2008-06-19 2008-06-19 状態遷移検証装置および状態遷移検証方法 Expired - Fee Related JP5153470B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008160918A JP5153470B2 (ja) 2008-06-19 2008-06-19 状態遷移検証装置および状態遷移検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008160918A JP5153470B2 (ja) 2008-06-19 2008-06-19 状態遷移検証装置および状態遷移検証方法

Publications (2)

Publication Number Publication Date
JP2010003084A JP2010003084A (ja) 2010-01-07
JP5153470B2 true JP5153470B2 (ja) 2013-02-27

Family

ID=41584760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008160918A Expired - Fee Related JP5153470B2 (ja) 2008-06-19 2008-06-19 状態遷移検証装置および状態遷移検証方法

Country Status (1)

Country Link
JP (1) JP5153470B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102768638B (zh) * 2012-05-18 2015-04-29 北京工业大学 基于状态转移图的软件行为可信性检测方法
JP5933470B2 (ja) * 2013-03-12 2016-06-08 株式会社エヌ・ティ・ティ・データ 開発支援装置、開発支援方法、および開発支援プログラム
CN104008056B (zh) * 2014-05-30 2016-11-23 广州华多网络科技有限公司 软件测试方法及装置
CN108960220B (zh) * 2018-10-31 2019-02-15 上海电气泰雷兹交通自动化系统有限公司 基于状态机模型的信号系统通信数据可靠性分析方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05127882A (ja) * 1991-11-07 1993-05-25 Nec Corp 状態遷移図差分抽出装置
JP3214356B2 (ja) * 1996-06-14 2001-10-02 三菱電機株式会社 テスト支援装置
JP2003076543A (ja) * 2001-08-31 2003-03-14 Cats Kk プログラム生成装置、プログラム生成方法およびその方法をコンピュータに実行させるプログラム
JP2005316710A (ja) * 2004-04-28 2005-11-10 Mitsubishi Electric Corp ソフトウェア試験支援装置
JP2007265089A (ja) * 2006-03-29 2007-10-11 Fujitsu Ltd ソフトウェア保守支援プログラム,処理方法および装置

Also Published As

Publication number Publication date
JP2010003084A (ja) 2010-01-07

Similar Documents

Publication Publication Date Title
US9734214B2 (en) Metadata-based test data generation
US8612372B2 (en) Detection rule-generating facility
JP4667386B2 (ja) 業務モデル図作成支援プログラム、業務モデル図作成支援方法、および業務モデル図作成支援装置
US8589884B2 (en) Method and system for identifying regression test cases for a software
US20090138855A1 (en) Test impact feedback system for software developers
US20090319829A1 (en) Pattern extraction method and apparatus
US8423949B2 (en) Apparatus for displaying a portion to which design modification is made in designing a product
JP6268029B2 (ja) テストケース生成装置及びテストケース生成方法
JP5153470B2 (ja) 状態遷移検証装置および状態遷移検証方法
JP2007323219A (ja) Fmea支援装置、その装置、そのプログラム及びその媒体
JP2009087352A (ja) ソフトウェアアプリケーションにおける欠陥検出のための設定可能なウェブサービスシステム及び方法
JP2009163609A (ja) テストデータ生成用プログラム、および装置
KR101460860B1 (ko) 상태 기반의 테스트 시나리오 모델을 이용한 gui 테스트 장치 및 방법
US10496402B1 (en) System, method, and computer program for defining and utilizing minimal testable values for software project development and operations
JP5747751B2 (ja) リグレッションテスト支援プログラム及びリグレッションテスト支援装置
JP2008293382A (ja) テスト仕様自動生成方式
CN116431105A (zh) 软件系统结构化设计方法、装置、电子设备及存储介质
US20080195906A1 (en) Test pattern generation apparatus and test pattern generation method
JP2009134360A (ja) モデル検査システム、モデル検査方法およびモデル検査用プログラム
JP5225553B2 (ja) テストケース抽出装置、テストケース抽出プログラム、テストケース抽出プログラムが格納された記憶媒体およびテストケース抽出方法
JP2014002565A (ja) アプリケーションプログラムの影響範囲抽出方法および影響範囲抽出プログラム
JP5755861B2 (ja) テストケース生成装置、テストケース生成方法およびテストケース生成プログラム
JP4893811B2 (ja) 検証支援プログラム、および検証支援装置
WO2004068347A1 (en) Method and apparatus for categorising test scripts
JP4134094B2 (ja) 署名検証装置及び署名作成・検証システム及び署名検証方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120905

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120911

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121015

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121204

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

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees