JP4835859B2 - 状態遷移図作成装置および状態遷移図作成方法 - Google Patents
状態遷移図作成装置および状態遷移図作成方法 Download PDFInfo
- Publication number
- JP4835859B2 JP4835859B2 JP2007035113A JP2007035113A JP4835859B2 JP 4835859 B2 JP4835859 B2 JP 4835859B2 JP 2007035113 A JP2007035113 A JP 2007035113A JP 2007035113 A JP2007035113 A JP 2007035113A JP 4835859 B2 JP4835859 B2 JP 4835859B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- control block
- list
- transition
- control
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
図10は、in状態リストおよびout状態リストを作成するための処理を説明するためのフローチャートである。
(1)図3で示したように繰返しループに入らない可能性がある場合(while文など)
(2)必ず一度は繰返しループに入る場合(do〜while文など)
(3)繰返しの回数が決まっている場合(for文で繰返し数が定数の場合など)
などの記法があるため、これを区別するようなアノテーションを定義して、リスト作成部5が、そのアノテーションを解析する。
(発明の利用が考えられる分野)
本発明を利用すれば、実装まで開発を行なったソフトウェアのソースコードに対して、状態に関するアノテーションを記述しさえすれば、リバースしてステートマシン図を自動で生成して、状態遷移の検証に利用するといった用途に適用することが可能である。
2 状態解析手段
3 遷移解析手段
4 ステートマシン図描画手段
5 リスト作成手段
100 ステートマシン図リバース装置
Claims (2)
- 状態を変数として用いる処理を規定する複数のコード行と、前記複数のコード行のうち、状態の変化を表す状態変化コード行に付与された、前記変化の後の状態を表す状態宣言アノテーションと、前記複数のコード行のうち、状態に対する制御を表す制御コード行に付与された、前記制御による変化前の状態を表す条件宣言アノテーションと、を有するソースコードから、状態遷移図を作成する状態遷移図作成装置であって、
前記ソースコードを解析して前記コード行の間の対応関係を特定し、前記対応関係と、前記状態宣言アノテーションと、前記条件宣言アノテーションと、に基づいて、遷移前の状態と遷移後の状態とを対応させた遷移リストを作成するリスト作成手段と、
前記遷移リストに基づいて、前記状態遷移図を作成する状態遷移図作成手段と、を含み、
前記リスト作成手段は、
前記ソースコードを解析して、前記ソースコードにおけるコード行の入れ子構造および前記制御コード行を特定し、前記入れ子構造および前記制御コード行に基づいて、前記ソースコードから、複数の制御ブロックと、前記制御ブロックに入るための条件と、を抽出し、前記入れ子構造に基づいて、前記制御ブロックに関する制御ブロック木構造を特定し、前記条件を表すラベルを、前記制御ブロック木構造内の当該条件に対応する制御ブロックと当該制御ブロックの親制御ブロックとをつなぐ線であるエッジに、排他または繰返しまたはNULLである当該エッジの種別とともに属性として持たせる制御構造解析手段と、
前記状態宣言アノテーション、前記条件宣言アノテーションおよび前記制御ブロック木構造に基づいて、前記制御ブロックごとに、当該制御ブロックに制御が入る際にとりうる状態を表すイン状態リストと、当該制御ブロックから制御が出る際にとりうる状態を表すアウト状態リストと、を生成し、前記制御ブロック木構造内の各制御ブロックに、対応する前記イン状態リストおよび前記アウト状態リストを付加して、イン/アウト状態付制御ブロック木構造を作成する状態解析手段と、
前記状態宣言アノテーションを有する制御ブロックについて、当該制御ブロックの、イン状態リスト、アウト状態リスト、および、条件宣言アノテーションに基づいて、前記遷移リストを作成する遷移解析手段と、を含む、状態遷移図作成装置。 - 状態を変数として用いる処理を規定する複数のコード行と、前記複数のコード行のうち、状態の変化を表す状態変化コード行に付与された、前記変化の後の状態を表す状態宣言アノテーションと、前記複数のコード行のうち、状態に対する制御を表す制御コード行に付与された、前記制御による変化前の状態を表す条件宣言アノテーションと、を有するソースコードから、状態遷移図を作成する状態遷移図作成装置が行う状態遷移図作成方法であって、
前記ソースコードを解析して前記コード行の間の対応関係を特定し、前記対応関係と、前記状態宣言アノテーションと、前記条件宣言アノテーションと、に基づいて、遷移前の状態と遷移後の状態とを対応させた遷移リストを作成するリスト作成ステップと、
前記遷移リストに基づいて、前記状態遷移図を作成する状態遷移図作成ステップと、を含み、
前記リスト作成ステップは、
前記ソースコードを解析して、前記ソースコードにおけるコード行の入れ子構造および前記制御コード行を特定し、前記入れ子構造および前記制御コード行に基づいて、前記ソースコードから、複数の制御ブロックと、前記制御ブロックに入るための条件と、を抽出し、前記入れ子構造に基づいて、前記制御ブロックに関する制御ブロック木構造を特定し、前記条件を表すラベルを、前記制御ブロック木構造内の当該条件に対応する制御ブロックと当該制御ブロックの親制御ブロックとをつなぐ線であるエッジに、排他または繰返しまたはNULLである当該エッジの種別とともに属性として持たせる制御構造解析ステップと、
前記状態宣言アノテーション、前記条件宣言アノテーションおよび前記制御ブロック木構造に基づいて、前記制御ブロックごとに、当該制御ブロックに制御が入る際にとりうる状態を表すイン状態リストと、当該制御ブロックから制御が出る際にとりうる状態を表すアウト状態リストと、を生成し、前記制御ブロック木構造内の各制御ブロックに、対応する前記イン状態リストおよび前記アウト状態リストを付加して、イン/アウト状態付制御ブロック木構造を作成する状態解析ステップと、
前記状態宣言アノテーションを有する制御ブロックについて、当該制御ブロックの、イン状態リスト、アウト状態リスト、および、条件宣言アノテーションに基づいて、前記遷移リストを作成する遷移解析ステップと、を含む、状態遷移図作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007035113A JP4835859B2 (ja) | 2007-02-15 | 2007-02-15 | 状態遷移図作成装置および状態遷移図作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007035113A JP4835859B2 (ja) | 2007-02-15 | 2007-02-15 | 状態遷移図作成装置および状態遷移図作成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008198103A JP2008198103A (ja) | 2008-08-28 |
JP4835859B2 true JP4835859B2 (ja) | 2011-12-14 |
Family
ID=39756961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007035113A Expired - Fee Related JP4835859B2 (ja) | 2007-02-15 | 2007-02-15 | 状態遷移図作成装置および状態遷移図作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4835859B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5732992B2 (ja) * | 2011-04-14 | 2015-06-10 | 富士電機株式会社 | モデル図作成装置、モデル図作成方法、およびモデル図作成プログラム |
JP5929297B2 (ja) * | 2012-02-21 | 2016-06-01 | 富士電機株式会社 | モデル図作成装置、モデル図作成方法、およびモデル図作成プログラム |
JP5875681B2 (ja) * | 2012-06-20 | 2016-03-02 | 株式会社日立製作所 | 制御ソフトウェアの設計支援装置 |
JP6239438B2 (ja) * | 2014-04-28 | 2017-11-29 | 東芝デジタルソリューションズ株式会社 | 仕様抽出装置、仕様抽出方法およびプログラム |
CN110209389B (zh) * | 2019-06-05 | 2023-03-14 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05324289A (ja) * | 1992-05-20 | 1993-12-07 | Toshiba Corp | プログラム設計書自動作成装置 |
JPH06215066A (ja) * | 1993-01-19 | 1994-08-05 | Fujitsu Ltd | 状態遷移図生成方法およびその装置 |
JPH1124900A (ja) * | 1997-06-30 | 1999-01-29 | Canon Inc | 状態遷移図作成装置、状態遷移図作成方法、記憶媒体 |
-
2007
- 2007-02-15 JP JP2007035113A patent/JP4835859B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008198103A (ja) | 2008-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8630824B1 (en) | Comprehending waveforms of a circuit design | |
US9747079B2 (en) | Method and system of software specification modeling | |
WO2005106649A2 (en) | An analytical software design system | |
Julius et al. | Transformation of GRAFCET to PLC code including hierarchical structures | |
US10459829B2 (en) | Overall test tool migration pipeline | |
JP4835859B2 (ja) | 状態遷移図作成装置および状態遷移図作成方法 | |
Tisi et al. | Improving higher-order transformations support in ATL | |
Wille et al. | Custom-tailored variability mining for block-based languages | |
CN109522005A (zh) | 跨平台图形化程序设计方法 | |
Masci et al. | An integrated development environment for the prototype verification system | |
JP2007011605A (ja) | ソフトウェア動作仕様のモデル検査支援装置およびこれを備えたモデル検査システム並びにモデル検査支援プログラム | |
CN109062819B (zh) | 一种软件测试用例的生成方法及装置 | |
Kehrer et al. | Propagation of software model changes in the context of industrial plant automation | |
Tounsi et al. | From Event-B specifications to programs for distributed algorithms | |
US20160062738A1 (en) | Methods and Apparatuses for Interactive Computer Programming | |
Zadahmad et al. | Domain-specific model differencing in visual concrete syntax | |
Rahman et al. | A DSL for importing models in a requirements management system | |
Gammaitoni et al. | Verifying modelling languages using lightning: a case study | |
Alsarraj et al. | Designing and implementing a tool to transform source code to UML diagrams | |
US20220091968A1 (en) | System and method for automated generation of test cases and test data for validating a software application | |
Di Rocco et al. | Bridging state-based differencing and co-evolution | |
Bouaziz et al. | SysML model-driven approach to verify blocks compatibility | |
Kosower et al. | Flowgen: Flowchart-based documentation framework for c++ | |
Anjorin et al. | A framework for bidirectional model-to-platform transformations | |
US20150199183A1 (en) | Program analysis apparatus and program analysis method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110622 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110809 |
|
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: 20110831 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110913 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141007 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |