JP7008780B2 - 状態遷移編集装置および状態遷移編集プログラム - Google Patents

状態遷移編集装置および状態遷移編集プログラム Download PDF

Info

Publication number
JP7008780B2
JP7008780B2 JP2020203702A JP2020203702A JP7008780B2 JP 7008780 B2 JP7008780 B2 JP 7008780B2 JP 2020203702 A JP2020203702 A JP 2020203702A JP 2020203702 A JP2020203702 A JP 2020203702A JP 7008780 B2 JP7008780 B2 JP 7008780B2
Authority
JP
Japan
Prior art keywords
transition
state
state transition
name
data
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
Application number
JP2020203702A
Other languages
English (en)
Other versions
JP2021057061A (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 JP2020203702A priority Critical patent/JP7008780B2/ja
Publication of JP2021057061A publication Critical patent/JP2021057061A/ja
Application granted granted Critical
Publication of JP7008780B2 publication Critical patent/JP7008780B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、状態遷移図または状態遷移表に時間情報を追加するための技術に関するものである。
モデル検査は、起きうる全てのシナリオを仮想的に検証する技術である。
例えば、モデル検査では、状態遷移図に示される全てのシナリオにおいて特定の順序で特定の処理が必ず実行されることが検証される。
リアルタイムモデル検査は処理時間を考慮して行うモデル検査であり、リアルタイムモデル検査では時間制約を検証することも可能である。
例えば、リアルタイムモデル検査では、第1処理から第2処理までが5秒以内に実行されることを検証することが可能である。
しかし、リアルタイムモデル検査は以下のように手間がかかる。
リアルタイムモデル検査を行うためには、時間付き状態遷移図が必要である。
時間付き状態遷移図は、処理時間を含んだガード条件が記載れた状態遷移図である。
時間付き状態遷移図に示される全ての状態遷移に、処理時間を含んだガード条件を記載することは手間である。
特許文献1は、モデル検査で使用する状態遷移図に送信アクションを自動的に追加するための技術を開示している。この技術では、通信を行うアクションの名称がシーケンス図から抽出される。
特許文献2は、データフロー図に時間制約を自動的に追加するための技術を開示している。この技術では、シーケンス図から時間制約が抽出される。
特開2008-021160号公報 特開2010-026704号公報
従来技術によってソースコードから状態遷移図を生成することは可能であるが、従来技術によって時間付き状態遷移図を生成することはできない。
特許文献1に開示された技術によって状態遷移図に送信アクションを追加することは可能であるが、特許文献1に開示された技術によって状態遷移図に時間制約を追加することはできない。
特許文献2に開示された技術によってデータフロー図に時間制約を追加することは可能であるが、特許文献2に開示された技術によって状態遷移図に時間制約を追加することはできない。
本発明は、状態遷移データに時間情報を追加できるようにすることを目的とする。
本発明の状態遷移編集装置は、
1つ以上の状態遷移毎に、遷移元の状態を識別する遷移元状態名と、遷移先の状態を識別する遷移先状態名と、状態遷移の発生時に実行される遷移処理を識別する遷移処理名と、を含む状態遷移データと、
1つ以上の遷移処理毎に、遷移処理名と、処理時間と、を含む処理時間データと、
を用いて、
前記状態遷移毎に、遷移元状態名と、遷移先状態名と、遷移処理名と、処理時間と、を含む第一状態遷移編集データを生成する第一生成部を備える。
本発明によれば、処理時間が追加された状態遷移データである第一状態遷移編集データが生成される。つまり、本発明によれば、状態遷移データに時間情報を追加することができる。
実施の形態1における状態遷移編集装置100の構成図。 実施の形態1における記憶部191の構成を示す図。 実施の形態1における状態遷移図211の構成を示す図。 実施の形態1における処理時間リスト221の構成を示す図。 実施の形態1における状態遷移表231の構成を示す図。 実施の形態1における時間追加表241の構成を示す図。 実施の形態1における状態遷移編集方法のフローチャート。 実施の形態1における状態遷移図211の具体例を示す図。 実施の形態1における状態遷移表231の具体例を示す図。 実施の形態1における第1生成処理(S120)のフローチャート。 実施の形態1における処理時間リスト221の具体例を示す図。 実施の形態1における時間追加表241の具体例を示す図。 実施の形態1における第2生成処理(S130)のフローチャート。 実施の形態1における状態遷移表231の編集の流れを示す図。 実施の形態2における状態遷移編集方法のフローチャート。 実施の形態3における状態遷移編集装置100の構成図。 実施の形態3における記憶部191の構成を示す図。 実施の形態3における時間追加図251の構成を示す図。 実施の形態3における状態遷移編集方法のフローチャート。 実施の形態3における時間追加図251の具体例を示す図。 実施の形態3における図生成処理(S350)のフローチャート。 実施の形態における状態遷移編集装置100のハードウェア構成図。
実施の形態および図面において、同じ要素および対応する要素には同じ符号を付している。同じ符号が付された要素の説明は適宜に省略または簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。
実施の形態1.
状態遷移表に時間情報を追加する形態について、図1から図14に基づいて説明する。
***構成の説明***
図1に基づいて、状態遷移編集装置100の構成を説明する。
状態遷移編集装置100は、プロセッサ901とメモリ902と補助記憶装置903と入出力インタフェース904といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
プロセッサ901は、演算処理を行うIC(Integrated Circuit)であり、他のハードウェアを制御する。例えば、プロセッサ901は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、またはGPU(Graphics Processing Unit)である。
メモリ902は揮発性の記憶装置である。メモリ902は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ902はRAM(Random Access Memory)である。メモリ902に記憶されたデータは必要に応じて補助記憶装置903に保存される。
補助記憶装置903は不揮発性の記憶装置である。例えば、補助記憶装置903は、ROM(Read Only Memory)、HDD(Hard Disk Drive)、またはフラッシュメモリである。補助記憶装置903に記憶されたデータは必要に応じてメモリ902にロードされる。
入出力インタフェース904は入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース904はUSB端子であり、入力装置はキーボードおよびマウスであり、出力装置はディスプレイである。USBはUniversal Serial Busの略称である。
状態遷移編集装置100は、表生成部110(第一生成部の一例)を機能構成の要素として備える。表生成部110はソフトウェアで実現される。
補助記憶装置903には、表生成部110を実現する状態遷移編集プログラムが記憶されている。状態遷移編集プログラムは、メモリ902にロードされて、プロセッサ901によって実行される。
さらに、補助記憶装置903にはOS(Operating System)が記憶されている。OSの少なくとも一部は、メモリ902にロードされて、プロセッサ901によって実行される。
つまり、プロセッサ901は、OSを実行しながら、状態遷移編集プログラムを実行する。
状態遷移編集プログラムを実行して得られるデータは、メモリ902、補助記憶装置903、プロセッサ901内のレジスタまたはプロセッサ901内のキャッシュメモリといった記憶装置に記憶される。
メモリ902はデータを記憶する記憶部191として機能する。但し、他の記憶装置が、メモリ902の代わりに、又は、メモリ902と共に、記憶部191として機能してもよい。
入出力インタフェース904は受付部192および表示部193として機能する。受付部192は入力を受け付ける要素であり、表示部193はディスプレイへの表示を行う要素である。
状態遷移編集装置100は、プロセッサ901を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、プロセッサ901の役割を分担する。
状態遷移編集プログラムは、磁気ディスク、光ディスクまたはフラッシュメモリ等の不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。不揮発性の記憶媒体は、一時的でない有形の媒体である。
図2に基づいて、記憶部191の構成を説明する。
記憶部191には、状態遷移図データ210(状態遷移データの一例)、処理時間リストデータ220(処理時間データの一例)、状態遷移表データ230(状態遷移第一データの一例)および時間追加表データ240(第一状態遷移編集データの一例)などが記憶される。
状態遷移図データ210は、状態遷移図のデータである。
状態遷移図は、1つ以上の状態遷移を図の形式で示す。例えば、状態遷移図は、UML(Unified Modeling Language)におけるステートマシン図である。
具体的には、状態遷移図は、状態遷移毎に遷移元状態名と遷移先状態名とイベント名と遷移処理名とを示す。
遷移元状態名は、遷移元の状態を識別する。
遷移先状態名は、遷移先の状態を識別する。
イベント名は、状態遷移を発生させるイベントを識別する。
遷移処理名は、遷移処理を識別する。遷移処理は、状態遷移の発生時に実行される処理である。具体的には、イベントが発生したときに遷移処理が実行され、遷移処理の実行が完了したときに状態が遷移する。遷移処理はアクションとも呼ばれ、遷移処理名はアクション名とも呼ばれる。例えば、遷移処理は関数であり、遷移処理名は関数名である。
図3に基づいて、状態遷移図211の構成を説明する。
状態遷移図211は、初期状態212と遷移状態213と状態遷移214とイベント名215と遷移処理名216といった要素を備える。
初期状態212は、初期の状態を表す。
遷移状態213は、遷移元の状態または遷移先の状態を表す。遷移状態213の中に記された文字列は、遷移元状態名または遷移先状態名である。
状態遷移214は、遷移元の状態から遷移先の状態への遷移を表す。
イベント名215は、状態遷移を発生させるイベントを識別する。
遷移処理名216、遷移処理を識別する。
例えば、状態遷移図211は、シミュレーションのように網羅探索が可能な従来のモデル検査技術を利用して生成される。
図2において、処理時間リストデータ220は処理時間リストのデータである。
処理時間リストは、1つ以上の遷移処理のそれぞれの処理時間を示す。処理時間は、遷移処理の実行に要する時間である。
具体的には、処理時間リストは、遷移処理毎に遷移処理名と処理時間とを示す。
図4に基づいて、処理時間リスト221の構成を説明する。
処理時間リスト221は、遷移処理名と処理時間とのそれぞれの欄を有する。それらの欄は互いに対応付けられている。
図2において、状態遷移表データ230は状態遷移表のデータである。
状態遷移表は、1つ以上の状態遷移を表の形式で示す。
具体的には、状態遷移表は、状態遷移図に示される状態遷移毎に遷移元状態名とイベント名と遷移先状態名と遷移処理名とを表の形式で示す。
図5に基づいて、状態遷移表231の構成を説明する。
状態遷移表231は、遷移元状態名とイベント名と遷移処理名と遷移先状態名とのそれぞれの欄を有する。それらの欄は互いに対応付けられている。
状態遷移表231の行を状態遷移レコードという。
図2において、時間追加表データ240は時間追加表のデータである。
時間追加表は、処理時間が追加された状態遷移表である。
具体的には、時間追加表は、状態遷移図に示される状態遷移毎に遷移元状態名とイベント名と遷移先状態名と遷移処理名と処理時間とを表の形式で示す。
図6に基づいて、時間追加表241の構成を説明する。
時間追加表241は、遷移元状態名とイベント名とガード条件と遷移処理名と遷移先状態名とのそれぞれの欄を有する。それらの欄は互いに対応付けられている。
ガード条件の欄は、状態遷移表記法におけるガード条件を示す欄である。状態遷移表記法は状態遷移を書き表す方法である。例えば、状態遷移表記法はUMLである。
ガード条件の欄には、遷移処理の処理時間が登録される。例えば、「x==t」という形式で、処理時間tがガード条件の欄に登録される。
時間追加表241の行を時間追加レコードという。
***動作の説明***
状態遷移編集装置100の動作は状態遷移編集方法に相当する。また、状態遷移編集方法の手順は状態遷移編集プログラムの手順に相当する。
図7に基づいて、状態遷移編集方法を説明する。
ステップS110において、利用者は、状態遷移図データ210を状態遷移編集装置100に入力する。
受付部192は、入力された状態遷移図データ210を受け付ける。
記憶部191は、受け付けられた状態遷移図データ210を記憶する。
図8に基づいて、状態遷移図データ210に示される状態遷移図211の具体例を説明する。
状態遷移図211は、3つの状態遷移を示している。
第1状態遷移は、第1状態(St1)から第2状態(St2)への遷移である。第1状態遷移において、イベント名は「msg」であり、遷移処理名は「func1」である。
第2状態遷移は、第2状態(St2)から第3状態(St3)への遷移である。第2状態遷移において、イベント名は「msg」であり、遷移処理名は「func2」である。
第3状態遷移は、第3状態(St3)から第1状態(St1)への遷移である。第3状態遷移において、イベント名は「msg」であり、遷移処理名は「func3」である。
図7に戻り、ステップS120から説明を続ける。
ステップS120およびステップS130において、表生成部110は、状態遷移図データ210と処理時間リストデータ220とを用いて、時間追加表データ240を生成する。
ステップS120において、表生成部110は、状態遷移図データ210を用いて、状態遷移表データ230を生成する。
図8の状態遷移図211を示す状態遷移図データ210が用いられた場合、図9の状態遷移表231を示す状態遷移表データ230が生成される。
図10に基づいて、第1生成処理(S120)の流れを説明する。
ステップS121において、表生成部110は、未選択の状態遷移を状態遷移図データ210から1つ選択する。
状態遷移図データ210が図8の状態遷移図211を示す場合、表生成部110は、例えば、第1状態遷移(St1→St2)を選択する。
ステップS122において、表生成部110は、ステップS121で選択された状態遷移の情報を状態遷移図データ210から取得する。取得される情報は、ステップS121で選択された状態遷移における遷移元状態名とイベント名と遷移処理名と遷移先状態名である。
図8の状態遷移図211における第1状態遷移(St1→St2)がステップS121で選択された場合、表生成部110は「St1」と「msg」と「func1」と「St2」とを状態遷移図データ210から取得する。「St1」が遷移元状態名であり、「msg」がイベント名であり、「func1」が遷移処理名であり、「St2」が遷移先状態名である。
ステップS123において、表生成部110は、ステップS122で取得された情報を含んだ状態遷移レコードを生成し、生成された状態遷移レコードを状態遷移表データ230に登録する。
「St1」と「msg」と「func1」と「St2」がステップS122で取得された場合、表生成部110は、図9において1行目の状態遷移レコードを状態遷移表231に登録する。
ステップS124において、表生成部110は、未選択の状態遷移が状態遷移図データ210に有るか判定する。
未選択の状態遷移が有る場合、処理はステップS121に進む。
未選択の状態遷移が無い場合、第1生成処理(S120)は終了する。
図7に戻り、ステップS130を説明する。
ステップS130において、表生成部110は、状態遷移表データ230と処理時間リストデータ220とを用いて、時間追加表データ240を生成する。
図9の状態遷移表231を示す状態遷移表データ230と図11の処理時間リスト221を示す処理時間リストデータ220とが用いられた場合、図12の時間追加表241を示す時間追加表データ240が生成される。ハイフン「-」は値が登録されていないことを意味する。
図13に基づいて、第2生成処理(S130)の流れを説明する。
ステップS131において、表生成部110は、未選択の状態遷移レコードを状態遷移表データ230から1つ選択する。
状態遷移表データ230が図9の状態遷移表231を示す場合、表生成部110は、例えば、1行目の状態遷移レコード(St1,msg,func1,st2)を選択する。
ステップS132において、表生成部110は、ステップS131で選択された状態遷移レコードから、遷移処理名を取得する。
図9の状態遷移表231における1行目の状態遷移レコードがステップS131で選択された場合、表生成部110は「func1」を取得する。「func1」が遷移処理名である。
ステップS133において、表生成部110は、処理時間リストデータ220を検索して、ステップS132で取得された遷移処理名と同じ遷移処理名が処理時間リスト221に示されているか判定する。
ステップS132で取得された遷移処理名が「func1」または「func2」である場合、同じ遷移処理名は図11の処理時間リスト221に示されている。
ステップS132で取得された遷移処理名が「func3」である場合、同じ遷移処理名は図11の処理時間リスト221に示されていない。
同じ遷移処理名が処理時間リスト221に示されている場合、処理はステップS134に進む。
同じ遷移処理名が処理時間リスト221に示されていない場合、処理はステップS136に進む。
ステップS134において、表生成部110は、ステップS132で取得された遷移処理名と同じ遷移処理名に対応付けられている処理時間を処理時間リスト221から取得する。
ステップS132で取得された遷移処理名が「func1」である場合、表生成部110は、図11の処理時間リスト221から「10」を取得する。「10」が「func1」に対応付けられている処理時間である。
ステップS132で取得された遷移処理名が「func2」である場合、表生成部110は、図11の処理時間リスト221から「5」を取得する。「5」が「func2」で対応付けられている処理時間である。
ステップS135において、表生成部110は、ステップS134で取得された処理時間を、ステップS131で選択された状態遷移レコードに追加する。
具体的には、表生成部110は、ステップS134で取得された処理時間を、ステップS131で選択された状態遷移レコードの中のガード条件の欄に登録する。
ステップS136において、表生成部110は、未選択の状態遷移レコードが状態遷移表データ230に有るか判定する。
未選択の状態遷移レコードが有る場合、処理はステップS131に進む。
未選択の状態遷移レコードが無い場合、第2生成処理(S130)は終了する。
図14に基づいて、状態遷移表231の編集の流れを説明する。状態遷移表231の左に示す矢印は、ステップS131(図13参照)で選択された状態遷移レコードを指している。
(1)1行目の状態遷移レコードにおいて、遷移処理名は「func1」である。「func1」は図11の処理時間リスト221に示されている。「func1」に対応する処理時間は「10」である。そのため、1行目の状態遷移レコードの中のガード条件の欄に「x==10」が登録される。
(2)2行目の状態遷移レコードにおいて、遷移処理名は「func2」である。「func2」は図11の処理時間リスト221に示されている。「func2」に対応する処理時間は「5」である。そのため、2行目の状態遷移レコードの中のガード条件の欄に「x==5」が登録される。
(3)3行目の状態遷移レコードにおいて、遷移処理名は「func3」である。「func3」は図11の処理時間リスト221に示されていない。そのため、3行目の状態遷移レコードの中のガード条件の欄には処理時間が登録されない。
編集後の状態遷移表231が時間追加表241である。
図7に戻り、ステップS140を説明する。
ステップS140において、表示部193は、時間追加表データ240を用いて、時間追加表241をディスプレイに表示する。
***実施の形態1の効果***
時間追加表データ240を生成することができる。つまり、状態遷移表231に時間情報を追加することができる。具体的には、遷移処理に要する処理時間を状態遷移表231に追加することができる。
全ての状態遷移に対応することは難しいかも知れないが、API(Application Program Interface)等でよく使われる処理が実行される際の状態遷移に対応することが可能である。
例えば、時間追加表241は、モデル検査を行うためのシミュレーションにおいて有用である。
図12で説明したように、時間追加表241の中のガード条件の欄には処理時間が登録される。
シミュレーションでは、ガード条件が成立したときに状態が遷移する。したがって、時間追加表241を用いることにより、イベントが発生してから処理時間が経過したときに遷移処理が終了したものと見做して状態を遷移させるシミュレーションが可能となる。
実施の形態2.
任意の処理時間リスト221が用いられる形態について、主に実施の形態1と異なる点を図15に基づいて説明する。
***構成の説明***
状態遷移編集装置100の構成は、実施の形態1における構成(図1参照)と同じである。
***動作の説明***
図7に基づいて、状態遷移編集方法を説明する。
ステップS210において、利用者は、処理時間リストデータ220を状態遷移編集装置100に入力する。
受付部192は、入力された処理時間リストデータ220を受け付ける。
記憶部191は、受け付けられた処理時間リストデータ220を記憶する。他の処理時間リストデータ220が記憶されている場合、記憶部191は、他の処理時間リストデータ220を、受け付けられた処理時間リストデータ220に置き換える。
ステップS220からステップS250は、実施の形態1(図7参照)におけるステップS110からステップS140と同じである。
つまり、表生成部110は、ステップS210で受け付けられた処理時間リストデータ220を用いて、時間追加表データ240を生成する。
***実施の形態2の効果***
任意の処理時間リスト221を用いて時間追加表データ240を生成することができる。
実施の形態3.
状態遷移図に時間情報を追加する形態について、主に実施の形態1と異なる点を図16から図21に基づいて説明する。
***構成の説明***
図16に基づいて、状態遷移編集装置100の構成を説明する。
状態遷移編集装置100は、表生成部110の他に図生成部120(第二生成部の一例)を機能構成の要素として備える。図生成部120はソフトウェアで実現される。
状態遷移編集プログラムは、表生成部110および図生成部120を実現するプログラムである。状態遷移編集プログラムは、メモリ902にロードされて、プロセッサ901によって実行される。
図17に基づいて、記憶部191の構成を説明する。
記憶部191には、さらに、時間追加図データ250(第二状態遷移編集データの一例)が記憶される。
時間追加図データ250は時間追加図のデータである。
時間追加図は、処理時間が追加された状態遷移図である。
つまり、時間追加図は、状態遷移図に示される状態遷移毎に遷移元状態名と遷移先状態名と遷移処理名と処理時間とを図の形式で示す。
図18に基づいて、時間追加図251の構成を説明する。
時間追加図251は、状態遷移図211(図3参照)の要素の他にガード条件252を備える。
ガード条件252は、状態遷移表記法におけるガード条件である。状態遷移表記法は状態遷移を書き表す方法である。例えば、状態遷移表記法はUMLである。
ガード条件252には、処理時間が記載される。例えば、「x==t」という形式で、処理時間tがガード条件252に記載される。
***動作の説明***
図19に基づいて、状態遷移編集方法を説明する。
ステップS310からステップS330は、実施の形態1(図7参照)におけるステップS110からステップS130と同じである。
ステップS340において、図生成部120は、時間追加表データ240を用いて、時間追加図データ250を生成する。
具体的には、図生成部120は、時間追加表データ240に示される処理時間を状態遷移図データ210に追加することによって、時間追加図データ250を生成する。
図12の時間追加表241を示す時間追加表データ240が用いられた場合、図20の時間追加図251を示す時間追加図データ250が生成される。
図21に基づいて、図生成処理(S340)の流れを説明する。
ステップS341において、図生成部120は、未選択の時間追加レコードを時間追加表データ240から1つ選択する。
時間追加表データ240が図12の時間追加表241を示す場合、図生成部120は、例えば、1行目の時間追加レコード(St1、msg、x==10、func1、st2)を選択する。
ステップS342において、図生成部120は、ステップS341で選択された時間追加レコードから処理時間を取得する。
具体的には、図生成部120は、ステップS341で選択された時間追加レコードからガード条件を取得する。ガード条件に含まれる時間が処理時間である。
図12の時間追加表241における1行目の時間追加レコードがステップS341で選択された場合、図生成部120は、選択された時間追加レコードから「x==10」を取得する。「x==10」が、選択された時間追加レコードに登録されているガード条件である。「x==10」に含まれる「10」が処理時間である。
ステップS343において、図生成部120は、ステップS341で選択された時間追加レコードに対応する状態遷移を状態遷移図データ210から選択する。
具体的には、状態遷移図データ210は、ステップS341で選択された時間追加レコードから遷移元状態名と遷移先状態名との組を取得し、取得された組と同じ遷移元状態名と遷移先状態名とを含んでいる状態遷移を状態遷移図データ210から選択する。
図12の時間追加表241における1行名の時間追加レコードがステップS341で選択された場合、図生成部120は、選択された時間追加レコードから「St1」と「st2」とを取得する。「St1」が遷移元状態名であり、「St2」が遷移先状態名である。そして、図生成部120は、図8の状態遷移図211を示す状態遷移図データ210から第1状態遷移(St1→St2)を選択する。第1状態遷移(St1→St2)は、「St1」と「St2」とを含んでいる状態遷移である。
ステップS343において、図生成部120は、ステップS343で選択された状態遷移に、ステップS342で取得された処理時間を追加する。
具体的には、図生成部120は、ステップS343で選択された状態遷移に、ステップS342で取得されたガード条件を記載する。
例えば、図8の状態遷移図211における第1状態遷移(St1→St2)がステップS344で選択された状態遷移であり、「x==10」がステップS342で取得されたガード条件であるものとする。この場合、図生成部120は、第1状態遷移(St1→St2)にガード条件として[x==10]を記載する。これにより、図8の状態遷移図211において、「msg/func1」が「msg[x==10]/func1」に変更される。「msg/func1」は、第1状態遷移(St1→St2)の情報である。
ステップS345において、図生成部120は、未選択の時間追加レコードが時間追加表データ240に有るか判定する。
未選択の時間追加レコードが有る場合、処理はステップS341に進む。
未選択の時間追加レコードが無い場合、図生成処理(S340)は終了する。
図19に戻り、ステップS350を説明する。
ステップS350において、表示部193は、時間追加図データ250が示す時間追加表241をディスプレイに表示する。
***実施の形態3の効果***
時間追加図データ250を生成することができる。つまり、状態遷移図211に時間情報を追加することができる。具体的には、遷移処理に要する処理時間を状態遷移図211に追加することができる。
***他の構成***
実施の形態2と同じく、任意の処理時間リスト221が用いられても構わない。
***実施の形態の補足***
実施の形態において、状態遷移編集装置100の機能はハードウェアで実現してもよい。
図22に、状態遷移編集装置100の機能がハードウェアで実現される場合の構成を示す。
状態遷移編集装置100は処理回路990を備える。処理回路990はプロセッシングサーキットリともいう。
処理回路990は、表生成部110と図生成部120と記憶部191とを実現する専用の電子回路である。
例えば、処理回路990は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックIC、GA、ASIC、FPGAまたはこれらの組み合わせである。GAはGate Arrayの略称であり、ASICはApplication Specific Integrated Circuitの略称であり、FPGAはField Programmable Gate Arrayの略称である。
状態遷移編集装置100は、処理回路990を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路990の役割を分担する。
状態遷移編集装置100の機能は、ソフトウェアとハードウェアとの組み合わせで実現してもよい。つまり、一部の機能がソフトウェアで実現され、残りの機能がハードウェアで実現されてもよい。
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
100 状態遷移編集装置、110 表生成部、120 図生成部、191 記憶部、192 受付部、193 表示部、210 状態遷移図データ、211 状態遷移図、212 初期状態、213 遷移状態、214 状態遷移、215 イベント名、216 遷移処理名、220 処理時間リストデータ、221 処理時間リスト、230 状態遷移表データ、231 状態遷移表、240 時間追加表データ、241 時間追加表、250 時間追加図データ、251 時間追加図、252 ガード条件、901 プロセッサ、902 メモリ、903 補助記憶装置、904 入出力インタフェース、990 処理回路。

Claims (8)

  1. 1つ以上の状態遷移毎に、遷移元の状態を識別する遷移元状態名と、遷移先の状態を識別する遷移先状態名と、状態遷移の発生時に実行される遷移処理を識別する遷移処理名と、を含む状態遷移データと、
    1つ以上の遷移処理毎に、遷移処理名と、処理時間と、を含む処理時間データと、
    を用いて、
    前記状態遷移毎に、遷移元状態名と、遷移先状態名と、遷移処理名と、処理時間と、を含む第一状態遷移編集データを生成する第一生成部
    を備える状態遷移編集装置。
  2. 前記第一生成部は、
    前記状態遷移データを用いて、前記状態遷移毎に、遷移元状態名と、遷移先状態名と、遷移処理名と、を含む状態遷移第一データを生成し、
    前記状態遷移第一データに示される遷移処理名毎に、前記処理時間データから処理時間を取得し、
    取得された処理時間を前記状態遷移第一データに示される遷移処理名に対応付けて前記状態遷移第一データに追加して前記第一状態遷移編集データを生成する
    請求項1に記載の状態遷移編集装置。
  3. 前記第一生成部は、前記処理時間データに示されていない遷移処理名が前記状態遷移第一データに示されている場合、前記第一状態遷移編集データにおいて当該遷移処理名に対応付けて処理時間を追加しない
    請求項2に記載の状態遷移編集装置。
  4. 前記状態遷移編集装置は、前記処理時間データを受け付ける受付部を備え、
    前記第一生成部は、受け付けられた前記処理時間データを用いて前記第一状態遷移編集データを生成する
    請求項1から請求項3のいずれか1項に記載の状態遷移編集装置。
  5. 前記第一状態遷移編集データは、状態遷移表記法におけるガード条件を示す条件欄を有し、
    前記第一生成部は、前記処理時間を前記第一状態遷移編集データの中の前記条件欄に登録する
    請求項1から請求項4のいずれか1項に記載の状態遷移編集装置。
  6. 前記第一状態遷移編集データを用いて、前記状態遷移毎に、遷移元状態名と、遷移先状態名と、遷移処理名と、処理時間と、を含む第二状態遷移編集データを生成する第二生成部を備える
    請求項1から請求項5のいずれか1項に記載の状態遷移編集装置。
  7. 前記第二状態遷移編集データは、状態遷移表記法におけるガード条件を示す条件部分を有し、
    前記第二生成部は、前記処理時間を前記第二状態遷移編集データの中の前記条件部分に記載する
    請求項6に記載の状態遷移編集装置。
  8. 1つ以上の状態遷移毎に、遷移元の状態を識別する遷移元状態名と、遷移先の状態を識別する遷移先状態名と、状態遷移の発生時に実行される遷移処理を識別する遷移処理名と、を含む状態遷移データと、
    1つ以上の遷移処理毎に、遷移処理名と、処理時間と、を含む処理時間データと、
    を用いて、
    前記状態遷移毎に、遷移元状態名と、遷移先状態名と、遷移処理名と、処理時間と、を含む第一状態遷移編集データを生成する第一生成部
    としてコンピュータを機能させるための状態遷移編集プログラム。
JP2020203702A 2020-12-08 2020-12-08 状態遷移編集装置および状態遷移編集プログラム Active JP7008780B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020203702A JP7008780B2 (ja) 2020-12-08 2020-12-08 状態遷移編集装置および状態遷移編集プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020203702A JP7008780B2 (ja) 2020-12-08 2020-12-08 状態遷移編集装置および状態遷移編集プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016230623A Division JP6807721B2 (ja) 2016-11-28 2016-11-28 状態遷移編集装置および状態遷移編集プログラム

Publications (2)

Publication Number Publication Date
JP2021057061A JP2021057061A (ja) 2021-04-08
JP7008780B2 true JP7008780B2 (ja) 2022-01-25

Family

ID=75271035

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020203702A Active JP7008780B2 (ja) 2020-12-08 2020-12-08 状態遷移編集装置および状態遷移編集プログラム

Country Status (1)

Country Link
JP (1) JP7008780B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003030007A (ja) 2001-07-13 2003-01-31 Mitsubishi Electric Corp プログラム開発支援システム及び、プログラム開発支援方法及び、プログラム開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体及び、プログラム開発支援プログラム
WO2012057170A1 (ja) 2010-10-27 2012-05-03 株式会社日立製作所 ソースコード変換方法およびソースコード変換プログラム
JP2015225422A (ja) 2014-05-27 2015-12-14 三菱電機株式会社 テストケース生成装置、テストケース生成方法及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0778076A (ja) * 1993-09-08 1995-03-20 Toshiba Corp プログラム自動生成装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003030007A (ja) 2001-07-13 2003-01-31 Mitsubishi Electric Corp プログラム開発支援システム及び、プログラム開発支援方法及び、プログラム開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体及び、プログラム開発支援プログラム
WO2012057170A1 (ja) 2010-10-27 2012-05-03 株式会社日立製作所 ソースコード変換方法およびソースコード変換プログラム
JP2015225422A (ja) 2014-05-27 2015-12-14 三菱電機株式会社 テストケース生成装置、テストケース生成方法及びプログラム

Also Published As

Publication number Publication date
JP2021057061A (ja) 2021-04-08

Similar Documents

Publication Publication Date Title
JP2006048525A (ja) シミュレーション方法
US20080071514A1 (en) Apparatus for handling register-transfer-level description, method thereof, and program storage medium storing program thereof
JP7008780B2 (ja) 状態遷移編集装置および状態遷移編集プログラム
JP6807721B2 (ja) 状態遷移編集装置および状態遷移編集プログラム
JP5228546B2 (ja) 動作合成装置、および、プログラム
JP2000268074A (ja) 検証プログラム自動生成装置および方法並びにプロパティ自動生成装置および方法
JP2007018313A (ja) 回路設計プログラム、回路設計装置、回路設計方法
JP2009093491A (ja) 検証シナリオ作成プログラム、該プログラムを記録した記録媒体、検証シナリオ作成装置、および検証シナリオ作成方法
JP6482362B2 (ja) ソースコード生成システム、ソースコード生成装置、ソースコード生成方法及びプログラム
JP7241988B1 (ja) プログラム生成装置、プログラム生成方法及びプログラム生成プログラム
US6782523B2 (en) Parallel configurable IP design methodology
JP5034867B2 (ja) ソフトウェア検証支援プログラム、該プログラムを記録した記録媒体、ソフトウェア検証支援装置、およびソフトウェア検証支援方法
JPH09237191A (ja) プログラミング支援装置、プログラミング支援方法、及びプログラミング支援プログラムを記録した媒体
WO2021149368A1 (ja) 処理ユニット及び処理システム
JP7101750B2 (ja) 試験支援装置、試験支援方法及び試験支援プログラム
JP2005078402A (ja) 電子回路の動作合成方法
JP4448048B2 (ja) 構造解析プログラム
JP2007011477A (ja) 論理回路動作モデル生成装置及び論理回路動作モデル生成方法
JPWO2018220836A1 (ja) プログラムコード生成装置およびプログラムコード生成プログラム
JP5017396B2 (ja) 情報処理装置およびプログラムの検証方法
JP5233354B2 (ja) プロパティ検証システム、プロパティ検証方法、及びプログラム
JP2009217720A (ja) プログラム生成装置およびプログラム生成方法
JP2006221368A (ja) ライブラリ提供方法及びライブラリ提供装置
JP6888336B2 (ja) スタブ生成装置、方法、及びプログラム
JP2006171913A (ja) 情報処理装置、情報処理方法、ならびにプログラム、記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201208

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220111

R150 Certificate of patent or registration of utility model

Ref document number: 7008780

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150