(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022134087
(43)【公開日】2022-09-14
(54)【発明の名称】情報処理システム、表示装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06F 8/73 20180101AFI20220907BHJP
G06F 3/14 20060101ALI20220907BHJP
G06F 9/44 20180101ALI20220907BHJP
【FI】
G06F8/73
G06F3/14 310D
G06F9/44
【審査請求】有
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021186075
(22)【出願日】2021-11-16
(11)【特許番号】
(45)【特許公報発行日】2022-06-17
(31)【優先権主張番号】P 2021032967
(32)【優先日】2021-03-02
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】521090106
【氏名又は名称】株式会社Team F
(74)【代理人】
【識別番号】100128886
【弁理士】
【氏名又は名称】横田 裕弘
(72)【発明者】
【氏名】福島 忠
【テーマコード(参考)】
5B069
5B376
【Fターム(参考)】
5B069FA04
5B376BB05
(57)【要約】
【課題】組合せの状態爆発が抑制される新規な状態遷移表を提供する。
【解決手段】情報処理システムは、制御対象にて生じるイベント、制御対象の状態であるモード、および制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する表示手段と、を備える。そして、順序が先に記載される一の単位の条件を、一の単位よりも順序が後に記載される他の単位に関連付けることが可能なことを特徴とする。
【選択図】
図20
【特許請求の範囲】
【請求項1】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する表示手段と、
を備え、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けることが可能なことを特徴とする情報処理システム。
【請求項2】
前記表示手段は、複数の前記他の単位のアクションに共通するアクションを前記一の単位に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記表示手段は、前記一の単位のアクションが複数の前記他の単位のアクションに共通することを示す共通表示を前記状態遷移表に表示する、ことを特徴とする請求項2に記載の情報処理システム。
【請求項4】
前記状態遷移表は、前記一の単位のイベントおよびモードの条件を前記他の単位において除外する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項5】
前記表示手段は、前記一の単位の前記イベントおよびモードの条件を前記他の単位において除外することを示す除外表示を前記状態遷移表に表示する、ことを特徴とする請求項4に記載の情報処理システム。
【請求項6】
前記表示手段は、前記一の単位のモードの条件から外れた条件を前記他の単位で用いるための特定記述を前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項7】
前記表示手段は、前記制御対象が処理を実行しないというアクションを前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項8】
前記表示手段は、異なる複数のモードをまとめて抽象化した抽象化モードを前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項9】
前記表示手段は、前記状態遷移表において対象となる単位の指定を受け付けた際に、当該単位に関連する別の単位の条件を示す条件表示を表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項10】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、
イベント、モードおよびアクションの組合せが並べられた単位を優先順位に従って複数並べた状態遷移表を表示する表示手段と、
を備えることを特徴とする情報処理システム。
【請求項11】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの組合せを示す状態遷移表を表示する表示装置であって、
イベント、モードおよびアクションの第1の組合せを横方向に並べた第1単位を表示する第1表示部と、
イベント、モードおよびアクションの第2の組合せを横方向に並べた第2単位を前記第1単位の下側に表示する第2表示部と、
イベント、モードおよびアクションの第3の組合せを横方向に並べた第3単位を前記第2単位の下側に表示する第3表示部と、
イベント、モードおよびアクションの第4の組合せを横方向に並べた第4単位を前記第3単位の下側に表示する第4表示部と、
前記第1単位の前記第1の組合せの条件を前記第2単位に含めることを示す包含情報を表示する包含表示部と、
前記第3単位の前記第3の組合せの条件を前記第4単位において除外することを示す除外情報を表示する除外表示部と、
を備えることを特徴とする表示装置。
【請求項12】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付けるステップと、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示するステップと、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けるステップと、
を備えることを特徴とする情報処理方法。
【請求項13】
コンピュータに、
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける機能と、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する機能と、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付ける機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、新規な状態遷移表を表示する情報処理システム、表示装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
特許文献1には、複数の状態項目と、複数のイベント項目と、それぞれの項目に対応する処理情報定義セルとをもつ状態遷移表の表示方法であって、行項目から列項目または列項目から行項目に移動させる項目を選択する段階と、選択した項目の移動先を選択する段階と、移動先の上層の階層項目の構成に従って、選択した項目の移動後の構成を決定する段階と、選択した項目の構成に従って、移動先の下層の階層項目の構成を決定する段階と、移動させた項目の移動元の上層の階層項目の構成に従って、選択した項目を移動させた後の下層の項目の構成を決定する段階と、決定した項目構成に従って、処理情報セルを配置する段階とによって状態遷移表を作成し、作成された状態遷移表を表示する状態遷移表の表示方法が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、ハードウェアやソフトウェア等の設計を行う際、例えば製品やプログラムなどの制御対象が一のモードである場合に一のイベントが発生した際の制御対象のアクションを把握する必要がある。このような把握には、例えば縦軸および横軸に、モードおよびイベントを配置し、モードとイベントとに対応するセルにアクションを記述する状態遷移表が用いられる場合がある。
【0005】
しかしながら、従来の状態遷移表では、制御対象にて生じるイベントと制御対象がとるモードとの組合せが膨大な数に及ぶ状態爆発が起こる可能性がある。このような組合せの状態爆発が起こると、状態遷移表自体をユーザが取り扱うことが極めて困難となるおそれがある。
本発明は、組合せの状態爆発が抑制される状態遷移表を提供することを目的とする。
【課題を解決するための手段】
【0006】
かかる目的のもと、本明細書に開示される技術は、制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する表示手段と、を備え、前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けることが可能なことを特徴とする情報処理システムである。
ここで、前記表示手段は、複数の前記他の単位のアクションに共通するアクションを前記一の単位に表示するとよい。
また、前記表示手段は、前記一の単位のアクションが複数の前記他の単位のアクションに共通することを示す共通表示を前記状態遷移表に表示するとよい。
また、前記状態遷移表は、前記一の単位のイベントおよびモードの条件を前記他の単位において除外するとよい。
また、前記表示手段は、前記一の単位の前記イベントおよびモードの条件を前記他の単位において除外することを示す除外表示を前記状態遷移表に表示するとよい。
また、前記表示手段は、前記一の単位のモードの条件から外れた条件を前記他の単位で用いるための特定記述を前記状態遷移表に表示するとよい。
また、前記表示手段は、前記制御対象が処理を実行しないというアクションを前記状態遷移表に表示するとよい。
また、前記表示手段は、異なる複数のモードをまとめて抽象化した抽象化モードを前記状態遷移表に表示するとよい。
また、前記表示手段は、前記状態遷移表において対象となる単位の指定を受け付けた際に、当該単位に関連する別の単位の条件を示す条件表示を表示するとよい。
【0007】
かかる目的のもと、本明細書に開示される技術は、制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、イベント、モードおよびアクションの組合せが並べられた単位を優先順位に従って複数並べた状態遷移表を表示する表示手段と、を備えることを特徴とする情報処理システムである。
【0008】
かかる目的のもと、本明細書に開示される技術は、制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの組合せを示す状態遷移表を表示する表示装置であって、イベント、モードおよびアクションの第1の組合せを横方向に並べた第1単位を表示する第1表示部と、イベント、モードおよびアクションの第2の組合せを横方向に並べた第2単位を前記第1単位の下側に表示する第2表示部と、イベント、モードおよびアクションの第3の組合せを横方向に並べた第3単位を前記第2単位の下側に表示する第3表示部と、イベント、モードおよびアクションの第4の組合せを横方向に並べた第4単位を前記第3単位の下側に表示する第4表示部と、前記第1単位の前記第1の組合せの条件を前記第2単位に含めることを示す包含情報を表示する包含表示部と、前記第3単位の前記第3の組合せの条件を前記第4単位において除外することを示す除外情報を表示する除外表示部と、を備えることを特徴とする表示装置である。
【0009】
かかる目的のもと、本明細書に開示される技術は、制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付けるステップと、イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示するステップと、前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けるステップと、を備えることを特徴とする情報処理方法である。
【0010】
かかる目的のもと、本明細書に開示される技術は、コンピュータに、制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける機能と、イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する機能と、前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付ける機能と、を実現させるプログラムである。
【発明の効果】
【0011】
本発明によれば、組合せの状態爆発が抑制される状態遷移表を提供することができる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態の情報処理システムの概略図である。
【
図2】情報処理装置のハードウェア構成例を示した図である。
【
図3】情報処理装置の状態遷移表に関わる機能を実現する機能ブロック図である。
【
図4】本実施形態の状態遷移表の一例を示す図である。
【
図5】本実施形態のイベント定義テーブルの一例を示す図である。
【
図6】本実施形態のモード定義テーブルの一例を示す図である。
【
図7】本実施形態のアクション定義テーブルの一例を示す図である。
【
図8】本実施形態のモード編集画面の説明図である。
【
図9】定義テーブルに対する定義情報の追加を促す画面の一例を示す図である。
【
図10】複合モードの作成を促す画面の一例を示す図である。
【
図11】本実施形態の状態遷移表の具体例の説明図である。
【
図12】動的構造図と静的構造図と状態遷移表との関係を示す図である。
【
図13】本実施形態のプログラムコードの出力の一例を示す図である。
【
図18】第2実施形態のEMA型状態遷移表である。
【
図19】優先順位非対応のEMA型状態遷移表の一例を示す図である。
【
図20】優先順位対応のEMA型状態遷移表の一例を示す図である。
【
図21】EMA型状態遷移表のガイド表示部の説明図である。
【発明を実施するための形態】
【0013】
以下、添付図面を参照して、本発明の実施形態について説明する。
【0014】
<第1実施形態>
【0015】
(情報処理システム1)
図1は、本実施形態の情報処理システム1の概略図である。
【0016】
図1に示すように、情報処理システム1は、EMA(エマ)型状態遷移表100(後述の
図4参照)に関する各種の情報を管理する情報処理装置10と、本システムを利用するユーザが利用する端末装置30と、を有する。そして、情報処理装置10および端末装置30は、ネットワーク90を介して互いに接続されている。
【0017】
本実施形態の情報処理システム1では、情報処理装置10において、制御対象の状態遷移を管理し、端末装置30を介してユーザからEMA型状態遷移表100の編集を受け付けたり、EMA型状態遷移表100をユーザに参照させたりする。
ここで、本実施形態のEMA型状態遷移表100による表現の対象となる制御対象は、ハードウェア、ソフトウェア、ハードウェアとソフトウェアとが協働するシステムとすることができる。制御対象となるソフトウェアとしては、例えば制御プログラムやアプリケーションプログラムなどを例示できる。また、制御対象となるハードウェアとしては、例えば電子回路や住宅などを例示できる。さらに、システムとしては、例えば自動車などを例示できる。また、EMA型状態遷移表100による表現の対象となる制御対象は、一つの製品等の単位に限定されず、その製品等を構成する部品の単位であってもよい。
【0018】
なお、
図1に示す情報処理システム1においては、情報処理装置10が1台設けられ、端末装置30が2台設けられている例を用いるが、情報処理装置10および端末装置30の数は特に限定されない。例えば、情報処理システム1が複数の情報処理装置10を備えている場合、複数の情報処理装置10による分散処理を行っても良い。
【0019】
(情報処理装置10のハードウェア構成)
図2は、情報処理装置10のハードウェア構成例を示した図である。
【0020】
本実施形態における情報処理装置10のハードウェア構成例を示した図である。
図2に示すように、情報処理装置10は、CPU101と、主記憶装置102と、補助記憶装置103と、通信インターフェース(図では「通信I/F」と表記)104と、表示デバイス105と、入力デバイス106とを備える。
【0021】
CPU101は、例えば補助記憶装置103に記憶された各種プログラムを主記憶装置102にロードして実行することにより、情報処理装置10の機能を実現する。
主記憶装置102は、CPU101の作業用メモリ等として用いられるメモリである。
補助記憶装置103は、CPU101が実行する各種プログラム、情報処理装置10で作成または取得したデータ等を記憶するメモリである。補助記憶装置103には、SSD(Solid State Drive)やHDD(Hard Disk Drive)などを用いることができる。
【0022】
通信I/F104は、ネットワーク90を介して他の装置との間で各種情報の送受信を行う。
表示デバイス105は、情報処理装置10内部から出力された各種情報を表示するデバイスである。ここで、表示デバイスとしては、例えば、液晶ディスプレイを用いることができる。
入力デバイス106は、ユーザが入力した情報を受け取り、これを情報処理装置10内部へ入力するデバイスである。
【0023】
なお、
図2に示したハードウェア構成は、端末装置30のハードウェア構成としても同様である。
【0024】
ここで、CPU101によって実行されるプログラムは、半導体メモリなどのコンピュータが読取可能な記録媒体に記憶した状態で、情報処理装置10へ提供することができる。また、CPU101によって実行されるプログラムは、情報処理装置10や端末装置30などにダウンロードしてもよい。例えば、情報処理装置10の上記各機能を実現するプログラムを、アプリケーションとして情報処理装置10にダウンロードしてもよい。
【0025】
図3は、情報処理装置10の状態遷移表に関わる機能を実現する機能ブロック図である。
情報処理装置10は、EMA型状態遷移表100を管理する管理部11と、EMA型状態遷移表100の編集を受け付ける受付部13と、EMA型状態遷移表100や動的構造図や静的構造図(後述の
図12参照)を視覚的にユーザに示すために表示する表示部15と、EMA型状態遷移表100に基づくプログラムコード等を出力する出力部17と、を有する。
なお、情報処理装置10の各構成部は、上述したハードウェアによって実現される。
【0026】
(管理部11)
管理部11は、制御対象にて生じるイベント、制御対象がとり得るモード、および制御対象が実行するアクションの関係を表現するEMA型状態遷移表100を管理する。また、管理部11(例えば、記憶手段の一例)は、イベントを定義するイベント定義テーブル200(例えば、イベント定義情報の一例)、モードを定義するモード定義テーブル300(例えば、モード定義情報の一例)、およびアクションを定義するアクション定義テーブル400(例えば、アクション定義情報の一例)を管理する。
なお、本実施形態において、イベント定義テーブル200、モード定義テーブル300およびアクション定義テーブル400をそれぞれ特に区別しない場合には、「定義テーブル」と総称する。
【0027】
管理部11は、受付部13にて受け付けたユーザの編集に基づいて、EMA型状態遷移表100および各種の定義テーブルの内容を更新したり、更新された内容を記憶したりする。
また、管理部11は、記憶しているEMA型状態遷移表100の情報を、表示部15や出力部17に送信する。
【0028】
図4は、本実施形態のEMA型状態遷移表100の一例を示す図である。
図5は、本実施形態のイベント定義テーブル200の一例を示す図である。
図6は、本実施形態のモード定義テーブル300の一例を示す図である。
図7は、本実施形態のアクション定義テーブル400の一例を示す図である。
【0029】
(EMA型状態遷移表)
まず、本実施形態で用いるEMA型状態遷移表100について説明する。
図4に示すように、EMA型状態遷移表100は、項目名が表示されるヘッダ部100hと、項目に対応する内容が入力される入力部100iと、を有する。
【0030】
ヘッダ部100hは、イベント(E)項目名10e、モード(M)項目名10m、アクション(A)項目名10a、仕様理由(R)項目名10rおよび試験結果(T)項目名10tの各項目名が設けられる。ヘッダ部100hにおいて、各項目名は、第1軸方向(例えば横方向)に並べて配置される。
ここで、本実施形態の説明において、イベントとは、制御対象において発生する事象である。イベントは、制御対象に対する入力と捉えることもできる。モードは、制御対象の状態である。アクションは、制御対象が実行する処理である。
【0031】
入力部100iは、ヘッダ部100hにおける各項目名に対応して、イベント入力欄111、モード入力欄112、アクション入力欄113、仕様理由入力欄114および試験結果入力欄115を有する。入力部100iにおいて、イベント入力欄111、モード入力欄112、アクション入力欄113、仕様理由入力欄114および試験結果入力欄115は、それぞれ第1軸方向(例えば、横方向)に並べて配置される。
【0032】
イベント入力欄111は、イベントが記入される入力欄である。例えば、制御対象がテレビなどの家電製品である場合、電源ボタンの変化がイベントとしてイベント入力欄111に記入される。
【0033】
モード入力欄112は、モードが記入される入力欄である。モードは、制御対象について異なる複数の観点から捉えることができる。そして、モードは、観点ごとに設けられるカテゴリに分類される。例えば、制御対象の各々のモードは、「電源」という観点で捉えたカテゴリと、「メニュー」という観点で捉えたカテゴリとにそれぞれ分類される。例えば、「電源」というカテゴリには、「ONモード」と「OFFモード」とが含まれる。また、「メニュー」というカテゴリには、「メニュー操作中モード」と、「メニュー非操作モード」とが含まれる。
【0034】
そして、一のカテゴリ内に含まれる複数のモードは、制御対象が同時にとることができない状態である。例えば、「電源」というカテゴリにおいて、「ONモード」と「OFFモード」とは、制御対象が同時にとることができない、並行しない2つの状態である。一方で、異なる複数のカテゴリとの関係においては、一のカテゴリに含まれるモードと、他のカテゴリに含まれるモードとは、制御対象が同時にとることができる状態を含む。例えば、「電源」というカテゴリの「ONモード」と、「メニュー」というカテゴリの「メニュー操作中モード」とは、制御対象が同時にとることができる、並行する2つの状態である。
【0035】
そして、本実施形態のEMA型状態遷移表100では、一のモード入力欄112には、制御対象に一のイベントが生じた際に一のアクションを行う場合のモードの条件(以下、モード条件と呼ぶ)が入力される。モード条件は、イベントとアクションとの関係に応じて、単数のモードで構成されたり、複数のモード(以下、複合モードと呼ぶ)で構成されたりする。したがって、一のモード入力欄112には、単数のモードや複合モードが入力される。
【0036】
アクション入力欄113は、アクションが記入される入力欄である。そして、本実施形態のEMA型状態遷移表100では、一のアクション入力欄113には、一のアクションが入力される。例えば、制御対象がテレビなどの家電製品である場合、電源をOFFにするという処理がアクションとしてアクション入力欄113に記入される。
アクションは、制御対象が行う処理である。そして、制御対象が処理を行うことで制御対象の状態であるモードが遷移する。本実施形態では、アクションは、状態遷移を含む概念と捉えることができる。なお、アクション入力欄113には、アクションのみを記入したり、アクションに伴う遷移後の状態である遷移後モードを併記したりすることができる。
【0037】
仕様理由入力欄114は、制御対象の仕様に関する仕様情報をユーザが記入する入力欄である。一の仕様理由入力欄114は、一のアクションに対応して設けられる。例えば、制御対象の仕様を変更したときの注意点などが仕様理由として仕様理由入力欄114に記入される。このように、本実施形態のEMA型状態遷移表100は、仕様書としても利用できるようになっている。
【0038】
試験結果入力欄115は、制御対象の試験に関する試験情報を記入する入力欄である。一の試験結果入力欄115は、一のアクションに対応して設けられる。
一般的に、製品開発においては、所定のモードとイベントとの組合せに関する制御対象の動作であるアクション等を確認する試験が行われる。そして、試験結果入力欄115は、試験結果を記入するための記入欄として用いられる。例えば、ユーザが制御対象の試験を行う際に、EMA型状態遷移表100が参照される。そして、試験結果入力欄115には、例えば、イベントとモードとの組合せのときの動作内容が、EMA型状態遷移表100に記載されるアクションと一致しているか否かという試験結果などの試験情報が入力される。なお、試験結果入力欄115に対する入力は、ユーザによる記入に限定されず、例えば後述するモデル検査の実施に伴って情報処理装置10が自動的に行ってもよい。
また、制御対象の試験は、制御対象の動作試験、後述するモデル検査、EMA型状態遷移表100に基づいて作成されたプログラムコードに対する検査、このプログラムコードが実装された制御対象(実機)の動作試験など各種の試験を例示できる。
【0039】
本実施形態の試験結果入力欄115には、各検査を特定するための検査IDと、検査結果を記入するための入力欄と、検査の実施日を記入する実施日欄と、担当者の情報を記入する担当者欄が設けられている。
このように、本実施形態のEMA型状態遷移表100は、制御対象の検査結果の記入書としても利用できるようになっている。
【0040】
以上のように構成されるEMA型状態遷移表100の入力部100iでは、イベント、モード、アクション、仕様理由および検査結果が、第1軸方向(例えば、横方向)において並べられる。そして、本実施形態のEMA型状態遷移表100では、一のアクションに対して、イベント、モード、仕様理由および検査結果を関連付ける。このように、本実施形態のEMA型状態遷移表100では、一のアクションと、当該一のアクションに関連付けられたイベント、モード、仕様理由および検査結果とによって一組の単位が構成され、この一組の単位が例えば一行に表示される。そして、EMA型状態遷移表100では、複数の単位が第2軸方向である縦方向において並べて表示される。すなわち、本実施形態のEMA型状態遷移表100では、複数の単位がリスト状に表示される。
【0041】
上記のとおり、本実施形態のEMA型状態遷移表100では、一のアクションの単位で、イベントやモードが表示される。そして、本実施形態のEMA型状態遷移表100では、制御対象が実行するアクションに対応するイベントおよびモードだけしか表示しない。特に、本実施形態のEMA型状態遷移表100では、制御対象が実行しないアクションは、一切表示しない。ここで、制御対象が実行しないアクションとは、例えばイベントおよびモードの組合せが制御対象として有り得ないものである。つまり、本実施形態のEMA型状態遷移表100は、制御対象で実行されないアクションに対応するイベントおよびモードの組合せが示されず、制御対象が実行するアクションに対応するイベントおよびモードの組合せが示される。これによって、本実施形態のEMA型状態遷移表100では、表示されるイベントおよびモードの組合せの数が有限個数に収まるようになり、組合せの状態爆発が確実に抑制される。
【0042】
さらに、上述のとおり、入力部100iにおけるモード入力欄112には、複数のモードによって構成される複合モードを入力可能になっている。そして、本実施形態のEMA型状態遷移表100では、例えば一のイベントが生じた際に一のアクションが行われるモードが複数ある場合、これらの複数のモードを複合モードとしてまとめて表現する。これによって、本実施形態のEMA型状態遷移表100では、EMA型状態遷移表100に表示されるイベントとモードとの組合せの数が更に少なくなるようにしている。
【0043】
(イベント定義テーブル200)
次に、各定義テーブルについて詳細に説明する。
図5に示すように、イベント定義テーブル200は、制御対象にて発生し得るイベントの名前が入力されるイベント名入力欄210を有している。また、イベント名入力欄210に対応して、イベントID211が設けられる。
図5に示すイベント定義テーブル200の例では、3つのイベント名入力欄210が設けられている。そして、イベントID211は、3つのイベント名入力欄210に対応して、「E001」~「E003」が設けられる。
【0044】
さらに、イベント定義テーブル200は、シンボル欄212を有している。シンボル欄212は、各々のイベント名入力欄210に対応して設けられる。シンボル欄212には、ユーザが任意の文字や記号やマークを入力することができる。そして、ユーザは、シンボル欄212に、例えば任意の文字や記号等を入力しておくことで、その記号を作業の際に参考にすることができる。
【0045】
また、イベント定義テーブル200は、複数のイベント内容入力欄220を有している。
図5に示すイベント定義テーブル200の例では、各イベント名入力欄210に対して、それぞれ7つのイベント内容入力欄220が設けられる。各イベント内容入力欄220は、イベント内容ID221が設けられる。イベント内容ID221は、7つのイベント内容入力欄220に対応して、「0」~「6」のIDを有する。
【0046】
さらに、イベント定義テーブル200は、シンボル欄230を有している。シンボル欄230は、各々のイベント内容入力欄220に対応して設けられる。シンボル欄230には、ユーザが任意の文字や記号やマークを入力することができる。そして、ユーザは、シンボル欄230に、例えば任意の文字や記号等を入力しておくことで、その記号を作業の際に参考にすることができる。
【0047】
(モード定義テーブル300)
図6に示すように、モード定義テーブル300は、制御対象がとり得るモードの名前が入力されるモード名入力欄310を有している。また、モード名入力欄310に対応して、モードID311が設けられる。
図6に示すモード定義テーブル300の例では、3つのモード名入力欄310が設けられている。そして、モードID311は、3つのモード名入力欄310に対応して、「M001」~「M003」が設けられる。
【0048】
また、モード定義テーブル300は、シンボル欄320を有している。シンボル欄320は、各モード名入力欄310に対応して設けられる。シンボル欄320には、ユーザが任意の文字や記号やマークを入力することができる。
【0049】
さらに、モード定義テーブル300は、複数のモード内容入力欄330を有している。
図6に示すモード定義テーブル300の例では、各モード名入力欄310に対して、それぞれ7つのモード内容入力欄330が設けられる。各モード内容入力欄330は、モード内容ID331が設けられる。モード内容ID331は、7つのモード内容入力欄330に対応して、「0」~「6」のIDを有する。
【0050】
さらに、モード定義テーブル300は、シンボル欄340を有している。シンボル欄340は、各々のモード内容入力欄330に対応して設けられる。シンボル欄340には、ユーザが任意の文字や記号やマークを入力することができる。
【0051】
そして、モード定義テーブル300のモード内容入力欄330には、単数のモードや複合モードが入力される。このうち、例えば複合モードは、一のイベントに対して一のアクションを実行するための条件をモードの組合せによって表現したものである。そして、例えば複合モードに対し、複合モードの概念を示すラベルを付けてモード定義テーブル300にて管理することができる。このように複合モードにラベルを付けて抽象化することで、ユーザは、モード定義テーブル300においてラベルが示す概念を参考にして複合モードを取り扱うことができる。
なお、本実施形態のモード定義テーブル300では、モード単体や、複数のモードを組み合わせた複合モードのみならず、複数の複合モードを組合せて更に上位のモードを定義することも可能である。
【0052】
さらに、本実施形態のモード定義テーブル300では、サブモードを定義することが可能になっている。サブモードとは、ある観点で捉えたメインの一のモードに対し、下位の概念として設けられるモードである。例えば、メインの一のモードをテレビの録画モードとした場合、サブモードは、ユーザが予め設定していた予約に基づく録画モードと、ユーザが任意のタイミングで録画ボタンを押したことに基づく録画モードとを例示できる。
そして、本実施形態のEMA型状態遷移表100では、サブモードを含む複合モードを用いたモード条件を設定できるようになっている。
【0053】
(アクション定義テーブル400)
図7に示すように、アクション定義テーブル400は、制御対象が行うアクションの名前が入力されるアクション名入力欄410を有している。また、アクション名入力欄410に対応して、アクションID411が設けられる。
図7に示すアクション定義テーブル400の例では、3つのアクション名入力欄410が設けられている。そして、アクションID411は、3つのアクション名入力欄410に対応して、「A001」~「A003」が設けられる。
【0054】
また、アクション定義テーブル400は、アクション内容入力欄420を有している。
図7に示すアクション定義テーブル400の例では、各アクション名入力欄410に対して、それぞれ2つのアクション内容入力欄420が設けられる。アクション内容入力欄420は、モード遷移時入力欄421と、モード定常中入力欄422とを有する。モード遷移時入力欄421は、モードが遷移するときに制御対象が実行するアクションが入力される。また、モード定常中入力欄422は、モードの遷移後であってモードが定常状態である場合に実行するアクションが入力される。
【0055】
さらに、アクション定義テーブル400は、シンボル欄430を有している。シンボル欄430は、各々のアクション内容入力欄420に対応して設けられる。シンボル欄340には、ユーザが任意の文字や記号やマークを入力することができる。
【0056】
(受付部13)
受付部13(例えば、受付手段の一例)は、イベント定義テーブル200、モード定義テーブル300およびアクション定義テーブル400に対する情報の入力をユーザから受け付ける。
本実施形態の情報処理システム1において、受付部13は、上記の各定義テーブルを端末装置30の表示画面30mに表示させる。そして、受付部13は、表示画面30mに表示される定義テーブルに対する入力を受け付ける。本実施形態では、ユーザは、表示画面30mに表示される各々の定義テーブルに対して、直接的に入力や編集を行うことができる。例えば、ユーザは、各定義テーブルにおいて編集対象の入力欄を選択し、キーボード等の操作を介して数値や文字を入力欄に入力することができる。
【0057】
また、受付部13は、EMA型状態遷移表100に対する情報の入力をユーザから受け付ける。
本実施形態の情報処理システム1において、受付部13は、EMA型状態遷移表100を端末装置30の表示画面30mに表示させる。そして、受付部13は、表示画面30mに表示されるEMA型状態遷移表100に対する入力を受け付ける。
【0058】
受付部13は、イベント定義テーブル200、モード定義テーブル300およびアクション定義テーブル400に記憶される情報を用いて、EMA型状態遷移表100の各入力欄に対する入力をユーザから受け付ける。具体的には、受付部13は、EMA型状態遷移表100に各定義テーブルに基づいて作成された選択肢をプルダウン形式で表示する。プルダウンに表示する内容は、定義テーブルにおける各種ID、各種シンボル、定義内容を例示できる。
【0059】
また、受付部13は、表示画面30mに表示されるEMA型状態遷移表100の入力部100iに対して、直接的に入力や編集を行うことができる。例えば、ユーザは、入力部100iにおける各テーブルにおいて編集対象の入力欄を選択し、キーボード等の操作を介して数値や文字を入力することができる。
【0060】
図8は、本実施形態のモード編集画面50の説明図である。
本実施形態の受付部13は、モード編集画面50によって、ユーザからモードに関する入力を受け付けることができるようになっている。
【0061】
受付部13は、端末装置30の表示画面30mにモード編集画面50を表示する。受付部13は、モード編集画面50を介して、ユーザからモードに関する編集を受け付ける。
本実施形態のモード編集画面50は、EMA型状態遷移表100の一のモード入力欄112(
図4参照)に対するユーザによるクリック操作やタップ操作などの選択操作を受け付けることで表示画面30mに表示される。
【0062】
図8に示すように、モード編集画面50は、入力されたモードの内容が表示される表示枠51と、演算子としての論理積(AND 記号「&&」)を入力するための論理積ボタン52と、演算子としての論理和(OR 記号「||」)を入力するための論理和ボタン53と、編集が終了したことを特定するための完了ボタン54とを有する。また、モード編集画面50は、作成したモードをモード定義テーブル300に保存する保存ボタン55を有する。
なお、本実施形態のEMA型状態遷移表100では、偽(FALSE 記号「!」)や真(TRUE)などの演算子を用いることもできる。
【0063】
モード編集画面50では、ユーザによる、数字列や文字列の入力、論理積ボタン52や論理和ボタン53の押下に応じて表示枠51にモード条件を表示する。そして、モード編集画面50では、完了ボタン54が操作されることで、編集作業を完了させ、作成されたモード条件をEMA型状態遷移表100に反映させる。
【0064】
また、モード編集画面50では、保存ボタン55がユーザによって押下されることで、作成されたモード条件を新たな複合モードとしてモード定義テーブル300に追加する。複合モードの内容は、モード定義テーブル300の一のモード内容入力欄330(
図6参照)に記入される。また、作成された複合モードには、ユーザが任意の名称を付けることができる。この名称は、一のモード内容入力欄330に対応するモード名入力欄310に入力される。
【0065】
さらに、本実施形態のモード編集画面50では、既に定義されているモード内容の編集を行うこともできる。この場合、例えば、モード定義テーブル300から、編集対象の単数のモードや複合モードを表示枠51に例えばドラッグ・アンド・ドロップする操作を行う。そして、モード編集画面50では、モード定義テーブル300から持ってきたモードに対する編集を行うことができる。
【0066】
図9は、定義テーブルに対する定義情報の追加を促す画面の一例を示す図である。
【0067】
上述したように、本実施形態の情報処理システム1では、各定義テーブルに対して直接的に入力や編集を行うことができる。そして、受付部13は、直接的な入力や編集が行われた際に定義テーブルに記憶されていない文字列の記入があった場合、表示部15を介して、端末装置30の表示画面30mにメッセージ表示60を表示させる。
【0068】
図9に示すように、メッセージ表示60には、例えば「入力された内容は、〇〇定義テーブルに存在しません」といったテキストメッセージ61を表示する。これによって、ユーザに対して、定義テーブルにない新たな定義情報が入力されたことを通知する。また、メッセージ表示60に、「〇〇定義テーブルに追加しますか?」といったように、新たな文字列を定義テーブルに追加することを促す内容のテキストメッセージ62を表示する。さらに、メッセージ表示60には、ユーザからの指示を受け付けるためのYESボタン画像63およびNOボタン画像64を表示する。そして、受付部13は、新たな文字列を定義テーブルに追加することの指示をユーザから受け付ける。
【0069】
図10は、複合モードの作成を促す画面の一例を示す図である。
【0070】
ユーザがEMA型状態遷移表100に対して直接的に入力や編集を行った結果、EMA型状態遷移表100に、イベントおよびアクションが同一の組合せであって、モードが異なる単位が複数存在するという状況が発生する場合がある。
このような場合、受付部13は、表示部15を介して、端末装置30の表示画面30mにメッセージ表示65を表示させる。
【0071】
図10に示すように、メッセージ表示65には、例えば「「イベント」と「アクション」との組合せが一致・類似するモードが入力されました」といったテキストメッセージ66が表示される。これによって、受付部13は、一のイベントおよび一のアクションの組合せが同じであって、モード条件が異なる単位があることをユーザに対して通知する。また、受付部13は、一のイベントおよび一のアクションの組合せが類似していて、モード条件が異なる単位があることをユーザに対して通知する。
【0072】
また、メッセージ表示65には、例えば「モード条件を作成して1つのアクションでまとめますか?」といったテキストメッセージ67を表示する。さらに、メッセージ表示65には、ユーザからの指示を受け付けるためのYESボタン画像68およびNOボタン画像69を表示する。そして、受付部13は、イベントとアクションとの組合せが同じであって、モード条件が異なる単位をまとめて、一のアクションによってまとめられた単位を作成することの指示を受け付ける。
【0073】
(表示部15)
表示部15(例えば、表示手段、表示部(第1表示部~第4表示部)、包含表示部、除外表示部の一例)は、ユーザからの指示に応じ、ユーザが利用する端末装置30の画面に、管理部11が管理する各種の情報を表示させる。表示部15は、ユーザが各種の定義テーブルの編集を行う際に、各定義テーブルを表示する。また、表示部15は、ユーザがEMA型状態遷移表100を閲覧したり、編集したりする際に、端末装置30の表示画面30mにEMA型状態遷移表100を表示する。
【0074】
続いて、本実施形態のEMA型状態遷移表100について具体的に説明する。
図11は、本実施形態のEMA型状態遷移表100の具体例の説明図である。
【0075】
図11に示すEMA型状態遷移表100は、例えばテレビを制御対象に用いた場合の例である。ここで、テレビにて生じるイベントとして、電源ボタンの変化と、メニューボタンの変化とを例示する。また、テレビのモードとして、テレビ画面が消えた状態であるIdleモードと、映像を表示したり音声を出力したりするための準備を行うReadyモードと、映像が表示され音声が出力されているBusyモードとを例示する。また、テレビのモードとして、メニュー画面に対する操作が行われないメニュー非操作モードと、メニュー画面に対する操作が行われるメニュー操作中モードとを例示する。
【0076】
図11に示すように、テレビの電源ボタンが押下されるというイベントが発生した際、Idleモードである場合には、初期化処理というアクションが実行される。また、この場合に、テレビのモードは、IdleモードからReadyモードに遷移する。
【0077】
テレビの電源ボタンが押下されるというイベントが発生した場合、ReadyモードおよびBusyモードのいずれかである場合には、終了処理というアクションが実行される。また、この場合に、テレビは、各々のモードからIdleモードに遷移する。
このように、本実施形態のEMA型状態遷移表100では、電源ボタンが押下されるというイベントが発生し、終了処理という一のアクションが行われる場合のモード条件は、ReadyモードまたはBusyモードであるという複合モードによって表現される。また、この場合の終了処理というアクションは、EMA型状態遷移表100において一つ単位で表示される。
【0078】
テレビのメニューボタンが押下されるというイベントが発生した際、Busyモードかつメニュー非操作モードである場合には、メニューを表示するメニュー表示処理が実行される。また、この場合、テレビのモードは、メニュー操作中モードに遷移する。
このように、本実施形態のEMA型状態遷移表100では、メニューボタンが押下されるというイベントが発生し、メニュー表示処理という一のアクションが行われる場合のモード条件は、Busyモードかつメニュー非操作モードという複合モードによって表現される。また、この場合のメニュー表示処理というアクションは、EMA型状態遷移表100において一つ単位で表示される。
【0079】
また、テレビのメニューボタンが押下されるというイベントが発生した際、Busyモードかつメニュー操作中モードである場合には、メニューを非表示にするメニュー非表示処理が実行される。また、この場合、テレビのモードは、メニュー非操作モードに遷移する。
このように、本実施形態のEMA型状態遷移表100では、メニューボタンが押下されるというイベントが発生し、メニュー非表示処理という一のアクションが行われる場合のモード条件は、Busyモードかつメニュー操作中モードという複合モードによって表現される。また、この場合のメニュー非表示処理というアクションは、EMA型状態遷移表100において一つ単位で表示される。
【0080】
ここで、比較のために、比較例の状態遷移表について説明する。
図14は、比較例1の状態遷移表900の説明図である。
【0081】
図14に示すように、比較例1の状態遷移表900は、制御対象に生じる複数のイベントを縦軸に並べ、制御対象がとる複数のモードを横軸に並べている。そして、比較例1の状態遷移表900では、一のイベントと一のモードとの組合せに対応するセルに、その組合せを条件として実行される一のアクションが表示される。
【0082】
また、比較例1の状態遷移表900では、制御対象の複数のモードを3つの観点から捉えた3つのカテゴリに分類している。そして、比較例1の状態遷移表900は、第1カテゴリ901、第2カテゴリ902および第3カテゴリ903を含んで構成されている。なお、第1カテゴリ901、第2カテゴリ902および第3カテゴリ903にそれぞれ含まれるモードは、異なるカテゴリ間で並行してとることができるモードを含んでいる。
【0083】
そして、比較例1の状態遷移表900(例えば、第1カテゴリ901)において、イベントE01とモードM04とを条件としてアクションA1が実行される。イベントE02とモードM05とを条件としてアクションA1が実行される。イベントE02とモードM05とを条件としてアクションA1が実行される。イベントE03とモードM05とを条件としてアクションA1が実行される。また、イベントE04とモードM03とを条件としてアクションA2が実行される。イベントE05とモードM01とを条件としてアクションA3が実行される。
なお、比較例1の状態遷移表900において、一のイベントおよび一のモードの組合せで、制御対象がアクションを実行しないセルには「-」(ブランク)を表示している。なお、ブランクで表示されるイベントおよびモードの組合せは、例えば制御対象として有り得ない組合せである。
【0084】
以上のように構成される比較例1の状態遷移表900では、モードとイベントの組合せは、制御対象にて発生し得るイベントの数、制御対象がとるモードの数とに比例して、無数に多くなる可能性がある。
また、比較例1の状態遷移表900では、制御対象にてアクションが実行されないモードとイベントの組合せのセルが表示されることは、表の構造上、避けられない仕様となっている。したがって、比較例1の状態遷移表900では、アクションが制御対象にて実行されるか実行されないかにかかわらず、全てのモードとイベントとの組合せが表示される。
このような比較例1の状態遷移表900では、イベントとモードとの組合せが無数に及び、ユーザが全てを把握することは現実的に極めて困難である。また、制御対象のアクションの検証も、無数に及ぶイベントとモードとの組合せの全てについて実施する必要があるが、全ての組合せを検査することは極めて困難となる。
【0085】
また、比較例1の状態遷移表900では、制御対象のモードは、第1カテゴリ901、第2カテゴリ902および第3カテゴリ903にそれぞれ振り分けられる。そうすると、比較例1の状態遷移表900では、異なるカテゴリ間でのイベントとモードの組合せでアクションを表現することができない仕様となっている。
【0086】
これに対して、本実施形態のEMA型状態遷移表100では、実行されるアクションのイベントおよびモードの組合せだけを表示することができる。したがって、本実施形態のEMA型状態遷移表100では、EMA型状態遷移表100に表示するイベントとモードとの組合せの数を有限個数にすることができる。その結果、例えば、本実施形態のEMA型状態遷移表100では、ユーザがイベント、モードおよびアクションの関係を把握し易くなり、抜け漏れなど制御対象の確認が容易になる。
【0087】
また、本実施形態のEMA型状態遷移表100では、一のアクションを軸にイベントとモードの組合せがまとめられているため、イベントとモードの組合せを表示する表示欄の数が抑制される。これによって、本実施形態のEMA型状態遷移表100では、ユーザがイベント、モードおよびアクションの関係をさらに把握し易くなっている。
そして、本実施形態のEMA型状態遷移表100は、比較例1の状態遷移表900では表現することができなかった異なるカテゴリに分類される複数のモードに基づくアクションの表現を行うことを可能にする。
【0088】
【0089】
表示部15は、制御対象に関する静的構造
図700を端末装置30の表示画面30mに表示可能である。また、表示部15は、制御対象に関する動的構造
図800を表示画面30mに表示可能である。そして、本実施形態の表示部15は、静的構造
図700、動的構造
図800およびEMA型状態遷移表100との相互の関係を表示する。
なお、静的構造
図700、動的構造
図800およびEMA型状態遷移表100の関係は、受付部13によってユーザから関係情報を取得することで特定できる。また、静的構造
図700、動的構造
図800およびEMA型状態遷移表100の関係は、各々に含まれる文字列等の情報に基づいて関連付けても良い。
【0090】
静的構造
図700は、例えばシステムなどの制御対象において機能を発揮するコンポーネント70(機能構成の一例)の関係を表現したものである。
図12に示す例では、各コンポーネント70は、下位層、中間層および上位層とで構成される複数の階層に分けて表示される。下位層は、センサやモータなどのハードウェアを駆動するドライバに相当するコンポーネント70が配置される階層である。中間層は、ハードウェアによって実現される動作の概念の単位で統合して上位層につなげるコンポーネント70が配置される階層である。上位層は、制御対象において実行されるアプリケーションに相当するコンポーネント70が配置される階層である。
そして、静的構造
図700においては、上位層の一のアプリケーションと、中間層において一のアプリケーションに関係するコンポーネント70とが線により結ばれて表示される。同様に、中間層のドライバと、下位層のデバイスとの関係が線により結ばれて表示される。
【0091】
動的構造
図800は、システムの動作を示すフローである。動的構造
図800は、各動作ステップ80により構成される動作の流れを示す。
本実施形態の動的構造
図800と静的構造
図700とは、各動作ステップ80とコンポーネント70とが関連付けられている。そして、表示部15は、例えば動的構造
図800における一の動作ステップ80に対する選択操作を受け付けると、静的構造
図700において当該一の動作ステップ80に対応するコンポーネント70を明示する。また、表示部15は、例えば静的構造
図700における一のコンポーネント70に対する選択操作を受け付けると、当該一のコンポーネント70に対応する動的構造
図800の動作ステップ80を明示するようになっている。
【0092】
そして、本実施形態では、上記の静的構造
図700と動的構造
図800とのリンクに加えて、EMA型状態遷移表100とのリンクを示すことができる。
例えば、静的構造
図700におけるコンポーネント70と、EMA型状態遷移表100のアクションとが関連付けられている。また、動的構造
図800における動作ステップ80と、EMA型状態遷移表100のアクションとが関連付けられている。
【0093】
表示部15は、EMA型状態遷移表100における一のアクションに対するユーザの選択を受け付けると、動的構造
図800において、選択された一のアクションに対応する動作ステップ80を明示する。例えば、その動作ステップ80は、他の動作ステップ80とは異なる表示態様で示されたり、明示される前の状態とは異なって目立つ表示態様で示されたりする。
また、表示部15は、EMA型状態遷移表100における一のアクションに対するユーザの選択を受け付けると、静的構造
図700において、選択された一のアクションに対応するコンポーネント70を明示する。例えば、そのコンポーネント70は、他のコンポーネント70とは異なる表示態様で示されたり、明示される前の状態とは異なって目立つ表示態様で示されたりする。
【0094】
なお、表示部15は、静的構造
図700の一のコンポーネント70が選択操作されると、対応するEMA型状態遷移表100のアクションを明示しても良い。同様に、表示部15は、動的構造
図800の一の動作ステップ80が選択操作されると、対応するEMA型状態遷移表100のアクションを明示しても良い。
このように、本実施形態の表示部15は、EMA型状態遷移表100、静的構造
図700および動的構造
図800の相互の関係をユーザに示すことができるようになっている。
【0095】
(モデル検査)
次に、情報処理装置10のモデル検査の機能について説明する。
本実施形態の情報処理装置10は、制御対象のモデル検査を実行する機能を有している。
モデル検査とは、ハードウェア、ソフトウェア、システムなどの制御対象の網羅的な検査を行うものである。モデル検査には、制御対象を表現するモデル言語と、その制御対象に関する検査式とが用いられる。このうち、モデル言語には、制御対象を記述するソースコード等を例示できる。また、検査式には、設計仕様書などを例示できる。そして、モデル検査では、例えば制御対象をモデルで表現したうえで、制御対象が満たすべき仕様がモデル上で成り立つかどうかを、モードとイベントとのすべての組合せについて機械的かつ網羅的に検査する。例えば、モデル検査では、抜け出せないモードがあったり、モードの対応がとれなかったりするなどの不具合が検査結果として示される。
【0096】
そして、情報処理装置10は、例えばモデル検査の結果を端末装置30の表示画面30mに表示可能になっている。これによって、ユーザは、モデル検査の結果と、EMA型状態遷移表100とを表示画面30mにて見比べたりすることができる。このように、本実施形態の情報処理システム1は、ユーザの作業効率を向上させることができる。
【0097】
(出力部17)
図13は、本実施形態のプログラムコードの出力の一例を示す図である。
【0098】
図13に示すように、出力部17は、本実施形態のEMA型状態遷移表100に基づいて、EMA型状態遷移表100で定義される状態遷移を実現するための疑似コードを出力する。出力部17による疑似コードの出力の指示は、例えば受付部13が表示画面30mにEMA型状態遷移表100に合わせて表示するエクスポートボタン画像などから受け付けることができる。
【0099】
本実施形態のEMA型状態遷移表100は、一のイベントの発生により一のアクションを実行する際のモード条件を含んでいる。したがって、モード条件を用いて、制御対象を制御するプログラムのプログラムコードを作成することができる。出力するプログラムコードは、各種のプログラム言語を用いることができるが、例えばC言語による記述を例示できる。
図13に示すように、出力部17は、EMA型状態遷移表100のイベント、モードおよびアクションの情報に基づいて、例えばアクションが実行される条件を記述した疑似コードを生成する。コードにおける一の単位は、例えばEMA型状態遷移表100の一のアクションの単位に対応している。
【0100】
本実施形態のEMA型状態遷移表100では、一のアクションに対して、一のアクションが実行される際の条件としてイベントおよびモードが並べられた単位で表現されている。また、EMA型状態遷移表100では、一のアクションごとの単位が複数設けられ、リスト状に並べられている。そのため、出力部17は、EMA型状態遷移表100の構造に倣って、疑似コードを作成することが容易になっている。
【0101】
なお、本実施形態では、EMA型状態遷移表100からプログラムコードを作成する例について説明したが、この逆を行うことも可能である。すなわち、制御対象を記述するソースコードやハードウェア記述言語などのプログラムコードに基づいて、本実施形態の構造のEMA型状態遷移表100を作成することも可能である。プログラムコードには、イベント、モードおよびアクションの関係を規定するコードが含まれる。これにより、本実施形態の情報処理システム1は、イベント、モードおよびアクションの関係を規定するコードに基づいて、EMA型状態遷移表100を作成する。
例えば、既存の制御対象の改良等を行って新規の制御対象を開発するような場合、既存の制御対象の制御プログラム等を本実施形態のEMA型状態遷移表100の形式で表現することで、製品開発の効率化を図ることが可能になる。
【0102】
また、出力部17が出力するEMA型状態遷移表100に基づいて作成された制御対象のプログラムコードは、上述した制御対象のモデル検査における制御対象のモデルに用いることができる。
ここで、従来において、例えばイベントとモードとの組合せの状態爆発が生じている場合には、モデル検査を実施しようとしても組合せがほぼ無限にあることから、全ての検査を行うことができないことがあった。また、従来、組合せが無数にある場合にモデル検査を実施する際、組合せを任意に間引いてから実施するなど、モデル検査としては不完全な内容で行われることがあった。
【0103】
これに対して、本実施形態の情報処理システム1では、EMA型状態遷移表100に基づいて作成され、制御対象を記述するプログラムコードを制御対象のモデルに用いることができる。これによって、情報処理システム1では、有限個数に収められたイベントとモードとの組合せについてモデル検査を行うことができる。また、本実施形態の情報処理システム1では、モデル検査を行うためにモデル言語を用いた制御対象のモデルを改めて作成する必要がなくなる。さらに、本実施形態の情報処理システム1では、組合せが有限個数に収まるため、制御対象のイベントとモードとの全ての組合せを網羅したモデル検査を行うことができる。
【0104】
(変形例)
上述したEMA型状態遷移表100では、複数のモードを条件として、イベントが発生した際に実行される制御対象のアクションを表現していたが、この例に限定されない。
例えば、複数のイベントを組み合わせた複合イベントを、一のアクションを実行する条件を表現しても良い。この場合に、イベントに対応するモードは、単数であっても、複数であっても構わない。
このようにすることで、EMA型状態遷移表100において一のアクションの単位を更にまとめることができる。特に、複数のイベントおよび複数のモードを条件として一のアクションの単位を表現することで、EMA型状態遷移表100において一のアクションが一つだけ表示されるように構成できる。これによって、EMA型状態遷移表100では、表示される組合せの数の肥大化がさらに抑制される。
【0105】
(変形例)
本実施形態の情報処理システム1では、上述のとおり、新規な状態遷移表であるEMA型状態遷移表100を表示する。一方で、情報処理システム1は、EMA型状態遷移表100に基づいて、比較例の状態遷移表900の形式での状態遷移表を作成することができる。具体的には、情報処理システム1では、EMA型状態遷移表100のイベント、モードおよびアクションの情報を用いて、EMA型状態遷移表100を比較例の状態遷移表900の表示態様に変換する。これによって、ユーザは、同じ制御対象の状態遷移に関して、EMA型状態遷移表100と比較例の状態遷移表900とを比較することが可能になる。
【0106】
<第2実施形態>
次に、第2実施形態の情報処理システム1について説明する。
なお、第2実施形態の情報処理システム1の基本構成は、第1実施形態の情報処理システム1と同様である。第2実施形態の説明において、第1実施形態と同様な構成については同一の符号を付してその詳細な説明を省略する。
【0107】
【0108】
比較例2の状態遷移表990は、従来技術としての状態遷移表を説明するためのものである。状態遷移表990は、テレビ番組やディスクの録画・再生機能を有するAV機器を制御対象にしたものである。比較例2の状態遷移表990は、縦軸にイベントの各項目が並べられ、横軸にモードの各項目が並べられる。イベントは、例えば機器を操作するためのリモコン(リモートコントローラ)に対するユーザの操作や、リモコンの操作に応じて画面に表示される項目に対する選択操作などである。
【0109】
イベントは、例えばメニューキー、番組表キー、オプションキー、決定キー、上矢印(↑)キー、下矢印(↓)キー、右矢印(→)キー、左矢印(←)キー、音量上げ(+)キー、音量下げ(-)キー、音声切替キーなどの押下(変化)など例えば100通りのイベント項目を含む。
【0110】
さらに、比較例2の状態遷移表990は、AV機器のモードとして複数のカテゴリのモードを備えて構成されている。複数のカテゴリのモードは、
図15に示すメニュー画面に関するメニューモード991、
図16に示す機械的な状態に関するメカモード992、および
図17に示すテレビのチャンネルに関するチャンネルモード993などを例示できる。
例えば、メニューモード991とメカモード992とチャンネルモード993とは、互いに従属関係にはない素な関係になっている。すなわち、一のカテゴリのモードと他のカテゴリのモードとは直接的には関係がないものである。
【0111】
そして、各々のカテゴリのモードは、それぞれ複数のモード項目を有している。
図15に示すメニューモード991は、例えば録画予約に関する予約画面が表示されている状態、各種設定を行うための設定画面が表示されている状態など例えば100通りのモード項目を含む。
図16に示すメカモード992は、例えば動画を再生する状態、再生をポーズする状態、スロー再生を行う状態、再生を早送りする状態、番組等を録画する状態など例えば100通りのモード項目を含む。
図17に示すチャンネルモード993は、例えばデジタルチャンネルのうちチャンネルAAAを選局している状態、チャンネルBBBを選局している状態、チャンネルCCCを選局している状態、チャンネルDDDを選局している状態、チャンネルEEEを選局している状態、AV機器への入力ラインに切り替えられた状態など例えば100通りのモード項目を含む。
【0112】
そして、上述の比較例2の状態遷移表990の例のように、各々100通りのモード項目を持つモードのカテゴリが3つある場合、100通り×100通り×100通りの組合せが生じる。さらに、比較例2の状態遷移表990は、モードのカテゴリの数が増えるほど、組合せが膨大な数になる状態爆発が生じ得る。
【0113】
図18は、第2実施形態のEMA型状態遷移表100である。
【0114】
図18に示すように、EMA型状態遷移表100では、第1実施形態において説明したとおり、一のイベントが生じた際に一のアクションが行われる条件として、一のモードの欄(セル)に任意の複数のモードの組合せを記述することが可能になっている。特に、EMA型状態遷移表100は、従来技術である比較例2の状態遷移表990では異なるモードのカテゴリとして表現されていた複数のモードを組み合わせて表現することができる。
【0115】
なお、
図18に示すEMA型状態遷移表100の例は、比較例2の状態遷移表990と同様に、テレビ番組やディスクの録画・再生機能を有するAV機器を制御対象にするものである。また、EMA型状態遷移表100におけるイベント、モードおよびアクションの種類などの内容は、比較例2の状態遷移表990と同様である。
【0116】
図18に示すように、イベントとしてリモコンの上矢印(↑)キーが押下された場合に、アクションとしてキー入力音(例えば、「ピッ」という効果音)を出力する処理を実行する場合、モードは、複数のモードによって記述される。
図16に示す例において、複数のモードは、メニューモードとして予約画面が表示された状態、予約画面におけるカーソル位置が決定ボタン画像上に存在している状態、メカモードとして停止状態または録画状態、かつ、チャンネルモードとして特定のチャンネルが選択されている状態を条件として備えている。
【0117】
上述のとおり、第2実施形態のEMA型状態遷移表100は、従来技術である比較例2の状態遷移表990が記述することができないイベント、アクションおよびモードの関係を表現することができる。そして、第2実施形態のEMA型状態遷移表100は、イベントおよびアクションの数が有限であれば組合せの状態爆発を招くことなく全ての状態遷移を記述することが可能になっている。
【0118】
続いて、優先順位の概念を有する優先順位非対応のEMA型状態遷移表500と、優先順位対応のEMA型状態遷移表600について説明する。
【0119】
図19は、優先順位非対応のEMA型状態遷移表500の一例を示す図である。
【0120】
図19に示すEMA型状態遷移表500の例は、比較例2の状態遷移表990と同様に、テレビ番組やディスクの録画・再生機能を有するAV機器を制御対象とするものである。また、EMA型状態遷移表500におけるイベント、モードおよびアクションの種類などの内容は、比較例2の状態遷移表990と同様である。
【0121】
図19に示すEMA型状態遷移表500の基本構成は、EMA型状態遷移表100と同様である。すなわち、EMA型状態遷移表500では、対応するイベント(E)、モード(M)およびアクション(A)の組合せが例えば横方向に沿って並べて配置される。EMA型状態遷移表500では、この一組の単位が、第2軸方向である縦方向に沿って複数並べて配置される。
【0122】
EMA型状態遷移表500は、例えば最も上側の単位である第1単位U11に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして再生キーが押下された場合である。また、モードは、抽象化モードとして再生可能条件を満たす状態、かつ、電源モードとして電源オンの状態である。このように、EMA型状態遷移表500では、一つのセルに複数のモードが記述される。そして、第1単位U11は、これらイベントとモードとの条件の場合に、キー入力音を出力し、再生を実行し、かつ、その他再生に関連する処理を実行するという複数のアクションを一つのセルに記述する。
【0123】
ここで、抽象化モードとしての再生可能条件は、例えば再生を可能にする複数のモードの条件によって構成される。再生可能条件には、例えば再生するための再生ディスクがトレイに収容されている状態、再生対象の録画データが存在する状態など、再生が可能になる状態の集合によって構成される。なお、再生可能条件などの抽象化モードは、
図6に示すモード定義テーブル300にて定義されたり、
図8を参照しながら説明したモード編集画面50にて作成したりすることができる。
【0124】
また、EMA型状態遷移表500は、例えば次の単位である第2単位U12に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして再生キーが押下された場合である。また、モードは、抽象化モードとして再生可能条件ではない状態(すなわち再生不可能な条件を満たす状態)、かつ、電源モードとして電源オンの状態である。そして、第2単位U12は、これらイベントとモードとの条件の場合に、キー入力音を出力し、かつ、再生できない旨の表示である再生不可表示を行うという複数のアクションを一つのセルに記述する。
【0125】
また、EMA型状態遷移表500は、さらに次の単位である第3単位U13に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして録画キーが押下された場合である。また、モードは、抽象化モードとして録画可能条件を満たす状態、かつ、電源モードとして電源オンの状態である。そして、第3単位U13は、これらイベントとモードとの条件の場合に、キー入力音を出力し、録画を実行し、かつ、その他録画に関連する処理を実行するという複数のアクションを一つのセルに記述する。
【0126】
また、EMA型状態遷移表500は、さらに次の単位である第4単位U14に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして録画キーが押下された場合である。また、モードは、抽象化モードとして録画可能条件ではない状態(すなわち録画不可能な条件を満たす状態)、かつ、電源モードとして電源オンの状態である。そして、第4単位U14は、これらイベントとモードとの条件の場合に、キー入力音を出力し、かつ、録画できない旨の表示である録画不可表示を行うという複数のアクションを一つのセルに記述する。
【0127】
さらに、EMA型状態遷移表500は、さらに次の単位である第5単位U15に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、メニュー表示のタイムアウトのイベントが生じた場合である。また、モードは、メニューモードとしてメニュー表示中である状態である。そして、第5単位U15は、これらイベントとモードとの条件の場合に、メニュー表示を解除するというアクションを一つのセルに記述する。
【0128】
以上のように構成されるEMA型状態遷移表500では、実行されるアクションのイベントおよびモードの組合せだけを表示することができる。したがって、第2実施形態のEMA型状態遷移表500では、EMA型状態遷移表500に表示するイベントとモードとの組合せの数を有限個数にすることができる。
【0129】
また、第2実施形態のEMA型状態遷移表500では、一のアクションを軸にイベントとモードの組合せがまとめられているため、イベントとモードの組合せを表示する表示欄の数が抑制される。これによって、本実施形態のEMA型状態遷移表500では、ユーザがイベント、モードおよびアクションの関係をさらに把握し易くなっている。
【0130】
さらに、EMA型状態遷移表500では、例えば再生可能条件のように抽象化モードとして定義される概念を用いている。抽象化モードである再生可能条件には、制御対象において再生を可能にする条件に該当する複数のモードが含まれている。このように、EMA型状態遷移表500では、複数のモードを羅列するのではなく、抽象化された概念として表示できる。そのため、ユーザによるEMA型状態遷移表500の取り扱いが極めて容易になる。また、同じ抽象化モード(例えば、再生可能条件)は、EMA型状態遷移表500において繰り返して使用することができる。したがって、EMA型状態遷移表500におけるモードの記述が容易になる。
【0131】
そして、本実施形態のEMA型状態遷移表500は、例えば比較例2の状態遷移表990では表現することができなかった異なるカテゴリに分類される複数のモードに基づくアクションの表現を行うことを可能にする。例えば、抽象化モードとしての再生可能条件と、電源モードとしての電源オンとは、互いに従属関係がない素な関係にある。例えば、比較例2の状態遷移表990の場合、電源オンと再生可能条件を構成する複数のモードとはカテゴリが異なる。そのため、比較例2の状態遷移表990は、一つの状態遷移表で電源オンと再生可能条件を構成する複数のモードとを取り扱うことができない。
これに対して、EMA型状態遷移表500は、一の表において、再生可能条件と電源モードとの関係を表現することが可能になっている。
【0132】
続いて、優先順位対応のEMA型状態遷移表600について説明する。
図20は、優先順位対応のEMA型状態遷移表600の一例を示す図である。
【0133】
図20に示すEMA型状態遷移表600の例は、比較例2の状態遷移表990と同様に、テレビ番組やディスクの録画・再生機能を有するAV機器を制御対象とするものである。また、EMA型状態遷移表600におけるイベント、モードおよびアクションの種類などの内容は、比較例2の状態遷移表990と同様である。
【0134】
図20に示すように、優先順位対応のEMA型状態遷移表600の基本構成は、EMA型状態遷移表100と同様である。すなわち、対応するイベント(E)、モード(M)およびアクション(A)の組が例えば第1軸方向である横方向に沿って並べて配置されている。この一組の単位が、縦方向に沿って並べて配置されている。具体的には、EMA型状態遷移表600では、例えば最も上側の単位である第1単位U21から最も下側の単位である第7単位U27まで第2軸方向である縦方向に並べて配置される。
【0135】
本実施形態の優先順位対応のEMA型状態遷移表600では、表における単位の表示順が予め特定されている。また、EMA型状態遷移表600においてイベント、モードおよびアクションの単位を複数入力する際に、例えば表における上側から下側に向けて順に入力される。
図20の例では、未記入のEMA型状態遷移表600に最初の単位である第1単位U21を記入する際、第1単位U21は、表における最も上側の列に記入される。第1単位U21の記入後に新たな単位である第2単位U22を記入する際、第2単位U22は、第1単位U21の下側の列に表示される。このように、EMA型状態遷移表600では、ユーザが複数の単位を入力しようとする際、上側の列から下側の列に向けて順に第1単位U21から第7単位U27がそれぞれ入力される。
【0136】
EMA型状態遷移表600は、記載されるイベント、モードおよびアクションの単位の内容と、その単位の表における記載順とが関連付けて管理部11により管理される。
このように、EMA型状態遷移表600では、ユーザがイベント、モードおよびアクションを入力したり表示された内容を閲覧したり際に、イベント、モードおよびアクションの優先順位を意識することが可能になっている。本実施形態では、EMA型状態遷移表600の上側から下側に向けた第2軸方向である縦方向において、より上側に記載されるイベント、モードおよびアクションの優先順位がより先になるように定められている。すなわち、EMA型状態遷移表600では、イベント、モードおよびアクションの組合せが並べられた単位を優先順位に従って複数並べて表示する。そして、EMA型状態遷移表600では、状態遷移の優先順位が記述可能になっている。
【0137】
そして、EMA型状態遷移表600は、順序が先に記載される一の単位の条件を、その一の単位よりも順序が後に記載される他の単位に関連付けることが可能になっている。なお、単位の条件には、イベント、モードおよびアクションの少なくとも何れか1つ、または、イベント、モードおよびアクションのうち少なくとも2つの組合せが含まれる。
【0138】
また、上述のとおり、優先順位対応のEMA型状態遷移表600は、表における単位の優先順位が定められている。そして、EMA型状態遷移表600では、表における上側から下側に向けて各々の単位を取り扱うようになっている。また、EMA型状態遷移表600においてより上側に記載されるイベントおよびモードの条件が優先されるようになっている。以下、具体例を用いて説明する。
【0139】
図20に示すように、EMA型状態遷移表600は、例えば最も上側の単位である第1単位U21に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして全てのキーのうちいずれかのキーが押下された場合である。また、モードは、特定のモードを条件としない「無条件」である。そして、第1単位U21は、これらイベントとモードとの条件の場合に、キー入力音を出力するというアクションを記述する。
【0140】
また、優先順位対応のEMA型状態遷移表600は、判定に関する属性を表示する判定入力欄116を有している。判定入力欄116は、判定に関する属性を入力する欄であることを示す判定項目名10jが設けられる。判定入力欄116には、「継続」(例えば、共通表示、包含情報の一例)と、「完了」(例えば、除外表示、除外情報の一例)とのいずれかを記入できる。
【0141】
そして、判定入力欄116の「継続」は、「継続」が表示される単位のイベント、モードおよびアクションの条件を他の単位においても含めることを示す。例えば、「継続」が表示される単位のイベントおよびモードの条件を満たす他の単位がある場合、他の単位においても対応するアクションが実行されることを記述する。
【0142】
一方で、判定入力欄116の「完了」は、「完了」が表示される単位のイベント、モードおよびアクションの条件は、「完了」が表示される単位よりも優先順が後の単位において除外されることを示す。すなわち、「完了」が表示される単位のイベント、モードおよびアクションの条件は、他の単位にて用いられないことを記述する。
【0143】
図20の例では、第1単位U21において「継続」が表示される。したがって、第1単位U21は、全てのキーのうちいずれかのキーが押下されるというイベントが発生した場合に、モードは「無条件」で、キー入力音を出力するキー入力音処理をアクションとして実行することを記述する。そして、他の単位において、第1単位U21におけるイベントおよびモードの条件が満たされる場合には、第1単位U21のアクションであるキー入力音の処理が実行されることを記述する。
【0144】
ここで、
図19を参照しながら説明した優先順非対応のEMA型状態遷移表500では、再生キーや録画キーが押下されるというイベントが発生する際に、各々の単位ごとにキー入力音処理というアクションをそれぞれ記述する必要があった。
これに対して、優先順位対応のEMA型状態遷移表600では、複数のアクションに共通するアクションをまとめて記述することが可能になっている。
【0145】
このように、EMA型状態遷移表600は、複数の他の単位のアクションに共通するアクションを前記一の単位に表示することが可能である。また、EMA型状態遷移表600は、一の単位のアクションが複数の他の単位のアクションに共通することを示す「継続」を判定入力欄116に表示できるようになっている。
【0146】
さらに、
図20に示すように、EMA型状態遷移表600は、第1単位U21の次に記述される第2単位U22に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして全てのキーのうちいずれかのキーが押下された場合である。また、モードは、電源モードとして電源オフの状態である。そして、第2単位U22は、これらのイベントおよびモードの条件の場合、「何も処理を実行しない」というアクションを記述する。
なお、第2単位U22の判定に関する属性は「完了」になっている。したがって、第2単位U22における「何も処理を実行しない」というアクションは、他のアクションと共通で用いられることはない。
【0147】
上述したとおり、EMA型状態遷移表600は、一の単位の条件を他の単位において除外することを示す「完了」を判定入力欄116に表示できるようになっている。そして、第2単位U22において記述される条件は、第2単位U22も優先順が後に記載される他の単位の条件から除外される。したがって、EMA型状態遷移表600において「完了」の表示がされる単位の条件は、それ以降の単位において再び記載する必要がない。例えば第2単位U22における、電源モードとして電源オフの状態で、全てのキーのうちいずれかのキーが押下されるというイベントが生じるという条件は、第2単位U22以降において再び考慮する必要がない。このように、EMA型状態遷移表600は、ユーザが状態遷移を入力する際に取り扱いやすくなっている。
【0148】
さらに、EMA型状態遷移表600は、第2単位U22の次に記述される第3単位U23に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして再生キーが押下された場合である。また、モードは、抽象化モードとしての再生可能条件である。そして、第3単位U23は、これらのイベントおよびモードの条件の場合、再生し、かつ、その他再生に関連する処理を実行するというアクションを記述する。
【0149】
さらに、EMA型状態遷移表600は、第3単位U23の次に記述される第4単位U24に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして再生キーが押下された場合である。また、モードは、「無条件」である。そして、第4単位U24は、これらのイベントおよびモードの条件の場合、再生不可の画面表示を行う再生不可表示処理を実行するというアクションを記述する。
【0150】
上述のとおり、EMA型状態遷移表600では、表における記載順に優先順位を設けている。第4単位U24では、第3単位U23と同じイベントである再生キーが押下されたことを条件としている。そして、第3単位U23にて、イベントとして再生キーが押下され、モードが再生可能条件を満たす場合について判定は既にされている。したがって、第4単位U24では、第4単位U24よりも優先順位が高い第3単位U23で用いられた条件が除外される。この場合、第4単位U24では、すでに判定された第3単位U23の条件に外れた条件である反対条件が適用されることになる。すなわち、第4単位U24の場合は、第3単位U23の再生可能条件とは反対条件である再生が不可能な条件をモードに指定したことになる。
【0151】
このように、EMA型状態遷移表600では、一の単位にて既に判定された条件に外れた条件(反対条件)を、一の単位よりも優先順が後の他の単位にて利用できる。本実施形態のEMA型状態遷移表600では、他の単位におけるモードに「無条件」(例えば、特定記述の一例)と記述することで、一の単位にて既に判定された条件に外れた条件(反対条件)を利用できる。そして、EMA型状態遷移表600では、既に判定された条件に外れた条件(反対条件)を判定無しで利用できるようになっている。
【0152】
ここで、
図19を参照しながら説明した優先順非対応のEMA型状態遷移表500では、例えば再生キーが押下されるというイベントが発生する場合に、再生不可表示処理のアクションを行う場合のモードの条件に、再生可能条件を満たしていないという記述(
図19の例では「!再生可能条件」)を行う必要があった。
【0153】
これに対して、優先順位対応のEMA型状態遷移表600では、対象となる単位よりも優先順位が高い単位にて既に判定された条件に外れた条件として、判定の必要のない「無条件」のモードとして指定することができるようになっている。
【0154】
続いて、EMA型状態遷移表600は、第5単位U25に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして録画キーが押下された場合である。また、モードは、抽象化モードとしての録画可能条件である。そして、第5単位U25は、これらのイベントおよびモードの条件の場合、メカモードを録画し、かつ、その他録画に関連する処理を実行するというアクションを記述する。
【0155】
さらに、EMA型状態遷移表600は、第5単位U25の次に記述される第6単位U26に、以下のようなイベント、モードおよびアクションの関係を記述する。イベントは、キー変化イベントとして録画キーが押下された場合である。また、モードは、「無条件」である。そして、第6単位U26は、これらのイベントおよびモードの条件の場合、録画不可の画面表示を行う録画不可表示処理を実行するというアクションを記述する。
【0156】
このように、優先順位対応のEMA型状態遷移表600では、第6単位U26において、第6単位U26よりも優先順位が高い第5単位U25にて既に判定された条件に漏れた条件を指定することができるようになっている。
【0157】
そして、
図20に記載される最も下側の単位である第7単位U27は、
図19に示す第5単位U15と同様である。このように、優先順位対応のEMA型状態遷移表600は、優先順位非対応のEMA型状態遷移表500と同様なイベント、モードおよびアクションの記述を行うことも可能になっている。
【0158】
本実施形態のEMA型状態遷移表600では、イベント、モードおよびアクションの組合せからなる単位を優先順位に基づいて複数並べて表示する。そして、EMA型状態遷移表600では、例えば優先順位が上位にある単位の条件を除外したうえで、下位の単位の条件をユーザが記入できるようになっている。これによって、EMA型状態遷移表600は、優先順位における上位の単位から下位の単位に向けて条件をふるい落とすようにしながらユーザが順に制御対象の状態遷移を記述することを可能にしている。
【0159】
なお、優先順位対応のEMA型状態遷移表600は、一の単位の条件を他の単位に含める際に表示する「継続」や、一の単位の条件を他の単位において除外する「完了」の態様は、これらの例に限定されない。例えば、「継続」および「完了」の表示態様に代えて、別の文字や記号(例えば「C」や「E」、「〇」や「×」)、矢印などの図形を用いてもよい。
【0160】
次に、優先順位対応のEMA型状態遷移表600におけるガイド機能について説明する。
図21は、EMA型状態遷移表600のガイド表示部650の説明図である。
【0161】
ユーザがEMA型状態遷移表600に対して入力や編集を行う際、優先順位に従う条件の関係性を理解しにくくなることが想定される。
これに対して、本実施形態の受付部13は、表示部15を介して、端末装置30の表示画面30mにガイド表示部650(例えば、条件表示の一例)を表示させる。
【0162】
図21に示すように、ガイド表示部650は、ユーザがEMA型状態遷移表600における任意のセルに例えばマウスのカーソルを重ねた際に表示される。
ガイド表示部650は、マウスのカーソルの位置に対応する単位(
図20の例では第4単位24)に対して、その対象の単位に関連付けられた他の単位のイベント、モードおよびアクションの情報を表示する。
【0163】
ガイド表示部650は、対象の単位に付随する条件として、第1単位U21に記述される、いずれかのキーが押下された場合に無条件でキー入力音処理が実行されるという情報を表示する。
また、ガイド表示部650は、対象の単位において除外される条件として、第2単位U22に記述される、いずれかのキーが押下され、電源オフのモードの場合に、「何も処理を実行しない」という情報を表示する。
さらに、ガイド表示部650は、対象の単位において除外される条件として、第3単位U23に記述される、再生キーが押下され、再生可能条件を満たす場合に、再生し、かつ、その他再生関連処理が実行されるという情報を表示する。
【0164】
このように、ガイド表示部650は、対象となる単位に付随する別の単位のイベント、モードおよびアクションの情報を表示する。また、ガイド表示部650は、対象となる単位では除外されるイベント、モードおよびアクションの情報を表示する。これによって、ユーザは、対象の単位の入力を行う際に、優先順位が先の他の単位との条件の関連性を確認することができる。
【0165】
以上のとおり、第2実施形態のEMA型状態遷移表600においても、従来にない新規なイベント、モードおよびアクションの記載方法を用いることで、組合せの状態爆発が抑制される状態遷移表を提供することができる。
【0166】
なお、ガイド表示部650による表示は、上記の例に限定されない。ガイド表示部650は、イベント内容ごとに(例えば、
図21に示すES1「再生キー」)、複数の単位における条件の関係性を示すようにしても良い。
【0167】
ここで、優先順対応のEMA型状態遷移表600でも、一のアクションに対して、一のアクションが実行される際の条件としてイベントおよびモードが並べられた単位で表現されている。そして、EMA型状態遷移表600は、
図13を参照しながら説明したとおり、その表の構造に倣って疑似コードを作成することが容易になっている。すなわち、優先順対応のEMA型状態遷移表600は、オートコード化を容易にしている。
【0168】
また、表示部15は、優先順位非対応のEMA型状態遷移表500(
図19参照)と優先順位対応のEMA型状態遷移表600(
図20参照)とを相互に変換して表示画面30mに表示しても良い。すなわち、表示部15は、EMA型状態遷移表500の状態遷移の内容をEMA型状態遷移表600の態様に変換しても表示しても良い。一方、表示部15は、EMA型状態遷移表600の状態遷移の内容をEMA型状態遷移表500の態様に変換して表示しても良い。
【0169】
これによって、例えば共通する条件がまとめて表示されるEMA型状態遷移表600と、条件がそれぞれ表示されるEMA型状態遷移表500とをユーザが相互に確認することができるなど、優先順位対応の内容と優先順位非対応の内容との関係をユーザが比較することが可能になる。
【0170】
なお、上記では種々の実施形態および変形例を説明したが、これらの実施形態や変形例同士を組み合わせて構成してもよい。
また、本開示は上記の実施形態に何ら限定されるものではなく、本開示の要旨を逸脱しない範囲で種々の形態で実施することができる。
【符号の説明】
【0171】
1…情報処理システム、11…管理部、13…受付部、15…表示部、30…端末装置、50…モード編集画面、100,500,600…EMA型状態遷移表、111…イベント入力欄、112…モード入力欄、113…アクション入力欄、114…仕様理由入力欄、115…試験結果入力欄、116…判定入力欄、650…ガイド表示部
【手続補正書】
【提出日】2022-04-25
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける受付手段と、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する表示手段と、
を備え、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けることが可能なことを特徴とする情報処理システム。
【請求項2】
前記表示手段は、複数の前記他の単位のアクションに共通するアクションを前記一の単位に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記表示手段は、前記一の単位のアクションが複数の前記他の単位のアクションに共通することを示す共通表示を前記状態遷移表に表示する、ことを特徴とする請求項2に記載の情報処理システム。
【請求項4】
前記状態遷移表は、前記一の単位のイベントおよびモードの条件を前記他の単位において除外する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項5】
前記表示手段は、前記一の単位の前記イベントおよびモードの条件を前記他の単位において除外することを示す除外表示を前記状態遷移表に表示する、ことを特徴とする請求項4に記載の情報処理システム。
【請求項6】
前記表示手段は、前記一の単位のモードの条件から外れた条件を前記他の単位で用いるための特定記述を前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項7】
前記表示手段は、前記制御対象が処理を実行しないというアクションを前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項8】
前記表示手段は、異なる複数のモードをまとめて抽象化した抽象化モードを前記状態遷移表に表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項9】
前記表示手段は、前記状態遷移表において対象となる単位の指定を受け付けた際に、当該単位に関連する別の単位の条件を示す条件表示を表示する、ことを特徴とする請求項1に記載の情報処理システム。
【請求項10】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの組合せを示す状態遷移表を表示する表示装置であって、
イベント、モードおよびアクションの第1の組合せを横方向に並べた第1単位を表示する第1表示部と、
イベント、モードおよびアクションの第2の組合せを横方向に並べた第2単位を前記第1単位の下側に表示する第2表示部と、
イベント、モードおよびアクションの第3の組合せを横方向に並べた第3単位を前記第2単位の下側に表示する第3表示部と、
イベント、モードおよびアクションの第4の組合せを横方向に並べた第4単位を前記第3単位の下側に表示する第4表示部と、
前記第1単位の前記第1の組合せの条件を前記第2単位に含めることを示す包含情報を表示する包含表示部と、
前記第3単位の前記第3の組合せの条件を前記第4単位において除外することを示す除外情報を表示する除外表示部と、
を備えることを特徴とする表示装置。
【請求項11】
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付けるステップと、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示するステップと、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付けるステップと、
を備えることを特徴とする情報処理方法。
【請求項12】
コンピュータに、
制御対象にて生じるイベント、当該制御対象の状態であるモード、および当該制御対象が実行する処理であるアクションの入力を受け付ける機能と、
イベント、モードおよびアクションの組合せが第1軸方向において並べられた単位を、当該第1軸方向とは異なる第2軸方向において予め定められた順序で複数並べた状態遷移表を表示する機能と、
前記順序が先に記載される一の単位の条件を、当該一の単位よりも当該順序が後に記載される他の単位に関連付ける機能と、
を実現させるプログラム。