JP2008198103A - 状態遷移図作成装置および状態遷移図作成方法 - Google Patents
状態遷移図作成装置および状態遷移図作成方法 Download PDFInfo
- Publication number
- JP2008198103A JP2008198103A JP2007035113A JP2007035113A JP2008198103A JP 2008198103 A JP2008198103 A JP 2008198103A JP 2007035113 A JP2007035113 A JP 2007035113A JP 2007035113 A JP2007035113 A JP 2007035113A JP 2008198103 A JP2008198103 A JP 2008198103A
- Authority
- JP
- Japan
- Prior art keywords
- state
- control block
- transition
- list
- 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.)
- Granted
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【解決手段】リスト作成手段5は、ソースコードAを解析してコード行の間の対応関係を特定し、その対応関係と、状態宣言アノテーションと、条件宣言アノテーションと、に基づいて、遷移前の状態と遷移後の状態とを対応させた遷移リストDを作成する。状態宣言アノテーションは、変化の後の状態を表し、状態変化コード行に付与されており、条件宣言アノテーションは、制御による変化前の状態を表し、制御コード行に付されている。ステートマシン図描画手段4は、遷移リストDに基づいて、ステートマシン図(状態遷移図)Eを作成する。
【選択図】図1
Description
図10は、in状態リストおよびout状態リストを作成するための処理を説明するためのフローチャートである。
(1)図3で示したように繰返しループに入らない可能性がある場合(while文など)
(2)必ず一度は繰返しループに入る場合(do〜while文など)
(3)繰返しの回数が決まっている場合(for文で繰返し数が定数の場合など)
などの記法があるため、これを区別するようなアノテーションを定義して、リスト作成部5が、そのアノテーションを解析する。
(発明の利用が考えられる分野)
本発明を利用すれば、実装まで開発を行なったソフトウェアのソースコードに対して、状態に関するアノテーションを記述しさえすれば、リバースしてステートマシン図を自動で生成して、状態遷移の検証に利用するといった用途に適用することが可能である。
2 状態解析手段
3 遷移解析手段
4 ステートマシン図描画手段
5 リスト作成手段
100 ステートマシン図リバース装置
Claims (4)
- 状態を変数として用いる処理を規定する複数のコード行と、前記複数のコード行のうち、状態の変化を表す状態変化コード行に付与された、前記変化の後の状態を表す状態宣言アノテーションと、前記複数のコード行のうち、状態に対する制御を表す制御コード行に付与された、前記制御による変化前の状態を表す条件宣言アノテーションと、を有するソースコードから、状態遷移図を作成する状態遷移図作成装置であって、
前記ソースコードを解析して前記コード行の間の対応関係を特定し、前記対応関係と、前記状態宣言アノテーションと、前記条件宣言アノテーションと、に基づいて、遷移前の状態と遷移後の状態とを対応させた遷移リストを作成するリスト作成手段と、
前記遷移リストに基づいて、前記状態遷移図を作成する状態遷移図作成手段と、を含む状態遷移図作成装置。 - 請求項1に記載の状態遷移図作成装置において、
前記リスト作成手段は、
前記ソースコードを解析して、前記ソースコードにおけるコード行の入れ子構造および前記制御コード行を特定し、前記入れ子構造および前記制御コード行に基づいて、前記ソースコードから、複数の制御ブロックと、前記制御ブロックに入るための条件と、を抽出し、前記入れ子構造に基づいて、前記制御ブロックに関する制御ブロック木構造を特定し、前記条件を、前記制御ブロック木構造内の当該条件に対応する制御ブロックに付加する制御構造解析手段と、
前記状態宣言アノテーション、前記条件宣言アノテーションおよび前記制御ブロック木構造に基づいて、前記制御ブロックごとに、当該制御ブロックがとり得る前の状態を表すイン状態リストと、当該制御ブロックがとり得る後の状態を表すアウト状態リストと、を生成し、前記制御ブロック木構造内の各制御ブロックに、対応する前記イン状態リストおよび前記アウト状態リストを付加して、イン/アウト状態付制御ブロック木構造を作成する状態解析手段と、
前記状態宣言アノテーションを有する制御ブロックについて、当該制御ブロックの、イン状態リスト、アウト状態リスト、および、条件宣言アノテーションに基づいて、前記遷移リストを作成する遷移解析手段と、を含む、状態遷移図作成装置。 - 状態を変数として用いる処理を規定する複数のコード行と、前記複数のコード行のうち、状態の変化を表す状態変化コード行に付与された、前記変化の後の状態を表す状態宣言アノテーションと、前記複数のコード行のうち、状態に対する制御を表す制御コード行に付与された、前記制御による変化前の状態を表す条件宣言アノテーションと、を有するソースコードから、状態遷移図を作成する状態遷移図作成装置が行う状態遷移図作成方法であって、
前記ソースコードを解析して前記コード行の間の対応関係を特定し、前記対応関係と、前記状態宣言アノテーションと、前記条件宣言アノテーションと、に基づいて、遷移前の状態と遷移後の状態とを対応させた遷移リストを作成するリスト作成ステップと、
前記遷移リストに基づいて、前記状態遷移図を作成する状態遷移図作成ステップと、を含む状態遷移図作成方法。 - 請求項3に記載の状態遷移図作成方法において、
前記リスト作成ステップは、
前記ソースコードを解析して、前記ソースコードにおけるコード行の入れ子構造および前記制御コード行を特定し、前記入れ子構造および前記制御コード行に基づいて、前記ソースコードから、複数の制御ブロックと、前記制御ブロックに入るための条件と、を抽出し、前記入れ子構造に基づいて、前記制御ブロックに関する制御ブロック木構造を特定し、前記条件を、前記制御ブロック木構造内の当該条件に対応する制御ブロックに付加する制御構造解析ステップと、
前記状態宣言アノテーション、前記条件宣言アノテーションおよび前記制御ブロック木構造に基づいて、前記制御ブロックごとに、当該制御ブロックがとり得る前の状態を表すイン状態リストと、当該制御ブロックがとり得る後の状態を表すアウト状態リストと、を生成し、前記制御ブロック木構造内の各制御ブロックに、対応する前記イン状態リストおよび前記アウト状態リストを付加して、イン/アウト状態付制御ブロック木構造を作成する状態解析ステップと、
前記状態宣言アノテーションを有する制御ブロックについて、当該制御ブロックの、イン状態リスト、アウト状態リスト、および、条件宣言アノテーションに基づいて、前記遷移リストを作成する遷移解析ステップと、を含む、状態遷移図作成方法。
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 true JP2008198103A (ja) | 2008-08-28 |
| JP4835859B2 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) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012226398A (ja) * | 2011-04-14 | 2012-11-15 | Fuji Electric Co Ltd | モデル図作成装置、モデル図作成方法、モデル図作成プログラムおよびモデル図作成用の状態イベント表のデータ構造 |
| JP2013171458A (ja) * | 2012-02-21 | 2013-09-02 | Fuji Electric Co Ltd | モデル図作成装置、モデル図作成方法、モデル図作成プログラムおよびモデル図作成用の状態イベント表のデータ構造 |
| WO2013190644A1 (ja) * | 2012-06-20 | 2013-12-27 | 株式会社 日立製作所 | 制御ソフトウェアの設計支援装置 |
| JP2015210735A (ja) * | 2014-04-28 | 2015-11-24 | 東芝ソリューション株式会社 | 仕様抽出装置、仕様抽出方法およびプログラム |
| CN110209389A (zh) * | 2019-06-05 | 2019-09-06 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发系统 |
Citations (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
Patent Citations (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 | 状態遷移図作成装置、状態遷移図作成方法、記憶媒体 |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012226398A (ja) * | 2011-04-14 | 2012-11-15 | Fuji Electric Co Ltd | モデル図作成装置、モデル図作成方法、モデル図作成プログラムおよびモデル図作成用の状態イベント表のデータ構造 |
| JP2013171458A (ja) * | 2012-02-21 | 2013-09-02 | Fuji Electric Co Ltd | モデル図作成装置、モデル図作成方法、モデル図作成プログラムおよびモデル図作成用の状態イベント表のデータ構造 |
| WO2013190644A1 (ja) * | 2012-06-20 | 2013-12-27 | 株式会社 日立製作所 | 制御ソフトウェアの設計支援装置 |
| JPWO2013190644A1 (ja) * | 2012-06-20 | 2016-02-08 | 株式会社日立製作所 | 制御ソフトウェアの設計支援装置 |
| JP2015210735A (ja) * | 2014-04-28 | 2015-11-24 | 東芝ソリューション株式会社 | 仕様抽出装置、仕様抽出方法およびプログラム |
| CN110209389A (zh) * | 2019-06-05 | 2019-09-06 | 卡斯柯信号(成都)有限公司 | 一种基于xml的数据生成工具开发系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP4835859B2 (ja) | 2011-12-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20070266378A1 (en) | Source code generation method, apparatus, and program | |
| US8630824B1 (en) | Comprehending waveforms of a circuit design | |
| EP2530583A1 (en) | Computer-implemented method, system and computer program product for displaying a user interface component | |
| US9747079B2 (en) | Method and system of software specification modeling | |
| WO2005106649A2 (en) | An analytical software design system | |
| CN106919612A (zh) | 一种上线结构化查询语言脚本的处理方法及装置 | |
| JP4835859B2 (ja) | 状態遷移図作成装置および状態遷移図作成方法 | |
| Wille et al. | Custom-tailored variability mining for block-based languages | |
| CN109062819B (zh) | 一种软件测试用例的生成方法及装置 | |
| CN105426305B (zh) | 一种控件属性解析系统及方法 | |
| CN119026554A (zh) | 电子元件三维模型创建方法、装置、设备及存储介质 | |
| CN120085869A (zh) | Plc领域下可扩展结构化文本生成方法、装置、设备及介质 | |
| CN109032941A (zh) | 测试用例驱动的可持续集成接口自动化测试方法及系统 | |
| Rahman et al. | A DSL for importing models in a requirements management system | |
| US20160062738A1 (en) | Methods and Apparatuses for Interactive Computer Programming | |
| Kosower et al. | Flowgen: Flowchart-based documentation framework for c++ | |
| CN118939262A (zh) | 一种用户界面组件跨平台转换方法、装置、终端及介质 | |
| CN103443766B (zh) | 程序的影响范围设定装置,和利用该装置的影响范围的特定方法及受影响程序的提取方法 | |
| Di Rocco et al. | Bridging state-based differencing and co-evolution | |
| CN110554860A (zh) | 一种软件项目自然语言编程接口nli的构造方法及代码生成方法 | |
| CN118012387A (zh) | 大数据分析算法库的构建系统及构建方法 | |
| Anjorin et al. | A framework for bidirectional model-to-platform transformations | |
| Alsarraj et al. | Designing and implementing a tool to transform source code to UML diagrams | |
| Bouaziz et al. | SysML model-driven approach to verify blocks compatibility | |
| 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 | Request for written amendment filed |
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 |