JP2007011463A - プログラム設計装置 - Google Patents

プログラム設計装置 Download PDF

Info

Publication number
JP2007011463A
JP2007011463A JP2005188173A JP2005188173A JP2007011463A JP 2007011463 A JP2007011463 A JP 2007011463A JP 2005188173 A JP2005188173 A JP 2005188173A JP 2005188173 A JP2005188173 A JP 2005188173A JP 2007011463 A JP2007011463 A JP 2007011463A
Authority
JP
Japan
Prior art keywords
state transition
data
common part
common
flag
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
JP2005188173A
Other languages
English (en)
Inventor
Yasuhiro Nishikawa
泰浩 西川
Hiroyoshi Konaka
裕喜 小中
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 JP2005188173A priority Critical patent/JP2007011463A/ja
Publication of JP2007011463A publication Critical patent/JP2007011463A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】 状態遷移図に頻出する状態遷移を共通部データとしてユーザが編集しやすいようにしたプログラム設計装置を得る。
【解決手段】 状態遷移図を合成及び分解する合成分解装置2は、合成部21と、分解部22と、合成部21の合成の可否を出力するフラグ部23とを有し、分解部22により、状態遷移図を、頻出する共通要素である共通部データと、状態遷移図から共通部データが分離された状態遷移データと、共通部データが適用される状態遷移データの位置を示す共通部データ適用位置情報とに分解すると共に、合成部21により、これらの状態遷移データ及び共通部データ及び共通部データ適用位置情報から状態遷移図を合成し、これを状態遷移表示編集装置1で編集するようにした。
【選択図】図1

Description

この発明は、状態遷移図を用いてプログラムを設計するプログラム設計装置に関するものである。
状態遷移図の記法としては、UML(Unified Modeling Language:統一モデリング言語)の定義がある(非特許文献1)。
そして、入力データの再利用によって開発効率の向上を図る手段として、状態遷移図の中で頻繁に使われる状態遷移をデータベースに保存しておき、それを呼び出して状態遷移図に貼り込むという技術がある。(例えば特許文献1)
また、UMLの記法では、サブマシンという状態遷移への参照を入れ子にして別レイヤーとして記述することで、頻繁に使われる状態遷移の定義を一カ所に纏め、入力したデータの再利用を促している。
UMLリファレンスマニュアル(ISBN4−89471−267−9)、ジェームスランボー他、pp61−72 特開平7−219754号公報(第3〜8頁、図6)
非特許文献1のように、UMLで定義されている図の形式である状態遷移図を書く際には、同じような状態遷移が何度も図中に現れ、同じ物を何度も書かなければならないことがある。このように、同じ物を何度も書く手間の問題があり、また、図を必要以上に複雑にして可読性を欠いたり、意図する図が2次元上の図面上で簡潔に表現できないという問題があり、修正時に図中の複数部分に同じ修正を加えなければならない。
状態遷移図に含まれる要素が多くなると図が複雑になることから、編集対象を選択して編集操作を行うこと自体が煩雑になるという問題がある。
また、機能の削減や特定機能の試験用データの生成のため、状態遷移図中の一部の記述を省いて状態遷移図を処理したいことがあるが、そのような場合には手作業が必要となっていた。
特許文献1のものでは、データベースに保存した状態遷移を、呼び出して貼り込む動作を行わなければならず、貼り込む場所が多くなれば、煩雑になるという問題があった。
この発明は、上述のような課題を解決するためになされたものであり、状態遷移図に頻出する状態遷移を共通部データとしてユーザが編集しやすいようにしたプログラム設計装置を得ることを目的にしている。
この発明に係わるプログラム設計装置においては、状態遷移図を表示し、編集する状態遷移表示編集装置、この状態遷移表示編集装置により編集された状態遷移図から、状態遷移図に頻出する共通要素である共通部データと状態遷移図から共通部データが分離された状態遷移データと共通部データが適用される状態遷移データの位置を示す共通部データ適用位置情報とに分解する分解部、共通部データを格納する共通部データ格納装置、状態遷移データを格納する状態遷移データ格納装置、共通部データ適用位置情報を格納する共通部データ適用位置格納装置、共通部データの状態遷移データへの合成の可否を設定したフラグを有するフラグ部、及びこのフラグ部の出力に応じて、共通部データ適用位置格納装置に格納された共通部データ適用位置情報に基き、共通部データ格納装置に格納された共通部データを状態遷移データ格納装置に格納された状態遷移データに合成して状態遷移図を作成する合成部を備え、合成部により作成された状態遷移図が状態遷移表示編集装置での編集に供せられるものである。
この発明は、以上説明したように、状態遷移図を表示し、編集する状態遷移表示編集装置、この状態遷移表示編集装置により編集された状態遷移図から、状態遷移図に頻出する共通要素である共通部データと状態遷移図から共通部データが分離された状態遷移データと共通部データが適用される状態遷移データの位置を示す共通部データ適用位置情報とに分解する分解部、共通部データを格納する共通部データ格納装置、状態遷移データを格納する状態遷移データ格納装置、共通部データ適用位置情報を格納する共通部データ適用位置格納装置、共通部データの状態遷移データへの合成の可否を設定したフラグを有するフラグ部、及びこのフラグ部の出力に応じて、共通部データ適用位置格納装置に格納された共通部データ適用位置情報に基き、共通部データ格納装置に格納された共通部データを状態遷移データ格納装置に格納された状態遷移データに合成して状態遷移図を作成する合成部を備え、合成部により作成された状態遷移図が状態遷移表示編集装置での編集に供せられるので、状態遷移図に頻出する共通部データをフラグ部の出力に応じて合成するようにし、ユーザが状態遷移図の編集を容易に行うことができる。
実施の形態1.
本発明の実施の形態について図を用いて説明する。
図1は、この発明の実施の形態1によるプログラム設計装置の構成を示すブロック図である。
図1において、状態遷移表示編集装置1は、状態遷移図を表示し、これをユーザが編集する。合成分解装置2は、状態遷移図を状態遷移データと共通部データと共通部データ適用位置情報とに分解し、またこれらのデータ及び情報を元にして状態遷移図を合成する。状態遷移データ格納装置3は、ユーザが編集・閲覧する状態遷移図を表すデータの内、共通部データを分離した状態遷移データを格納している。共通部データ格納装置4は、頻出する状態遷移データを共通部データとし、この共通部データを格納している。共通部データ適用位置格納装置5は、共通部データを状態遷移データのどの位置に適用するかの適用位置を示す共通部データ適用位置情報を格納している。状態遷移図出力装置6は、状態遷移図の電子データを出力する。
共通部表示切替機構7(共通部表示切替手段)は、合成分解装置2から状態遷移表示編集装置1への出力時に、共通部データの合成の可否を切替える。共通部利用切替機構8(共通部利用切替手段)は、合成分解装置2から状態遷移図出力装置6への出力時に、共通部データの合成の可否を切替える。共通部編集切替機構9(共通部編集切替手段)は、状態遷移表示編集装置1における共通部データの編集可否を切替える。
合成分解装置2は、状態遷移データと共通部データと共通部データ適用位置情報とを元にして状態遷移図を合成する合成部21と、状態遷移図を、状態遷移データと共通部データと共通部データ適用位置情報とに分解する分解部22と、共通部表示切替機構7及び共通部利用切替機構8並びに共通部編集切替機構9によって設定され、それぞれ共通部データ表示切替及び共通部データ利用切替並びに共通部データ編集切替の各フラグ(第一のフラグ、第二のフラグ、第三のフラグ)を管理するフラグ部23とにより構成されている。
なお、共通部表示切替機構7、共通部利用切替機構8、共通部編集切替機構9は、状態遷移表示編集装置1の画面に、表示・出力・編集のいずれか、もしくはすべてのON/OFFを切り替えるためのスイッチを付加してユーザに表示することにより、構成されてもよい。
図2は、この発明の実施の形態1によるプログラム設計装置でも用いられる共通的な並行状態の一例を示す状態遷移図である。
図2において、四角はステートを示し、ステートを結ぶ線を遷移とする。図的に離れているステートに、共通的な並行コンポジット状態201aと201bがあることを示している。
図3は、この発明の実施の形態1によるプログラム設計装置で用いられる共通的なイベントとアクションの一例を示す状態遷移図である。
図3において、多数のステートの並行コンポジット301a、301bは、ステート内に共通的に持っているイベントとアクションの組を示している。
図4は、この発明の実施の形態1によるプログラム設計装置で用いられる可変部分を持つ共通的なイベントとアクションの一例及び共通部を示す状態遷移図である。
図4において、ステートの並行コンポジット401a、401bは、共通部データ402として表され、可変部分を{}で括って表現されている。
図5は、この発明の実施の形態1によるプログラム設計装置の合成装置の動作を示すフローチャートである。。
図6は、この発明の実施の形態1によるプログラム設計装置の編集操作が加えられた時の分解装置の動作を示すフローチャートである。
図7は、この発明の実施の形態1によるプログラム設計装置の状態遷移データ格納装置に格納されている状態遷移図の例を示す図である。
図7において、ステートS1〜S5と遷移が示されている。
図8は、この発明の実施の形態1によるプログラム設計装置の共通部データ格納装置に格納されている共通部データの例を示す図である。
図8において、共通部データとして、SA(並行状態)、SB(並行状態)、EV(イベント/アクション)が示されている。
図9は、この発明の実施の形態1によるプログラム設計装置の共通部データ適用位置格納装置に格納されている共通部データ適用位置データの例を示す図である。
図9において、ID毎に、共通部データと適用先と可変部分設定が示されている。
図10は、図7、図8、図9のデータを元に合成装置が合成した結果の状態遷移図である。
図10において、SA、SB、EVの合成結果が示されている。
図11は、図7、図8、図9のデータを元に合成装置が共通部データの一部を合成しなかった結果の状態遷移図である。
図11において、SAは合成されず、SB、EVのみの合成結果が示されている。
図12は、図7、図8、図9のデータを元に合成装置が共通部データの一部を合成せずに状態遷移表示編集装置上でマークを付けて表示する場合の状態遷移図である。
図12において、フラグがOFFになっている場合に、適用位置であったステートに三角の旗、四角の旗のマークを付けている。
図13は、この発明の実施の形態1によるプログラム設計装置の編集時に要素の選択が困難な場合の例を示す図である。
図13は、ステート間を結ぶ遷移が複雑になっている。
図14は、この発明の実施の形態1によるプログラム設計装置の編集操作により状態遷移データに追加が行われた結果を示す図である。
図14では、ステートS6が追加されている。
図15は、この発明の実施の形態1によるプログラム設計装置の編集操作により共通部データに編集が行われた結果を示す図である。
図15では、ステートb3から終了までの遷移に[p<10]というガード条件が設定されている。
図16は、この発明の実施の形態1によるプログラム設計装置の編集操作により共通部データに追加が行われた結果を示す図である。
図16では、共通部データにステートb4が追加されている。
次に、動作について説明する。
状態遷移データ格納装置3は、ユーザが編集・閲覧する状態遷移図の内、共通部データを分離したデータである状態遷移データを保持している。保持しているのは、状態を表すステートの一覧と、どのようなイベントを受けてどのように遷移するかを示すデータと、どのようなイベントを受けて各ステートがどのようなアクションを起こすかを示すデータと、各遷移が遷移時に起こすアクションおよび遷移をブロックするガード条件である。
また、それぞれの要素にはラベルが付けられており、名前付けされている。また、状態遷移表示編集装置1が各要素をどのように表示するかを示す表示位置などのデータも持つ。
一つの状態遷移図中に共通的に利用されている状態遷移のパターンやステートの属性、アクションなどは、共通部データとして、共通部データ格納装置4が保持している。これは、図2のステート201aとステート201bのように図的に離れているステートに存在する共通的な並行コンポジット状態の定義であったり、図3のように、多数のステートが共通的に持っているイベントとアクションの組である。
ステートに共通部データを合成するために、共通部データは、仮想的な合成対象のステートを持っている。合成後にこれらの共通部データをどのように表示するかを示す表示位置(相対位置)のデータや、複数の共通部データが一カ所に合成される際の表示の優先順位などのデータも持つ。共通部データの中の属性は、可変部分であることを示すタグを含むことができて、この部分は合成部21によって書き換えられる。これは例えば図4のように、可変部分の名前を{}で括って表現するなどの方法が考えられる。
共通部データ適用位置格納装置5は、共通部データ格納装置4が保持している共通部データを、状態遷移データ格納装置3が持つ状態遷移データの、どのステートに適用して状態遷移を合成するかの情報を保持している。この共通部データ適用位置格納装置5が持っているのは、適用される先のステートと適用する共通部データを指し示すデータである。共通部データ中の属性のうち、可変である部分をどのように書き換えるかの情報もこの共通部データ適用位置格納装置5が保持する。
合成分解装置2の合成部21は、共通部データ適用位置格納装置5からどの共通部データが状態遷移データのどのステートに適用するかを取得し、状態遷移データ格納装置3から取得した状態遷移データに、共通部データ格納装置4から取得した共通部データを優先順位に従った順番で合成する。ただし、合成可否はフラグ部23の出力に依存し、共通部表示切替機構7が表示OFFと判断している場合、その判断がフラグ部23を通じて伝達され、その共通部データは状態遷移表示編集装置1には合成されずに出力される。ただし、図の合成はしないが、合成されなかったデータがあることを出力する。
共通部利用切替機構8が利用OFFと判断している場合、同じようにフラグ部23を通じて伝達された判断により、その共通部データは、状態遷移図出力装置6には合成されずに出力される。
共通部編集切替機構9の出力は、フラグ部23を通じて伝達され、状態遷移表示編集装置1に伝達することにより、該当共通部データが編集可能かどうかを状態遷移表示編集装置1が判断できるようにする。
なお、フラグ部23は、各切替機構7〜9の設定に演算を加えて、合成のON/OFFを切り替えることもできる。例えば、切替ON状態を論理のTRUEとした上で、共通部表示切替機構7の設定したフラグを、共通部表示切替機構7の出力と共通部利用切替機構8の出力の論理和とするなどである。この論理和を取る例では、共通部利用切替機構8がTRUEを出力する共通部データは、すべて表示されることになる。
共通部表示切替機構7と共通部利用切替機構8の違いは、その出力がどの装置、すなわち状態遷移表示編集装置1か状態遷移図出力装置6かのどちらに利用されるかである。
この合成分解装置2により合成されたデータが、状態遷移表示編集装置1または状態遷移図出力装置6に引き渡され、そのデータが閲覧・編集および出力の対象となる。状態遷移表示編集装置1上では、合成された状態遷移図のデータの各要素には、新たにタグが付加され、状態遷移データ格納装置3より取得されたデータそのままであるか、共通部データの合成によって改変されたものであるか、共通部データの合成によって追加されたものであるかが区別できるようにする。
合成によるデータのタグの場合、どの共通部データ適用位置格納装置5内のデータによって合成されたかを示すデータも付加する。この他、共通部データ中の属性の可変部分に共通部データ適用位置格納装置5のデータを適用させる動作も行う。また、合成された共通部データには、各切替機構7〜9がその共通部データをどのように判断したかのデータが付加されるようにする。
合成部の動作について示した図が図5である。
図5において、共通部データ適用位置格納装置5に未処理の共通部データの適用位置情報がなければ終了し、あれば(ステップ51)、未処理の共通部データ適用位置情報を一つ取り出す(ステップ52)。次いで、未合成の適用位置がなければステップ51に行き、あれば(ステップ53)、共通部表示切替機構7または共通部利用切替機構8のフラグがONかOFFかを判断し(ステップ54)、OFFであれば、ステップ51に行き、ONであれば、適用位置を一つ取り出し、状態遷移データから検索する(ステップ55)。次いで、共通部データを検索で得られた場所に合成して(ステップ56)、ステップ53に行く。
合成分解装置2の分解部22は、状態遷移表示編集装置1でユーザにより状態遷移図が編集された時、その編集された部分が状態遷移データ格納装置3からのデータがそのままであった場合、対応する状態遷移データ格納装置3内部のデータを更新する。
編集された部分が共通部データの合成によって追加された部分であれば、対応する共通部データ格納装置4内部のデータを更新する。
編集された部分が合成によって改変されたものである場合、それはすなわち、編集された部分がその内部に、合成によって追加された要素を持つと言うことである。そこで、内部要素を走査し、それぞれについて状態遷移データ格納装置3を更新するか、共通部データを更新するかを判断し、データを更新する。共通部データの可変部分以外では、合成部21は、状態遷移データの追加しか行わないため、合成されたデータを細分化すると、必ず状態遷移データ格納装置3または共通部データ格納装置4のどちらかを起源にするとの判断が可能である。
共通部データの可変部分が変更されていた場合は、対応する共通部データ適用位置格納装置5の該当データを更新する。
合成分解装置2の分解部22に対して、状態遷移表示編集装置1から共通部分の合成の削除が伝達された場合、分解部22は、共通部データ適用位置格納装置5から該当データを消去する。
分解部22に対して状態遷移表示編集装置1から共通部分の合成位置の追加が行われた場合、分解部22は、共通部データ適用位置格納装置5に対して新しいデータを追加する。追加後、適用するべき共通部データの指定と共通部データの可変部分の内容を、状態遷移表示編集装置1から受け取り、データを完成させる。
分解部22に対して、状態遷移表示編集装置1から、ステートや遷移などの要素の追加が行われる場合は、それが状態遷移データに属するデータであるのか、または、どの共通部データに属するデータであるのかを状態遷移表示編集装置1から取得して対応する格納装置3〜5を峻別し、処理を行う。
分解部22の動作について示した図が図6である。
図6では、状態遷移表示編集装置1上で、要素が編集されたことに応じて開始される。まず、共通部データ適用位置の追加削除処理かどうかを判断し、そうであれば(ステップ61)、共通部データの追加削除処理を行い(ステップ62)、終了する。ステップ61で、共通部データ適用位置の追加削除処理でなければ、共通部データ適用位置の可変要素の値の変更かどうかを判断し(ステップ63)、そうであれば、可変要素の更新処理を行い(ステップ64)、終了する。
ステップ63で、共通部データ適用位置の可変要素の値の変更でなければ、要素のタグが状態遷移データ格納装置3のものになっているかどうかを判断し(ステップ65)、そうであれば、状態遷移データ化右脳装置3のデータを更新して(ステップ66)、終了する。ステップ65で、そうでなければ、共通部データ格納装置4の該当データを更新して(ステップ67)、終了する。
状態遷移表示編集装置1は、合成分解装置2の合成部21によって合成された状態遷移図のデータをユーザに提示すると共に、ユーザの編集操作を合成分解装置2の分解部22に伝達する。
状態遷移表示編集装置1は、ユーザからの操作を受けて、ステートや遷移などの追加・削除・アクションやラベルの変更、共通部データを合成する箇所の追加、共通部データを合成する位置の削除、共通部データの新規作成、共通部データの削除、そして共通部データの可変箇所の設定変更が行える。
ステートや遷移などの追加・削除・変更に関しては、合成部21から取得した状態遷移図のデータから、該当部位が状態遷移データ格納装置3のデータによるものか、共通部データ格納装置4のデータによるものかが判断できるので、編集結果を分解部22に伝える際には、編集された要素がどこのデータによるものかを区別して伝えることができる。ただし、該当する要素が合成分解装置2のフラグ部23によって編集OFFとされている場合は、編集を行えないため、要素を選択できないようにする。このように編集不能な要素を選択できくすることで、編集すべき他の要素の選択が容易になる。
状態遷移表示編集装置1がどのようにユーザに状態遷移図を表示するかについては、一般の計算機と同様に、CRTや液晶モニタに表示、またはプリンタによって印刷を行うなどの方法による。また、ユーザからの入力手段は、マウスやキーボードが考えられる。
合成された状態遷移図を表示する際には、ステートや遷移に対して表示位置を決定しなければならないが、状態遷移データ格納装置3に格納されるデータに関しては、表示位置のデータは、ユーザがステートや遷移を作成する際に指定した位置を利用する。
または、共通部データが付加された場合には、状態遷移表示編集装置1が自動で適切に移動することもあり得る。状態遷移表示編集装置1が自動で移動を行う場合、その方法としては、ある一定の距離以内に配置されたステート同士に斥力を持たせて、安定するまで各ステートを移動させる方法などがある。遷移については、入と出のステート間の距離に比例させて形状を大小させる方法などがある。
状態遷移表示編集装置1がステートや遷移などの追加・削除・アクションやラベルの変更などを行う場合の手段については、一般の状態遷移図エディタの流儀に従うことができる。
例えば、CRT上に表示された状態遷移図の要素をマウスで選択し、そのまま削除操作を行うことや、ダブルクリックして要素の編集モードに移行し、ダイアログを出して要素のもつパラメータを編集できるようにするなどの手段がある。ここで要素の選択を行えるのは、共通部編集切替機構9および合成分解装置2によって編集ONとされた要素のみである。
追加処理の場合には、それが状態遷移データ格納装置3に格納されるべきデータであるか、共通部データとして扱われるべきデータであるかの区別が必要である。そのため、共通部データとして扱われるべきデータである場合、状態遷移表示編集装置1上にある共通部データをあらかじめ新規データの所属対象として指定しておき、状態遷移表示編集装置1は、新たに作られるデータをその共通部データの一部として処理するようにするなどの細工を必要とする。
状態遷移図出力装置6は、合成分解装置2によって合成された状態遷移図のデータを電子データとして出力する。これは出力データへの編集操作を想定としないため、表示・編集に関するフラグや合成したかどうかの情報などは不要であり、状態遷移図の状態および遷移に関する基本的な情報のみの出力を行う。また、出力のみの想定であるため、状態遷移表示編集装置1とのデータ・作業の同期を考慮する必要もない。
図1のプログラム設計装置がどのように動作し、操作されるかを以下に具体例を挙げて説明する。
例えば、図7のようなデータを格納した状態遷移データ格納装置3と、図8のようなデータを格納した共通部データ格納装置4と、図9のようなデータを格納した共通部データ適用位置格納装置5があった場合を考える。
まずは、各切替機構7〜9は、対応するフラグ部23のフラグをONにしているものとする。
このとき、合成分解装置2の合成部21は、まず図9の共通部データ適用位置格納装置5内のデータのIDが1のデータを読み出す。このデータの共通部データSAは、並行状態の定義となっている。そして状態遷移データ格納装置3から図7で示されるデータを読み込み、これを全体データとして保持する。
図9の共通部データ適用位置の適用先が、図7のステートS2とステートS3であることから、全体データからステートS2とステートS3を検索し、共通部データとして指定されているSAを、ステートS2とステートS3に並行コンポジット状態として合成する。
また、この時、SAは可変要素{g}を持っている。図9の共通部データ適用位置のデータ上で、この値はg=4として指定されているため、可変要素を含むSA上の遷移のガード条件[gv<{g}]は、全体データ上で[gv<4]として合成される。
この合成の結果が図10のステートS2とステートS3を包含した並行状態として表されている。
次に、図9のIDが2のデータを読み出し、IDが1のものと同様に処理し、これが図10のステートS3、ステートS5の並行状態である。また、図9のIDが3のデータも同様に処理する。
次に、図9のIDが4のデータを合成する。これは一つのステートにおけるイベントとそれに対するアクションの定義を共通部としている。このデータの適用位置は、図7のステートS2とステートS4であるので、全体データ上のステートS2とステートS4に対して、共通なイベント・アクションの定義を合成する。
この結果が、図10のステートS2とステートS4を示す四角内に表記されたイベントと対応するアクションの記述となる。
図9で示される共通部データ適用位置をすべて処理した結果が図10である。
次に、共通部表示切替機構7及び共通部利用切替機構8が、共通部データ適用位置格納装置5のIDが1または3のデータをOFFに切り替えたとする。すると、合成部21は、それらの共通部データを合成しなくなり、図11のような状態遷移図を出力することになる。図11では、IDが1、3のデータは、処理されていない。
合成しないよう指示された共通部データ適用位置格納装置5のデータに関しては、その適用位置であるステートにマークを付けることで表示を簡略化することができる。図12は、ID=1の共通部データ適用位置に三角の旗、ID=3の適用位置に四角の旗を立てて表現した例である。
このようなマークをクリックするなどして、各切替機構7〜9の該当共通部データに関する出力を反転させることが可能である。
次に、状態遷移表示編集装置1を用いてデータに編集操作を加える場合を説明する。
編集操作を行う際には、新規作成以外は、図中のどの要素に編集を加えるかを指示する必要がある。これは例えばマウスによって、表示された要素の周辺をクリックしてそこから最寄りの要素を編集用に選択するなどの方法が考えられる。
しかし、状態遷移図中には共通部データなども含めて多数の要素が表示されており、その中から希望する要素を一つ選択するという操作に困難を生じることがある。例としては、図13のステートS2とステートS13を結ぶ遷移を選択したい時などが上げられる。マウスポインタをぴったりその要素に合わせないと別の要素を選択してしまい、編集作業の効率が下がってしまう。
このような時には、共通部編集切替機構9を使い、作業と関係のない共通部データの編集をOFFにする。そのようにすることで、状態遷移表示編集装置1は、それらの要素を選択不能とし、希望する要素の選択が容易になる。
このように、表示したいものと編集したいものとを別個に切り替えることにより、図の可読性を維持したまま、編集性の向上を得ることができる。
次に、ユーザによって編集操作が行われた後の処理を説明する。図12を表示している状態遷移表示編集装置1において、新たにS6というステートを作成し、ステートS3からステートS6、ステートS6からステートS2の遷移を作成して、図14のようにしたとする。
この場合、ステートS6も各遷移も共通部データであることを指示せずにそのまま作成することで、先述の通り自動的に状態遷移データ格納装置3のデータであることを示すタグが振られ、この追加データが分解部22によって状態遷移データ格納装置3の新規データとして追加される。
ステートS1〜ステートS5や、それらの間の遷移の編集・削除の場合も、追加の場合と同様に、編集内容が状態遷移データ格納装置3に関するものと判断されて、状態遷移データ格納装置3のデータが更新される。
図14を表示している状態遷移表示編集装置1において、合成された結果であるステートS3とステートS5に合成された並行状態のb3から終了に向かう遷移に[p<10]というガード条件を作成して、図15のようにした場合、この遷移は合成によって作成された結果であるので、合成部21によってIDが2の共通部データ適用位置を示すタグが割り当てられている。そこで分解部22は、この遷移の変更が共通部データ格納装置4のSAに関する変更であると判断して、共通部データ格納装置4のデータを編集する。共通部データ格納装置4が更新されると、この共通部データが利用されている他の合成箇所も同時に更新される。
図16のように、合成された部分に新しいステートb4と遷移を作成する場合は、それが共通部分として追加されるのかどうかと言ったユーザの意図をあらかじめ状態遷移表示編集装置1に伝えておくために、特定の操作を行う。
この特定の操作は、ステートb4などの追加合成されたところを指示した後、メニューから「この共通部データに追加」を選ぶといった手段がある。そのような操作の後に追加された要素には、共通部データ適用位置に関するタグが付加され、これを用いて分解部22によって共通部データ格納装置4にデータが追加される。
共通部データ適用位置の追加と削除は、適用位置であるステートをユーザが選択してから、どの共通部データを追加・削除するかをユーザに選択させる。この編集操作に従って、分解部22が共通部データ適用位置格納装置5のデータを更新する。
編集操作が状態遷移データ格納装置3に関するものか、共通部データに関するものかが不明な場合には、状態遷移表示編集装置1がユーザに問い合わせる。
このようにして編集された状態遷移図のデータは、電子データとして別のシステムで流用されることがある。それは試験のため、プログラムの自動生成のためなどであるが、一般的にはそのような場合は、すべての要素を合成した形で出力された状態遷移図を利用する。しかし、実際には試験用途や機能削減版の生成といった、一部だけを合成して出力したい場合も多く、そのような場合には共通部利用切替機構8を利用して合成のON/OFFを行い、編集操作とは関係ない状態で、状態遷移図出力装置6から出力することができる。
なお、上記の実施の形態1の説明では、ステートを合成の適用位置としているが、遷移を合成の適用位置として持ち、共通のガード条件を共通部データとして持たせることも可能である。
実施の形態1によれば、状態遷移図のデータから共通要素を分離し、合成可否のフラグを有するフラグ部の出力に応じて、共通部データを状態遷移データに合成するようにし、ユーザの共通部データの編集を容易にした。
また、状態遷移図出力装置への電子データの出力に際して、合成の可否を切替えることによって試験用や機能限定版などのための特定機能のみを抽出した状態遷移図を出力できるという効果がある。
この発明の実施の形態1によるプログラム設計装置の構成を示すブロック図である。 この発明の実施の形態1によるプログラム設計装置でも用いられる共通的な並行状態の一例を示す状態遷移図である。 この発明の実施の形態1によるプログラム設計装置で用いられる共通的なイベントとアクションの一例を示す状態遷移図である。 この発明の実施の形態1によるプログラム設計装置で用いられる可変部分を持つ共通的なイベントとアクションの一例及び共通部を示す状態遷移図である。 この発明の実施の形態1によるプログラム設計装置の合成装置の動作を示すフローチャートである。。 この発明の実施の形態1によるプログラム設計装置の編集操作が加えられた時の分解装置の動作を示すフローチャートである。 この発明の実施の形態1によるプログラム設計装置の状態遷移データ格納装置に格納されている状態遷移図の例を示す図である。 この発明の実施の形態1によるプログラム設計装置の共通部データ格納装置に格納されている共通部データの例を示す図である。 この発明の実施の形態1によるプログラム設計装置の共通部データ適用位置格納装置に格納されている共通部データ適用位置データの例を示す図である。 図7、図8、図9のデータを元に合成装置が合成した結果の状態遷移図である。 図7、図8、図9のデータを元に合成装置が共通部データの一部を合成しなかった結果の状態遷移図である。 図7、図8、図9のデータを元に合成装置が共通部データの一部を合成せずに状態遷移表示編集装置上でマークを付けて表示する場合の状態遷移図である。 この発明の実施の形態1によるプログラム設計装置の編集時に要素の選択が困難な場合の例を示す図である。 この発明の実施の形態1によるプログラム設計装置の編集操作により状態遷移データに追加が行われた結果を示す図である。 この発明の実施の形態1によるプログラム設計装置の編集操作により共通部データに編集が行われた結果を示す図である。 この発明の実施の形態1によるプログラム設計装置の編集操作により共通部データに追加が行われた結果を示す図である。
符号の説明
1 状態遷移表示編集装置
2 合成分解装置
3 状態遷移データ格納装置
4 共通部データ格納装置
5 共通部データ適用位置格納装置
6 状態遷移図出力装置
7 共通部表示切替機構
8 共通部利用切替機構
9 共通部編集切替機構
21 合成部
22 分解部
23 フラグ部

Claims (6)

  1. 状態遷移図を表示し、編集する状態遷移表示編集装置、この状態遷移表示編集装置により編集された状態遷移図から、上記状態遷移図に頻出する共通要素である共通部データと上記状態遷移図から上記共通部データが分離された状態遷移データと上記共通部データが適用される上記状態遷移データの位置を示す共通部データ適用位置情報とに分解する分解部、上記共通部データを格納する共通部データ格納装置、上記状態遷移データを格納する状態遷移データ格納装置、上記共通部データ適用位置情報を格納する共通部データ適用位置格納装置、上記共通部データの上記状態遷移データへの合成の可否を設定したフラグを有するフラグ部、及びこのフラグ部の出力に応じて、上記共通部データ適用位置格納装置に格納された上記共通部データ適用位置情報に基き、上記共通部データ格納装置に格納された共通部データを上記状態遷移データ格納装置に格納された状態遷移データに合成して上記状態遷移図を作成する合成部を備え、上記合成部により作成された上記状態遷移図が上記状態遷移表示編集装置での編集に供せられることを特徴とするプログラム設計装置。
  2. 上記フラグ部は、上記状態遷移表示編集装置で編集される状態遷移図に対して、上記共通部データの上記状態遷移データへの合成の可否を設定した第一のフラグを有し、上記合成部は、上記第一のフラグが上記合成可とされているとき、上記共通部データ適用位置情報に基き、上記共通部データを上記状態遷移データに合成して上記状態遷移表示編集装置で編集される状態遷移図を作成すると共に、上記第一のフラグが上記合成不可とされているとき、上記共通部データを上記状態遷移データに合成することなく上記状態遷移図を作成することを特徴とする請求項1記載のプログラム設計装置。
  3. 上記状態遷移図の電子データを出力する状態遷移図出力装置を備え、上記フラグ部は、上記状態遷移図出力装置により出力される上記状態遷移図に対して、上記共通部データの上記状態遷移データへの合成の可否を設定した第二のフラグを有し、上記合成部は、上記第二のフラグが上記合成可とされているとき、上記共通部データ適用位置情報に基き、上記共通部データを上記状態遷移データに合成して上記状態遷移図出力装置により出力される状態遷移図を作成すると共に、上記第二のフラグが上記合成不可とされているとき、上記共通部データを上記状態遷移データに合成することなく上記状態遷移図を作成することを特徴とする請求項2記載のプログラム設計装置。
  4. 上記状態遷移図の電子データを出力する状態遷移図出力装置を備え、上記フラグ部は、上記状態遷移表示編集装置で編集される状態遷移図に対して、上記共通部データの上記状態遷移データへの合成の可否を設定した第一のフラグと、上記状態遷移図出力装置により出力される上記状態遷移図に対して、上記共通部データの上記状態遷移データへの合成の可否を設定した第二のフラグとを有し、上記合成部に対して、上記第一のフラグ及び第二のフラグの論理演算結果を出力すると共に、上記合成部は、上記論理演算結果に応じて、上記共通部データを上記状態遷移データに合成して上記状態遷移図を作成することを特徴とする請求項1記載のプログラム設計装置。
  5. 上記フラグ部の第一のフラグを設定する共通部表示切替手段、及び上記フラグ部の第二のフラグを設定する共通部利用切替手段を備え、上記共通部表示切替手段及び上記共通部利用切替手段は、上記状態遷移表示編集装置の画面上のスイッチとして構成されていることを特徴とする請求項3または請求項4記載のプログラム設計装置。
  6. 上記フラグ部は、上記状態遷移表示編集装置での上記共通部データの編集の可否を設定した第三のフラグを有すると共に、この第三のフラグを設定する共通部編集切替手段を備え、上記状態遷移表示編集装置は、上記第三のフラグに応じて上記共通部データの編集を行うことを特徴とする請求項1〜請求項5のいずれかに記載のプログラム設計装置。
JP2005188173A 2005-06-28 2005-06-28 プログラム設計装置 Pending JP2007011463A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005188173A JP2007011463A (ja) 2005-06-28 2005-06-28 プログラム設計装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005188173A JP2007011463A (ja) 2005-06-28 2005-06-28 プログラム設計装置

Publications (1)

Publication Number Publication Date
JP2007011463A true JP2007011463A (ja) 2007-01-18

Family

ID=37749917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005188173A Pending JP2007011463A (ja) 2005-06-28 2005-06-28 プログラム設計装置

Country Status (1)

Country Link
JP (1) JP2007011463A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5327230B2 (ja) * 2008-12-05 2013-10-30 富士通株式会社 運用管理支援プログラム、該プログラムを記録した記録媒体、運用管理支援装置、および運用管理支援方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5327230B2 (ja) * 2008-12-05 2013-10-30 富士通株式会社 運用管理支援プログラム、該プログラムを記録した記録媒体、運用管理支援装置、および運用管理支援方法
US8751503B2 (en) 2008-12-05 2014-06-10 Fujitsu Limited Computer product, operation and management support apparatus and method

Similar Documents

Publication Publication Date Title
KR101456506B1 (ko) 웹 어플리케이션 저작도구 및 저작 방법
JPH07200278A (ja) 図形を用いたプログラミングシステム
JPH11259459A (ja) 文書管理装置
US20080134066A1 (en) CAD apparatus, method of editing graphic data, and computer product
JPH07219754A (ja) 画面遷移図を用いた要求定義支援装置
JP2020123234A (ja) 情報処理装置、制御方法、およびそのプログラム
JP2008097074A (ja) 付箋表示装置、付箋表示プログラム及び付箋表示方法
JP4937230B2 (ja) 表示制御装置および表示制御プログラム
JP2008242964A (ja) ユーザーインターフェース設計プログラムおよびユーザーインターフェース設計方法
JP2007011463A (ja) プログラム設計装置
JP4476223B2 (ja) 画面データ作成装置、画面データの編集方法及び画面データ編集プログラム
WO2017043664A1 (ja) 情報管理装置並びにファイル管理方法
JP2007287025A (ja) 画面遷移プログラム生成方法及び装置
JP2006092161A (ja) プログラム設計装置
JP2005078119A (ja) ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体
US20080134121A1 (en) CAD apparatus, method of editing graphic data, and compter product
JP3299259B2 (ja) プログラムの構造図編集処理方式
JP5234720B2 (ja) プロセスモデル作成装置、方法及びそのプログラム
JP2001134424A (ja) システムパラメタ作成方法、システムパラメタ作成装置、システムパラメタ作成プログラムを記録したコンピュータ読み取り可能な記録媒体及びシステムパラメタ作成データを格納したコンピュータ読み取り可能な記録媒体
JP2004086426A (ja) ドキュメント管理システム、ドキュメント管理用プログラム及び記録媒体
JP7408999B2 (ja) 情報処理装置およびプログラム
JP2006268314A (ja) 文書処理装置、方法およびプログラム
JP2008059006A (ja) 画像合成装置、プログラム、記録媒体
JP2005242474A (ja) ユーザインタフェース設計装置及びプログラム
JP6194050B1 (ja) データ階層表示装置、データ階層表示プログラムおよびデータ階層表示方法