JPH0830444A - 正規表現を用いたメッセージシーケンスチャート抽出方法 - Google Patents

正規表現を用いたメッセージシーケンスチャート抽出方法

Info

Publication number
JPH0830444A
JPH0830444A JP6160046A JP16004694A JPH0830444A JP H0830444 A JPH0830444 A JP H0830444A JP 6160046 A JP6160046 A JP 6160046A JP 16004694 A JP16004694 A JP 16004694A JP H0830444 A JPH0830444 A JP H0830444A
Authority
JP
Japan
Prior art keywords
message sequence
sequence chart
regular expression
variable
finite
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
JP6160046A
Other languages
English (en)
Inventor
Kenji Otomo
健治 大友
Noriyasu Arakawa
則泰 荒川
Kenjirou Yamanaka
顕次郎 山中
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP6160046A priority Critical patent/JPH0830444A/ja
Publication of JPH0830444A publication Critical patent/JPH0830444A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【目的】 ループ構造を有する一般の到達可能解析木か
らメッセージシーケンスチャートを抽出することができ
るとともに、またシステム全体の制御構造を反映した形
でメッセージシーケンスチャートを抽出することができ
る正規表現を用いたメッセージシーケンスチャート抽出
方法を提供する。 【構成】 入力となるプロセス毎に与えられた有限状態
遷移機械1に対して到達可能性解析部2で到達可能性解
析を行って、到達可能解析木を生成し、この生成した到
達可能解析木を正規表現変換部3で正規表現に変換し、
この変換した正規表現に従ってメッセージシーケンスチ
ャート生成部4でメッセージシーケンスチャートを生成
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、正規表現を用いたメッ
セージシーケンスチャート抽出方法に関し、特に通信プ
ロトコル、交換処理時、通信する並行プログラム系の作
成に利用され、該並行プログラム系に対する仕様として
与えられるメッセージシーケンスチャートを抽出する正
規表現を用いたメッセージシーケンスチャート抽出方法
に関する。
【0002】
【従来の技術】従来、通信プロトコル、交換処理等、通
信する並行プログラム系に対する仕様を与える場合、個
々の実行主体であるプロセス毎に有限状態遷移機械を定
義し、それを仕様とする手法が用いられてきた。これに
対し、メッセージシーケンスチャートを仕様として与え
ることにより、仕様の拡張を容易にし、より詳細な仕様
の検証を可能とする手法が提案されている(文献:電子
情報通信学会論文誌’86/5,Vol.J69B,No.5.伊藤、市川
「並行プロセスを基本とした交換プログラム仕様の階層
的検証法」)。この手法では、メッセージシーケンスチ
ャートの仕様からプロセス毎の有限状態遷移機械の仕様
を自動的に合成することにより、仕様の検証、プログラ
ムの自動生成等、従来の有限状態遷移機械の仕様に対す
る技術を適用可能としている。
【0003】しかしながら、既存の多くの通信する並行
プログラム系に対する仕様としてはプロセス毎の有限状
態遷移機械の仕様しか持たず、メッセージシーケンスチ
ャートの仕様を持たない。そこで、既存仕様の再利用を
目的とし、プロセス毎の有限状態遷移機械の仕様からメ
ッセージシーケンスチャートを抽出する手法が提案され
ている(特願平5−303015号)。この手法では、
プロセス毎の有限状態遷移機械に対して到達可能解析を
行うことにより到達可能解析木を生成し、この到達可能
解析木のパスを切り出すことによりメッセージシーケン
スチャートの抽出を行っている。しかしながら、ここで
処理可能な到達可能解析木はループ構造を持たない到達
可能解析木であり、一般のループ構造を持つ到達可能解
析木を扱うことはできない。
【0004】
【発明が解決しようとする課題】一般に到達可能解析に
よって生成する到達可能解析木にはループ構造が存在す
るが、従来の手法ではループ構造を持つ到達可能解析木
からはメッセージシーケンスチャートを抽出することが
できないという問題がある。また、従来の手法ではルー
プや分岐などのシステム全体としての制御構造も表現す
ることができないという問題がある。
【0005】本発明は、上記に鑑みてなされたもので、
その目的とするところは、ループ構造を有する一般の到
達可能解析木からメッセージシーケンスチャートを抽出
することができるとともに、またシステム全体の制御構
造を反映した形でメッセージシーケンスチャートを抽出
することができる正規表現を用いたメッセージシーケン
スチャート抽出方法を提供することにある。
【0006】
【課題を解決するための手段】上記目的を達成するた
め、本発明の正規表現を用いたメッセージシーケンスチ
ャート抽出方法は、通信ソフトウェアを構成する実行主
体であるプロセス毎のプロセス仕様として定義した有限
状態遷移機械記述を入力し、プロセス間のメッセージの
やり取りを図形で表示したメッセージシーケンスチャー
トを抽出する方法において、前記有限状態遷移機械記述
から、各プロセスで実行されるイベントの組と遷移先の
状態の組を抽出した到達可能解析木を作成し、前記到達
可能解析木を有限オートマトンと見なし、該有限オート
マトンの各状態を変数とし、該変数が、遷移に付けられ
たイベントの組に対応したラベルを係数とした遷移元の
状態の変数項の和に等しいとして連立方程式を生成し、
終了状態の変数についての解を求めて正規表現とし、前
記正規表現から該正規表現内の各項の形式である閉包、
和、連接、単独のラベルに応じて決まった出力形式を用
いて表現し、閉包、和、連接を構成する単独のラベルを
全て出力するまで再帰的にメッセージシーケンスチャー
トを出力することを要旨とする。
【0007】
【作用】本発明の正規表現を用いたメッセージシーケン
スチャート抽出方法では、到達可能解析によって得られ
る到達可能解析木は有限オートマトンと見なすことがで
き、任意の有限オートマトンは正規表現に変換可能であ
り、正規表現に従ってメッセージシーケンスチャートを
生成することにより、ループ構造を持つような一般的な
到達可能解析木からメッセージシーケンスチャートを抽
出することが可能となり、またシステム全体としての制
御構造を反映した形でメッセージシーケンスチャートを
抽出することができる。
【0008】
【実施例】以下、図面を用いて本発明の実施例を説明す
る。
【0009】図1は、本発明の一実施例に係わる正規表
現を用いたメッセージシーケンスチャート抽出方法を実
現する装置の構成を示すブロック図である。同図におい
て、1は入力となるプロセス毎に与えられた有限状態遷
移機械であり、2は縮退到達可能性解析(文献:Trans.
IECE Japan E66-2,M.Itoh,H.Ichikawa,"Protocol verif
ication algorithm using reduced reachability analy
sis")を用いて縮退到達可能解析木を生成する到達可能
性解析部である。
【0010】縮退到達可能性解析は到達可能性解析にお
ける状態爆発の問題に対処するため、メッセージシーケ
ンスチャートとして異なるパスのみを探索するものであ
り、解析の結果得られる到達可能解析木の各パスは全て
メッセージシーケンスチャートとして異なるものになる
というメッセージシーケンスチャートの抽出に関して適
した性質を持つ到達可能性解析法である。
【0011】また、図1において、3は到達可能解析木
を正規表現へと変換する正規表現変換部である。有限オ
ートマトンを正規表現へ変換するアルゴリズムはいくつ
か存在するが、ここでは、文献「計算機科学の基礎」
(米田政明著、森北出版)に紹介されているアルゴリズ
ムを用いる。このアルゴリズムは連立方程式を解く形の
アルゴリズムである。4はメッセージシーケンスチャー
ト生成部であり、正規表現に従いメッセージシーケンス
チャートの生成を行う。5は抽出の結果として出力され
るメッセージシーケンスチャートである。
【0012】図1の構成においては、入力となるプロセ
ス毎に与えられた有限状態遷移機械1に対して到達可能
性解析部2で到達可能性解析を行って、到達可能解析木
を生成し、この生成した到達可能解析木を正規表現変換
部3で正規表現に変換し、この変換した正規表現に従っ
てメッセージシーケンスチャート生成部4でメッセージ
シーケンスチャートを生成し、メッセージシーケンスチ
ャート5として出力するようになっている。
【0013】図2および図3は、図1に示した到達可能
性解析部2の処理結果の実例を示すものであり、図2に
示すプロセス毎の有限状態遷移機械に対して前記到達可
能性解析部2で到達可能解析を行った結果が図3に示す
到達可能解析木である。
【0014】図2において、21は到達可能性解析部2
への入力となるプロセス毎の有限状態遷移機械の例であ
る。この例では、P,Qなる2つのプロセスからなる仕
様の例となっている。凸型のボックスは信号の送信を表
している。22はプロセスQが外部に対してaという信
号を送信することを表しており、23はプロセスQがプ
ロセスPにxという信号を送信することを表している。
【0015】凹型のボックスは信号の受信を表してい
る。24はプロセスPが外部からaという信号を受信す
ることを表しており、25はプロセスQがプロセスPか
らquitという信号を受信することを表している。プロセ
スが送信や受信などのイベントを実行することによりそ
の状態を遷移させていく様子を規定したものが有限状態
遷移機械である。
【0016】図3において、26は図2に示す有限状態
遷移機械21に対する到達可能性解析部2の処理の結
果、出力として得られる到達可能解析木である。角括
弧”[、」”で囲まれた部分がグローバルイベントと呼
ばれるもので、P,Qの各プロセスにおいて実行される
イベントの組である。”+”で始まるイベントは受信を
表し、”−”で始まるイベントは送信を表している。ま
た、”init”,”wait”,”term”なるイベントは疑似
イベントと呼ばれるもので、実際に実行されるイベント
ではなく、プロセスの状態を表す疑似的なイベントであ
る。”S数字”は状態を表し、”==> ”の右の状態は遷
移先の状態を表している。”S8”から”S1”や”S
13”から”S1”への遷移が存在することから、この
到達可能解析木はループ構造を持っていることがわか
る。
【0017】図4は、図1に示した正規表現変換部3の
処理手順を示すフローチャートである。図5を用いて正
規表現変換部3の具体例を説明する。
【0018】図4の処理において、図3に示す到達可能
解析木26を正規表現変換部3への入力としたとき(図
4のステップ110)、この到達可能解析木を図5に示
すオートマトン41と見なす。図5において、A,B,
Cという各ラベルは42のラベルの詳細に示した各グロ
ーバルイベントのシーケンスに対応したものである。ま
ず、読み込んだ有限オートマトンから連立方程式を生成
する(ステップ120)。有限オートマトンの各状態を
変数とし、その変数は遷移に付けられたラベルを係数と
する遷移元の状態の変数項の和に等しいとして連立方程
式を生成する。
【0019】図5に示すように、有限オートマトン41
は状態1、状態2という2つの状態を有している。そこ
で、これらをX1,X2という変数で表す。状態1には
Aというラベルで状態1からの遷移、Bというラベルで
同じく状態1からの遷移が存在する。また、状態1は初
期状態であるので、λという項をさらに加えてX1=λ
+X1A+X1Bという方程式が得られる。状態2はC
というラベルで状態1からの遷移が存在する。従って、
X2=X1Cという方程式が得られる。以上により、有
限オートマトン41から連立方程式43が生成される。
今、状態2が終了状態であるので、変数X2について解
いた値が求める正規表現となり、この正規表現が出力さ
れる(ステップ130,140)。図5において、44
が43の連立方程式を解いた結果得られた正規表現であ
る。
【0020】但し、解において、λは初期状態を示すた
めの単なるタグであり、正規表現上の意味はないので省
略するものとする。ここでの連立方程式の解き方は、X
=α+Xβ→X=αβ* という規則を用いることだけが
通常の連立方程式の解法と異なることに注意する。これ
は、X=α+Xβなる方程式の解がαとβの閉包の連接
となるということである。
【0021】図6および図7は、前記メッセージシーケ
ンスチャート生成部4の処理手順を示すフローチャート
である。図5においては、まず変数の初期化を行い(ス
テップ501)、メッセージシーケンスチャート(MS
C)生成処理を呼び出し(ステップ502)、図7に示
す処理手順によりメッセージシーケンスチャート(MS
C)生成処理が行われる。
【0022】図5の44の処理表現に対してこの処理手
順を適用した結果を図8および図9に示す。メッセージ
シーケンスチャート(MSC)生成処理は再帰的な処理
となっているので、再帰の各レベル毎の処理を示したも
のである。まず、正規表現44の先頭のポインタ1が変
数Pに設定され(ステップ501)、メッセージシーケ
ンスチャート(MSC)生成処理が呼ばれる(ステップ
502)。このときの処理が図8に示すlevel 0
である。
【0023】図7においては、まず変数Pが空集合φで
あるか否かがチェックされ(ステップ601)、空集合
φの場合には処理を終了するが、空集合φでない場合に
は、変数Sを空集合φに設定し(ステップ602)、そ
れからまた変数Pが空集合φであるか否かがチェックさ
れる(ステップ603)。変数Pが空集合φでない場合
には、変数Pの中の1つのポインタ、ここでは1が変数
Xに設定される(ステップ604)。1から始まるこの
式は、「.」で結ばれた連接であるので、各項の先頭、
ここでは2と3が変数Sに設定される(ステップ61
3)。
【0024】そして、各項を表す箱を縦に並べたものと
して右側のメッセージシーケンスチャートが出力される
(ステップ614)。次に、変数Sの値{2,3}を変
数Pに設定し(ステップ615)、メッセージシーケン
スチャート(MSC)生成処理が呼ばれる(ステップ6
16)。このときの処理がlevel 1である。まず
変数Xに2が設定される(ステップ604)。2から始
まる式は「*」の付いた閉包である。そこで、4が変数
Sに設定され(ステップ609)、閉包を表す箱として
右の(A+B)* のメッセージシーケンスチャートが出
力される(ステップ610)。
【0025】次に、変数Xに3が設定される(ステップ
604)。3から始まるこの式は単独のラベルであるの
で、このラベルに相当するメッセージシーケンスチャー
トが出力される(ステップ608)。具体的には、図5
の42のラベルの詳細で示したCに対応するグローバル
イベントのシーケンスから、右のCのメッセージシーケ
ンスチャートが出力される。次に、変数Sの値{4}が
変数Pに設定され(ステップ615)、メッセージシー
ケンスチャート(MSC)生成処理が呼ばれる(ステッ
プ616)。このときの処理がlevel 2である。
変数Xに4が設定される(ステップ604)。4から始
まる式は和の形式であるので、5と6が変数Sに設定さ
れ(ステップ611)、和を示す箱として右のA+Bの
メッセージシーケンスチャートが出力される(ステップ
612)。
【0026】次に、変数Sの値{5,6}が変数Pに設
定され(ステップ615)、メッセージシーケンスチャ
ート(MSC)生成処理が呼ばれる(ステップ61
6)。このときの処理がlevel 3である。まず、
変数Xに5が設定される(ステップ604)。5から始
まる式は単独のラベルなので、Cのときと同様に右のA
のメッセージシーケンスチャートが生成される(ステッ
プ608)。次に、変数Xに6が設定される。6から始
まる式も単独のラベルであるので、同様に右のBのメッ
セージシーケンスチャートが出力される(ステップ60
8)。この処理の終了時点で変数Sは空であるので処理
は再帰的に終了している(ステップ615,616,6
01)。結果として、システム全体の制御構造を反映し
たメッセージシーケンスチャートとして(A+B)*
C,(A+B)* ,C,A+B,A,Bの6枚のメッセ
ージシーケンスチャートが得られることになる。
【0027】以上のような処理手順を踏むことにより、
ループ構造を含むような到達可能解析木からもその変換
した正規表現に従い抽出を行うことでシステム全体の制
御構造を反映した形でメッセージシーケンスチャートを
得ることができる。
【0028】
【発明の効果】以上説明したように、本発明によれば、
ループ構造をもつ到達可能解析木からもメッセージシー
ケンスチャートを抽出することが可能となり、より一般
的な状態遷移機械による仕様に対してもメッセージシー
ケンスチャートを抽出することが可能となる。また、シ
ステム全体の制御構造も反映した形でメッセージシーケ
ンスチャートを得られるため、システム全体の振舞いを
より容易に把握することが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施例に係わる正規表現を用いたメ
ッセージシーケンスチャート抽出方法を実現する装置の
構成を示すブロック図である。
【図2】図3とともに図1に示した到達可能性解析部の
処理結果の実例を示す図である。
【図3】図2とともに図1に示した到達可能性解析部の
処理結果の実例を示す図である。
【図4】図1に示した正規表現変換部の処理手順を示す
フローチャートである。
【図5】正規表現変換部の処理手順を実例で示す図であ
る。
【図6】図7とともに図1に示したメッセージシーケン
スチャート生成部の処理手順を示すフローチャートであ
る。
【図7】図6とともに図1に示したメッセージシーケン
スチャート生成部の処理手順を示すフローチャートであ
る。
【図8】メッセージシーケンスチャート生成部の処理手
順を実例で示す図である。
【図9】メッセージシーケンスチャート生成部の処理手
順を実例で示す図である。
【符号の説明】
1 入力有限状態遷移機械 2 到達可能性解析部 3 正規表現変換部 4 メッセージシーケンスチャート生成部

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 通信ソフトウェアを構成する実行主体で
    あるプロセス毎のプロセス仕様として定義した有限状態
    遷移機械記述を入力し、プロセス間のメッセージのやり
    取りを図形で表示したメッセージシーケンスチャートを
    抽出する方法において、前記有限状態遷移機械記述か
    ら、各プロセスで実行されるイベントの組と遷移先の状
    態の組を抽出した到達可能解析木を作成し、前記到達可
    能解析木を有限オートマトンと見なし、該有限オートマ
    トンの各状態を変数とし、該変数が、遷移に付けられた
    イベントの組に対応したラベルを係数とした遷移元の状
    態の変数項の和に等しいとして連立方程式を生成し、終
    了状態の変数についての解を求めて正規表現とし、前記
    正規表現から該正規表現内の各項の形式である閉包、
    和、連接、単独のラベルに応じて決まった出力形式を用
    いて表現し、閉包、和、連接を構成する単独のラベルを
    全て出力するまで再帰的にメッセージシーケンスチャー
    トを出力することを特徴とする正規表現を用いたメッセ
    ージシーケンスチャート抽出方法。
JP6160046A 1994-07-12 1994-07-12 正規表現を用いたメッセージシーケンスチャート抽出方法 Pending JPH0830444A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6160046A JPH0830444A (ja) 1994-07-12 1994-07-12 正規表現を用いたメッセージシーケンスチャート抽出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6160046A JPH0830444A (ja) 1994-07-12 1994-07-12 正規表現を用いたメッセージシーケンスチャート抽出方法

Publications (1)

Publication Number Publication Date
JPH0830444A true JPH0830444A (ja) 1996-02-02

Family

ID=15706756

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6160046A Pending JPH0830444A (ja) 1994-07-12 1994-07-12 正規表現を用いたメッセージシーケンスチャート抽出方法

Country Status (1)

Country Link
JP (1) JPH0830444A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009295021A (ja) * 2008-06-06 2009-12-17 Internatl Business Mach Corp <Ibm> シーケンス図作成装置、シーケンス図作成方法及びコンピュータプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009295021A (ja) * 2008-06-06 2009-12-17 Internatl Business Mach Corp <Ibm> シーケンス図作成装置、シーケンス図作成方法及びコンピュータプログラム

Similar Documents

Publication Publication Date Title
US5513122A (en) Method and apparatus for determining the reachable states in a hybrid model state machine
JP2592955B2 (ja) プログラム自動生成装置
JPH04219804A (ja) シーケンシャル回路及びその生成方法、及びコントローラ及び有限状態マシン
Martins et al. ConData: a tool for automating specification-based test case generation for communication systems
EP0298206B1 (en) Programming method using a Petri net and structured data processing system
CN112148926A (zh) 一种图数据流的处理方法、处理装置和存储介质
Grabowski et al. The standardization of message sequence charts
JPH0830444A (ja) 正規表現を用いたメッセージシーケンスチャート抽出方法
CN111176624B (zh) 一种流式计算指标的生成方法及装置
JP2667999B2 (ja) 対話処理装置
JPH07121357A (ja) 並行プログラム系生成方式と装置
Dauphin et al. Specification-driven performance monitoring of SDL/MSC-specified protocols
JP2815073B2 (ja) 並行プログラムに対する試験手順生成方法
Jiang et al. Automation of test case generation from textual use cases
JP2750341B2 (ja) 図的言語翻訳装置
JP2004318420A (ja) データ変換処理装置、変換処理方法およびそのプログラム
CN115114452A (zh) 一种Visio流程图转换为知识图谱的方法及装置
JPH07160745A (ja) ハードウェア記述自動生成方法および装置
CN117519667A (zh) 一种智能合约自动生成方法、管理系统及存储介质
CN114064773A (zh) 一种数据转换方法、装置、计算机设备及存储介质
JPH07160489A (ja) メッセージシーケンスチャート抽出装置
JPH0554067A (ja) 意味解析方式
JPH10222550A (ja) 論理合成方法及び装置並びに論理合成プログラムを記録した記録媒体
JPH064508A (ja) シミュレーション実行方式
JPH0652142A (ja) シミュレーションインターフェース方法