(57)【要約】【課題】サーバベース方式シンクライアントで動作するシンクライアントサーバにおいて、シンクライアントサーバ上での作業をクライアント端末間で引き継ぎ可能とする。【解決手段】サーバベース方式で動作するシンクライアントサーバ(100)は、クライアント端末(201)がシンクライアントサーバ(100)上で作業を行っている際に、クライアント端末(201)からの作業の終了指示を受ける前に、クライアント端末(201)が作業から離脱したか否かを検出する検出部(120)、クライアント端末(201)が作業から離脱したこと検出すると、作業を引き継ぐクライアント端末(202~205)と接続し、クライアント端末(202~205)がシンクライアントサーバ(100)上で作業を行えるように制御する制御部(110)を備える。【選択図】図１
2010231430.tif 000002
【特許請求の範囲】
【請求項１】
サーバベース方式で動作するシンクライアントサーバであって、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末からの前記作業の終了指示を受ける前に、当該クライアント端末が前記作業から離脱したか否かを検出する検出部と、
前記検出部により前記クライアント端末が作業から離脱したこと検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御する制御部と、
を備えることを特徴とするシンクライアントサーバ。
【請求項２】
請求項１に記載のシンクライアントサーバにおいて、
前記制御部は、
通信品質が良好なクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とするシンクライアントサーバ。
【請求項３】
請求項１又は２に記載のシンクライアントサーバにおいて、
前記制御部は、
前記作業に対する権限を有するクライアントに対応するクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とするシンクライアントサーバ。
【請求項４】
サーバベース方式で動作するシンクライアントサーバであって、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末からの前記作業の引き継ぎ指示を検出する検出部と、
前記検出部により前記作業の引き継ぎ指示を検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御する制御部と、
を備えることを特徴とするシンクライアントサーバ。
【請求項５】
請求項４に記載のシンクライアントサーバにおいて、
前記制御部は、
通信品質が良好なクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とするシンクライアントサーバ。
【請求項６】
請求項４又は５に記載のシンクライアントサーバにおいて、
前記制御部は、
前記作業に対する権限を有するクライアントに対応するクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とするシンクライアントサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シンクライアントサーバに関し、特に、サーバベース方式シンクライアントで動作するシンクライアントサーバにおいて、シンクライアントサーバ上での作業をクライアント端末間で引き継ぎ可能とするシンクライアントサーバに関する。
【背景技術】
【０００２】
シンクライアントとは、ネットワーク機能や入力機能といった必要最低限の機能のみを有するクライアント端末と、アプリケーションの実行やデータ処理を行うサーバ（シンクライアントサーバ）とによって構築されるシステムアーキテクチャである。シンクライアントには様々な実装方式があるが、主に採用されているものに、サーバベースコンピューティング（SBC：Server Based Computing）方式がある。（なおこれ以降、サーバベースコンピューティングを用いるシンクライアントを、「サーバベース方式シンクライアント」と称する。）サーバベース方式シンクライアントでは、複数のクライアント端末がクライアントサーバに接続し、クライアントサーバは、個々のクライアント端末に対して別個に行われる作業、すなわちアプリケーションの実行を担う。なおアプリケーションとは、例えば、ドキュメントの作成、表計算といったデータ処理から、勤怠管理システムや警備システム等、企業の需要に合わせて構築されたグループウェアアプリケーションも含む。
【０００３】
なお、サーバベース方式シンクライアントにおいて、作業中にクライアント端末とクライアントサーバとの接続が切断され、クライアント端末の作業が途中で中断されることがある。例えば、停電等によりクライアント端末への電源供給が停止したり、サーバとの接続ケーブルが不注意で引抜かれたりする場合である。また、今後、ＬＴＥ（Long Term Evolution）、ＵＭＢ（Ultra Mobile Broadband）等、有線と同程度に高速かつ大容量な無線通信システムの発展に伴い、無線でのシンクライアントシステムの構築が進むと考えられる。すなわち、クライアント端末を無線通信端末で実現し、シンクライアントサーバとクライアント端末とを無線で接続する。
【０００４】
しかしながら、シンクライアントシステムを無線で構築した場合、干渉やフェージング等の影響を受けて電波伝搬環境が変動し、シンクライアントサーバとクライアント端末との無線通信品質の劣化、無線通信の切断等が増えることが懸念される。また、無線というモビリティの高さから、クライアント端末のユーザが意図して又は意図せずに無線通信の圏外に移動し、クライアント端末の作業途中で、シンクライアントサーバとクライアント端末との間の接続が切断されてしまうおそれがある。
【０００５】
なお、従来技術に、上述のような、シンクライアントサーバとクライアント端末との接続の切断を鑑みたものがある（例えば、特許文献１，２を参照）。特許文献１では、サーバとの通信が遮断された状況においても、クライアント端末に簡易的なドキュメント処理を行わせている。また、特許文献２では、アプリケーションの処理途中で処理が中断した場合でも、中断した時点から続けて処理を実行させることが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−０３４６８６号公報
【特許文献２】特開２００８−０５９２２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術では、以下のような問題がある。まず、特許文献１のようにクライアント端末自体に処理を行わせるには、処理用のハードウェアやバッファ等をクライアント端末に付加しなければならない。このことは、特に、クライアント端末を無線通信端末で実現する場合、クライアント端末の大型化や高コスト化につながり好ましくない。次に、特許文献２の技術では、サーバとの接続が切断されたクライアント端末に対するサーバの処理は停止してしまうため、急を要する作業を迅速に完了させることができない。また、シンクライアントシステムを無線で実現した場合には、クライアント端末が通信を行う基地局への接続端末数の増減に応じて、クライアント端末の通信レートが変化する。すなわち、通信レートが低下したクライアント端末に対しては、サーバからのレスポンスが遅くなり、クライアント端末での作業をスムーズに進めることができなくなる。
【０００８】
上述のように、サーバとの接続が切断されてクライアント端末の作業が中断されたり、通信レートの低下によってクライアント端末の作業をスムーズに進めることができなくなったりした場合に、サーバと接続している他のクライアント端末に作業を引き継がせる仕組みがあれば便利であるが、そのような仕組みは提案されていない。
【０００９】
従って、本発明の目的は、上述の諸課題を解決し、サーバベース方式シンクライアントで動作するシンクライアントサーバにおいて、シンクライアントサーバ上での作業をクライアント端末間で引き継ぎ可能とする技法（シンクライアントサーバ）を提供することにある。
【課題を解決するための手段】
【００１０】
上述した諸課題を解決すべく、本発明による、サーバベース方式で動作するシンクライアントサーバは、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末から前記作業の終了指示を受ける前に、当該クライアント端末が前記作業から離脱したか否かを検出する検出部と、
前記検出部により前記クライアント端末が作業から離脱したこと検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御する制御部と、
を備えることを特徴とする。
【００１１】
また、本発明の別の実施態様による、サーバベース方式で動作するシンクライアントサーバは、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末からの前記作業の引き継ぎ指示を検出する検出部と、
前記検出部により前記作業の引き継ぎ指示を検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御する制御部と、
を備えることを特徴とする。
【００１２】
また、本発明の一実施形態によるシンクライアントサーバは、
前記制御部は、
通信品質が良好なクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とする。
【００１３】
さらに、本発明の別の実施態様によるシンクライアントサーバは、
前記制御部は、
前記作業に対する権限を有する（権限が高く設定されている）クライアントに対応するクライアント端末を、前記作業を引き継ぐクライアント端末として決定する、
ことを特徴とする。
【００１４】
上述したように本発明の解決手段を装置として説明してきたが、本発明はこれらに実質的に相当する方法、プログラム、プログラムを記録した記憶媒体としても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。なお、下記の方法やプログラムの各ステップは、データの処理においては必要に応じて、ＣＰＵ、ＤＳＰ等の演算処理装置を使用するものであり、入力したデータや加工・生成したデータ等をＨＤＤ、メモリ等の記憶装置に格納するものである。
【００１５】
例えば、本発明を方法として実現した、サーバベース方式で動作するシンクライアントサーバの制御方法は、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末からの前記作業の終了指示を受ける前に、当該クライアント端末が前記作業から離脱したか否かを検出するステップと、
前記検出するステップにより前記クライアント端末が作業から離脱したこと検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御するステップと、
を含むことを特徴とする。
【００１６】
また、本発明の一実施態様による、サーバベース方式でシンクライアントサーバの制御方法は、
クライアント端末が前記シンクライアントサーバ上で作業を行っている際に、該クライアント端末からの前記作業の引き継ぎ指示を検出するステップと、
前記検出するステップにより前記作業の引き継ぎ指示を検出すると、前記作業を引き継ぐクライアント端末と接続し、当該クライアント端末が前記シンクライアントサーバ上で前記作業を行えるように制御するステップと、
を含むことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、サーバベース方式シンクライアントで動作するシンクライアントサーバにおいて、シンクライアントサーバ上での作業をクライアント端末間で引き継ぎ可能とすることが可能となる。
【図面の簡単な説明】
【００１８】
【図１】無線で実現したサーバベース方式シンクライアントによるシステムの概略構成図である。
【図２】シンクライアントサーバの概略ブロック図である。
【図３】シンクライアントサーバが優先順位テーブルを作成する処理の一例のフローチャートである。
【図４】ユーザ序列決定処理（テーブル化処理）の一例のフローチャートである。
【図５】優先順位テーブルの一例である。
【図６】優先順位が同等のクライアント端末のいずれか一方を選択する指標となる散布図である。
【図７】自発的にクライアント端末が他のクライアント端末に作業を引き継がせる場合の、シンクライアントサーバの処理の一例を説明するフローチャートである。
【図８】指定ユーザ決定処理の一例のフローチャートである。
【図９】突発的にクライアント端末の作業が他のクライアント端末に引き継がれる場合の、シンクライアントサーバの処理の一例を説明するフローチャートである。
【図１０】作業引継ぎ処理の一例のフローチャートである。
【図１１】作業引継ぎ指示等を受信した際のクライアント端末の物理的動作を行う概略図である。
【図１２】引継ぎ指示端末の通信が復帰した場合のシンクライアントサーバの処理の一例を説明するフローチャートである。
【図１３】引継ぎ指示端末の通信が復帰した旨を受信した引継ぎ端末の処理の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１９】
以降、諸図面を参照しながら、本発明の実施形態を詳細に説明する。図１は、無線で実現したサーバベース方式シンクライアントによるシステムの概略構成図である。図１に示すように、サーバベース方式シンクライアントによるシステム（なお、これ以降、簡単に「シンクライアントシステム」とも称する）は、シンクライアントサーバ１００、複数のクライアント端末Ａ〜Ｅ  ２０１〜２０５、基地局３００、通信ネットワーク４００及びデータベースＤＢを含む。なお、図１の例では、クライアント端末を携帯電話として示す。
【００２０】
複数のクライアント端末Ａ〜Ｅ  ２０１〜２０５は、シンクライアントシステム５００において１つのグループに属するものとして登録される。このグループとは、例えば、企業ごと、企業内の部署や課ごとに設定することができ、１つのグループに属するクライアント端末のユーザで、ワークフローや勤怠管理システム等のグループウェアを共有する。このグループの登録は、サーバ１００に接続されたデータベースＤＢに、クライアント端末を識別可能な端末固有の識別子（例えば、ＳＩＭカード（Subscriber Identity Module Card）、携帯電話番号等）とグループとを紐付けて格納することによって行われる。又は、グループに属するユーザの識別子（認証番号等）とグループとを紐付けて格納してもよい。この場合、ユーザは、認証番号を用いて認証されることでシンクライアントサーバ１００へ接続することができるため、任意のクライアント端末を用いることができる。従って、以下では、クライアント端末とユーザとを同義で用いる。
【００２１】
なお、３ＧＰＰ（Third Generation Partnership Project）やＥＴＳＩ（European Telecommunications Standards Institute）等の標準化団体により策定された規格であるＵＭＴＳ（Universal Mobile Telecommunications System）等が規定するグループコールやユーザ占有型チャネルを用いて、クローズドユーザグループ（ＵＳＧ：Closed User Group）を形成してもよい。これにより、同一地域又は同一国以外、例えば隣国にグループ内のクライアント端末（ユーザ）が存在していても、１つのグループとして機能することが可能となる。なお、図１では、クライアント端末Ａ〜Ｅ  ２０１〜２０５の５つを、１つのグループに属するものとして示す。しかしながら、他のグループに属する他のクライアント端末が基地局３００に複数接続してもよいし、クライアント端末Ａ〜Ｅ  ２０１〜２０５内の幾つかが別のグループを形成してもよい。さらに、図１に示す基地局３００とは別の、図示しない基地局に接続する他のクライアント端末が、図１に示すクライアント端末Ａ〜Ｅ  ２０１〜２０５と同一のグループに属していてもよい。
【００２２】
次に、シンクライアントサーバについて説明する。図２は、シンクライアントサーバの概略ブロック図である。図２に示すように、シンクライアントサーバ１００は、制御部１１０、検出部１２０、記憶部１３０、通信インタフェース１４０、データベースインタフェース１５０、アプリケーション実行部１６０及び計時部１７０を備える。また、制御部１１０は、判定部１１２及びテーブル作成部１１４をさらに備える。記憶部１３０は、優先順位テーブル１３２を含む。
【００２３】
各部の機能を説明する。検出部１２０は、クライアント端末Ａ〜Ｅ  ２０１〜２０５がシンクライアントサーバ１００上で作業を行っている際に、クライアント端末Ａ〜Ｅ  ２０１〜２０５から作業の終了指示を受ける前に、クライアント端末Ａ〜Ｅ  ２０１〜２０５が作業から離脱したか否かを検出する。すなわち、作業の途中で、クライアント端末とシンクライアントサーバ１００との間の接続が切断されたか否かを検出する。さらに、検出部１２０は、各クライアント端末Ａ〜Ｅ  ２０１〜２０５がシンクライアントサーバ１００上で作業を行っている際に、各クライアント端末Ａ〜Ｅ  ２０１〜２０５からの作業の引き継ぎ指示を検出する。制御部１１０は、検出部１２０によりクライアント端末Ａ〜Ｅ  ２０１〜２０５のいずれかが作業から離脱したことが検出されると、離脱したクライアント端末の作業を引き継ぐ他のクライアント端末と接続し、その他のクライアント端末が、シンクライアントサーバ１００上で離脱したクライアント端末の作業を行えるように制御する。また、判定部１１２は、クライアント端末から受信する情報の内容の判定といった、各種判定を行う。
【００２４】
テーブル作成部１１４は、グループに属するユーザの優先順位を示す優先順位テーブル１３２をグループ毎に作成する。記憶部１３０は、優先順位テーブル１３２を格納する。通信インタフェース１４０は、通信ネットワーク４００と接続するためのインタフェースである。データベース１５０は、グループ種別とグループに紐付けられたクライアント端末の情報や、各クライアント端末の作業内容、作業経緯等を格納する。アプリケーション実行部１６０は、各クライアント端末からの作業指示を受けて、各クライアント端末に対するアプリケーション（ドキュメント作成、表計算、ワークフロー入力等）を実行する。計時部１７０は、計時を行う。
【００２５】
上述したように、シンクライアントシステムを無線で構築した場合、無線というモビリティの高さから、クライアント端末のユーザが意図して（自発的に）又は意図せずに（突発的に）無線通信圏外に移動することもある。また、干渉やフェージング等の影響を受けて電波伝搬環境が変動し、シンクライアントサーバとクライアント端末との無線通信品質の劣化、無線通信の切断等が発生する。このような場合に、本発明によれば、シンクライアントサーバとの通信が切断、すなわち作業から離脱したクライアント端末の作業を、そのクライアント端末と同じグループに属する別のクライアント端末に引き継がせる。このとき、作業内容（アプリケーション内容）によっては、同じグループであっても作業を引き継がせるべきでない場合がある。例えば、企業に導入されている勤怠管理システムや各種ワークフローにおいて、管理職レベルのような一定の権限が必要な決済等の承認を、非管理職ユーザに引き継がせることは好ましくない。従って、本発明によれば、まず、グループ内でユーザの優先順位（優先序列）を決定し、各ユーザが権限を有するアプリケーションの範囲とともにテーブル（優先順位テーブル）として格納する。以下に、優先順位テーブルの作成処理について説明する。
【００２６】
図３，４は、シンクライアントサーバ１００が優先順位テーブル１３２を作成する処理の一例のフローチャートである。図３，４の処理は、例えばアプリケーションをシンクライアントサーバ１００にインストールする時に開始され、アプリケーション毎に優先順位テーブル１３２が作成される。まず、ステップＳ１１にて、シンクライアントサーバ１００のテーブル作成部１１４は、アプリケーションを使用するグループに該当するクライアント端末の情報を取得する。この情報には、グループに該当するクライアント端末の数や、クライアント端末のユーザに関する、例えば権限レベル等の情報が含まれる。また、これらの情報は、例えば、インストールするアプリケーションの管理権限を有するユーザのクライアント端末から取得することができる。
【００２７】
次に、ステップＳ１２にて、判定部１１２は、グループに該当するクライアント端末の数が複数か否かを判定する。クライアント端末の数が複数でないと判定されると、ステップＳ１４にて、判定部１１２は、本処理の中断指示があるか否かを判定する。処理中断指示がない場合はステップＳ１１へ戻り、グループに該当する新たなユーザの登録がなされるまで待機する。処理中断指示がある場合は、処理を終了する。また、ステップＳ１２にて、グループに該当するクライアント端末の数が複数であると判定されると、ステップＳ１３へ進み、ユーザ序列決定処理（テーブル化処理）が行われる。
【００２８】
図４は、ユーザ序列決定処理（テーブル化処理）の一例のフローチャートである。まず、ステップＳ２１にて、テーブル作成部１１４は、グループに該当する（グループ内の）クライアント端末の数（Ｎ）を取得する。そして、シンクライアントサーバ１００において、ステップＳ２２〜Ｓ３０の一連の処理がクライアント端末ごとに行われ、優先順位テーブル１３２が作成されていく。
【００２９】
まず、ステップＳ２２にて、テーブル作成部１１４は、クライアント端末のユーザ情報（権限レベル、識別番号等）を取得する。次に、ステップＳ２３〜Ｓ２６にて、判定部１１２は、ステップＳ２２で情報を取得したユーザ（以下、ユーザＵとする）の優先順位と、優先順位テーブル１３２内（これ以前に別のクライアント端末に対して行われたステップＳ２２〜Ｓ３０の処理によって作成されている）の要素（ユーザ）の優先順位とを比較する。まず、ステップＳ２４にて、優先順位テーブル１３２内に、ユーザＵの優先順位よりも高いものもしくは同等のものが存在するか否かを判定する。優先順位テーブル１３２内に、ユーザＵの優先順位よりも高いものもしくは同等のものが存在しないと判定された場合は、ステップＳ２７へ進み、テーブル作成部１１４は、ユーザＵの優先順位を優先順位テーブル１３２内で最上位とする。ステップＳ２４にて、優先順位テーブル１３２内に、ユーザＵの優先順位よりも高いものもしくは同等のものが存在すると判定された場合は、ステップＳ２５へ進み、判定部１１２は、優先順位テーブル１３２内に、ユーザＵの優先順位よりも低いものもしくは同等のものが存在するか否かを判定する。
【００３０】
ステップＳ２５にて、優先順位テーブル１３２内に、ユーザＵの優先順位よりも低いものもしくは同等のものが存在しないと判定された場合は、ステップＳ２８へ進み、テーブル作成部１１４は、ユーザＵの優先順位を優先順位テーブル１３２内で最下位とする。ステップＳ２５にて、優先順位テーブル１３２内に、ユーザＵの優先順位よりも低いものもしくは同等のものが存在すると判定された場合は、ステップＳ２６へ進み、判定部１１２は、優先順位テーブル１３２内に、ユーザＵの優先順位と同等のものが存在するか否かを判定する。
【００３１】
ステップＳ２６にて、ユーザＵの優先順位と同等のものが存在しないと判定された場合は、ステップＳ２９へ進み、テーブル作成部１１４は、ユーザＵの優先順位を、ユーザＵの優先順位より低い要素のうち最も優先順位が高い要素の１つ上位とする。ステップＳ２６にて、ユーザＵの優先順位と同等のものが存在すると判定された場合は、ステップＳ３０へ進み、テーブル作成部１１４は、ユーザＵの優先順位を、テーブル内の優先順位が同等のものと並列とする。
【００３２】
ステップＳ２７〜Ｓ３０の後、ステップＳ３１へ進み、判定部１１２は、全てのクライアント端末（Ｎ個の端末）についてステップＳ２２〜Ｓ３０の処理を行ったか否かを判定する。処理を行っていないと判定された場合は、ステップＳ２２へ戻り、残りのクライアント端末についてステップＳ２２〜Ｓ３０を繰返す。ステップＳ３１にて、全てのクライアント端末の処理を行ったと判定された場合は、ユーザ序列決定処理を終了し、図３へ戻る。
【００３３】
図３，４の優先順位テーブル作成処理が終了すると、図５に示すような優先順位テーブル１３２が記憶部１３０に格納される。図５（ａ）は、優先順位が順列である場合、図５（ｂ）は、優先順位が同等のユーザが有る場合の優先順位テーブル１３２の一例である。上述したように、これらの優先順位テーブルは、アプリケーション毎に作成される。また、図５のように、優先順位テーブル１３２には、クライアント端末Ａ〜Ｅ（ユーザＡ〜Ｅ）の優先順位と、権限が必要な作業Ｘ〜Ｚに対する権限の有無が示される。これは、単一のアプリケーションでも、管理職レベルでのみ実行可能な作業と、非管理職レベルでも実行可能な作業とが存在するためである。シンクライアントサーバ１００は、作業から離脱したクライアント端末の作業を他のクライアント端末に引き継がせる際、優先順位テーブル１３２を参照して、他のクライアント端末を選択する。
【００３４】
なお、このとき、図５（ｂ）のように、優先順位が同等のユーザＣ，Ｄが存在する場合もある。このときは、基地局３００から取得するクライアント端末Ｃ，Ｄの通信品質（電波強度、ビット誤り率、ＣＩＮＲ（Carrier to Interference plus Noise Ratio：搬送波対干渉波・雑音比）等）、シンクライアントサーバ１００における作業量（アプリケーション処理量、シンクライアントサーバ１００との通信頻度、通信量等）を考慮して、作業を引き継がせるクライアント端末を選択する。図６に、優先順位が同等のクライアント端末のいずれか一方を選択する指標となる散布図を示す。図６の例では、クライアント端末Ｃが、電波強度が高く（通信品質が良好）かつ作業量が低いこと、クライアント端末Ｄが、電波強度が低く（通信品質が悪い）かつ作業量が高いことがわかる。このような場合、シンクライアントサーバ１００は、クライアント端末Ｃを、作業を引き継がせる端末として選択する。なお、詳細については以下に説明していく。
【実施例１】
【００３５】
まず、作業中のクライアント端末が自発的に作業を他のクライアント端末に引き継がせる場合を、実施例１として説明する。ここで、自発的とは、ユーザ自らがクライアント端末の電源をオフにする場合や、周囲の電波電波環境が劣化して通信レートが低くなり、作業がスムーズに進まないために、他のクライアント端末に作業を依頼する場合のことを指す。なお、実施例１では、図１におけるクライアント端末Ａの作業が、他のクライアント端末に引き継がれるものとして説明する。また、クライアント端末Ａを「引継ぎ指示ユーザ」、引継ぎ指示ユーザによって作業を引き継ぐユーザとして指定されたユーザ又はシンクライアントサーバ１００によって作業を引き継ぐユーザとして決定されたユーザを「指定ユーザ」、最終的にクライアント端末Ａから作業を引き継ぐクライアント端末を「引継ぎユーザ」とする。
【００３６】
図７，８は、自発的にクライアント端末が他のクライアント端末に作業を引き継がせる場合の、シンクライアントサーバ１００の処理の一例を説明するフローチャートである。この処理は、シンクライアントサーバ１００の検出部１２０によって、クライアント端末Ａからの作業の引継ぎ指示を検出した場合に開始される。まず、ステップＳ４１にて、判定部１１２は、検出部１２０で検出された引継ぎ指示を解析し、引継ぎ指示に対応する優先順位テーブルを記憶部１３０から選択する。なお、作業の引継ぎ指示には、引き継ぐユーザの指定、引き継ぐユーザへのメッセージ、引き継がせる作業の内容、作業範囲、引継ぎ指示ユーザが作業に復帰する予定時間等を含んでもよいし、作業を引き継がせたい旨のみを含んでいてもよい。次に、ステップＳ４２にて、判定部１１２は、作業の引継ぎ指示に引継ぎユーザの指定（指定ユーザ）が含まれているか否かを判定する。指定ユーザが含まれている場合には、ステップＳ４３へ進み、判定部１１２は、指定ユーザへの作業の引継ぎが可能であるか否かを判定する。すなわち、ステップＳ４１で選択された優先順位テーブル１３２を参照して、指定ユーザが、引き継ぐべき作業を行う権限を有するか否かを判定する。ステップＳ４３にて、指定ユーザへの作業の引継ぎが可能であると判定された場合は、ステップＳ４５へ進み、制御部１１０は、指定ユーザへ作業引継ぎ指示を送信する。また、ステップＳ４３にて、指定ユーザに引継ぎ可能でないと判定された場合、又は、ステップＳ４２にて指定ユーザが含まれていないと判定された場合は、ステップＳ４４へ進み、シンクライアントサーバ１００は、指定ユーザ決定処理を行う。
【００３７】
図８は、指定ユーザ決定処理の一例のフローチャートである。制御部１１０は、図７のステップＳ４１で選択された優先順位テーブル１３２を参照して、優先順位テーブル１３２に記載されているユーザに対して、１つずつステップＳ６１〜Ｓ６５の処理を行う。まず、ステップＳ６１にて、制御部１１０は、指定ユーザとしてこれ以前に決定されたことのないユーザのうち、引き継ぐべき作業の権限を有するユーザを選択する。次に、ステップＳ６２にて、制御部１１０は、作業権限のあるユーザのうち、優先順位が最も高いものを選択する。ステップＳ６３にて、判定部１１２は、ステップＳ６２にて選択されたユーザと同等の優先順位を有する他のユーザが存在するか否かを判定する。ステップＳ６２にて選択されたユーザと同等の優先順位を有する他のユーザが存在しないと判定された場合は、ステップＳ６４へ進み、制御部１１０は、選択したユーザを指定ユーザとして決定する。なお、優先順位テーブル１３２が図５（ｂ）に示すものであり、ステップＳ６２にて選択されたユーザが、ユーザＣである場合、ステップＳ６３にて、選択されたユーザと同等の優先順位を有する他のユーザ（ユーザＤ）が存在すると判定される。この場合、ステップＳ６５にて、制御部１１０は、図６に示すユーザＣとユーザＤの状態を示す散布図を参考にして、通信品質の良好なものを指定ユーザとして決定する。なお、図６の散布図は、基地局３００から定期的に情報を取得し、定期的に更新される。ステップＳ６４又はステップＳ６５にて指定ユーザが決定されると、処理を終了し、図７のステップＳ４５へ進む。
【００３８】
図７に戻り説明を続ける。ステップＳ４５にて、制御部１１０は、指定ユーザに、作業を引き継ぐべき旨（作業を引継ぎ指示）を送信する。なお、作業引継ぎ指示には、指定ユーザ、引継ぎ作業の内容等が含まれる。次に、ステップＳ４６にて、判定部１１２は、指定ユーザからの応答が、引継ぎ指示の「承諾」、「拒否」又は「一定時間以上の応答なし」のいずれであるかを判定する。「一定時間以上の応答なし」の場合は、指定ユーザがシンクライアントサーバ１００に接続されていない、すなわち、指定ユーザが無線通信圏外にあることを示す。
【００３９】
ステップＳ４６にて、引継ぎ指示が拒否された、又は指定ユーザが通信圏外にあると判定された場合は、ステップＳ４７へ進む。ステップＳ４７にて、制御部１１０は、引継ぎ可能なユーザがグループ内に存在するか否か、すなわち、作業権限を有するユーザがグループ内に存在するか否かを判定する。ステップＳ４７にて、作業権限を有するユーザが存在すると判定された場合は、ステップＳ４４の指定ユーザ決定処理へ戻る。ステップＳ４７にて、作業権限を有するユーザが存在しないと判定された場合は、ステップＳ４８へ進み、制御部１１０は、引継ぎ指示ユーザに、引継ぎが失敗した旨を送信する。
【００４０】
また、ステップＳ４６にて、引継ぎ指示へのレスポンスとして「承諾」を受信した場合は、ステップＳ４９へ進み、制御部１１０は、指定ユーザを引継ぎユーザとして、引継ぎ作業の内容、引継ぎ指示ユーザ及び引継ぎユーザ等を紐付けて、記憶部１３０又はデータベースＤＢに格納する。その後、ステップＳ５０にて、制御部１１０は、引継ぎ指示ユーザに、引継ぎ成功の旨を送信する。
【００４１】
なお、図７，８に示すフローチャートでは、指定ユーザへ作業引継ぎ指示を送信し、一定時間以上応答がない場合に、指定ユーザが通信圏外であると判定する例を説明した。しかしながら、指定ユーザ決定処理にて、通信圏内にあるクライアント端末を検出し、通信圏内にあるクライアント端末のみを指定ユーザとして決定してもよい。例えば、シンクライアントサーバ１００は、通信ネットワーク４００に存在する図示しないホームロケーションレジスタ等から、所定時間ごとにクライアント端末の位置登録情報を取得し、長期間位置登録の更新が行われていないクライアント端末を通信圏外にあると判定して、指定ユーザの選択候補にしないようにすることもできる。
【００４２】
上述のように、実施例１によれば、通信圏外へ移動する又は通信レートが低下したクライアント端末の作業を、中断させずに迅速に、他のクライアント端末に引続き行わせることができる。さらに、引継ぎの際には、権限の有無によりアプリケーションを実行できるユーザに制限がある場合でも、作業の内容に応じて適切な引継ぎユーザを選択することができる。また、通信品質や作業量を考慮して引継ぎユーザが選択されるため、個々のクライアント端末の引き継ぎ時点での処理能力に応じて、クライアント端末間での作業負荷を一定化することができる。
【実施例２】
【００４３】
次に、クライアント端末Ａ（引継ぎ指示ユーザ）が突発的に通信圏外となり、作業途中でその作業から離脱した際に、シンクライアントサーバ１００によって、クライアント端末Ａ（引継ぎ指示ユーザ）の作業が、他のクライアント端末に引き継がれる場合を、実施例２として説明する。なお、実施例２では、図１におけるクライアント端末Ａが作業途中で突発的に離脱するものとして説明する。また、クライアント端末Ａを「引継ぎ指示ユーザ」、引継ぎ指示ユーザによって作業を引き継ぐユーザとして指定されたユーザ又はシンクライアントサーバ１００によって作業を引き継ぐユーザとして決定されたユーザを「指定ユーザ」、最終的にクライアント端末Ａから作業を引き継ぐクライアント端末を「引継ぎユーザ」とする。
【００４４】
図９，１０は、突発的にクライアント端末の作業が他のクライアント端末に引き継がれる場合の、シンクライアントサーバ１００の処理の一例を説明するフローチャートである。まず、ステップＳ７１にて、検出部１２０は、クライアント端末Ａが作業から離脱したことを、クライアント端末Ａと通信していた基地局３００から受信する。次に、ステップＳ７２にて、計時部１７０は、クライアント端末Ａと基地局３００との間の通信が切断されている時間の測定を開始する。シンクライアントサーバ１００は、ステップＳ７４にて、計時部１７０が計時する通信切断時間が所定の閾値以上であると判定されるまで、クライアント端末Ａへ呼出信号を送信し、ステップＳ７３の、判定部１１２によるクライアント端末Ａから応答があるか否か（通信が復帰したか否か）の判定を繰返す。ステップＳ７３にて通信が復帰したと判定された場合は、処理を終了する。ステップＳ７４にて、通信切断時間が所定の閾値以上と判定されると、ステップＳ７５へ進み、作業引継ぎ処理を行う。
【００４５】
図１０は、作業引継ぎ処理の一例のフローチャートである。まず、ステップＳ８１にて、判定部１１２は、データベースＤＢ又は記憶部１３０に格納されている、アプリケーション実行部１６０による実行履歴等を解析し、引継ぎ指示ユーザ（クライアント端末Ａ）のこれまでの作業内容に対応する優先順位テーブルを記憶部１３０から選択する。次に、ステップＳ８２にて、判定部１１２は、あらかじめ引継ぎ指示ユーザ（クライアント端末Ａ）によって、作業離脱時に作業を引き継ぐべき引継ぎユーザの指定がされているか否か（指定ユーザが存在するか否か）を判定する。指定ユーザが存在する場合には、ステップＳ８３へ進み、判定部１１２は、指定ユーザへの作業の引継ぎが可能であるか否かを判定する。すなわち、ステップＳ８１で選択された優先順位テーブル１３２を参照して、指定ユーザが、引き継ぐべき作業を行う権限を有するか否かを判定する。ステップＳ８３にて、指定ユーザへの作業の引継ぎが可能であると判定された場合は、ステップＳ８５へ進み、制御部１１０は、指定ユーザへ作業引継ぎ指示を送信する。また、指定ユーザに引継ぎ可能でないと判定された場合、又は、ステップＳ８２にて指定ユーザが存在しないと判定された場合は、ステップＳ８４へ進み、シンクライアントサーバ１００は、指定ユーザ決定処理を行う。なお、指定ユーザ決定処理は、実施例１において図８を用いて説明したものと同様であるため説明を省略する。
【００４６】
図８の指定ユーザ決定処理によって指定ユーザが決定されると、ステップＳ８５にて、制御部１１０は、指定ユーザに、作業を引き継ぐべき旨（作業を引継ぎ指示）を送信する。次に、ステップＳ８６にて、判定部１１２は、指定ユーザからの応答が、引継ぎ指示の「承諾」、「拒否」又は「一定時間以上の応答なし」のいずれであるかを判定する。「一定時間以上の応答なし」の場合は、指定ユーザがシンクライアントサーバ１００に接続されていない、すなわち、指定ユーザが無線通信圏外にあることを示す。ステップＳ８６にて、引継ぎ指示が拒否された、又は指定ユーザが通信圏外にあると判定された場合は、ステップＳ８７へ進む。
【００４７】
ステップＳ８７にて、制御部１１０は、引継ぎ可能なユーザが存在するか否か、すなわち、作業権限を有するユーザが存在するか否かを判定する。ステップＳ８７にて、作業権限を有するユーザが存在すると判定された場合は、ステップＳ８４の指定ユーザ決定処理へ戻る。ステップＳ８７にて、作業権限を有するユーザが存在しないと判定された場合は、ステップＳ８８へ進み、判定部１１２は、通信が復帰したか、すなわち作業を離脱した端末であるクライアント端末Ａが通信圏内となったか、又は、作業を引継ぎ可能なクライアント端末が復帰して通信圏内となったか否かの判定を続ける。この判定は、例えば、各クライアント端末へ呼出信号の送信を続け、応答を受信したか否かで行うことができる。ステップＳ８８にて、作業を引継ぎ可能な端末が復帰した場合は、ステップＳ８４の指定ユーザ決定処理へ戻る。なお、ステップＳ８８にて、作業を離脱した端末の通信が復帰した場合は、処理を終了する。
【００４８】
また、ステップＳ８６にて、引継ぎ指示へのレスポンスとして「承諾」を受信した場合は、ステップＳ８９へ進み、制御部１１０は、指定ユーザを引継ぎユーザとして、引継ぎ作業の内容、引継ぎ指示ユーザ及び引継ぎユーザ等を紐付けて、記憶部１３０又はデータベースＤＢに格納する。さらに、引継ぎユーザによる作業内容及び引継ぎ指示ユーザの引継ぎ前の作業内容を、記憶部１３０又はデータベースＤＢに格納する。なお、データベースＤＢとは別の専門のデータベースを設けて、引継ぎ端末の作業内容を格納してもよい。これにより、例えば、作業本来作業を担当していた引継ぎ指示端末の作業内容を残し、引継ぎ端末の過失によって、引継ぎ指示端末が引継ぎ前に行った作業の内容が消去されることを防止することができる。
【００４９】
なお、上述の説明では、ステップＳ８７にて作業を引継ぎ可能なユーザが存在しない場合に、指定ユーザ又は引継ぎ可能なユーザの通信が復帰するまで待機する例を説明した。しかしながら、所定時間以上それらのユーザの通信復帰がない場合には、引継ぎ処理を終了してもよい。また、いったん指定ユーザ決定処理にて決定された指定ユーザに対して作業の引継ぎを行うことができなかった場合、すぐに新たな指定ユーザを決定せずに、所定の時間が経過するまで、指定ユーザ又は引継ぎ可能なユーザの通信が復帰するのを待機してもよい。
【００５０】
このように、実施例２によれば、クライアント端末が突発的に通信圏外となり作業の途中でその作業から離脱してしまった場合でも、その作業を中断させずに、迅速に他のクライアント端末に引続き行わせることができる。また、実施例１と同様に、引継ぎの際には、権限の有無によりアプリケーションを実行できるユーザに制限がある場合でも、作業の内容に応じて適切な引継ぎユーザを選択することができる。また、通信品質や作業量を考慮して引継ぎユーザが選択されるため、個々のクライアント端末の引き継ぎ時点での処理能力に応じて、クライアント端末間での作業負荷を一定化することができる。
【００５１】
なお、実施例１及び２において、引継ぎ成功・失敗の旨を受信した引継ぎ指示ユーザのクライアント端末や、作業引継ぎ指示を受信した指定ユーザのクライアント端末は、それらの通知が来たことをユーザが容易に認識可能なようにすることが好ましい。図１１に、作業引継ぎ指示等を受信した際のクライアント端末の物理的動作を行う概略図を示す。図１１に示すように、クライアント端末２０１は、筐体を振動させたり、音声メッセージや着信音を流したり、ディスプレイにメッセージを表示したり、ディスプレイの色を変化させたりといった何らかの物理的動作を行うことで、ユーザに何らかの通知が来たことを知らせるのが好適である。
【００５２】
なお、作業によっては、引継ぎ端末による作業の、引継ぎ指示端末による確認を要する場合もある。例えば、ドキュメントの作成や、表計算等である。従って、これ以降に、実施例１又は２によって引継ぎ端末に作業を行わせた後、引継ぎ指示端末の通信が復帰した場合の、シンクライアントサーバ１００の処理を説明する。図１２は、引継ぎ指示端末の通信が復帰した場合における、シンクライアントサーバ１００の処理の一例を説明するフローチャートである。
【００５３】
図１２の処理は、シンクライアントサーバ１００の検出部１２０によって、基地局３００から送信された、引継ぎ指示端末の通信が復帰した旨を検出した場合に開始される。まず、ステップＴ１１にて、制御部１１０は、引継ぎ端末へ、引継ぎ指示端末の通信が復帰した旨を送信する。この旨を受信した引継ぎ端末は、図１１で説明したように、筐体の振動や音声メッセージによって、引継ぎ端末のユーザに、引継ぎ指示端末の通信が復帰した旨を知らせる。次に、ステップＴ１２にて、判定部１１２は、引継ぎ端末から作業報告を受信したか否かを判定する。シンクライアントサーバ１００は、作業報告を受信するまで、ステップＴ１１とステップＴ１２とを繰返す。
【００５４】
ここで、引継ぎ端末から受信する作業報告について説明する。図１３は、引継ぎ指示端末の通信が復帰した旨を受信した引継ぎ端末の処理の一例を説明するフローチャートである。まず、ステップＰ１２にて、引継ぎ端末は、復帰した旨を受信した時点が作業の区切りか否か（区切りが良いか否か）を判定する。区切りが良い場合には、ステップＰ１６へ進み、引継ぎ端末は、シンクライアントサーバ１００へ、作業が終了した旨を送信する。ステップＰ１１にて、区切りが良くないと判定された場合には、引継ぎ端末は、ステップＰ１２にて、作業を区切りの良いところまで行うか否かを判定する。区切りの良いところまで作業を行わない場合は、ステップＰ１５へ進み、シンクライアントサーバ１００へ、作業が途中である旨を送信する。区切りの良いところまで作業を行う場合には、ステップＰ１３にて、引継ぎ端末は、シンクライアントサーバ１００へ、作業途中であり、作業を継続する旨を送信する。その後、区切りの良いところまで作業すると、ステップＰ１４にて、引継ぎ端末は、シンクライアントサーバ１００へ、作業が終了した旨を送信する。
【００５５】
図１２のフローチャートに戻り説明を続ける。引継ぎ端末から作業報告を受信すると、ステップＴ１３にて、制御部１１０は、引継ぎ端末による作業内容を引継ぎ指示端末へ送信する。そして、ステップＴ１４にて、判定部１１２は、引継ぎ指示端末からの確認結果が、「了承」又は「破棄」のいずれであるかを判定する。引継ぎ指示端末からの確認結果が「了承」であった場合は、ステップＴ１５にて、制御部１１０は、引継ぎ端末による作業と引継ぎ指示端末による引継ぎ前の作業とをマージし、引継ぎ指示端末へと送信する。引継ぎ指示端末からの確認結果が「破棄」であった場合は、ステップＴ１６にて、制御部１１０は、引継ぎ端末による作業内容をデータベースＤＢから消去する。このようにすれば、引継ぎ端末の作業に誤りが有った場合でも、訂正することが可能となる。
【００５６】
本発明の利点を再度述べる。本発明によれば、通信圏外へ移動する又は通信レートが低下したクライアント端末の作業を、中断させずに迅速に、他のクライアント端末に引続き行わせることができる。また、クライアント端末が突発的に通信圏外となり作業の途中でその作業から離脱してしまった場合でも、その作業を中断させずに、迅速に他のクライアント端末に引続き行わせることができる。これらの利点は、決済等、時間及び期限の制約がある、長期間中断することが好ましくない作業や、連続的なデータを入力することが要求される作業に対して特に効果がある。さらに、引継ぎの際には、権限の有無によりアプリケーションを実行できるユーザに制限がある場合でも、作業の内容に応じて適切な引継ぎユーザを選択することができる。また、通信品質や作業量を考慮して引継ぎユーザが選択されるため、個々のクライアント端末の引き継ぎ時点での処理能力に応じて、クライアント端末間での作業負荷を一定化することができる。また、作業から離脱せざるを得ないクライアント端末が、従来技術のように自端末で作業を継続する必要がないため、バッファやアプリケーション処理部といった特別のハードウェアを付加する必要がない。
【００５７】
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各部、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の構成部やステップ等を１つに組み合わせたり、或いは分割したりすることが可能である。例えば、上述の実施例では、クライアント端末として携帯電話を例に説明したが、本発明はこれに限られるものではなく、クライアント端末としては、携帯ゲーム機などの携帯電子機器でもよい。例えば、携帯ゲーム機をクライアント端末として実現した場合、作業が引き継がれるという本発明の特徴を生かし、複数ユーザ間でゲームを攻略したり、何かを創り出したりといったアプリケーションに本発明を適用することもできる。さらに、上述の実施例では無線でシンクライアントシステムを実現する例について説明したが、本発明を有線でのシンクライアントシステムに適用することも可能である。
【符号の説明】
【００５８】
１００  シンクライアントサーバ
１１０  制御部
１１２  判定部
１１４  テーブル作成部
１２０  検出部
１３０  記憶部
１３２  優先順位テーブル
１４０  通信インタフェース
１５０  データベースインタフェース
１６０  アプリケーション実行部
１７０  計時部
２０１〜２０５  クライアント端末
３００  基地局
４００  通信ネットワーク
５００  シンクライアントシステム
ＤＢ  データベース
【図１】
2010231430.tif 000003
【図２】
2010231430.tif 000004
【図３】
2010231430.tif 000005
【図４】
2010231430.tif 000006
【図５】
2010231430.tif 000007
【図６】
2010231430.tif 000008
【図７】
2010231430.tif 000009
【図８】
2010231430.tif 000010
【図９】
2010231430.tif 000011
【図１０】
2010231430.tif 000012
【図１１】
2010231430.tif 000013
【図１２】
2010231430.tif 000014
【図１３】
2010231430.tif 000015