JPWO2008123021A1 - 論理式生成装置、及び論理式生成方法 - Google Patents
論理式生成装置、及び論理式生成方法 Download PDFInfo
- Publication number
- JPWO2008123021A1 JPWO2008123021A1 JP2009508946A JP2009508946A JPWO2008123021A1 JP WO2008123021 A1 JPWO2008123021 A1 JP WO2008123021A1 JP 2009508946 A JP2009508946 A JP 2009508946A JP 2009508946 A JP2009508946 A JP 2009508946A JP WO2008123021 A1 JPWO2008123021 A1 JP WO2008123021A1
- Authority
- JP
- Japan
- Prior art keywords
- order information
- logical expression
- verification model
- sequence diagram
- information storage
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
- Information Transfer Systems (AREA)
Abstract
論理式生成装置は、システムの性質を検証するときに用いられる時相論理式を生成するものであって、シーケンス図解析手段と、論理式構成手段と、を具備している。シーケンス図解析手段は、システムを構成する複数のオブジェクトのやりとりが座標領域に記述されたシーケンス図を参照して、複数のオブジェクトのやりとりの順序関係を表す順序情報を生成する。論理式構成手段は、順序情報に基づいて、システムの性質を表す時相論理式を生成する。
Description
本発明は、モデル検査で使用する時相論理式を生成する論理式生成装置、及び論理式生成方法に関する。この出願は、2007年3月6日に出願された特許出願番号2007−055632号の日本特許出願に基づいており、その出願による優先権の利益を主張し、その出願の開示は、引用することにより、そっくりそのままここに組み込まれている。
モデル検査を用いてシステムを検証する方法が提案されている。
モデル検査技術を用いる際にはシステムに対応した検証モデルを作成する。検証モデルはモデル検査専用言語を用いて作成する。検証モデルはモデル検査器によって検証される。
モデル検査器とは、検証モデルと検査項目とを入力したときに計算機(コンピュータ)上でモデル検査を自動的に行うソフトウェアツールである。
検査項目とは、システムに関して検証したい性質を記述するものである。この検査項目は、時相論理式を用いて記述される。
時相論理式とは、述語論理式に時間の概念を取り入れた論理式であり、システムの時系列に関わる性質を表すことができるものである。
従来では、モデル検査技術を用いてシステムを検証するためには、検証するシステムの性質を示す時相論理式を検証モデルの記述方法に依存して記述しなければならなかった。その方法として、例えば、“Gerard J.Holzmann著「The Spin Model Checker:: Primer and reference Manual」Addison Wesley、2003年9月”には、このような検証モデルの記述言語Promelaと、Promelaで記述した検証モデルの性質と、をLTL(Linear Temporal Logic;LTLは、時相論理式に対応する複数のクラスのうちのひとつのクラス)で記述することが記載されている。しかし、このような方法では、検証する性質の記述が特定の論理式のクラスに依存した複雑なものとなり、検証したい性質を適切に記述するのが難しいという問題がある。
また、従来から、検証する性質を図式で表現する方法も提案されている。その方法として、例えば、“Gerard J.Holzmann and Margaret H.Smith,Automating Software Feature Verification,p72−87,Bell Labs Technical Journal,Vol.5,Issue2,April/June2000”に記載されている。しかし、この方法では、特定のモデル検査ツールに依存したものであり、表現できる性質も限定的であるという問題がある。
本発明の課題は、検証したいシステムの性質を適切に記述した時相論理式を生成することができる論理式生成装置、及び論理式生成方法を提供することにある。
本発明の論理式生成装置は、システムの性質を検証するときに用いられる時相論理式を生成するものであって、シーケンス図解析手段と、論理式構成手段と、を具備している。シーケンス図解析手段は、システムを構成する複数のオブジェクトのやりとりが座標領域に記述されたシーケンス図を参照して、複数のオブジェクトのやりとりの順序関係を表す順序情報を生成する。論理式構成手段は、順序情報に基づいて、システムの性質を表す時相論理式を生成する。
上記発明の目的、効果、特徴は、添付される図面と連携して実施の形態の記述から、より明らかになる。
以下に添付図面を参照して、本発明の論理式生成装置について詳細に説明する。
(第1実施形態)
図1は、本発明の第1実施形態による論理式生成装置1の構成を示している。論理式生成装置1は、コンピュータ2を具備している。コンピュータ2は、CPU(Central Processing Unit)である実行手段(実行部)4と、記録媒体である記憶手段(記憶部)3と、を具備している。記憶部3には、コンピュータ2に実行させるためのコンピュータプログラムが記憶されている。実行部4は、コンピュータ2の起動時などにコンピュータプログラムを記憶部3から読み取って実行する。
図1は、本発明の第1実施形態による論理式生成装置1の構成を示している。論理式生成装置1は、コンピュータ2を具備している。コンピュータ2は、CPU(Central Processing Unit)である実行手段(実行部)4と、記録媒体である記憶手段(記憶部)3と、を具備している。記憶部3には、コンピュータ2に実行させるためのコンピュータプログラムが記憶されている。実行部4は、コンピュータ2の起動時などにコンピュータプログラムを記憶部3から読み取って実行する。
論理式生成装置1は、更に、ソフトウェアである検証支援ツール5を具備している。検証支援ツール5は、記憶部3にインストールされる。この検証支援ツール5は、コンピュータプログラム6を備えている。実行部4は、コンピュータプログラム6を記憶部3から読み取り可能であり、コンピュータプログラム6は、実行部4によって実行される。
コンピュータプログラム6は、システムの性質をモデル検査技術によって検証するときに用いられる時相論理式14を生成するものであり、シーケンス図解析手段(シーケンス図解析部)11と、順序情報格納手段(順序情報格納部)12と、論理式構成手段(論理式構成部)13とを含んでいる。
シーケンス図解析部11には、シーケンス図10が入力される(与えられる)。シーケンス図10は、オブジェクト指向技術の標準化団体であるOMG(Object Management Group)によって標準化されたUML(Unified Modeling Language)仕様に基づいて作成される。従って、シーケンス図10は、ソフトウェア開発者にとって理解しやすい上に記述しやすい。
UMLは、言語と言ってもJava(登録商標)などのプログラミング言語のような文字による表現形式を表すものではない。UMLとは、矩形や楕円など複数の図形を組み合わせて、システムの構成や動き方などを表現するダイヤグラムによる表現形式を表すものである。このため、ソフトウェア開発者は、表現形式を容易に把握することができ、UML仕様に基づいてシーケンス図10を作成することができる。
上記のシーケンス図10はUMLのダイヤグラムのひとつである。シーケンス図10は、システムを構成する複数のオブジェクトのやりとりが、直交する2軸で定められる座標領域に記述されている。
このシーケンス図10は、複数のフラグメント、複数のライフライン、複数のメッセージ送受信端を含んでいる。複数のフラグメント、複数のライフライン、複数のメッセージ送受信端は、それぞれ、以下の要件を満たすものとする。
・複数のライフラインは、座標の水平方向に伸びる軸(x軸)に沿って、並行に並んでいる。複数のライフラインの各々は、垂直方向(y軸方向)に延びている。
・ライフラインは、ライフライン名(=オブジェクト名)を含んでいる。
・複数のメッセージ送受信端の各々は、メッセージ名、送受信区別、絶対位置(=y座標)を含んでいる。メッセージ送受信端は、複数のライフラインのうちの1つのライフラインのある点上に置かれるので、その点のy座標がそのメッセージ送受信端の絶対位置となる。また、メッセージ送受信端は、そのメッセージ送受信端を識別するためのメッセージ送受信端名を更に含んでいる。
・複数のフラグメントの各々は、フラグメント種類(sd/strict、alt、seq)、フラグメント名、絶対位置(=y座標)を含んでいる。フラグメントは、メッセージ送受信端を含んでいる。
・シーケンス図10全体は、それがフラグメントで囲まれていなかった場合、フラグメント種類sdのフラグメントで囲まれていると解釈される。ここで、フラグメント、ライフライン、メッセージ送受信端の個数は、0以上任意個を表している。例えば、フラグメントはなくてもよいし、1個でもよい。フラグメントが0個の場合、即ち、シーケンス図10全体がフラグメントで囲まれていなかった場合、フラグメント種類sdのフラグメントで囲まれていると解釈されることにより、フラグメントの個数は1個と同等になる。
・複数のライフラインは、座標の水平方向に伸びる軸(x軸)に沿って、並行に並んでいる。複数のライフラインの各々は、垂直方向(y軸方向)に延びている。
・ライフラインは、ライフライン名(=オブジェクト名)を含んでいる。
・複数のメッセージ送受信端の各々は、メッセージ名、送受信区別、絶対位置(=y座標)を含んでいる。メッセージ送受信端は、複数のライフラインのうちの1つのライフラインのある点上に置かれるので、その点のy座標がそのメッセージ送受信端の絶対位置となる。また、メッセージ送受信端は、そのメッセージ送受信端を識別するためのメッセージ送受信端名を更に含んでいる。
・複数のフラグメントの各々は、フラグメント種類(sd/strict、alt、seq)、フラグメント名、絶対位置(=y座標)を含んでいる。フラグメントは、メッセージ送受信端を含んでいる。
・シーケンス図10全体は、それがフラグメントで囲まれていなかった場合、フラグメント種類sdのフラグメントで囲まれていると解釈される。ここで、フラグメント、ライフライン、メッセージ送受信端の個数は、0以上任意個を表している。例えば、フラグメントはなくてもよいし、1個でもよい。フラグメントが0個の場合、即ち、シーケンス図10全体がフラグメントで囲まれていなかった場合、フラグメント種類sdのフラグメントで囲まれていると解釈されることにより、フラグメントの個数は1個と同等になる。
シーケンス図解析部11は、入力されたシーケンス図10に含まれる複数のフラグメントを参照して、それぞれ、複数のフラグメントに含まれるフラグメント名もしくはメッセージ送受信端名を絶対位置の小さいものから順に取り出し、フラグメント種類に従って必要な文字列を追加しながら、順序情報を生成する。即ち、シーケンス図解析部11は、シーケンス図10を参照して、複数のオブジェクトのやりとりの順序関係を表す順序情報を生成する。この順序情報は、複数のオブジェクトのやりとりをそれぞれ時系列で表す複数の基本順序情報を含んでいる。
順序情報は、以下のように構成される。
・順序情報=フラグメント順序情報*(*は複数を表す)、
・フラグメント順序情報=フラグメント名+(基本順序情報+デリミタ)*、
・基本順序情報=メッセージ送受信端名あるいはフラグメント名の正規表現列の集合、
なお、デリミタ(delimiter)は、基本順序情報に含まれる要素を他の基本順序情報に含まれる要素と区別するために用いられる区切りを表し、以下“¥n”で記述する。
・順序情報=フラグメント順序情報*(*は複数を表す)、
・フラグメント順序情報=フラグメント名+(基本順序情報+デリミタ)*、
・基本順序情報=メッセージ送受信端名あるいはフラグメント名の正規表現列の集合、
なお、デリミタ(delimiter)は、基本順序情報に含まれる要素を他の基本順序情報に含まれる要素と区別するために用いられる区切りを表し、以下“¥n”で記述する。
順序情報格納部12は、シーケンス図解析部11により生成された順序情報を保存(格納)する。
論理式構成部13は、順序情報格納部12に格納された順序情報を参照し、順序情報に含まれる複数の基本順序情報のそれぞれに対して、その要素種類(メッセージ送受信端名、“|”、フラグメント名、“¥n”)毎に要素や論理記号を追加し、時相論理式14を構成する。即ち、論理式構成部13は、順序情報格納部12に格納された順序情報に基づいて、システムの性質を表す時相論理式14を生成する。
図2、図3は、本発明の第1実施形態による論理式生成装置1の動作として、それぞれ、シーケンス図解析部11、論理式構成部13の動作を示すフローチャートである。
まず、シーケンス図解析部11の動作について説明する。
シーケンス図解析部11は、入力されたシーケンス図10を参照して、複数のフラグメントに対する処理が全て終了するまで(図2のステップA1)、フラグメント毎に以下の処理を繰り返して、複数の基本順序情報を含むフラグメント順序情報を生成する。
まず、シーケンス図解析部11は、複数のフラグメントのうちの、あるフラグメント(例えば1番目のフラグメント)のフラグメント名を該当フラグメント名とし、上記フラグメントに対する基本順序情報をNULLとする(ステップA2)。フラグメント種類を調べ(ステップA3)、フラグメント種類に従って以下の処理をする。
フラグメント種類がsdもしくはstrictである。この場合、シーケンス図解析部11は、フラグメント中のメッセージ送受信端名又はフラグメント名を、座標の小さなものから順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドする(ステップA4)。これにより、フラグメント種類に従った処理を終了する。
フラグメント種類がaltである。この場合、シーケンス図解析部11は、まず、第1オペランド中のメッセージ送受信端名、あるいはフラグメント名を、座標の小さなものから順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドする(ステップA5)。その後、オブジェクト間のメッセージ送受信に関する要素として、“|”を上記基本順序情報にアペンドする(ステップA6)。更に、第2オペランド中のメッセージ送受信端名、あるいはフラグメント名を、座標の小さなものから順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドする(ステップA7)。これにより、フラグメント種類に従った処理を終了する。
フラグメント種類がseqである。この場合、シーケンス図解析部11は、第1オペランド中のメッセージ送受信端名、あるいはフラグメント名を、座標の小さなものから順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドし(ステップA8)、その後、上記基本順序情報に含まれる要素を他の基本順序情報に含まれる要素と区別するために、オブジェクト間のメッセージ送受信に関する要素として、“¥n”を上記基本順序情報にアペンドする(ステップA9)。更に、第2オペランド中のメッセージ送受信端名、あるいはフラグメント名を、座標の小さなものから順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドする(ステップA10)。更に、フラグメントに含まれるライフラインに対する処理が終了するまで(ステップA11−NO)、ライフライン毎に、上記基本順序情報に含まれる要素を他の基本順序情報に含まれる要素と区別するために、“¥n”を上記基本順序情報にアペンドし(ステップA12)、ライフライン上のメッセージ送受信端名あるいはフラグメント名を順に取り出し、オブジェクト間のメッセージ送受信に関する要素として、上記基本順序情報にアペンドする(ステップA13)。フラグメントに含まれるライフラインに対する処理が終了した場合(ステップS11−YES)、フラグメント種類に従った処理を終了する。
シーケンス図解析部11は、フラグメント種類に従った処理の終了後、順序情報にフラグメント名と上記基本順序情報をアペンドする(ステップA14)。
ここで、複数のフラグメントに対する処理が全て終了してない(ステップA1−NO)。この場合、シーケンス図解析部11は、シーケンス図10を参照して、複数のフラグメントのうちの、上記フラグメントの次のフラグメントのフラグメント名と、次のフラグメントに対する基本順序情報とについて、上述のステップA2と、ステップA3と、ステップA4、A5〜A7、A8〜A13のいずれかと、ステップA14と、を実行する。
複数のフラグメントに対する処理が全て終了した場合(ステップA1−YES)、シーケンス図解析部11は、複数のフラグメント順序情報を含む順序情報を順序情報格納部12に格納する。
次に、論理式構成部13の動作について説明する。
論理式構成部13は、順序情報格納部12に格納された順序情報(フラグメント順序情報)を参照して、複数の基本順序情報に対する処理が全て終了するまで(図3のステップB1)、基本順序情報毎に以下を繰り返して、時相論理式14を生成する。
まず、論理式構成部13は、複数の基本順序情報のうちの、ある基本順序情報(例えば1番目の基本順序情報)に対する論理式をNULLとする(ステップB2)。その後、上記基本順序情報に含まれる全ての要素に対する処理が終了するまで(ステップB3)、要素種類を調べ(ステップB4)、要素種類に従って以下の処理をする。
要素種類がメッセージ送受信端名である。この場合、論理式構成部13は、メッセージ送受信端名を表す要素を上記論理式にアペンドし(ステップB5)、“ならいつかは”に相当する論理表現(→<>等)を上記論理式にアペンドする(ステップB6)。
要素種類が“|”である。この場合、論理式構成部13は、“|”を表す要素を上記論理式にアペンドする(ステップB7)。
要素種類がフラグメント名である。この場合、論理式構成部13は、本処理を再帰的に呼び、得られた論理式を()で囲む。即ち、次のフラグメントから続く基本順序情報に対してステップB1から始まる処理を行い、処理が終わりまで行き着けば、得られた論理式を()で囲む。その後、()で囲まれた論理式を上記論理式にアペンドし(ステップB8)、“ならいつかは”に相当する論理表現(→<>等)を上記論理式にアペンドする(ステップB9)。
要素種類が“¥n”の場合、論理式構成部13は、上記論理式を()で囲み、“&&”を上記論理式にアペンドする(ステップB10)。
ここで、上記基本順序情報に含まれる全ての要素に対する処理が終了してない(ステップB3−NO)。この場合、論理式構成部13は、上記基本順序情報に含まれる残りの要素に対して、上述のステップB4と、ステップB5〜B6、B7、B8〜B9、B10のいずれかと、を実行する。
上記基本順序情報に含まれる全ての要素に対する処理が終了したが(ステップB3−YES)、複数の基本順序情報に対する処理が全て終了してない(ステップB1−NO)。この場合、論理式構成部13は、複数の基本順序情報のうちの、上記基本順序情報の次の基本順序情報に対する論理式について、上述のステップB2〜B10を実行する。
複数の基本順序情報に対する処理が全て終了した場合(ステップB1−YES)、論理式構成部13は、時相論理式14を出力装置に出力する。
本発明の第1実施形態による論理式生成装置1によれば、上述のように、ソフトウェア開発者にとって理解しやすく記述しやすいシーケンス図10を使用している。シーケンス図10には、システムを構成する複数のオブジェクトのやりとりが座標領域に記述されている。そこで、シーケンス図解析部11は、シーケンス図10を参照して、順序情報を生成する。順序情報は、複数のオブジェクトのやりとりをそれぞれ表す複数の基本順序情報を含み、複数の基本順序情報は、それぞれ、複数のオブジェクト間のメッセージ送受信に関する要素を含んでいる。論理式構成部13は、順序情報に基づいて、時相論理式14を生成する。このように、本発明の第1実施形態による論理式生成装置1によれば、シーケンス図10を用いることにより、検証したいシステムの性質を適切に記述した時相論理式14を生成することができる。
また、本発明の第1実施形態による論理式生成装置1によれば、シーケンス図10を解析して順序情報を生成するシーケンス図解析部11と、順序情報を格納する順序情報格納部12とを、論理式構成部13から分離した構成としている。このため、生成すべき時相論理式のクラス{LTL(Linear Temporal Logic)、CTL(Computation Tree Logic)等}に応じた論理式構成部を上記の論理式構成部13として用意することにより、特定の時相論理式のクラスに依存せず、同様の処理で各々のクラスの時相論理式14を生成することができる。
また、本発明の第1実施形態による論理式生成装置1によれば、各々のクラスに対応した時相論理式14を生成するとき、シーケンス図解析部11、順序情報格納部12には手を加えることなく再利用できる。
更に、論理式構成部13は、直接シーケンス図10を入力とするのではなく、順序情報格納部12を参照して論理式を生成するため、入力されるシーケンス図10の形式がカスタマイズされたり、シーケンス図10と類似ではあるが異なる形式で性質を与えたりする場合にも、性質に含まれる順序情報を順序情報格納部12に格納すれば、論理式構成部13に手を加えることなく再利用できる。
更に、論理式構成部13は、直接シーケンス図10を入力とするのではなく、順序情報格納部12を参照して論理式を生成するため、入力されるシーケンス図10の形式がカスタマイズされたり、シーケンス図10と類似ではあるが異なる形式で性質を与えたりする場合にも、性質に含まれる順序情報を順序情報格納部12に格納すれば、論理式構成部13に手を加えることなく再利用できる。
(第2実施形態)
第2実施形態では、第1実施形態と重複する説明を省略する。
第2実施形態では、第1実施形態と重複する説明を省略する。
図4は、本発明の第2実施形態による論理式生成装置1の構成を示している。論理式生成装置1内の検証支援ツール5のコンピュータプログラム6は、更に、検証モデル修飾手段(検証モデル修飾部)26を含んでいる。
検証モデル修飾部26には、システムに対応する検証モデル25が与えられる。検証モデル修飾部26は、順序情報格納部12に格納された順序情報を参照し、順序情報に含まれるメッセージ送受信端名を取り出し、検証モデル25に対して、メッセージ送受信端名に対応するメッセージ送受信端におけるメッセージにラベルを付与する等の修飾を行い、修飾後検証モデル27として出力する。即ち、検証モデル修飾部26は、順序情報格納部12に格納された順序情報に基づいて、検証モデル25に対して、時相論理式14が参照する述語を扱えるように修飾を施した修飾後検証モデル27を出力する。
図5は、本発明の第2実施形態による論理式生成装置1の動作として、検証モデル修飾部26の動作を示すフローチャートである。検証モデル修飾部26は、記憶部を備えているものとする。
まず、検証モデル修飾部26は、順序情報格納部12から順序情報を読み込み(図5のステップC1)、順序情報に含まれる全てのメッセージ送受信端名を自身の記憶部に記録する(ステップC2)。この時、重複したものは省き、メッセージ送受信端名はユニークになるようにする。次に、検証モデル25を読み込み(ステップC3)、検証モデル25中のステートメントに対する処理(メッセージにラベルを付与する修飾処理)が終了するまで(ステップC4−NO)、各ステートメントについて、自身で記録したメッセージ送受信端名に対応するメッセージ送受信端におけるメッセージであるか調べ(ステップC5)、そうであれば、そのメッセージにラベルを追加する。検証モデル25中のステートメントに対する処理(修飾処理)が終了した場合(ステップC4−YES)、検証モデル25に対して修飾を施した修飾後検証モデル27を出力装置に出力する。
本発明の第2実施形態による論理式生成装置1によれば、検証モデル修飾部26は、システムに対応する検証モデル25を入力し、順序情報に基づいて、検証モデル25に対して、時相論理式14が参照する述語を扱えるように修飾を施した修飾後検証モデル27を生成する。このため、検証モデル25の書き方に依存した複雑な時相論理式を記述したり、開発者が検証モデル25自身を修正したりする必要がない。
なお、本発明の論理式生成装置及び方法は、例えば、ソフトウェア開発における設計の妥当性を検証するツールにおける検証性質の記述ツールといった用途に適用できる。
Claims (15)
- システムの性質を検証するときに用いられる時相論理式を生成する論理式生成装置であって、
前記システムを構成する複数のオブジェクトのやりとりが座標領域に記述されたシーケンス図を参照して、前記複数のオブジェクトのやりとりの順序関係を表す順序情報を生成するシーケンス図解析手段と、
前記順序情報に基づいて、前記システムの性質を表す前記時相論理式を生成する論理式構成手段と、
を具備する論理式生成装置。 - 順序情報格納手段
を更に具備し、
前記シーケンス図解析手段は、前記順序情報を前記順序情報格納手段に格納し、
前記論理式構成手段は、前記順序情報格納手段に格納された前記順序情報に基づいて、前記時相論理式を生成し、出力装置に出力する、
請求の範囲1に記載の論理式生成装置。 - 前記システムに対応する検証モデルが与えられる検証モデル修飾手段
を更に具備し、
前記検証モデル修飾手段は、前記順序情報に基づいて、前記検証モデルに対して、前記時相論理式が参照する述語を扱えるように修飾を施した修飾後検証モデルを生成する、
請求の範囲2に記載の論理式生成装置。 - 順序情報格納手段
を更に具備し、
前記シーケンス図解析手段は、前記順序情報を前記順序情報格納手段に格納し、
前記検証モデル修飾手段は、前記順序情報格納手段に格納された前記順序情報に基づいて、前記検証モデルに対して修飾を施した修飾後検証モデルを生成し、出力装置に出力する、
請求の範囲3に記載の論理式生成装置。 - 前記シーケンス図は、UML(Unified Modeling Language)仕様に基づいて作成される、
請求の範囲1に記載の論理式生成装置。 - システムの性質を検証するときに用いられる時相論理式をコンピュータにより生成する論理式生成方法であって、
前記システムを構成する複数のオブジェクトのやりとりが座標領域に記述されたシーケンス図を参照して、前記複数のオブジェクトのやりとりの順序関係を表す順序情報を生成する第1ステップと、
前記順序情報に基づいて、前記システムの性質を表す前記時相論理式を生成する第2ステップと、
を具備する論理式生成方法。 - 前記第1ステップは、前記順序情報を順序情報格納手段に格納するステップを含み、
前記第2ステップは、前記順序情報格納手段に格納された前記順序情報に基づいて、前記時相論理式を生成し、出力装置に出力するステップを含む、
請求の範囲6に記載の論理式生成方法。 - 前記システムに対応する検証モデルが与えられる第3ステップ
を更に具備し、
前記第3ステップは、前記順序情報に基づいて、前記検証モデルに対して、前記時相論理式が参照する述語を扱えるように修飾を施した修飾後検証モデルを生成するステップを含む、
請求の範囲7に記載の論理式生成方法。 - 前記第1ステップは、前記順序情報を順序情報格納手段に格納するステップを含み、
前記第3ステップは、前記順序情報格納手段に格納された前記順序情報に基づいて、前記検証モデルに対して修飾を施した修飾後検証モデルを生成し、出力装置に出力するステップを含む、
請求の範囲8に記載の論理式生成方法。 - 前記シーケンス図は、UML(Unified Modeling Language)仕様に基づいて作成される、
請求の範囲6に記載の論理式生成方法。 - システムの性質を検証するときに用いられる時相論理式をコンピュータに生成させるための記録媒体であって、
前記システムを構成する複数のオブジェクトのやりとりが座標領域に記述されたシーケンス図を参照して、前記複数のオブジェクトのやりとりの順序関係を表す順序情報を生成する第1ステップと、
前記順序情報に基づいて、前記システムの性質を表す前記時相論理式を生成する第2ステップと、
の各ステップを前記コンピュータに実行させるコンピュータプログラムが記憶され、前記コンピュータプログラムを前記コンピュータが読み取り可能な記録媒体。 - 前記第1ステップは、前記順序情報を順序情報格納手段に格納するステップを含み、
前記第2ステップは、前記順序情報格納手段に格納された前記順序情報に基づいて、前記時相論理式を生成し、出力装置に出力するステップを含む、
請求の範囲11に記載の記録媒体。 - 前記システムに対応する検証モデルが与えられる第3ステップ
を更に前記コンピュータに実行させるための前記コンピュータプログラムが記憶され、
前記第3ステップは、前記順序情報に基づいて、前記検証モデルに対して、前記時相論理式が参照する述語を扱えるように修飾を施した修飾後検証モデルを生成するステップを含む、
請求の範囲12に記載の記録媒体。 - 前記第1ステップは、前記順序情報を順序情報格納手段に格納するステップを含み、
前記第3ステップは、前記順序情報格納手段に格納された前記順序情報に基づいて、前記検証モデルに対して修飾を施した修飾後検証モデルを生成し、出力装置に出力するステップを含む、
請求の範囲13に記載の記録媒体。 - 前記シーケンス図は、UML(Unified Modeling Language)仕様に基づいて作成される、
請求の範囲11に記載の記録媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007055632 | 2007-03-06 | ||
JP2007055632 | 2007-03-06 | ||
PCT/JP2008/052040 WO2008123021A2 (ja) | 2007-03-06 | 2008-02-07 | 論理式生成装置、及び論理式生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2008123021A1 true JPWO2008123021A1 (ja) | 2010-07-15 |
Family
ID=39831493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009508946A Withdrawn JPWO2008123021A1 (ja) | 2007-03-06 | 2008-02-07 | 論理式生成装置、及び論理式生成方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2008123021A1 (ja) |
WO (1) | WO2008123021A2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5365182B2 (ja) * | 2008-12-24 | 2013-12-11 | 日本電気株式会社 | 時相論理式作成支援システム、時相論理式作成支援方法及び時相論理式作成支援用プログラム |
JP7435814B2 (ja) | 2020-10-09 | 2024-02-21 | 日本電気株式会社 | 時相論理式生成装置、時相論理式生成方法及びプログラム |
US20230364792A1 (en) * | 2020-10-09 | 2023-11-16 | Nec Corporation | Operation command generation device, operation command generation method, and storage medium |
-
2008
- 2008-02-07 JP JP2009508946A patent/JPWO2008123021A1/ja not_active Withdrawn
- 2008-02-07 WO PCT/JP2008/052040 patent/WO2008123021A2/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2008123021A2 (ja) | 2008-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5197688B2 (ja) | 統合環境生成器 | |
US9037595B2 (en) | Creating graphical models representing control flow of a program manipulating data resources | |
US9501269B2 (en) | Automatic source code generation for accelerated function calls | |
US8423879B2 (en) | Method and apparatus for test generation from hybrid diagrams with combined data flow and statechart notation | |
US8028276B1 (en) | Method and system for generating a test file | |
WO2012032890A1 (ja) | ソースコード変換方法およびソースコード変換プログラム | |
JP2005011345A (ja) | コードセグメント作成方法及びそのシステム | |
JP6479184B2 (ja) | コンピュータ実行可能なモデルリバースエンジニアリング方法及び装置 | |
CN108595187A (zh) | 安卓安装包集成软件开发工具包的法、装置及存储介质 | |
US20140214396A1 (en) | Specification properties creation for a visual model of a system | |
Chavez et al. | An approach to checking consistency between UML class model and its Java implementation | |
EP2141587A1 (en) | Method and system for generating of a control flow graph for representing a program code | |
CN112433701A (zh) | 工业软件开发项目实施流程、内容及代码生成方法及装置 | |
JPWO2015159501A1 (ja) | 検証性質統合装置、検証性質統合方法および検証性質統合プログラム | |
Ahmad et al. | Towards process centered architecting for quantum software systems | |
US20130298106A1 (en) | Indicators for resources with idempotent close methods in software programs | |
CN107797805B (zh) | 一种代码封装方法、装置及计算机可读存储介质 | |
CN108984416A (zh) | 一种评估Maven环境中依赖冲突危险级别的方法 | |
JPWO2008123021A1 (ja) | 論理式生成装置、及び論理式生成方法 | |
US8904339B2 (en) | Method and system for modeling runtime behavior | |
EP4145761A1 (en) | A system and a method for automatic generation of smart contracts across blockchain platforms | |
US20130111431A1 (en) | Validation of a system model including an activity diagram | |
US20130298105A1 (en) | Indicators for resources with close methods that do not complete erroneously in software programs | |
JP2009099111A (ja) | 規則検査プログラム、規則検査方法および規則検査装置 | |
CN108885574B (zh) | 用于监视和报告设计、编译和运行时的性能和正确性问题的系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20100419 |