JPH06332686A - ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法 - Google Patents
ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法Info
- Publication number
- JPH06332686A JPH06332686A JP13984393A JP13984393A JPH06332686A JP H06332686 A JPH06332686 A JP H06332686A JP 13984393 A JP13984393 A JP 13984393A JP 13984393 A JP13984393 A JP 13984393A JP H06332686 A JPH06332686 A JP H06332686A
- Authority
- JP
- Japan
- Prior art keywords
- state
- user interface
- state transition
- software
- transition map
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】
【目的】 ユーザインタフェースの挙動をモデル化して
記述するユーザインタフェース挙動記述方法、ならびに
それを用いたユーザインタフェース装置、ソフトウェア
評価方法およびソフトウェア作成方法を得る。 【構成】 とり得る状態を示す状態ノード、状態遷移を
示すトランジション、状態遷移のトリガとなったイベン
トノード、それらを結ぶ有向アークによるネットワーク
を用いてモデル化した状態遷移マップによってユーザイ
ンタフェースの挙動を記述し、また、その状態遷移マッ
プを用いて、知的なガイダンスを行うユーザインタフェ
ース装置、ソフトウェアを評価するソフトウェア評価方
法、およびソフトウェアを自動作成するソフトウェア作
成方法を実現する。
記述するユーザインタフェース挙動記述方法、ならびに
それを用いたユーザインタフェース装置、ソフトウェア
評価方法およびソフトウェア作成方法を得る。 【構成】 とり得る状態を示す状態ノード、状態遷移を
示すトランジション、状態遷移のトリガとなったイベン
トノード、それらを結ぶ有向アークによるネットワーク
を用いてモデル化した状態遷移マップによってユーザイ
ンタフェースの挙動を記述し、また、その状態遷移マッ
プを用いて、知的なガイダンスを行うユーザインタフェ
ース装置、ソフトウェアを評価するソフトウェア評価方
法、およびソフトウェアを自動作成するソフトウェア作
成方法を実現する。
Description
【0001】
【産業上の利用分野】この発明は、例えばグラフィック
ス機能を備えたエンジニアリングワークステーションや
プラント監視装置などで、ユーザインタフェースの挙動
を記述するためのユーザインタフェース挙動記述方法、
ならびにそれを用いたユーザインタフェース装置、ソフ
トウェア評価方法およびソフトウェア作成方法に関する
ものである。
ス機能を備えたエンジニアリングワークステーションや
プラント監視装置などで、ユーザインタフェースの挙動
を記述するためのユーザインタフェース挙動記述方法、
ならびにそれを用いたユーザインタフェース装置、ソフ
トウェア評価方法およびソフトウェア作成方法に関する
ものである。
【0002】
【従来の技術】図14は例えば、特開平2−1026号
公報に示された従来のユーザインタフェース装置を示す
構成図である。図において、1は当該ユーザインタフェ
ース装置の全体制御を行う中央処理装置(以下CPUと
いう)であり、2はこのCPU1にバス接続されたメモ
リである。このメモリ2内において、2aはアプリケー
ションの対話的操作を判断して処理を実行するユーザイ
ンタフェース制御プログラムであり、2b1は後述する
ディスプレイのユーザインタフェース画面に表示される
入力オブジェクト、2b2は同じく出力オブジェクトで
ある。2cはアプリケーションが行う挙動を記述するエ
ディタバッファであり、2dは前記入力オブジェクト2
b1と出力オブジェクト2b2の関係を記述するアクシ
ョンメソッドである。3はソフトウェア設計者などのユ
ーザが入力の際に操作するキーボード、4は同じくマウ
スであり、5は前記ユーザインタフェース画面が表示さ
れるディスプレイである。
公報に示された従来のユーザインタフェース装置を示す
構成図である。図において、1は当該ユーザインタフェ
ース装置の全体制御を行う中央処理装置(以下CPUと
いう)であり、2はこのCPU1にバス接続されたメモ
リである。このメモリ2内において、2aはアプリケー
ションの対話的操作を判断して処理を実行するユーザイ
ンタフェース制御プログラムであり、2b1は後述する
ディスプレイのユーザインタフェース画面に表示される
入力オブジェクト、2b2は同じく出力オブジェクトで
ある。2cはアプリケーションが行う挙動を記述するエ
ディタバッファであり、2dは前記入力オブジェクト2
b1と出力オブジェクト2b2の関係を記述するアクシ
ョンメソッドである。3はソフトウェア設計者などのユ
ーザが入力の際に操作するキーボード、4は同じくマウ
スであり、5は前記ユーザインタフェース画面が表示さ
れるディスプレイである。
【0003】また、図15は従来のユーザインタフェー
ス装置における入力オブジェクトの挙動の、アプリケー
ションの該当する箇所への記述を説明するための概念図
である。図において、6はマウス4でクリックされるボ
タンオブジェクトであり、7はボタンオブジェクト6の
クリックによって表示されるメニューである。8はメニ
ュー7の選択によって開かれる専用窓であり、8aはそ
の窓である。
ス装置における入力オブジェクトの挙動の、アプリケー
ションの該当する箇所への記述を説明するための概念図
である。図において、6はマウス4でクリックされるボ
タンオブジェクトであり、7はボタンオブジェクト6の
クリックによって表示されるメニューである。8はメニ
ュー7の選択によって開かれる専用窓であり、8aはそ
の窓である。
【0004】次に動作について説明する。入力オブジェ
クト2b1は出力オブジェクト2b2との関係を記述す
るためのアクションメソッド2dを有しており、入力オ
ブジェクト2b1および出力オブジェクト2b2はディ
スプレイ5のユーザインタフェース画面に表示される。
ソフトウェア設計者は、そのディスプレイ5のユーザイ
ンタフェース画面を見ながら、入力オブジェクト2b1
の挙動をアプリケーションの該当する箇所に記述する。
挙動の記述は、例えばマウス4でボタンオブジェクト6
をクリックすることによってメニュー7を表示し、その
メニュー7によって行動を選択して専用窓8を開く。次
いで、ソフトウェア設計者が当該専用窓8の窓8aにア
プリケーションが行う挙動を記述すると、それがエディ
タバッファ2cに保持されているアプリケーションの該
当箇所に記述される。このような構成によって、ユーザ
インタフェースが対話的な操作で作成される。
クト2b1は出力オブジェクト2b2との関係を記述す
るためのアクションメソッド2dを有しており、入力オ
ブジェクト2b1および出力オブジェクト2b2はディ
スプレイ5のユーザインタフェース画面に表示される。
ソフトウェア設計者は、そのディスプレイ5のユーザイ
ンタフェース画面を見ながら、入力オブジェクト2b1
の挙動をアプリケーションの該当する箇所に記述する。
挙動の記述は、例えばマウス4でボタンオブジェクト6
をクリックすることによってメニュー7を表示し、その
メニュー7によって行動を選択して専用窓8を開く。次
いで、ソフトウェア設計者が当該専用窓8の窓8aにア
プリケーションが行う挙動を記述すると、それがエディ
タバッファ2cに保持されているアプリケーションの該
当箇所に記述される。このような構成によって、ユーザ
インタフェースが対話的な操作で作成される。
【0005】
【発明が解決しようとする課題】従来のユーザインタフ
ェース装置は以上のように構成されているので、ユーザ
インタフェースの挙動はモデルとして作成されず、従っ
て、知的なガイダンスを行ったり、ソフトウェアの評価
をすることができないなどの問題点があった。
ェース装置は以上のように構成されているので、ユーザ
インタフェースの挙動はモデルとして作成されず、従っ
て、知的なガイダンスを行ったり、ソフトウェアの評価
をすることができないなどの問題点があった。
【0006】この発明は上記のような問題点を解消する
ためになされたもので、ユーザインタフェースの挙動を
状態遷移マップの形でモデル化して記述するユーザイン
タフェース挙動記述方法、ならびにそれを用いた知的な
ガイダンス機能を有するユーザインタフェース装置、ソ
フトウェア評価方法およびソフトウェア作成方法を得る
ことを目的とする。
ためになされたもので、ユーザインタフェースの挙動を
状態遷移マップの形でモデル化して記述するユーザイン
タフェース挙動記述方法、ならびにそれを用いた知的な
ガイダンス機能を有するユーザインタフェース装置、ソ
フトウェア評価方法およびソフトウェア作成方法を得る
ことを目的とする。
【0007】
【課題を解決するための手段】請求項1に記載の発明に
係るユーザインタフェース挙動記述方法は、ユーザイン
タフェース装置の挙動を、ユーザインタフェースのとり
得る状態を状態ノードで表現し、一方の状態から他方の
状態への状態遷移を表現するトランジションを、それら
の状態を表わす状態ノードの間に置いて、それら相互を
有向アークで結び、その状態遷移が発生するトリガとな
ったイベントをイベントノードで表わしてトランジショ
ンとの間を有向アークで結んだ状態遷移マップによって
記述するものである。
係るユーザインタフェース挙動記述方法は、ユーザイン
タフェース装置の挙動を、ユーザインタフェースのとり
得る状態を状態ノードで表現し、一方の状態から他方の
状態への状態遷移を表現するトランジションを、それら
の状態を表わす状態ノードの間に置いて、それら相互を
有向アークで結び、その状態遷移が発生するトリガとな
ったイベントをイベントノードで表わしてトランジショ
ンとの間を有向アークで結んだ状態遷移マップによって
記述するものである。
【0008】また、請求項2に記載の発明に係るユーザ
インタフェース挙動記述方法は、既存のソフトウェアの
ユーザインタフェース装置上での挙動を、そのソースコ
ードのイベント処理関数とコールバック関数から分析
し、当該ユーザインタフェースの挙動を記述した状態遷
移マップを作成するものである。
インタフェース挙動記述方法は、既存のソフトウェアの
ユーザインタフェース装置上での挙動を、そのソースコ
ードのイベント処理関数とコールバック関数から分析
し、当該ユーザインタフェースの挙動を記述した状態遷
移マップを作成するものである。
【0009】また、請求項3に記載の発明に係るユーザ
インタフェース挙動記述方法は、ユーザインタフェース
装置上で動作するソフトウェアを新たに作成する際、そ
のソースコードの作成過程でイベント処理関数とコール
バック関数を順次分析して状態遷移マップを作成するも
のである。
インタフェース挙動記述方法は、ユーザインタフェース
装置上で動作するソフトウェアを新たに作成する際、そ
のソースコードの作成過程でイベント処理関数とコール
バック関数を順次分析して状態遷移マップを作成するも
のである。
【0010】また、請求項4に記載の発明に係るユーザ
インタフェース装置は、ソフトウェア実行時にヘルプイ
ベントが発生した場合、当該ユーザインタフェースの状
態を状態遷移マップとその中のトークンという形式でユ
ーザに提供する状態遷移マップ管理モジュールを設けた
ものである。
インタフェース装置は、ソフトウェア実行時にヘルプイ
ベントが発生した場合、当該ユーザインタフェースの状
態を状態遷移マップとその中のトークンという形式でユ
ーザに提供する状態遷移マップ管理モジュールを設けた
ものである。
【0011】また、請求項5に記載の発明に係るユーザ
インタフェース装置は、ソフトウェア実行時にヘルプイ
ベントが発生した場合、今後選択可能なイベントを予測
して適切なガイダンスを作成し、それをユーザに提供す
るガイダンス提供モジュールも設けたものである。
インタフェース装置は、ソフトウェア実行時にヘルプイ
ベントが発生した場合、今後選択可能なイベントを予測
して適切なガイダンスを作成し、それをユーザに提供す
るガイダンス提供モジュールも設けたものである。
【0012】また、請求項6に記載の発明に係るユーザ
インタフェース装置は、状態遷移マップ上でそのソフト
ウェアの動きを一旦トレースした情報を記録/再生する
状態トレースモジュールを設け、状態トレースモジュー
ルの再生した情報に基づいて状態遷移マップ上でトーク
ンの動きを再現する機能を状態遷移マップ管理モジュー
ルに持たせたものである。
インタフェース装置は、状態遷移マップ上でそのソフト
ウェアの動きを一旦トレースした情報を記録/再生する
状態トレースモジュールを設け、状態トレースモジュー
ルの再生した情報に基づいて状態遷移マップ上でトーク
ンの動きを再現する機能を状態遷移マップ管理モジュー
ルに持たせたものである。
【0013】また、請求項7に記載の発明に係るソフト
ウェア評価方法は、該当するソフトウェアの状態遷移マ
ップとユーザが別途作成した対象記述との構造を解釈、
比較することで、構築されたユーザインタフェースの挙
動を評価するものである。
ウェア評価方法は、該当するソフトウェアの状態遷移マ
ップとユーザが別途作成した対象記述との構造を解釈、
比較することで、構築されたユーザインタフェースの挙
動を評価するものである。
【0014】また、請求項8に記載の発明に係るソフト
ウェア作成方法は、ユーザが入力した状態遷移マップを
解釈して各モード遷移毎に分解し、それぞれソースコー
ドに変換してゆくものである。
ウェア作成方法は、ユーザが入力した状態遷移マップを
解釈して各モード遷移毎に分解し、それぞれソースコー
ドに変換してゆくものである。
【0015】
【作用】請求項1に記載の発明におけるユーザインタフ
ェース挙動記述方法は、ユーザインタフェース装置の挙
動を、とり得る状態を示す状態ノード、状態ノードの間
に置かれたトランジション、状態遷移のトリガとなった
イベントノード、およびそれらを結ぶ有向アークで記述
することにより、ユーザインタフェースの挙動を状態遷
移マップの形でモデル化して記述することが可能なユー
ザインタフェース挙動記述方法を実現する。
ェース挙動記述方法は、ユーザインタフェース装置の挙
動を、とり得る状態を示す状態ノード、状態ノードの間
に置かれたトランジション、状態遷移のトリガとなった
イベントノード、およびそれらを結ぶ有向アークで記述
することにより、ユーザインタフェースの挙動を状態遷
移マップの形でモデル化して記述することが可能なユー
ザインタフェース挙動記述方法を実現する。
【0016】また、請求項2に記載の発明におけるユー
ザインタフェース挙動記述方法は、ユーザインタフェー
ス装置上で動作する既存のソフトウェアのソースコード
を分析することにより、当該ソフトウェアの状態遷移マ
ップを作成する。
ザインタフェース挙動記述方法は、ユーザインタフェー
ス装置上で動作する既存のソフトウェアのソースコード
を分析することにより、当該ソフトウェアの状態遷移マ
ップを作成する。
【0017】また、請求項3に記載の発明におけるユー
ザインタフェース挙動記述方法は、ユーザインタフェー
ス装置上で動作する新たなにソフトウェアの作成時にそ
のソースコードを順次分析することにより、当該ソフト
ウェアの状態遷移マップを作成する。
ザインタフェース挙動記述方法は、ユーザインタフェー
ス装置上で動作する新たなにソフトウェアの作成時にそ
のソースコードを順次分析することにより、当該ソフト
ウェアの状態遷移マップを作成する。
【0018】また、請求項4に記載の発明における状態
遷移マップ管理モジュールは、ヘルプイベント発生時
に、当該ユーザインタフェースの状態を状態遷移マップ
とその中のトークンという形式でユーザに提供すること
により、ソフトウェアの実行時にシステムの状態を状態
遷移マップを用いてユーザに知らせることができるユー
ザインタフェース装置を実現する。
遷移マップ管理モジュールは、ヘルプイベント発生時
に、当該ユーザインタフェースの状態を状態遷移マップ
とその中のトークンという形式でユーザに提供すること
により、ソフトウェアの実行時にシステムの状態を状態
遷移マップを用いてユーザに知らせることができるユー
ザインタフェース装置を実現する。
【0019】また、請求項5に記載の発明におけるガイ
ダンス提供モジュールは、ヘルプイベント発生時にユー
ザインタフェースの状態を問い合わせて今後選択可能な
イベントを予測することにより、ソフトウェア実行時に
適切な操作ガイダンスを作成し、状態遷移マップを用い
てユーザに提供する。
ダンス提供モジュールは、ヘルプイベント発生時にユー
ザインタフェースの状態を問い合わせて今後選択可能な
イベントを予測することにより、ソフトウェア実行時に
適切な操作ガイダンスを作成し、状態遷移マップを用い
てユーザに提供する。
【0020】また、請求項6に記載の発明におけるユー
ザインタフェース装置は、ソフトウェアの動きを一旦状
態遷移マップ上でトレースされた情報を記録し、それを
再生することにより、記録時とまったく同じソフトウェ
アの動きを再現する。
ザインタフェース装置は、ソフトウェアの動きを一旦状
態遷移マップ上でトレースされた情報を記録し、それを
再生することにより、記録時とまったく同じソフトウェ
アの動きを再現する。
【0021】また、請求項7に記載の発明におけるソフ
トウェア評価方法は、該当ソフトウェアの状態遷移マッ
プと別途作成された対象記述とを比較することにより、
構築されたユーザインタフェースの挙動を評価する。
トウェア評価方法は、該当ソフトウェアの状態遷移マッ
プと別途作成された対象記述とを比較することにより、
構築されたユーザインタフェースの挙動を評価する。
【0022】また、請求項8に記載の発明におけるソフ
トウェア作成方法は、ユーザが入力した状態遷移マップ
を解釈して分解した各モード遷移毎にソースコードへの
変換を行ってゆくことにより、ユーザインタフェース装
置上で動作するソフトウェアを自動作成する。
トウェア作成方法は、ユーザが入力した状態遷移マップ
を解釈して分解した各モード遷移毎にソースコードへの
変換を行ってゆくことにより、ユーザインタフェース装
置上で動作するソフトウェアを自動作成する。
【0023】
実施例1.以下、この発明の実施例1を図について説明
する。図1は請求項1に記載したユーザインタフェース
挙動記述方法に関する発明の一実施例による状態遷移マ
ップの記述の方法を示す説明図である。図において、1
1はユーザインタフェースのとり得る各種状態を表現す
る状態ノードであり、12はある状態(状態A)と他の
状態(状態B)を表わす2つの状態ノード11の間に置
かれ、前記状態Aから状態Bへの状態遷移を表現するト
ランジションである。13は状態Aを示す状態ノード1
1とトランジション12の間、あるいはトランジション
12と状態Bを示す状態ノード11の間を結ぶ有向アー
クで、その方向はいずれも状態Aから状態Bへ向かうも
のである。14は前記状態遷移が何らかのきっかけ、即
ちトリガによって発生する場合に、そのトリガとなった
イベントを表現するイベントノードであり、15はこの
イベントノード14とそれによる状態変化を表現するト
ランジション12の間を結ぶ、イベントノード14から
トランジション12に向かう有向アークである。
する。図1は請求項1に記載したユーザインタフェース
挙動記述方法に関する発明の一実施例による状態遷移マ
ップの記述の方法を示す説明図である。図において、1
1はユーザインタフェースのとり得る各種状態を表現す
る状態ノードであり、12はある状態(状態A)と他の
状態(状態B)を表わす2つの状態ノード11の間に置
かれ、前記状態Aから状態Bへの状態遷移を表現するト
ランジションである。13は状態Aを示す状態ノード1
1とトランジション12の間、あるいはトランジション
12と状態Bを示す状態ノード11の間を結ぶ有向アー
クで、その方向はいずれも状態Aから状態Bへ向かうも
のである。14は前記状態遷移が何らかのきっかけ、即
ちトリガによって発生する場合に、そのトリガとなった
イベントを表現するイベントノードであり、15はこの
イベントノード14とそれによる状態変化を表現するト
ランジション12の間を結ぶ、イベントノード14から
トランジション12に向かう有向アークである。
【0024】次に動作について説明する。ユーザインタ
フェースがある状態(状態A)から他の状態(状態B)
に状態変化する場合には、まずそれぞれの状態を丸印の
状態ノード11で表現し、この2つの状態ノード11の
間に、状態Aから状態Bへの状態遷移を表わすトランジ
ション12を置く。そして、これら状態Aを表わす状態
ノード11とトランジション12との間、およびトラン
ジション12と状態Bを表わす状態ノード11との間
を、状態Aを表わす状態ノード11から状態Bを表わす
状態ノード11へ向かう有向アーク13でそれぞれ結ぶ
ことによってそれを記述する。ここで、前記状態遷移が
何らかのきっかけ、即ちトリガによって起こる場合に
は、そのトリガとなるイベントをイベントノード14で
表現し、当該イベントノード14と前記トランジション
12との間を、イベントノード14からトランジション
12に向かう有向アーク15で結ぶことによってそれを
記述する。
フェースがある状態(状態A)から他の状態(状態B)
に状態変化する場合には、まずそれぞれの状態を丸印の
状態ノード11で表現し、この2つの状態ノード11の
間に、状態Aから状態Bへの状態遷移を表わすトランジ
ション12を置く。そして、これら状態Aを表わす状態
ノード11とトランジション12との間、およびトラン
ジション12と状態Bを表わす状態ノード11との間
を、状態Aを表わす状態ノード11から状態Bを表わす
状態ノード11へ向かう有向アーク13でそれぞれ結ぶ
ことによってそれを記述する。ここで、前記状態遷移が
何らかのきっかけ、即ちトリガによって起こる場合に
は、そのトリガとなるイベントをイベントノード14で
表現し、当該イベントノード14と前記トランジション
12との間を、イベントノード14からトランジション
12に向かう有向アーク15で結ぶことによってそれを
記述する。
【0025】以下、この実施例1の具体例として、メニ
ューの動作を状態遷移マップで記述する場合について説
明する。図2は状態遷移マップで記述しようとするユー
ザインタフェースの一例を示す説明図であり、この場
合、メニューは「項目A」21、「項目B」22、「終
了」23の3つの項目から成っている。ここで、「項目
A」22を選択すると“項目Aが選択”のメッセージ
を、「項目B」23を選択すると“項目Bが選択”のメ
ッセージを表示し、「終了」23を選択するとメニュー
を消去してプログラムを終了させるという動作を行うも
のである。
ューの動作を状態遷移マップで記述する場合について説
明する。図2は状態遷移マップで記述しようとするユー
ザインタフェースの一例を示す説明図であり、この場
合、メニューは「項目A」21、「項目B」22、「終
了」23の3つの項目から成っている。ここで、「項目
A」22を選択すると“項目Aが選択”のメッセージ
を、「項目B」23を選択すると“項目Bが選択”のメ
ッセージを表示し、「終了」23を選択するとメニュー
を消去してプログラムを終了させるという動作を行うも
のである。
【0026】また、図3はこのようなメニュー動作の状
態遷移マップによる記述の方法を示す説明図である。こ
の場合、状態ノードとしては、「初期化」11a、「メ
ニュー表示」11b、「“項目Aが選択”を印字」11
c、「“項目Bが選択”を印字」11d、「メニュー消
去」11e、および「処理終了」11fなどがあり、そ
れら各状態ノード11a〜11fの間にはそれぞれの状
態遷移を表わすトランジション12a〜12gが置か
れ、有向アーク13a〜13nによって相互に結ばれて
いる。また、イベントノードとしては、「項目A選択」
14a、「項目B選択」14b、および「終了選択」1
4cなどがあり、それぞれ対応するトランジション12
b、12dあるいは12fに有向アーク15a〜15c
によって結ばれている。
態遷移マップによる記述の方法を示す説明図である。こ
の場合、状態ノードとしては、「初期化」11a、「メ
ニュー表示」11b、「“項目Aが選択”を印字」11
c、「“項目Bが選択”を印字」11d、「メニュー消
去」11e、および「処理終了」11fなどがあり、そ
れら各状態ノード11a〜11fの間にはそれぞれの状
態遷移を表わすトランジション12a〜12gが置か
れ、有向アーク13a〜13nによって相互に結ばれて
いる。また、イベントノードとしては、「項目A選択」
14a、「項目B選択」14b、および「終了選択」1
4cなどがあり、それぞれ対応するトランジション12
b、12dあるいは12fに有向アーク15a〜15c
によって結ばれている。
【0027】このような状態遷移マップで記述されたユ
ーザインタフェースのプログラムでは、まず「初期化」
の状態から「メニュー表示」の状態に遷移してユーザか
らの入力待ちの状態となる。この「メニュー表示」の状
態から次の状態に遷移するためにはイベントの入力が必
要であり、入力されるイベントの種類によって次にとる
状態が異なってくる。このような形でユーザインタフェ
ースの挙動が表現できるのは、外部からのイベントの入
力によってその振舞が規定されており、状態遷移マップ
がその特徴をよく表現しているからである。また、状態
遷移マップ上でどの状態にあるかについては、状態ノー
ド11a〜11f上にトークンと呼ばれる印をおいて表
現する。従って、このトークンの移動を監視すること
で、外部から当該ユーザインタフェースが現在どのよう
な状態にあるのかを把握することができる。
ーザインタフェースのプログラムでは、まず「初期化」
の状態から「メニュー表示」の状態に遷移してユーザか
らの入力待ちの状態となる。この「メニュー表示」の状
態から次の状態に遷移するためにはイベントの入力が必
要であり、入力されるイベントの種類によって次にとる
状態が異なってくる。このような形でユーザインタフェ
ースの挙動が表現できるのは、外部からのイベントの入
力によってその振舞が規定されており、状態遷移マップ
がその特徴をよく表現しているからである。また、状態
遷移マップ上でどの状態にあるかについては、状態ノー
ド11a〜11f上にトークンと呼ばれる印をおいて表
現する。従って、このトークンの移動を監視すること
で、外部から当該ユーザインタフェースが現在どのよう
な状態にあるのかを把握することができる。
【0028】実施例2.次に、この発明の実施例2を図
について説明する。図4は請求項2に記載したユーザイ
ンタフェース挙動記述方法に関する発明の一実施例を示
す説明図で、既存のユーザインタフェースの状態遷移マ
ップを、そのソースコードから作成する際の処理の流れ
を示している。図において、31は既存のグラフィカル
ユーザインタフェースのソースコードであり、32はそ
のソースコードを分析する分析手段、33はこの分析手
段32の分析結果に基づいて作成された状態遷移マップ
である。
について説明する。図4は請求項2に記載したユーザイ
ンタフェース挙動記述方法に関する発明の一実施例を示
す説明図で、既存のユーザインタフェースの状態遷移マ
ップを、そのソースコードから作成する際の処理の流れ
を示している。図において、31は既存のグラフィカル
ユーザインタフェースのソースコードであり、32はそ
のソースコードを分析する分析手段、33はこの分析手
段32の分析結果に基づいて作成された状態遷移マップ
である。
【0029】次に動作について説明する。ここで、例え
ばXウインドウなどを用いたユーザインタフェースで
は、外部からのイベントと対応する処理を関連づけるた
めに特定のライブラリを呼び出す必要がある。そこで、
この特定の関数に着目してソースコードを解析すること
により、状態遷移マップを作成することができる。図5
はこの状態遷移マップを作成する分析手段32の処理手
順を示すフローチャートである。
ばXウインドウなどを用いたユーザインタフェースで
は、外部からのイベントと対応する処理を関連づけるた
めに特定のライブラリを呼び出す必要がある。そこで、
この特定の関数に着目してソースコードを解析すること
により、状態遷移マップを作成することができる。図5
はこの状態遷移マップを作成する分析手段32の処理手
順を示すフローチャートである。
【0030】まず、ステップST1において分析するソ
ースコード31を読み込み、次にステップST2にてイ
ベント処理の登録部分を抜き出して、イベント処理の本
体となる関数を探す。なお、このイベント処理の登録部
分は“XtAddEventHandler”などの特
定の関数名で判別可能である。次に、ステップST3で
そのイベント処理の本体となる関数(ハンドラ)を分析
し、その関数の内部でウインドウの表示、消去などの表
示関連の状態がどのように変化するかを分析する。次に
ステップST4において、ステップST2のイベント処
理部分で行ったのと同様に、“XtAddCollba
ck”などの特定の関数名でコールバックの登録部分を
抜き出してコールバック関数本体を探し、ステップST
5でそのコールバック関数本体の分析を行う。そして、
ステップST6にて、前記ステップST3およびST5
における分析結果の情報をもとに状態遷移マップ33を
メモリ上に作成し、それをステップST7で外部ファイ
ルに出力する。
ースコード31を読み込み、次にステップST2にてイ
ベント処理の登録部分を抜き出して、イベント処理の本
体となる関数を探す。なお、このイベント処理の登録部
分は“XtAddEventHandler”などの特
定の関数名で判別可能である。次に、ステップST3で
そのイベント処理の本体となる関数(ハンドラ)を分析
し、その関数の内部でウインドウの表示、消去などの表
示関連の状態がどのように変化するかを分析する。次に
ステップST4において、ステップST2のイベント処
理部分で行ったのと同様に、“XtAddCollba
ck”などの特定の関数名でコールバックの登録部分を
抜き出してコールバック関数本体を探し、ステップST
5でそのコールバック関数本体の分析を行う。そして、
ステップST6にて、前記ステップST3およびST5
における分析結果の情報をもとに状態遷移マップ33を
メモリ上に作成し、それをステップST7で外部ファイ
ルに出力する。
【0031】実施例3.次に、この発明の実施例3を図
について説明する。図6は請求項3に記載したユーザイ
ンタフェース挙動記述方法に関する発明の一実施例を示
す説明図で、新たにソフトウェアを作成する場合に、グ
ラフィカルユーザインタフェースのソースコードととも
に状態遷移マップを作成する際の処理の流れを示してい
る。図において、34は画面デザインを定義する画面デ
ザイン定義であり、35は状態遷移マップ33とともに
作成されるユーザインタフェース構成データである。3
6は前記画面デザイン定義34をはじめとして、当該ユ
ーザインタフェースの挙動の定義、コールバック関数な
どの定義に基づいて、前記ユーザインタフェース構成デ
ータ35とともに状態遷移マップ33を作成するユーザ
インタフェース設計ツールである。
について説明する。図6は請求項3に記載したユーザイ
ンタフェース挙動記述方法に関する発明の一実施例を示
す説明図で、新たにソフトウェアを作成する場合に、グ
ラフィカルユーザインタフェースのソースコードととも
に状態遷移マップを作成する際の処理の流れを示してい
る。図において、34は画面デザインを定義する画面デ
ザイン定義であり、35は状態遷移マップ33とともに
作成されるユーザインタフェース構成データである。3
6は前記画面デザイン定義34をはじめとして、当該ユ
ーザインタフェースの挙動の定義、コールバック関数な
どの定義に基づいて、前記ユーザインタフェース構成デ
ータ35とともに状態遷移マップ33を作成するユーザ
インタフェース設計ツールである。
【0032】次に動作について説明する。グラフィカル
ユーザインタフェースのソフトウェアを新たに作成する
際、ユーザであるソフトウェア作成者はこのユーザイン
タフェース設計ツールを用い、メニュー、ボタン、ブリ
テンボード、ラベル、フレームの選択を行って画面上で
組合せることにより、画面デザインと機能の記述を反映
したソースコードと状態遷移マップ33とを対話的に得
ることができる。図7はこのユーザインタフェース設計
ツール36の処理手順を示すフローチャートである。
ユーザインタフェースのソフトウェアを新たに作成する
際、ユーザであるソフトウェア作成者はこのユーザイン
タフェース設計ツールを用い、メニュー、ボタン、ブリ
テンボード、ラベル、フレームの選択を行って画面上で
組合せることにより、画面デザインと機能の記述を反映
したソースコードと状態遷移マップ33とを対話的に得
ることができる。図7はこのユーザインタフェース設計
ツール36の処理手順を示すフローチャートである。
【0033】まず、ステップST11で新たな部品の登
録の有無を判定して、新たな部品があればステップST
12にてグラフィカルユーザインタフェースの構成部品
の選択を行い、ステップST13でレイアウトを決めて
部品の配置を行う。次に、ステップST14においてユ
ーザ定義イベントを付加する必要があるか否かを判定
し、必要があればステップST15でイベント処理関数
を登録してその内容を定義する。次に、ステップST1
6においてコールバック関数の登録の必要性を判定し、
必要があればステップST17でコールバック間数名の
登録と関数本体の記述を行う。そして、ステップST1
8にて、前記ステップST15およびST17で登録さ
れた情報をもとに、その時点での状態遷移マップ情報を
作成して処理をステップST11に戻す。通常は複数の
部品によってユーザインタフェースは構成されるので、
部品が新たに登録される度に以上の処理が繰り返され、
その都度状態遷移マップ情報は更新される。すべての部
品の入力が終了すると、処理はステップST11からス
テップST19に渡され、画面の構成データおよび最終
的な状態遷移マップ33が外部ファイルにそれぞれ出力
される。
録の有無を判定して、新たな部品があればステップST
12にてグラフィカルユーザインタフェースの構成部品
の選択を行い、ステップST13でレイアウトを決めて
部品の配置を行う。次に、ステップST14においてユ
ーザ定義イベントを付加する必要があるか否かを判定
し、必要があればステップST15でイベント処理関数
を登録してその内容を定義する。次に、ステップST1
6においてコールバック関数の登録の必要性を判定し、
必要があればステップST17でコールバック間数名の
登録と関数本体の記述を行う。そして、ステップST1
8にて、前記ステップST15およびST17で登録さ
れた情報をもとに、その時点での状態遷移マップ情報を
作成して処理をステップST11に戻す。通常は複数の
部品によってユーザインタフェースは構成されるので、
部品が新たに登録される度に以上の処理が繰り返され、
その都度状態遷移マップ情報は更新される。すべての部
品の入力が終了すると、処理はステップST11からス
テップST19に渡され、画面の構成データおよび最終
的な状態遷移マップ33が外部ファイルにそれぞれ出力
される。
【0034】実施例4.次に、この発明の実施例4を図
について説明する。図8は請求項4に記載したユーザイ
ンタフェース装置に関する発明の一実施例を示す構成図
である。図において、41は図14に示した従来のメモ
リ2に対応するグラフィカルユーザインタフェース本体
モジュールであり、42は状態遷移マップのデータが格
納されている状態遷移マップデータ格納手段である。4
3はソフトウェア実行時において、入力されたイベント
情報と状態遷移マップ格納手段42に格納された状態遷
移マップによってその動作状態を監視し、イベント情報
がヘルプイベントであった場合に、当該ユーザインタフ
ェースの状態を状態遷移マップとその中のトークンとい
う形式でユーザに提供する状態遷移マップ管理モジュー
ルである。
について説明する。図8は請求項4に記載したユーザイ
ンタフェース装置に関する発明の一実施例を示す構成図
である。図において、41は図14に示した従来のメモ
リ2に対応するグラフィカルユーザインタフェース本体
モジュールであり、42は状態遷移マップのデータが格
納されている状態遷移マップデータ格納手段である。4
3はソフトウェア実行時において、入力されたイベント
情報と状態遷移マップ格納手段42に格納された状態遷
移マップによってその動作状態を監視し、イベント情報
がヘルプイベントであった場合に、当該ユーザインタフ
ェースの状態を状態遷移マップとその中のトークンとい
う形式でユーザに提供する状態遷移マップ管理モジュー
ルである。
【0035】次に動作について説明する。まず、グラフ
ィカルユーザインタフェース本体モジュール41より状
態遷移マップ管理モジュール43に対してイベント情報
が送られる。状態遷移マップ管理モジュール43はその
イベント情報を受けると、対応するソフトウェアの状態
遷移マップを状態遷移マップデータ格納手段42より読
み込んで、そのイベント情報と状態遷移マップにより当
該ユーザインタフェースの動作状態を監視する。これに
よって状態遷移マップ管理モジュール43は、このユー
ザインタフェースが状態遷移マップ上のどのような状態
にあるのかを管理する。ユーザがグラフィカルユーザイ
ンタフェース本体モジュール41を介してヘルプイベン
トを入力した場合、状態遷移マップ管理モジュール43
はその時のユーザインタフェースの状態を、状態遷移マ
ップとその中のトークンという形式でユーザに提示す
る。
ィカルユーザインタフェース本体モジュール41より状
態遷移マップ管理モジュール43に対してイベント情報
が送られる。状態遷移マップ管理モジュール43はその
イベント情報を受けると、対応するソフトウェアの状態
遷移マップを状態遷移マップデータ格納手段42より読
み込んで、そのイベント情報と状態遷移マップにより当
該ユーザインタフェースの動作状態を監視する。これに
よって状態遷移マップ管理モジュール43は、このユー
ザインタフェースが状態遷移マップ上のどのような状態
にあるのかを管理する。ユーザがグラフィカルユーザイ
ンタフェース本体モジュール41を介してヘルプイベン
トを入力した場合、状態遷移マップ管理モジュール43
はその時のユーザインタフェースの状態を、状態遷移マ
ップとその中のトークンという形式でユーザに提示す
る。
【0036】実施例5.次に、この発明の実施例5を図
について説明する。図9は請求項5に記載したユーザイ
ンタフェース装置に関する発明の一実施例を示す構成図
であり、図において、44は状態遷移マップの状態を解
釈して知的なガイダンスを行うガイダンス提供モジュー
ルである。この実施例5は前述の実施例4に示したユー
ザインタフェース装置の構成に、このガイダンス提供モ
ジュール44を付加したものである。従って、他の部分
には図8の対応部分と同一の符号を付してその説明は省
略する。
について説明する。図9は請求項5に記載したユーザイ
ンタフェース装置に関する発明の一実施例を示す構成図
であり、図において、44は状態遷移マップの状態を解
釈して知的なガイダンスを行うガイダンス提供モジュー
ルである。この実施例5は前述の実施例4に示したユー
ザインタフェース装置の構成に、このガイダンス提供モ
ジュール44を付加したものである。従って、他の部分
には図8の対応部分と同一の符号を付してその説明は省
略する。
【0037】次に動作について説明する。ガイダンス提
供モジュール44はヘルプイベントが送られてくると、
当該ユーザインタフェースの状態を状態遷移マップ管理
モジュール43に問い合わせて現在の状態を解釈し、さ
らに今後選択可能なイベントの予測を行って適切なガイ
ダンスを作成し、それをユーザに提供する。これによ
り、ソフトウェア実行時に、知的なガイダンスを状態遷
移マップを用いてユーザに提供することが可能となる。
供モジュール44はヘルプイベントが送られてくると、
当該ユーザインタフェースの状態を状態遷移マップ管理
モジュール43に問い合わせて現在の状態を解釈し、さ
らに今後選択可能なイベントの予測を行って適切なガイ
ダンスを作成し、それをユーザに提供する。これによ
り、ソフトウェア実行時に、知的なガイダンスを状態遷
移マップを用いてユーザに提供することが可能となる。
【0038】実施例6.次に、この発明の実施例6を図
について説明する。図10は請求項6に記載したユーザ
インタフェース装置に関する発明の一実施例を示す構成
図であり、図中、45は状態遷移マップ管理モジュール
43に入力されたイベント情報と、状態遷移マップ上の
その時のトークンの動きとを記録/再生する状態トレー
スモジュールであり、46はこの状態トレースモジュー
ル45によって前記イベント情報とトークンの記録/再
生が行われるトレースデータ格納手段である。また、状
態遷移マップ管理モジュール43は、状態トレースモジ
ュール45の再生した情報に基づいて、状態遷移マップ
上でトークンの動きを再現する機能を有する点で、図
8、図9に同一符号を付したものとは異なっている。な
お、他の部分は図8の相当部分と同一符号を付してその
説明を省略する。
について説明する。図10は請求項6に記載したユーザ
インタフェース装置に関する発明の一実施例を示す構成
図であり、図中、45は状態遷移マップ管理モジュール
43に入力されたイベント情報と、状態遷移マップ上の
その時のトークンの動きとを記録/再生する状態トレー
スモジュールであり、46はこの状態トレースモジュー
ル45によって前記イベント情報とトークンの記録/再
生が行われるトレースデータ格納手段である。また、状
態遷移マップ管理モジュール43は、状態トレースモジ
ュール45の再生した情報に基づいて、状態遷移マップ
上でトークンの動きを再現する機能を有する点で、図
8、図9に同一符号を付したものとは異なっている。な
お、他の部分は図8の相当部分と同一符号を付してその
説明を省略する。
【0039】次に動作について説明する。システムが記
録モードにある場合、ユーザインタフェースに関わるイ
ベント情報はすべて状態遷移マップ管理モジュール43
に送られ、状態遷移マップデータ格納手段42から読み
込まれた状態遷移マップ上で当該ソフトウェアの動きが
トレースされる。状態トレースモジュール45は、その
イベント情報を、トレース時における状態遷移マップ上
のトークンの動きとともにトレースデータ格納手段46
に記録する。再生モードになると、状態トレースモジュ
ール45はトレースデータ格納手段46に記録した情報
を再生し、状態遷移マップ管理モジュール43は再生さ
れた情報に基づいて、状態遷移マップ上でトークンの動
きを再現する。この時、状態トレースモジュール45に
て再生されたイベント情報はグラフィカルユーザインタ
フェース本体モジュール41にも送られる。これによ
り、ユーザインタフェースは記録モードで記録した動き
とまったく同一の動作をする。
録モードにある場合、ユーザインタフェースに関わるイ
ベント情報はすべて状態遷移マップ管理モジュール43
に送られ、状態遷移マップデータ格納手段42から読み
込まれた状態遷移マップ上で当該ソフトウェアの動きが
トレースされる。状態トレースモジュール45は、その
イベント情報を、トレース時における状態遷移マップ上
のトークンの動きとともにトレースデータ格納手段46
に記録する。再生モードになると、状態トレースモジュ
ール45はトレースデータ格納手段46に記録した情報
を再生し、状態遷移マップ管理モジュール43は再生さ
れた情報に基づいて、状態遷移マップ上でトークンの動
きを再現する。この時、状態トレースモジュール45に
て再生されたイベント情報はグラフィカルユーザインタ
フェース本体モジュール41にも送られる。これによ
り、ユーザインタフェースは記録モードで記録した動き
とまったく同一の動作をする。
【0040】実施例7.次に、この発明の実施例7を図
について説明する。図11は請求項7に記載したソフト
ウェア評価方法に関する発明の一実施例を示す説明図で
ある。図において、33は状態遷移マップ、36はユー
ザインタフェース設計ツールで、これらは図4、図6に
同一符号を付したものと同等のものである。37はユー
ザであるソフトウェア設計者が別途作成して入力した対
象記述であり、38はこの対象記述37と状態遷移マッ
プ33との比較によってユーザインタフェースの分析・
評価を行うユーザインタフェース分析評価ツール、39
はこのユーザインタフェース分析評価ツール38による
評価結果が表示される表示手段である。
について説明する。図11は請求項7に記載したソフト
ウェア評価方法に関する発明の一実施例を示す説明図で
ある。図において、33は状態遷移マップ、36はユー
ザインタフェース設計ツールで、これらは図4、図6に
同一符号を付したものと同等のものである。37はユー
ザであるソフトウェア設計者が別途作成して入力した対
象記述であり、38はこの対象記述37と状態遷移マッ
プ33との比較によってユーザインタフェースの分析・
評価を行うユーザインタフェース分析評価ツール、39
はこのユーザインタフェース分析評価ツール38による
評価結果が表示される表示手段である。
【0041】次に動作について説明する。この実施例7
は状態遷移マップを用いてユーザインタフェースのソフ
トウェアを評価するものであり、図12はその処理手順
を示すフローチャートである。まず、ユーザインタフェ
ース設計ツール36がステップST21において、実施
例2および実施例3で述べた手順に従って、ユーザイン
タフェース装置上での挙動をモデル化した状態遷移マッ
プ33を作成する。次にステップST22にて、ソフト
ウェア設計者があらかじめ作成して入力マップデータと
して入力しておいた比較対照の状態遷移マップを対象記
述37として読み込む。
は状態遷移マップを用いてユーザインタフェースのソフ
トウェアを評価するものであり、図12はその処理手順
を示すフローチャートである。まず、ユーザインタフェ
ース設計ツール36がステップST21において、実施
例2および実施例3で述べた手順に従って、ユーザイン
タフェース装置上での挙動をモデル化した状態遷移マッ
プ33を作成する。次にステップST22にて、ソフト
ウェア設計者があらかじめ作成して入力マップデータと
して入力しておいた比較対照の状態遷移マップを対象記
述37として読み込む。
【0042】次いで、ユーザインタフェース分析評価ツ
ール38がステップST23において、作成された状態
遷移マップ33と入力された対象記述37の構造を解釈
してそれらの構造を比較し、さらにステップST24で
その比較結果より相違点の有無を判定する。その結果、
相違点があればステップST25でその比較結果を分析
し、ユーザインタフェース装置上での挙動がソフトウェ
ア設計者の意図と、具体的にどの部分で異なるかを判断
し、ステップST26にて構築したユーザインタフェー
スの挙動を評価する。得られた評価結果はステップST
27で表示手段39に送られて表示され、一連の処理を
終了する。
ール38がステップST23において、作成された状態
遷移マップ33と入力された対象記述37の構造を解釈
してそれらの構造を比較し、さらにステップST24で
その比較結果より相違点の有無を判定する。その結果、
相違点があればステップST25でその比較結果を分析
し、ユーザインタフェース装置上での挙動がソフトウェ
ア設計者の意図と、具体的にどの部分で異なるかを判断
し、ステップST26にて構築したユーザインタフェー
スの挙動を評価する。得られた評価結果はステップST
27で表示手段39に送られて表示され、一連の処理を
終了する。
【0043】実施例8.次に、この発明の実施例8を図
について説明する。図13は請求項8に記載したソフト
ウェア作成方法に関する発明の一実施例を示すフローチ
ャートで、この実施例8は入力された状態遷移マップに
基づいてユーザインタフェースのプログラムのソースコ
ードを自動的に作成するものである。まず、ステップS
T31でソフトウェア設計者の描くユーザインタフェー
スのモデルを状態遷移マップとして入力する。次に、ス
テップST32においてその入力された状態遷移マップ
の構造を解釈し、それを各モード遷移毎に分解する。
について説明する。図13は請求項8に記載したソフト
ウェア作成方法に関する発明の一実施例を示すフローチ
ャートで、この実施例8は入力された状態遷移マップに
基づいてユーザインタフェースのプログラムのソースコ
ードを自動的に作成するものである。まず、ステップS
T31でソフトウェア設計者の描くユーザインタフェー
スのモデルを状態遷移マップとして入力する。次に、ス
テップST32においてその入力された状態遷移マップ
の構造を解釈し、それを各モード遷移毎に分解する。
【0044】その後ステップST33で、分解された個
々のモード遷移に関連づけられたイベントに対応してソ
ースコードへの変換が行われ、ステップST34にてそ
れらを結合してソースコードを生成する。次に、その生
成されたソースコードが入力された状態遷移マップに一
致するか否かの判定がステップST35において行われ
る。その結果、一致していなければ、処理はステップS
T32に戻されて、入力マップの解釈以降の処理が再度
実行される。また、前記ステップST35にて一致して
いると判定された場合には、ステップST36でそのソ
ースコードを外部ファイルに出力して処理を終わる。
々のモード遷移に関連づけられたイベントに対応してソ
ースコードへの変換が行われ、ステップST34にてそ
れらを結合してソースコードを生成する。次に、その生
成されたソースコードが入力された状態遷移マップに一
致するか否かの判定がステップST35において行われ
る。その結果、一致していなければ、処理はステップS
T32に戻されて、入力マップの解釈以降の処理が再度
実行される。また、前記ステップST35にて一致して
いると判定された場合には、ステップST36でそのソ
ースコードを外部ファイルに出力して処理を終わる。
【0045】
【発明の効果】以上のように、請求項1に記載の発明に
よれば、ユーザインタフェース装置の挙動を、状態ノー
ド、トランジション、イベントノード、およびそれらを
結ぶ有向アークで記述するように構成したので、ユーザ
インタフェースをつかさどるソフトウェアの挙動を、状
態遷移マップの形でモデル化して記述することが可能と
なる効果がある。
よれば、ユーザインタフェース装置の挙動を、状態ノー
ド、トランジション、イベントノード、およびそれらを
結ぶ有向アークで記述するように構成したので、ユーザ
インタフェースをつかさどるソフトウェアの挙動を、状
態遷移マップの形でモデル化して記述することが可能と
なる効果がある。
【0046】また、請求項2に記載の発明によれば、ユ
ーザインタフェース装置上で動作する既存のソフトウェ
アのソースコードを分析して状態遷移マップを作成する
ように構成したので、既存のソフトウェアの状態遷移マ
ップを容易に作成できる効果がある。
ーザインタフェース装置上で動作する既存のソフトウェ
アのソースコードを分析して状態遷移マップを作成する
ように構成したので、既存のソフトウェアの状態遷移マ
ップを容易に作成できる効果がある。
【0047】また、請求項3に記載の発明によれば、ソ
フトウェアの作成時にそのソースコードを順次分析して
状態遷移マップを逐次作成してゆくように構成したの
で、ユーザインタフェース装置上で動作するソフトウェ
アを新たに作成する時に、その状態遷移マップも同時に
作成できる効果がある。
フトウェアの作成時にそのソースコードを順次分析して
状態遷移マップを逐次作成してゆくように構成したの
で、ユーザインタフェース装置上で動作するソフトウェ
アを新たに作成する時に、その状態遷移マップも同時に
作成できる効果がある。
【0048】また、請求項4に記載の発明によれば、状
態遷移マップとその中のトークンという形式で当該ユー
ザインタフェースの状態をユーザに提供するように構成
したので、ソフトウェアの実行時にシステムの状態を状
態遷移マップを用いてユーザに知らせることができるユ
ーザインタフェース装置が得られる効果がある。
態遷移マップとその中のトークンという形式で当該ユー
ザインタフェースの状態をユーザに提供するように構成
したので、ソフトウェアの実行時にシステムの状態を状
態遷移マップを用いてユーザに知らせることができるユ
ーザインタフェース装置が得られる効果がある。
【0049】また、請求項5に記載の発明によれば、ヘ
ルプイベント発生時にユーザインタフェースの状態を問
い合わせ、今後選択可能なイベントを予測して適切なガ
イダンスを作成するように構成したので、ソフトウェア
実行時に状態遷移マップを用いて知的な操作ガイダンス
をユーザに提供できるユーザインタフェース装置が得ら
れる効果がある。
ルプイベント発生時にユーザインタフェースの状態を問
い合わせ、今後選択可能なイベントを予測して適切なガ
イダンスを作成するように構成したので、ソフトウェア
実行時に状態遷移マップを用いて知的な操作ガイダンス
をユーザに提供できるユーザインタフェース装置が得ら
れる効果がある。
【0050】また、請求項6に記載の発明によれば、ソ
フトウェアの動きを一旦状態遷移マップ上でトレース
し、その情報を記録/再生するように構成したので、ユ
ーザインタフェース動作の記録と再生機能を備えたユー
ザインタフェース装置が得られる効果がある。
フトウェアの動きを一旦状態遷移マップ上でトレース
し、その情報を記録/再生するように構成したので、ユ
ーザインタフェース動作の記録と再生機能を備えたユー
ザインタフェース装置が得られる効果がある。
【0051】また、請求項7に記載の発明によれば、生
成した状態遷移マップと別途作成された対象記述の構造
の解釈、比較によってソフトウェア評価をするように構
成したので、構築されたユーザインタフェースがユーザ
の意図に合っているかを容易に評価できる効果がある。
成した状態遷移マップと別途作成された対象記述の構造
の解釈、比較によってソフトウェア評価をするように構
成したので、構築されたユーザインタフェースがユーザ
の意図に合っているかを容易に評価できる効果がある。
【0052】また、請求項8に記載の発明によればは、
ユーザが入力した状態遷移マップを解釈して各モード遷
移ごとに分解し、ソースコードに変換することでソフト
ウェアを作成するように構成したので、ユーザインタフ
ェース装置上で動作するソフトウェアが自動的に作成で
きる効果がある。
ユーザが入力した状態遷移マップを解釈して各モード遷
移ごとに分解し、ソースコードに変換することでソフト
ウェアを作成するように構成したので、ユーザインタフ
ェース装置上で動作するソフトウェアが自動的に作成で
きる効果がある。
【図1】この発明の実施例1による状態遷移マップの記
述方法を示す説明図である。
述方法を示す説明図である。
【図2】上記実施例にて状態遷移マップ化されるユーザ
インタフェースの一例を示す説明図である。
インタフェースの一例を示す説明図である。
【図3】図2に示されるユーザインタフェースの挙動を
記述した状態遷移マップを示す説明図である。
記述した状態遷移マップを示す説明図である。
【図4】この発明の実施例2による状態遷移マップの作
成の手順を示す説明図である。
成の手順を示す説明図である。
【図5】上記実施例における分析手段の処理の手順を示
すフローチャートである。
すフローチャートである。
【図6】この発明の実施例3による状態遷移マップの作
成の手順を示す説明図である。
成の手順を示す説明図である。
【図7】上記実施例におけるユーザインタフェース設計
ツールの処理の手順を示すフローチャートである。
ツールの処理の手順を示すフローチャートである。
【図8】この発明の実施例4によるユーザインタフェー
ス装置を示す構成図である。
ス装置を示す構成図である。
【図9】この発明の実施例5によるユーザインタフェー
ス装置を示す構成図である。
ス装置を示す構成図である。
【図10】この発明の実施例6によるユーザインタフェ
ース装置を示す構成図である。
ース装置を示す構成図である。
【図11】この発明の実施例7によるソフトウェア評価
方法を示す説明図である。
方法を示す説明図である。
【図12】上記実施例における処理の手順を示すフロー
チャートである。
チャートである。
【図13】この発明の実施例8によるソフトウェア作成
方法の処理の手順を示すフローチャートである。
方法の処理の手順を示すフローチャートである。
【図14】従来のユーザインタフェース装置を示す構成
図である。
図である。
【図15】従来のユーザインタフェース装置における挙
動の記述を説明するための概念図である。
動の記述を説明するための概念図である。
11,11a〜11f 状態ノード 12,12a〜12g トランジション 13,13a〜13n 有向アーク 14,14a〜14c イベントノード 15,15a〜15c 有向アーク 31 ソースコード 33 状態遷移マップ 37 対象記述 42 状態遷移マップデータ格納手段 43 状態遷移マップ管理モジュール 44 ガイダンス提供モジュール 45 状態トレースモジュール 46 トレースデータ格納手段
Claims (8)
- 【請求項1】 計算機内部の状態を表示するグラフィッ
クス表示装置と、前記計算機に操作者の意図を入力する
ためのキーボード、マウス等の入力手段とを備えたユー
ザインタフェース装置の挙動を記述するユーザインタフ
ェース挙動記述方法において、前記ユーザインタフェー
スのとり得る状態を状態ノードで表現し、ある状態を表
現する前記状態ノードと、他の状態を表現する前記状態
ノードとの間に、前記ある状態から前記他の状態への状
態遷移を表現するトランジションを置いて、それらの間
を前記ある状態から前記他の状態に向かう有向アークで
結び、前記状態遷移が何らかのきっかけで発生する場合
には、前記きっかけとなったイベントをイベントノード
で表わして、当該状態変化を表現する前記トランジショ
ンとの間を有向アークで結んだ状態遷移マップによっ
て、前記ユーザインタフェース装置の挙動の記述を行う
ことを特徴とするユーザインタフェース挙動記述方法。 - 【請求項2】 前記ユーザインタフェース装置上で動作
する既存のソフトウェアのソースコードを読み込み、そ
のイベント処理関数およびコールバック関数の分析を行
って、当該ユーザインタフェースの挙動を記述する前記
状態遷移マップを作成することを特徴とする請求項1に
記載のユーザインタフェース挙動記述方法。 - 【請求項3】 前記ユーザインタフェース装置上で動作
するソフトウェアを新たに作成する際、そのソースコー
ド作成過程でイベント処理関数とコールバック関数を順
次分析して、その時点における前記状態遷移マップを逐
次作成してゆくことを特徴とする請求項1に記載のユー
ザインタフェース挙動記述方法。 - 【請求項4】 前記状態遷移マップを格納する状態遷移
マップデータ格納手段と、ソフトウェア実行時に、入力
されたイベント情報と前記状態遷移マップ格納手段に格
納された状態遷移マップによってその動作状態を監視
し、前記イベント情報がヘルプイベントであった場合、
当該ユーザインタフェースの状態を、前記状態遷移マッ
プとその中のトークンという形式でユーザに提供する状
態遷移マップ管理モジュールとを備えたユーザインタフ
ェース装置。 - 【請求項5】 前記ヘルプイベントが入力された際、当
該ユーザインタフェースの状態を前記状態遷移マップ管
理モジュールに問い合わせ、現在の状態を解釈して今後
選択可能なイベントの予測を行い、適切なガイダンスを
作成してユーザに提供するガイダンス提供モジュールを
設けたことを特徴とする請求項4に記載のユーザインタ
フェース装置。 - 【請求項6】 前記状態遷移マップ管理モジュールに入
力されたイベント情報と、前記状態遷移マップ上のその
時のトークンの動きとをトレースデータ格納手段に記録
し、当該トレースデータ格納手段に記録された情報の再
生を行う状態トレースモジュールを設け、前記状態遷移
マップ管理モジュールに、前記状態トレースモジュール
の再生した前記情報に基づいて、前記状態遷移マップ上
でトークンの動きを再現する機能を持たせたことを特徴
とする請求項4に記載のユーザインタフェース装置。 - 【請求項7】 設計製作されたユーザインタフェース装
置のソフトウェアを評価するソフトウェア評価方法にお
いて、該当するソフトウェアより作成された前記状態遷
移マップと、ユーザが別途作成して入力した対象記述の
構造の比較を行い、相違点があればその相違点を分析し
て、当該ユーザインタフェースの挙動が具体的にどの部
分でユーザの意図と異なるかを判断することで、構築さ
れたユーザインタフェースの挙動を評価することを特徴
とするソフトウェア評価方法。 - 【請求項8】 ユーザインタフェース装置上で動作する
ソフトウェアを設計製作するソフトウェア作成方法にお
いて、ユーザが入力した前記状態遷移マップを、その構
造を解釈して各モード遷移毎に分解し、分解された個々
の前記モード遷移に関連づけられたイベントに基づいて
ソースコードを生成し、生成された前記ソースコードを
入力された前記状態遷移マップと比較して、一致してい
る場合に前記ソースコードの出力を行うことを特徴とす
るソフトウェア作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13984393A JPH06332686A (ja) | 1993-05-20 | 1993-05-20 | ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13984393A JPH06332686A (ja) | 1993-05-20 | 1993-05-20 | ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06332686A true JPH06332686A (ja) | 1994-12-02 |
Family
ID=15254816
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13984393A Pending JPH06332686A (ja) | 1993-05-20 | 1993-05-20 | ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH06332686A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0916360A (ja) * | 1995-06-28 | 1997-01-17 | Nec Corp | 対話処理方式 |
WO1999027438A1 (fr) * | 1997-11-20 | 1999-06-03 | Mitsubishi Denki Kabushiki Kaisha | Editeur de texte jouant un role de formation d'ecran |
JPH11305806A (ja) * | 1998-02-23 | 1999-11-05 | Dennoo:Kk | 制御装置およびそのプログラム作成方法 |
US6184880B1 (en) | 1997-01-08 | 2001-02-06 | Nec Corporation | Automatic GUI system operation device and operation macro execution device |
US6591152B1 (en) | 1998-02-23 | 2003-07-08 | Denno Co., Ltd. | Control system |
US7464010B2 (en) | 2004-12-21 | 2008-12-09 | Electronics And Telecommunications Research Institute | User interface design and evaluation system and hand interaction based user interface design and evaluation system |
JP2009175781A (ja) * | 2008-01-21 | 2009-08-06 | Mitsubishi Denki Micom Kiki Software Kk | プログラム開発支援装置 |
CN105247510A (zh) * | 2013-04-12 | 2016-01-13 | 微软技术许可有限责任公司 | 重算用户接口中变换的编译 |
CN111241432A (zh) * | 2020-01-08 | 2020-06-05 | 随锐科技集团股份有限公司 | 用户行为分析方法及装置、计算机可读存储介质 |
-
1993
- 1993-05-20 JP JP13984393A patent/JPH06332686A/ja active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0916360A (ja) * | 1995-06-28 | 1997-01-17 | Nec Corp | 対話処理方式 |
US6184880B1 (en) | 1997-01-08 | 2001-02-06 | Nec Corporation | Automatic GUI system operation device and operation macro execution device |
WO1999027438A1 (fr) * | 1997-11-20 | 1999-06-03 | Mitsubishi Denki Kabushiki Kaisha | Editeur de texte jouant un role de formation d'ecran |
US6407758B1 (en) | 1997-11-20 | 2002-06-18 | Mitsubishi Denki Kabushiki Kaisha | Screen forming editor |
JPH11305806A (ja) * | 1998-02-23 | 1999-11-05 | Dennoo:Kk | 制御装置およびそのプログラム作成方法 |
US6591152B1 (en) | 1998-02-23 | 2003-07-08 | Denno Co., Ltd. | Control system |
US7464010B2 (en) | 2004-12-21 | 2008-12-09 | Electronics And Telecommunications Research Institute | User interface design and evaluation system and hand interaction based user interface design and evaluation system |
JP2009175781A (ja) * | 2008-01-21 | 2009-08-06 | Mitsubishi Denki Micom Kiki Software Kk | プログラム開発支援装置 |
CN105247510A (zh) * | 2013-04-12 | 2016-01-13 | 微软技术许可有限责任公司 | 重算用户接口中变换的编译 |
JP2016522476A (ja) * | 2013-04-12 | 2016-07-28 | マイクロソフト テクノロジー ライセンシング,エルエルシー | 再計算ユーザインタフェースにおける変換の編さん |
CN111241432A (zh) * | 2020-01-08 | 2020-06-05 | 随锐科技集团股份有限公司 | 用户行为分析方法及装置、计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8046735B1 (en) | Transforming graphical objects in a graphical modeling environment | |
US6177942B1 (en) | Part development system | |
US6993487B2 (en) | Software code comments management method and system supporting speech recognition technology | |
AU4098700A (en) | Circuit arrangement for measuring the resistances of a pressure-sensitive resistance mat | |
US6154719A (en) | Logic simulation system and method | |
CN107168705A (zh) | 图形界面语义描述系统及其建立方法和操作路径生成方法 | |
JPH06332686A (ja) | ユーザインタフェース挙動記述方法、ならびにそれを用いたユーザインタフェース装置、ソフトウェア評価方法およびソフトウェア作成方法 | |
JP2001005690A (ja) | プログラムテストシステム | |
US20060218504A1 (en) | Method and program for managing a plurality of windows | |
JP4160462B2 (ja) | 時系列行動パターンを生成して表示する装置およびプログラム | |
JPH11265368A (ja) | 作業手順管理システム | |
JP2007011507A (ja) | プログラムツリーの表示方法、およびプログラム生成システム | |
JP4088760B2 (ja) | 設計作業支援装置 | |
Paris et al. | Environments for the construction and use of task models | |
JP2007188179A (ja) | 計算機システムの性能評価装置、性能評価方法、及び性能評価プログラム | |
Monk et al. | Supporting design rationale for system evolution | |
JP2001243092A (ja) | イベント記録再生システム,及び、イベント記録再生プログラムを格納したコンピュータ可読媒体 | |
Phillips | Review of graphical notations for specifying direct manipulation interfaces | |
Kleyn et al. | Edge-a graph based tool for specifying interaction | |
JPH06231030A (ja) | マルチメディアオーサリングシステム | |
JPH08286899A (ja) | 表示画面状態遷移表によるプログラム作成方法 | |
Ni et al. | DesignTracking: Track and Replay BIM-based Design Process | |
JP4180099B2 (ja) | シーケンス解析プログラムを記録した記録媒体、シーケンス解析装置およびシーケンス解析方法 | |
Coomber et al. | A graphical tool for the prototyping of real-time systems | |
JPH0773030A (ja) | 動的モデル設計支援方法 |