JP2001265472A - ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体 - Google Patents

ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体

Info

Publication number
JP2001265472A
JP2001265472A JP2000075488A JP2000075488A JP2001265472A JP 2001265472 A JP2001265472 A JP 2001265472A JP 2000075488 A JP2000075488 A JP 2000075488A JP 2000075488 A JP2000075488 A JP 2000075488A JP 2001265472 A JP2001265472 A JP 2001265472A
Authority
JP
Japan
Prior art keywords
user
environment information
user interface
client
client computer
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
JP2000075488A
Other languages
English (en)
Inventor
Noriyuki Kurabayashi
則之 倉林
Taichi Yuasa
太一 湯淺
Tsuneyasu Komiya
常康 小宮
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.)
ATR Adaptive Communications Research Laboratories
Original Assignee
ATR Adaptive Communications Research Laboratories
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 ATR Adaptive Communications Research Laboratories filed Critical ATR Adaptive Communications Research Laboratories
Priority to JP2000075488A priority Critical patent/JP2001265472A/ja
Publication of JP2001265472A publication Critical patent/JP2001265472A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 使用されるコンピュータシステム等にかかわ
らず、ユーザごとに適切に調整されたインタフェースを
実現するインタフェース実現方法を提供する。 【解決手段】 サーバ20上で動作するインタフェース
実現方法は、クライアント10から受ける要求に応答し
て、ユーザに対して提示すべきユーザインタフェースを
構築するための、所定の抽出条件によりフィルタリング
(22)されたプロファイル24およびプログラムコー
ドを含んだモジュールを動的に準備するステップと、ク
ライアント10に対してモジュールを送信し、そのクラ
イアント10上においてモジュールを実行してインタフ
ェース30を実現するステップと、その結果得られるプ
ロファイル更新のための情報をクライアント10から受
信するステップと、クライアント10から受信したプロ
ファイル更新のための情報を用いて、プロファイルデー
タベース24を更新するステップとを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はネットワークに接
続されたクライアントコンピュータで実行されるアプリ
ケーションプログラムのユーザインタフェースの改良に
関し、特に、サーバコンピュータからクライアントにプ
ログラムを送信してクライアントで当該プログラムを実
行する際のユーザインタフェースの改良に関する。
【0002】
【従来の技術】パーソナルコンピュータの普及に伴い、
コンピュータ上でアプリケーションプログラムを実行す
る機会が増大している。特に、最近のいわゆるパーソナ
ルコンピュータでは、コンピュータを操作するためのコ
マンドを覚える必要の少ないグラフィカルユーザインタ
フェースが用いられており、その結果多くの人がコンピ
ュータのもたらす利益を享受している。
【0003】ところで、一般のユーザがコンピュータを
利用する際に最も問題となるのはやはりユーザインタフ
ェースの部分であり、ユーザインタフェースの良否によ
って、コンピュータのオペレーティングシステムおよび
アプリケーションプログラムなどの使いやすさが相当の
程度まで支配される。
【0004】たとえば、現在のワードプロセッサプログ
ラムは多機能化しており、非常に高度な文書表現が可能
となっている。その上、ワードプロセッサにより作成さ
れる文書にある種のプログラムに相当する機能を持たせ
ることも可能であり、そのための機能もワードプロセッ
サプログラムから呼出すことが可能である。その結果、
ワードプロセッサプログラムがユーザに提供するユーザ
インタフェース部品(メニューの項目、機能を選択する
ためのボタン等)が多種多様となりかつその数が多くな
っている。
【0005】一方で、作成する文書の種類などによって
利用する機能が異なっており、同時に全ての機能をりよ
うすることは稀である。むしろ、あまりに多数の項目が
メニューに表示されたり、あまりに多数のボタンが画面
に表示されたりすると、目的とする機能に対応するメニ
ュー項目またはボタンが見つけにくくなり、その結果プ
ログラムが使いにくくなるという問題がある。しかし、
ワードプロセッサが多くの機能を持っている限り、この
問題に対応するためにメニュー項目またはボタンなど、
ユーザがその機能を選択するためのユーザインタフェー
ス部品の数を減少させることはできない。
【0006】この問題に対処するために、予測インタフ
ェースと呼ばれる、一種の知的インタフェースが開発さ
れている。ワードプロセッサプログラムを例にすると、
ユーザが「(1)」で始まる段落を入力したときに、以
下の文書内容がいわゆる「箇条書き」となるものと予測
し、当該段落の入力が終了し改行キーが押された時点で
自動的に次の段落の先頭に「(2)」という箇条書き番
号を表示する、という機能がこの予測インタフェースの
一例である。
【0007】また、あるアプリケーションを使用する際
にユーザが用いる機能の統計をとり、その結果に応じて
使用頻度の高い項目のみを常時メニューに表示し、使用
頻度の低い項目は特定の操作がされたときにのみ表示す
るようなインタフェースも開発されている。これも統計
を用いた一種の知的インタフェースということができ
る。
【0008】こうした知的インタフェースを採用したア
プリケーションまたはオペレーティングシステムでは、
ユーザの操作に応じたユーザインタフェースが実現でき
るので、ユーザにとってはより使いやすくなると考えら
れる。
【0009】
【発明が解決しようとする課題】上記した予測インタフ
ェースは、ユーザの操作に応じて次の操作を予測するこ
とによりユーザの操作を軽減する点では使いやすい。
【0010】一方、統計に基づく知的インタフェースの
従来例は、いずれも各アプリケーションまたは各システ
ムごとに閉じているという問題がある。そのため、ある
人があるアプリケーションプログラムをあるコンピュー
タシステムで継続して使用すれば、そのコンピュータシ
ステムでのそのアプリケーションプログラムで提供され
るユーザインタフェースはそのユーザに対して適切に調
整されたものとなる。その結果そのコンピュータシステ
ムで当該アプリケーションプログラムを使用している限
り、その人の過去の操作履歴に基づいた使いやすいイン
タフェースが実現できる。これ自体は望ましいことであ
るが、この場合でも別のコンピュータシステムで同じア
プリケーションプログラムを使用する場合、または同じ
コンピュータシステムで別のアプリケーションプログラ
ムを使用する場合には、また全く別の(過去の操作履歴
が考慮されていない)インタフェースで作業を開始しな
ければならない。これは、上記した知的インタフェース
の従来例が、各システムまたは各アプリケーションプロ
グラムごとに閉じていたためである。
【0011】しかし、現代社会では、ある個人が複数個
のコンピュータ(たとえばデスクトップタイプとノート
ブックタイプ)を所有し、時に応じ、場所に応じて使い
分けることも多い。また、ある個人が企業内の別々のコ
ンピュータを用いて同じアプリケーションを使用する機
会も多くなっている。そうした場合に、従来の方法で
は、過去のそのユーザの操作履歴に応じた一貫したユー
ザインタフェースを提供することは困難である。また、
一つのコンピュータを他人と共用する場合などには、従
来の方法ではそうしたユーザインタフェースの提供は不
可能である。その結果、使用するコンピュータシステム
またはアプリケーションプログラムにかかわらず、一貫
して、あるユーザに適した形で調整されたユーザインタ
フェースを用いてユーザがコンピュータを操作すること
ができないという問題がある。
【0012】それゆえに本発明の目的は、使用されるコ
ンピュータシステムまたはアプリケーションプログラム
にかかわらず、ユーザごとに適切に調整された知的イン
タフェースを実現できるインタフェース実現方法および
そのためのプログラムを記録したコンピュータ読取可能
な記録媒体を提供することである。
【0013】
【課題を解決するための手段】第1の発明にかかるユー
ザインタフェース実現方法は、クライアントコンピュー
タとネットワーク接続され、各クライアントコンピュー
タで実行可能なプログラムコードを各クライアントコン
ピュータに送信可能なサーバコンピュータを用いて、ユ
ーザごとに適切に調整されたインタフェースを各前記ク
ライアントコンピュータにおいて実現するためのインタ
フェース実現方法であって、クライアントコンピュータ
から受ける要求に応答して、当該要求を発行したユーザ
に対して提示すべきユーザインタフェースを構築するた
めの環境情報および当該ユーザインタフェースの振舞い
を規定するプログラムコードを含んだモジュールを準備
するステップと、この要求を発行したクライアントコン
ピュータに対してモジュールを送信し、そのクライアン
トコンピュータ上においてモジュールを実行させてユー
ザインタフェースを実現するステップと、クライアント
コンピュータにおいてモジュールを実行した結果得られ
る、環境情報の更新のための情報をクライアントコンピ
ュータから受信するステップと、クライアントコンピュ
ータから受信した環境情報の更新のための情報を用い
て、ユーザごとの環境情報を記憶した環境情報データベ
ースを更新するステップとを含む。
【0014】第1の発明によれば、ユーザごとに環境情
報がサーバコンピュータによって維持され、ユーザがど
のクライアントを用いてサーバコンピュータに要求を出
しても、そのユーザに対する環境情報を含んだモジュー
ルがクライアントに送信され実行される。環境情報はサ
ーバコンピュータによって維持され、その環境情報によ
ってユーザインタフェースが構築されるため、クライア
ントのコンピュータシステムまたはアプリケーションに
かかわらず、ユーザごとに適切に調整された知的インタ
フェースを実現できる。
【0015】第2の発明にかかるユーザインタフェース
実現方法によれば、第1の発明の構成に加えて、ユーザ
インタフェースは、ユーザの選択枝をリストする選択的
インタフェース部品を含み、環境情報の更新のための情
報は、選択的インタフェース部品を用いたユーザの選択
結果を含み、環境情報は、ユーザによる選択結果に基づ
いて作成された操作履歴を含む。
【0016】第2の発明によれば、第1の発明の作用に
加えて、選択的ユーザインタフェースにリストされる選
択枝は、ユーザの操作履歴に基づいて構築される。その
ため、ユーザの過去の操作履歴に基づいてユーザごとに
適切に調整されたユーザインタフェースを、クライアン
トのコンピュータシステムまたはアプリケーションにか
かわらず実現できる。
【0017】第3の発明にかかるユーザインタフェース
実現方法によれば、第1または第2の発明の構成に加え
て、モジュールを準備するステップは、クライアントコ
ンピュータから受ける要求に応答して、当該要求を発行
したユーザに対して提示すべきユーザインタフェースを
構築するための環境情報を環境情報データベースから読
出すステップと、環境情報データベースから読出された
環境情報から、所定の条件を充足する情報のみを抽出す
るステップと、所定の条件を充足する情報および前記ユ
ーザインタフェースの振舞いを規定する前記プログラム
コードを含んだ前記モジュールを準備するステップとを
含む。
【0018】第3の発明によれば、第1の発明または第
2の発明の作用に加えて、ユーザごとの環境情報の中で
も所定の条件を充足するもののみがクライアントコンピ
ュータに送信され、それに基づいてユーザインタフェー
スが実現される。ユーザの操作履歴に基づき、ユーザが
要求を発したときに最適と思われるような環境情報を抽
出できる条件を設定することにより、ユーザごとに適切
に調整され、かつ適切な数の選択枝を含むユーザインタ
フェースを、クライアントのコンピュータシステムまた
はアプリケーションにかかわらず実現できる。
【0019】第4〜第6の発明は、第1〜第3の発明に
かかるユーザインタフェース実現方法をクライアントコ
ンピュータにおいて実現するためのプログラムを記録し
たコンピュータ読取可能な記録媒体である。したがっ
て、サーバコンピュータによってこのプログラムを実行
することにより、上記第1〜第3の発明と同様の作用・
効果を奏することができる。
【0020】
【発明の実施の形態】[システムの概略]以下、本発明
の実施の形態1にかかるインタフェース実現方法を提供
するシステムについて説明する。後に説明するように、
このインタフェース実現方法は、相互にネットワークで
接続されたパーソナルコンピュータまたはワークステー
ション等の上で実行される、サーバプログラムとクライ
アントプログラムとによって実現されるものである。こ
のシステムは、ユーザごとに、プログラムまたはシステ
ムの操作時の嗜好または操作傾向等、過去の操作履歴に
関する情報をサーバに蓄積しておき、クライアントコン
ピュータに対してそうしたユーザの操作履歴に関する情
報を送信することにより、どのクライアントコンピュー
タにおいても各ユーザに対して適切に調整されたユーザ
インタフェースを提供する。
【0021】そのために、プログラムの一部分をサーバ
からクライアントに送信してクライアント上で実行さ
せ、その結果をサーバで受取って処理する遠隔実行機構
を採用する。
【0022】このようなプログラムの部分移送を伴う遠
隔実行は、ソケット通信、遠隔手続呼出しとともに開放
型分散環境におけるシステムプログラミングをサポート
するための言語機構として利用することもできる。しか
しこの実施の形態では、この遠隔実行は、サーバにより
集中的に管理され、サーバからクライアントに移動して
クライアント上で実現される知的インタフェースを実現
するための前提として用いられる。
【0023】図1を参照して、この実施の形態を実現す
るためのシステムは、図示しないネットワークを介して
相互に接続されるクライアント10およびサーバ20を
含む。なお図ではクライアントを一つしか図示していな
いが、サーバ20には多数のクライアントが接続可能で
ある。サーバ20と各クライアント10との間の通信は
同期的に行なわれるものとする。
【0024】サーバ20は、ユーザの過去の操作履歴か
ら収集した、ユーザの嗜好またはユーザの操作傾向を示
す情報(この情報はユーザに対して提示すべきユーザイ
ンタフェースを構築するための環境情報に相当する。以
下この情報を「プロファイル」(profile)と呼
ぶ。)を蓄積するためのプロファイルデータベース24
(単に「profdb」とも呼ぶ。)と、クライアント
10からの要求に応じて、当該要求に含まれるユーザ識
別子に対応したプロファイルをプロファイルデータベー
ス24から読出し、適切な条件にしたがってこのプロフ
ァイル中からさらにクライアントに送信すべきサブプロ
ファイル(subprof)を抽出するためのフィルタ
リングプログラム22と、こうして抽出されたサブプロ
ファイルを、クライアント10で実現されるべきユーザ
インタフェース(UI)の振舞いを規定するプログラム
部分と合わせることにより、クライアント10で実行可
能な関数の形のモジュールと呼ばれる送信情報を作成す
るための図示しない送信プログラムと、このモジュール
をクライアント10で実行した結果を受けて、その結果
でプロファイルデータベース24の当該ユーザのプロフ
ァイルを更新するための図示しない更新プログラムとを
含む。
【0025】クライアント10は、サーバ20からモジ
ュールを受信し、当該モジュールに含まれるプロファイ
ルおよびプログラムコードにしたがってユーザインタフ
ェース30を構築するためのユーザインタフェース構築
プログラムと、このように構築されたユーザインタフェ
ース30を用いて行なったユーザの操作結果(user
_selection)をサーバ20に対して送信する
ための結果送信プログラムとを含む。
【0026】以下に説明する実施の形態のシステムで
は、クライアント10ではインターネットのウェブサイ
トの既定のリストを表示してその中の一つをユーザに選
択させ、ブラウザを起動させてそのページを表示するア
プリケーションが実行されることを想定する。この場
合、プロファイルデータベース24には、ユーザが閲覧
したウェブページのURL(Uniform Resource Locato
r)とそのページを閲覧した時刻との組のリストが、各
ユーザごとに記憶されているものとする。そして、たと
えば、ユーザがクライアント10を操作している現時刻
に最も近い過去の時刻に閲覧されたことがあるウェブペ
ージが自動的に選択されてクライアント10で表示され
るものとする。
【0027】たとえば、時刻午後5時にユーザがクライ
アント10でこのプログラムを起動した場合、過去のこ
のユーザの閲覧したウェブページのリストのうちから、
日にちを問わず、午後5時に近い時刻に閲覧されたもの
(たとえば3日前の午後5時5分に閲覧されたものな
ど)が所定数だけ表示される。これは、ユーザが閲覧す
るウェブページが、時刻によってある傾向を有する場合
に有効である。
【0028】その他にも、ユーザが操作しているクライ
アント10の場所(たとえばそれが自宅か、勤務先か)
によって、ユーザが閲覧しようとするウェブページの傾
向も異なるであろう。したがってそうした場合には、プ
ロファイルとしてウェブページのURLとクライアント
の場所によってプロファイルを管理することが有効であ
る。また、クライアントの場所と時刻との双方によって
プロファイルを管理することも考えられる。また、曜日
をあわせて考慮してもよい。
【0029】また、この実施の形態のシステムでは、プ
ロファイルデータベース24で管理されるプロファイル
はユーザごとのものである必要がある。ただし、たとえ
ばユーザがグループに分類され、グループごとに同様の
作業を行なうような場合には、グループごとにプロファ
イルを管理してもよいし、一種の階層構造でグループご
と、さらにその中のユーザごとにプロファイルを管理す
ることも可能である。
【0030】なお図1に示す例では、サーバ20から送
信されたモジュールに含まれるウェブサイトのリスト
を、クライアント10側ではプログラム命令「add_
item」によって一項目ずつすべてメニュー中のウェ
ブページリスト中に追加する仕様となっている。メニュ
ーはユーザインタフェースの一部品と考えられるが、そ
の機能としては表示した複数項目のうちの一つ(場合に
よっては複数)をユーザに選択させる選択的機能を持っ
たものである。このウェブサイトのリストは、所定の条
件を充足するもののみを含むため、メニューに表示され
るウェブサイトの項目数が過大となることが防止でき、
選択が容易になる。またプロファイルを使用してデフォ
ルトで選択される項目を指定することができるので、ユ
ーザにとっては項目の選択がしやすい。
【0031】なお、上記したクライアント側の処理では
メニューを用いているが、それ以外にもたとえばポップ
アップメニュー、ドロップダウンリスト、ラジオボタン
など、複数個の項目の中から一つまたは複数個を選択さ
せる機能を有するユーザインタフェース部品であれば、
どのようなものでも使用することができる。アプリケー
ションによっては、選択的なユーザインタフェース部品
以外の部品に対して上記したようなプロファイル情報を
用いてユーザインタフェースを構築してもよい。 [ハードウェア構成]図2に、このインタフェース実現
方法を実施するシステムを構成するサーバ20の一例の
外観を示す。示される通り、このサーバ20は一般的な
パーソナルコンピュータまたはワークステーションから
なる。クライアント10も同様である。したがって以下
では、サーバ20についてのハードウェア的構成につい
て説明する。
【0032】図2を参照してこのサーバ20は、CD−
ROM(Compact Disc Read-Only Memory)ドライブ5
0およびFD(Flexible Disk)ドライブ52を備えた
コンピュータ40と、コンピュータ40に接続された表
示装置としてのディスプレイ42と、同じくコンピュー
タ40に接続された入力装置としてのキーボード46お
よびマウス48とを含む。
【0033】図3に、このサーバ20の内部構成をブロ
ック図形式で示す。図3に示されるようにこのサーバ2
0を構成するコンピュータ40は、CD−ROMドライ
ブ50およびFDドライブ52に加えて、それぞれバス
66に接続されたCPU(Central Processing Unit )
56と、ROM(Read Only Memory)58と、RAM(Rand
om Access Memory)60と、ハードディスク54と、こ
のサーバ20をネットワークに接続するためのネットワ
ークインタフェース68とを含んでいる。CD−ROM
ドライブ50にはCD−ROM62が装着される。FD
ドライブ52にはFD64が装着される。
【0034】なお、クライアント10の場合には、ネッ
トワークへの接続はPPP(Point-to-Point Protoco
l)によるものである場合もあり、その場合にはネット
ワークインタフェース68にかえてモデムまたはターミ
ナルアダプタなどが用いられる。
【0035】既に述べたようにこのインタフェース実現
方法は、コンピュータハードウェアと、CPU56によ
り実行されるソフトウェアとにより実現される。一般的
にこうしたソフトウェアはCD−ROM62、FD64
等のコンピュータ読取り可能な記憶媒体に格納されて流
通し、CD−ROMドライブ50またはFDドライブ5
2等により記憶媒体から読取られてハードディスク54
に一旦格納される。または、当該装置がネットワークに
接続されている場合には、ネットワーク上のサーバから
一旦ハードディスク54に一旦コピーされる。そうして
さらにハードディスク54からRAM60に読出されて
CPU56により実行される。なお、ネットワーク接続
されている場合には、ハードディスク54に格納するこ
となくRAM60に直接ロードして実行するようにして
もよい。
【0036】図2および図3に示したコンピュータのハ
ードウェア自体およびその動作原理は一般的なものであ
る。したがって、本発明の最も本質的な部分はFD6
4、ハードディスク54等の記憶媒体に記憶されたソフ
トウェア、またはネットワークを介して搬送される信号
波として流通するソフトウェアである。
【0037】なお、最近の一般的傾向として、コンピュ
ータのオペレーティングシステムの一部として様々なプ
ログラムモジュールを用意しておき、アプリケーション
プログラムはこれらモジュールを所定の配列で必要な時
に呼び出して処理を進める方式が一般的である。そうし
た場合、当該インタフェース実現方法を実現するための
ソフトウェア自体にはそうしたモジュールは含まれず、
当該コンピュータでオペレーティングシステムと協働し
てはじめてインタフェース実現方法が実現することにな
る。しかし、一般的なプラットフォームを使用する限
り、そうしたモジュールを含ませたソフトウェアを流通
させる必要はなく、それらモジュールを含まないソフト
ウェア自体およびそれらソフトウェアを記録した記録媒
体(およびそれらソフトウェアがネットワーク上を流通
する場合のデータ信号)が実施の形態を構成すると考え
ることができる。
【0038】上記したように、本願発明は実質的にはソ
フトウェア処理によって実現される。本実施の形態の装
置においてクライアント10でユーザごとに適切に調整
されたユーザインタフェースを実現する処理を行なうた
めの、サーバ20およびクライアント20によって実行
されるソフトウェアは以下のような制御構造を有する。 [サーバ20]サーバ20での処理についてまず説明す
る。なお、クライアント10からの要求を受信する処理
など、クライアントとサーバ間で行なわれる一般的な通
信処理は周知であるので、以下の説明ではそれらについ
ての詳細な説明は行なわない。
【0039】図4を参照して、クライアント10から要
求を受信すると、サーバ20は、この要求に対応するプ
ログラムのうち、クライアント10側で実行されるブロ
ック(これを「Remoteブロック」と呼ぶ。)内で
参照される変数の値を、予め用意されている変数表に登
録する(ステップS80。なお以下の説明では「ステッ
プS」を単に「S」と表記する。)。
【0040】サーバ20が保持しているプログラムの一
例を図5に示す。図5を参照して、このプログラム10
0は、プログラム内部の変数を宣言したり、変数への初
期値の格納処理をしたりするためのAブロック110
と、上記したRemoteブロックに相当する、クライ
アント10で実行されるべきBブロック112と、クラ
イアント10での実行結果に基づいてプロファイルデー
タベース24を更新する処理などを行なうためのCブロ
ック114とを含む。上記したS80では、このBブロ
ック112の内部で参照される変数の値が変数表に登録
される。
【0041】続いて、この変数表を用いてRemote
ブロック内部を本体とするモジュールの定義を作成する
(S82)。S80およびS82によりモジュールが遠
隔処理の実行時に動的に準備されることになる。ここま
での処理は一般的なコンパイル型言語でのコンパイル処
理に相当するものである。この処理を図7および図8を
参照して説明する。
【0042】図5に示されるBブロック112のうち、
クライアント10で実行される手続きはステートメント
列140である。S82では、このステートメント列1
40を含む、Bブロック112と等価な、図8に示すよ
うな関数150(「Bblock」という名称を有す
る。)を生成する。図8に示されるように、関数150
はステートメント列140と一致するステートメント列
152を含んでいる。
【0043】さらにサーバ20は、Remoteブロッ
ク内部で参照される変数の値を保持するための「環境」
を作成し、そこにRemoteブロック内部で参照され
る、プロファイル情報から得られた局所変数の値を保存
する(S84)。同時にここでは、Remoteブロッ
ク内部でユーザ操作に応じて値が格納される箱に相当す
る領域も準備される。
【0044】関数150を実行するためのサーバ20で
行なわれる5つのステートメント(1)〜(5)のう
ち、(1)および(2)がS84で行なわれる処理に相
当する。(1)は、envという名の、環境(Envi
ronment)というクラスのインスタンスを生成す
る命令である。(2)はこうして生成された環境env
にプロファイルデータベース24から抽出されたsub
profの値を格納する命令である。
【0045】続いて、上記した環境envと、この環境
envを参照する、Remoteブロック内部を含むモ
ジュールを作成する処理が行なわれる(S86)。この
処理は図8に示されるステートメント列のうち(3)に
相当する。
【0046】さらにS88で、このモジュールをクライ
アント10に転送して実行させる処理が行なわれる。こ
の処理は図8に示されるステートメント列のうち(4)
に相当する。
【0047】最後に、クライアント10から返送されて
きた、このモジュールの実行結果を示す環境の値を受取
り(S90)、この環境からユーザの選択結果を示す局
所変数の値を取出して、サーバ20の側の対応の局所変
数を更新する処理が行なわれる。この処理の結果、プロ
ファイルデータベース24内の、このユーザに関する操
作履歴が更新される。 [クライアント10]続いて、クライアント10側で行
なわれる処理について説明する。図9を参照して、クラ
イアント10側では、サーバ20から受取ったモジュー
ル160から、環境env162を取出す。この中に
は、ユーザの指示を示す値(subprof)が格納さ
れる箱に相当する領域164が準備されており、この領
域164が図8に示す関数の戻り値となる。
【0048】一方、モジュール160からは、ユーザイ
ンタフェースの振舞いを規定するコード部分であるBブ
ロックのプログラムコード166が取出され、クライア
ント10によって実行されることによりユーザインタフ
ェースを実現する。このときのユーザインタフェースの
振舞いは、環境env162中の値によって規定される
値によって決定される。環境env162の値はサーバ
20のプロファイルデータベース24から取出された、
このユーザについての操作履歴を示すものである。その
結果、クライアント10によって実現されるユーザイン
タフェースはこのユーザにとって最適化されたものとな
る。
【0049】こうした処理をクライアント10側で実現
するために、クライアント10が実行すべき処理につい
て図10を参照して説明する。まず、クライアント10
はサーバ20からモジュール160を受取る(S17
2)。モジュール160には、前述したとおり環境en
v162およびBブロックのプログラムコード166が
含まれている。
【0050】S174で、このモジュール160のうち
Bブロックのプログラムコード166に相当する部分を
クライアント10上で実行する。このときに実現される
ユーザインタフェースの振舞いは前述したとおり環境e
nv162中の値によって規定される。その結果、クラ
イアント10によって実現されるユーザインタフェース
はこのユーザにとって最適化されたものとなる。この処
理の結果実現されたユーザインタフェースを用いて、ユ
ーザが何らかの指示を行なうことが想定される。
【0051】ユーザから何らかの指示があった結果、ク
ライアント10はこのときの指示を示す値を環境env
に格納し、この環境部分をサーバ20に送り返す(S1
76)。この結果サーバ20は、受取った環境を用いて
前述したようにプロファイルデータベース24を更新す
る。 [システム動作の概略]上記した処理を再度ブロック化
して示すと図6に示すようになる。すなわち、Aブロッ
ク110、Bブロック112およびCブロック114か
らなるプログラムはいずれもサーバ20に保存されてい
る。これらブロックのうち、クライアント10で実行さ
れるべき部分(Remoteブロック)はBブロック1
12である。
【0052】クライアント10がこのプログラムを実行
する場合、まずこのクライアントを使用しているユーザ
に関する操作履歴情報であるsubprofを格納する
ための環境120がAブロック110によって宣言、ア
ロケートされる。この環境120に、プロファイルデー
タベース24から読み出され、所定の基準にしたがって
抽出されたそのユーザのサブプロファイルsubpro
fileが格納される。
【0053】続いて、Bブロック112の実行時には、
環境120およびBブロック112がモジュールとして
がサーバ20からクライアント10に転送され(12
4、128)る。この結果、環境120のコピーである
環境122がクライアント10側に生成され、この環境
122中の値を用いてBブロック112が動作してユー
ザインタフェースを実現し、ユーザの指示を示す値を環
境122に格納する。処理が終了すると、環境122は
サーバ20に返送され、環境120内にコピーされる
(126)。一方Bブロック112からは実行結果の戻
り値がサーバ20に返される(130)。 [実施の形態の作用効果]この実施の形態のシステムに
よれば、プログラムをサーバ20に保持しておき、クラ
イアント10に転送して遠隔実行する。この遠隔実行機
構では、指定されたプログラム部分を本体とする、ユー
ザごとの操作履歴情報を示す情報に代表される環境をも
含んだモジュールをクライアント10にコピーすること
によってユーザごとに適切に調整されたユーザインタフ
ェースをクライアント10において実現する。遠隔実行
はクライアント10とサーバ20との間の同期型の処理
により行なわれるが、この間、クライアント10とサー
バ20との接続は維持する必要がない。このモジュール
に含まれる環境は、クライアント10での当該プログラ
ム部分の実行の結果の戻り値とともにサーバ20に返送
される。サーバ20は、返された環境を用いてプロファ
イルデータベース24を更新する。
【0054】この遠隔実行機構では、遠隔実行に必要な
プログラム部分のみが、最適なユーザインタフェースを
実現するために必要とされる環境とともに移送されるの
で、遠隔実行が効率的に行なわれる。また、送信される
プログラム部分および環境は通信環境の変化からはあま
り影響を受けず、その結果このシステムは通信環境の変
化に対して頑強である。
【0055】上記した例では、上に説明した機構によっ
てサーバ20において維持されるユーザの操作履歴に応
じたウェブサイトのリストが、クライアント10側でユ
ーザインタフェースにより表示される。このリストは、
既に説明したようにこの実施の形態では、このクライア
ントを利用しているユーザごとに、現在の時刻に近い時
刻に閲覧したウェブサイトを含んでいる。そのため、ユ
ーザにとっては毎日の行動パターンにしたがって適切な
ウェブサイトのみがリスト中に表示されることとなる。
【0056】ユーザが選択したURLとそのときの時刻
とは再度サーバ20に返送され、サーバ20はその情報
を用いてこのユーザの操作履歴を更新する。
【0057】このシステムでは、ユーザが別のクライア
ントを用いて同じプログラムを起動したときにも、サー
バから共通の環境が各クライアントに送信されるので、
同じユーザインタフェースを提供することができる。そ
のため、クライアント間でユーザごとの操作の学習結果
を共有することが可能となる。
【0058】今回開示された実施の形態はすべての点で
例示であって制限的なものではないと考えられるべきで
ある。本発明の範囲は上記した説明ではなくて特許請求
の範囲によって示され、特許請求の範囲と均等の意味お
よび範囲内でのすべての変更が含まれることが意図され
る。
【図面の簡単な説明】
【図1】 本発明の1実施の形態にかかる方法を実施す
るシステムの概略構成図である。
【図2】 本発明の1実施の形態にかかる方法を実施す
るシステムの外観図である。
【図3】 本発明の1実施の形態にかかる方法を実施す
るシステムのハードウェア的構成を示すブロック図であ
る。
【図4】 本発明の実施の形態1にかかる方法を実施す
るシステム内のサーバで実行される処理のフローチャー
トである。
【図5】 本発明の実施の形態1にかかる方法を実施す
るシステムで実行されるプログラムの一例を示す図であ
る。
【図6】 本発明の実施の形態1にかかる方法を実施す
るシステムでの、情報の流れを示す図である。
【図7】 例示のプログラムのうちRemoteブロッ
クを示す図である。
【図8】 図7に示されるRemoteブロックから変
換された関数を示す図である。
【図9】 モジュールと環境およびプログラムコードと
の関係を示す図である。
【図10】 本発明の実施の形態にかかる方法を実施す
るシステム内のクライアントで実行される処理のフロー
チャートである。
【符号の説明】
10 クライアントコンピュータ、20 サーバコンピ
ュータ、22 フィルタリングプログラム、24 プロ
ファイルデータベース、160 モジュール、162
環境。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成13年1月16日(2001.1.1
6)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0005
【補正方法】変更
【補正内容】
【0005】一方で、作成する文書の種類などによって
利用する機能が異なっており、同時に全ての機能を利用
することは稀である。むしろ、あまりに多数の項目がメ
ニューに表示されたり、あまりに多数のボタンが画面に
表示されたりすると、目的とする機能に対応するメニュ
ー項目またはボタンが見つけにくくなり、その結果プロ
グラムが使いにくくなるという問題がある。しかし、ワ
ードプロセッサが多くの機能を持っている限り、この問
題に対応するためにメニュー項目またはボタンなど、ユ
ーザがその機能を選択するためのユーザインタフェース
部品の数を減少させることはできない。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0038
【補正方法】変更
【補正内容】
【0038】上記したように、本願発明は実質的にはソ
フトウェア処理によって実現される。本実施の形態の装
置においてクライアント10でユーザごとに適切に調整
されたユーザインタフェースを実現する処理を行なうた
めの、サーバ20およびクライアント0によって実行
されるソフトウェアは以下のような制御構造を有する。 [サーバ20]サーバ20での処理についてまず説明す
る。なお、クライアント10からの要求を受信する処理
など、クライアントとサーバ間で行なわれる一般的な通
信処理は周知であるので、以下の説明ではそれらについ
ての詳細な説明は行なわない。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小宮 常康 京都市左京区吉田本町 京都大学大学院情 報学研究科内 Fターム(参考) 5B069 AA01 BA01 BA04 BB16 JA01 JA02 LA03 5B076 AB17 5B089 GA11 GA21 GB09 HA01 JA11 JB07 KA04 KA13 KB03 KC27 LB04 LB07 LB14 5E501 AA02 AC24 AC32 BA12 CA02 CB02 CB09 DA02 DA14 EB01 EB18

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 クライアントコンピュータとネットワー
    ク接続され、各クライアントコンピュータで実行可能な
    プログラムコードを各クライアントコンピュータに送信
    可能なサーバコンピュータを用いて、ユーザごとに適切
    に調整されたインタフェースを各前記クライアントコン
    ピュータにおいて実現するためのインタフェース実現方
    法であって、 クライアントコンピュータから受ける要求に応答して、
    当該要求を発行したユーザに対して提示すべきユーザイ
    ンタフェースを構築するための環境情報および当該ユー
    ザインタフェースの振舞いを規定するプログラムコード
    を含んだモジュールを準備するステップと、 前記要求を発行したクライアントコンピュータに対して
    前記モジュールを送信し、前記クライアントコンピュー
    タ上において前記モジュールを実行させて前記ユーザイ
    ンタフェースを実現するステップと、 前記クライアントコンピュータにおいて前記モジュール
    を実行した結果得られる、前記環境情報の更新のための
    情報を前記クライアントコンピュータから受信するステ
    ップと、 前記クライアントコンピュータから受信した環境情報の
    更新のための情報を用いて、ユーザごとの環境情報を記
    憶した環境情報データベースを更新するステップとを含
    む、ユーザインタフェース実現方法。
  2. 【請求項2】 前記ユーザインタフェースは、ユーザの
    選択枝をリストする選択的インタフェース部品を含み、 前記環境情報の更新のための情報は、前記選択的インタ
    フェース部品を用いたユーザの選択結果を含み、 前記環境情報は、ユーザによる選択結果に基づいて作成
    された操作履歴を含む、請求項1に記載のユーザインタ
    フェース実現方法。
  3. 【請求項3】 前記モジュールを準備するステップは、 クライアントコンピュータから受ける要求に応答して、
    当該要求を発行したユーザに対して提示すべきユーザイ
    ンタフェースを構築するための環境情報を前記環境情報
    データベースから読出すステップと、 前記環境情報データベースから読出された環境情報か
    ら、所定の条件を充足する情報のみを抽出するステップ
    と、 前記所定の条件を充足する情報および前記ユーザインタ
    フェースの振舞いを規定する前記プログラムコードを含
    んだ前記モジュールを準備するステップとを含む、請求
    項1または請求項2に記載のユーザインタフェース実現
    方法。
  4. 【請求項4】 クライアントコンピュータとネットワー
    ク接続され、各クライアントコンピュータで実行可能な
    プログラムコードを各クライアントコンピュータに送信
    可能なサーバコンピュータを用いて、ユーザごとに適切
    に調整されたインタフェース実現方法を各前記クライア
    ントコンピュータにおいて実現するためのプログラムを
    記録したコンピュータ読取可能な記録媒体であって、 前記インタフェース実現方法は、 クライアントコンピュータから受ける要求に応答して、
    当該要求を発行したユーザに対して提示すべきユーザイ
    ンタフェースを構築するための環境情報および当該ユー
    ザインタフェースの振舞いを規定するプログラムコード
    を含んだモジュールを準備するステップと、 前記要求を発行したクライアントコンピュータに対して
    前記モジュールを送信し、前記クライアントコンピュー
    タにおいて前記モジュールを実行させて前記ユーザイン
    タフェースを実現するステップと、 前記クライアントコンピュータにおいて前記モジュール
    を実行した結果得られる、前記環境情報の更新のための
    情報を前記クライアントコンピュータから受信するステ
    ップと、 前記クライアントコンピュータから受信した環境情報の
    更新のための情報を用いて、ユーザごとの環境情報を記
    憶した環境情報データベースを更新するステップとを含
    む、コンピュータ読取可能な記録媒体。
  5. 【請求項5】 前記ユーザインタフェースは、ユーザの
    選択枝をリストする選択的インタフェース部品を含み、 前記環境情報の更新のための情報は、前記選択的インタ
    フェース部品を用いたユーザの選択結果を含み、 前記環境情報は、ユーザによる選択結果に基づいて作成
    された操作履歴を含む、請求項4に記載のコンピュータ
    読取可能な記録媒体。
  6. 【請求項6】 前記モジュールを準備するステップは、 クライアントコンピュータから受ける要求に応答して、
    当該要求を発行したユーザに対して提示すべきユーザイ
    ンタフェースを構築するための環境情報を前記環境情報
    データベースから読出すステップと、 前記環境情報データベースから読出された環境情報か
    ら、所定の条件を充足する情報のみを抽出するステップ
    と、 前記所定の条件を充足する情報および前記ユーザインタ
    フェースの振舞いを規定する前記プログラムコードを含
    んだ前記モジュールを準備するステップとを含む、請求
    項4または請求項5に記載のコンピュータ読取可能な記
    録媒体。
JP2000075488A 2000-03-17 2000-03-17 ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体 Pending JP2001265472A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000075488A JP2001265472A (ja) 2000-03-17 2000-03-17 ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000075488A JP2001265472A (ja) 2000-03-17 2000-03-17 ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体

Publications (1)

Publication Number Publication Date
JP2001265472A true JP2001265472A (ja) 2001-09-28

Family

ID=18593375

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000075488A Pending JP2001265472A (ja) 2000-03-17 2000-03-17 ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体

Country Status (1)

Country Link
JP (1) JP2001265472A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010503052A (ja) * 2006-08-24 2010-01-28 チャンビー・インダストリーズ・インコーポレイテッド ネットワーク化されたアプリケーション共有システムで利用するための構成可能なパーソナル音声映像デバイス
JP2018097473A (ja) * 2016-12-09 2018-06-21 株式会社沖データ 情報処理装置及び情報処理システム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010503052A (ja) * 2006-08-24 2010-01-28 チャンビー・インダストリーズ・インコーポレイテッド ネットワーク化されたアプリケーション共有システムで利用するための構成可能なパーソナル音声映像デバイス
JP2018097473A (ja) * 2016-12-09 2018-06-21 株式会社沖データ 情報処理装置及び情報処理システム

Similar Documents

Publication Publication Date Title
JP4381708B2 (ja) グラフィカルユーザインターフェイスシステム
JP4381709B2 (ja) サーバ
KR100999267B1 (ko) 관리 서버들에 의해 업데이트된 온-디바이스 애플리케이션 카탈로그
US8898573B2 (en) Method and apparatus for providing toolbar service
CN102426511A (zh) 系统级搜索的用户界面
JP2003330713A (ja) 異種装置プラットフォーム間を移動するプラットフォーム特定型のグラフィカルユーザインターフェイスのウィジェットの変換
KR20140105738A (ko) 사용자 인터페이스 순서 및 구성 조절 기법
JP2006302242A (ja) コントロールパネル機能との検索可能なタスクベースのインターフェイス
JP2003523568A (ja) コンピュータにおいてアプリケーションソフトウエアを起動するための制御装置及び制御方法並びにこれを用いたマルチモニタコンピュータ、クライアントサーバシステム及び記憶媒体
JP2000305835A (ja) ウェブサイト閲覧システム
JP2008305385A (ja) 文字入力装置、サーバ装置、辞書ダウンロードシステム、変換候補語句の提示方法、情報処理方法、プログラム
CN100444161C (zh) 用于浏览数据通信网络的方法
US11068853B2 (en) Providing calendar utility to capture calendar event
JP4142866B2 (ja) データベース同期化装置及びプログラム
US7213033B2 (en) Automatically populating an application's working directory with files having a specified type from other directory locations
JPH1115664A (ja) エージェントインタフェース装置
JP4849299B2 (ja) 携帯端末用アプリケーション作成支援システム
JP2000022839A (ja) 部分データ同期化方法および携帯型情報機器
JP2001265472A (ja) ユーザインタフェース実現方法およびそのためのプログラムを記録したコンピュータ読取可能な記録媒体
CN113254730B (zh) 一种数据搜索方法、计算设备及可读介质
JP2003523000A (ja) フィルタ・エクスプレション木からグラフィカル・ユーザ・インターフェースを作成するシステムおよび方法
JP2003167835A (ja) 会員登録システムおよび方法ならびにプログラム
JP2002091995A (ja) 広告情報供給方法及び広告情報供給システム並びに広告情報供給プログラムを記録した記録媒体
JP4455429B2 (ja) 移動体通信端末及びサーバ
JP2000305871A (ja) 電子メール送受信装置および電子メール送受信プログラム、並びに電子メール管理プログラムを記録した記憶媒体

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040302