(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-12
(45)【発行日】2022-10-20
(54)【発明の名称】リモート作業支援装置及び方法
(51)【国際特許分類】
G06F 11/00 20060101AFI20221013BHJP
G06F 9/455 20060101ALI20221013BHJP
【FI】
G06F11/00 606G
G06F9/455 150
(21)【出願番号】P 2020208095
(22)【出願日】2020-12-16
【審査請求日】2021-07-27
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】特許業務法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】秋山 隼人
(72)【発明者】
【氏名】松井 章
【審査官】坂東 博司
(56)【参考文献】
【文献】特開2018-120256(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/00
G06F 9/455
(57)【特許請求の範囲】
【請求項1】
複数の作業者によりリモートで実行される対象コンピュータ装置に対する作業を支援するリモート作業支援システムにおいて、
各前記作業者にそれぞれ対応させて前記対象コンピュータ装置の仮想的なコンピュータ環境を提供する仮想マシンを作成し、作成した各前記仮想マシンをそれぞれ対応する前記作業者に提供する仮想マシン提供装置と、
各前記作業者の対応する前記仮想マシンに対する作業内容をそれぞれ監視し、各前記作業内容の中から正しい作業内容を推定し、推定した作業内容を前記対象コンピュータ装置に反映するリモート作業支援装置と
を備えることを特徴とするリモート作業支援システム。
【請求項2】
前記リモート作業支援装置は、
各前記作業者の前記作業内容を比較し、
多数決により正しい前記作業内容を推定する
ことを特徴とする請求項1に記載のリモート作業支援システム。
【請求項3】
前記作業内容に特定の除外パターンが設定され、
前記リモート作業支援装置は、
各前記作業者の前記作業内容を比較する際に、前記除外パターンを除外して比較する
ことを特徴とする請求項2に記載のリモート作業支援システム。
【請求項4】
前記リモート作業支援装置は、
各前記作業者の前記作業の終了後に前記仮想マシン提供装置に検証用の前記仮想マシンを作成させ、
正しいと推定したすべての前記作業内容を検証用の前記仮想マシンに反映し、
当該検証用の仮想マシンに問題ないことが確認された後に、正しいと推定したすべての前記作業内容を前記対象コンピュータ装置に反映する
ことを特徴とする請求項1に記載のリモート作業支援システム。
【請求項5】
正しい前記作業内容の推定は、前記作業の所定単位ごとに行われ、
前記リモート作業支援装置は、
各前記作業者を前記作業内容が同じもの同士が同一のグループとなるようにグループ化し、
前記グループごとに、当該グループに属する各前記作業者の前記作業内容が正しいと推定された回数に基づいて信頼度をそれぞれ算出し、
前記信頼度が最も大きい前記グループに属する前記作業者の前記作業内容を、対応する前記所定単位における正しい前記作業内容と推定する
ことを特徴とする請求項1に記載のリモート作業支援装置。
【請求項6】
複数の作業者によりリモートで実行される対象コンピュータ装置に対する作業を支援するリモート作業支援システムにおいて実行されるリモート作業支援方法であって、
各前記作業者にそれぞれ対応させて前記対象コンピュータ装置の仮想的なコンピュータ環境を提供する仮想マシンを作成し、作成した各前記仮想マシンをそれぞれ対応する前記作業者に提供する第1のステップと、
各前記作業者の対応する前記仮想マシンに対する作業内容をそれぞれ監視し、各前記作業内容の中から正しい作業内容を推定し、推定した作業内容を前記対象コンピュータ装置に反映する第2のステップと
を備えることを特徴とするリモート作業支援方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はリモート作業支援装置及び方法に関し、特に、入力チェックが必要なリモート作業を支援するリモート作業支援装置に適用して好適なものである。
【背景技術】
【0002】
顧客の本番システムの更新を行う場合、複数の作業者が顧客の元に赴き、本人確認を行った上でペアチェックを行いながら作業を進めることが一般的である。ところが、現在では新型コロナウィルス感染症の世界的な拡散の影響で顧客の施設に作業者が訪れることが難しく、作業者が自宅や会社などからリモートで顧客の本番システムを更新できるような環境の構築が望まれている。
【0003】
従来、コンピュータ装置をリモートで操作する技術としては、リモートデスクトップやVNC(Virtual Network Computing)などが知られている。これらリモートデスクトップやVNCは、操作対象のコンピュータ装置のディスプレイに表示される画面を作業者が操作するクライアントの画面に表示して対象コンピュータ装置をクライアントから操作できるようにする技術である。
【0004】
なお下記特許文献1には、本番システムへの設定作業において、作業者と確認者のペアで作業を行う際に作業者にも副作業者として設定作業を実施させ、作業者及び確認者の各入力を比較して、作業者全員の入力値が一致した場合にのみ本番システムに設定を反映させることが開示されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、リモートデスクトップは、操作対象のコンピュータ装置のOS(Operating System)がWindows(マイクロソフト社登録商標)であることが前提であり、またコンピュータ装置に最大2人までしか同時にアクセスすることができないという問題があった。
【0007】
またVNCは、クライアント及び操作対象のコンピュータ装置の双方にVNCソフトウェアをインストールする必要があり、さらには1台のコンピュータ装置を複数人で同時にリモート操作するためにはRFB(Remote Frame Buffer)プロトコルを拡張したソフトウェアを開発しなければならないという問題もあった。
【0008】
さらにリモートデスクトップやVNCを利用可能な環境下にあったとしても、各作業者がそれぞれ別個の場所で作業を行う場合、ペアチェックを行いながら作業を進めることが難しく、ヒューマンエラーの発生を抑制できないという問題があった。
【0009】
本発明は以上の点を考慮してなされたもので、かかる問題を一気に解決して、ヒューマンエラーの発生を抑制しながらリモート作業を支援し得るリモート作業支援装置及び方法を提案しようとするものである。
【課題を解決するための手段】
【0010】
かかる課題を解決するため本発明においては、複数の作業者によりリモートで実行される対象コンピュータ装置に対する作業を支援するリモート作業支援システムにおいて、各前記作業者にそれぞれ対応させて前記対象コンピュータ装置の仮想的なコンピュータ環境を提供する仮想マシンを作成し、作成した各前記仮想マシンをそれぞれ対応する前記作業者に提供する仮想マシン提供装置と、各前記作業者の対応する前記仮想マシンに対する作業内容をそれぞれ監視し、各前記作業内容の中から正しい作業内容を推定し、推定した作業内容を前記対象コンピュータ装置に反映するリモート作業支援装置を設けるようにした。
【0011】
また本発明においては、複数の作業者によりリモートで実行される対象コンピュータ装置に対する作業を支援するリモート作業支援システムにおいて実行されるリモート作業支援方法であって、各前記作業者にそれぞれ対応させて前記対象コンピュータ装置の仮想的なコンピュータ環境を提供する仮想マシンを作成し、作成した各前記仮想マシンをそれぞれ対応する前記作業者に提供する第1のステップと、各前記作業者の対応する前記仮想マシンに対する作業内容をそれぞれ監視し、各前記作業内容の中から正しい作業内容を推定し、推定した作業内容を前記対象コンピュータ装置に反映する第2のステップとを設けるようにした。
【発明の効果】
【0012】
本発明によれば、各作業者の作業内容のチェックすることができるため、ヒューマンエラーの発生を抑制しながらリモート作業を支援し得るリモート作業支援装置及び方法を実現できる。
【図面の簡単な説明】
【0013】
【
図1】第1及び第2の実施の形態によるリモート作業支援システムの全体構成を示すブロック図である。
【
図2】第1及び第2の実施の形態によるリモート作業支援システムの論理構成を示すブロック図である。
【
図3】第1の実施の形態によるユーザテーブルの構成例を示す図表である。
【
図5】認証フェーズにおける処理の流れを示すシーケンス図である。
【
図6】作業フェーズにおける処理の流れを示すシーケンス図である。
【
図7】入力データ取得処理の処理手順を示すフローチャートである。
【
図8】第1の実施の形態による入力比較処理の処理手順を示すフローチャートである。
【
図9】作業フェーズで作業者の更新内容が不一致であった場合に実行される処理の流れを示すシーケンス図である。
【
図10】検証・マスタ反映フェーズにおける処理の流れを示すシーケンス図である。
【
図11】第2の実施の形態によるユーザテーブルの構成例を示す図表である。
【
図12】第2の実施の形態による入力判断部の処理内容の説明に供する図である。
【
図13】第2の実施の形態による入力判断部の処理内容の説明に供するベン図である。
【
図14】第2の実施の形態による入力比較処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0014】
以下図面について、本発明の一実施の形態を詳述する。
【0015】
(1)第1の実施の形態
(1-1)本実施の形態によるリモート作業支援システムの構成
図1において、1は全体として本実施の形態によるリモート作業支援システムを示す。このリモート作業支援システム1は、データセンタ4に設置された顧客の本番システム(以下、これを対象コンピュータ装置と呼ぶ)5を作業者2がリモートで更新する作業を支援するシステムである。
【0016】
リモート作業支援システム1は、複数の作業用端末3と、それぞれデータセンタ4内に設けられた対象コンピュータ装置5、リモート作業支援装置6、認証サーバ7、VDI装置8及び共有ストレージ装置9とを備えて構成される。
【0017】
作業用端末3は、作業者2が対象コンピュータ装置5の更新作業を行うために利用するコンピュータ装置であり、例えば、ノート型又はデスクトップ型のパーソナルコンピュータ装置から構成される。作業用端末3は、インターネットなどの広域ネットワーク10を介してデータセンタ4内の内部ネットワーク11と接続される。
【0018】
対象コンピュータ装置5は、作業者2による更新作業の作業対象となるコンピュータ装置である。対象コンピュータ装置5は、データセンタ4内に敷設された内部ネットワーク11に接続されると共に、ケーブル等の所定の通信路12を介して共有ストレージ装置9と接続される。
【0019】
リモート作業支援装置6は、作業者2が自己の作業用端末3を用いて対象コンピュータ装置5の更新をリモートで行う作業を支援する後述のリモート作業支援機能が搭載されたサーバ装置であり、データセンタ4内の内部ネットワーク11を介して対象コンピュータ装置5及びVDI装置8と接続されると共に、ケーブル等の所定の通信路13を介して認証サーバ7と接続される。
【0020】
リモート作業支援装置6は、内部バス20を介して相互に接続されたプロセッサ21、主記憶装置22、補助記憶装置23及び通信装置24を備えて構成される。
【0021】
プロセッサ21は、リモート作業支援装置6全体の動作制御を司るデバイスである。また主記憶装置22は、例えば揮発性の半導体メモリから構成され、プロセッサ21のワークメモリとして利用される。主記憶装置22には、リモート作業支援装置6の起動時や必要時に補助記憶装置からロードされた各種プログラムやデータが格納される。後述の作業確認・認証用GUI(Graphical User Interface)表示プログラム30や、入力監視プログラム31、入力判断プログラム32、VDI指令プログラム33及び自動入力プログラム34もこの主記憶装置22にロードされて保持される。
【0022】
補助記憶装置23は、例えばハードディスク装置やSSD(Solid State Drive)又はフラッシュメモリなどの大容量の不揮発性の記憶装置から構成され、各種プログラムや長期的に保持すべき各種データが格納される。後述の除外パターンテーブル35もこの補助記憶装置23に格納されて保持される。また補助記憶装置23が提供する記憶領域上には、後述する作業者2ごとの入力バッファ36及び画面バッファ37と、マスタ入力プール38とがそれぞれ定義される。
【0023】
通信装置24は、例えばNIC(Network Interface Card)などから構成され、リモート作業支援装置6が、広域ネットワーク10を介して作業用端末3と通信する際や、内部ネットワーク11を介してVDI装置8や対象コンピュータ装置5と通信する際、又は、認証サーバ7と通信する際のプロトコル制御を行う。
【0024】
認証サーバ7は、作業者2が作業用端末3を用いてVDI装置8にログインする際の認証を行う機能を有するサーバ装置であり、内部バス40を介して相互に接続されたプロセッサ41、主記憶装置42、補助記憶装置43及び通信装置44を備えて構成される。これらプロセッサ41、主記憶装置42、補助記憶装置43及び通信装置44の構成及び機能は、リモート作業支援装置6のプロセッサ21、主記憶装置22、補助記憶装置23及び通信装置24の構成及び機能と同様であるため、ここでの説明は省略する。
【0025】
認証サーバ7の主記憶装置42には、後述の認証プログラム45が格納され、補助記憶装置43にはユーザテーブル46が格納される。
【0026】
VDI装置8は、作業用端末3を用いてアクセスしてきた各作業者2に対して、対象コンピュータ装置5の仮想的なデスクトップ環境を提供する機能を有するコンピュータ装置であり、内部バス50を介して相互に接続されたプロセッサ51、主記憶装置52及び通信装置53を備えて構成される。これらプロセッサ51、主記憶装置52及び通信装置53の構成及び機能も、リモート作業支援装置6のプロセッサ21、主記憶装置22及び通信装置24の構成及び機能と同様であるため、ここでの説明は省略する。
【0027】
VDI装置8は、対象コンピュータ装置5に実装されたOS及びアプリケーションソフトウェアや各種データなどを通信路12を介して対象コンピュータ装置5から取得するよう共有ストレージ装置9を制御し、共有ストレージ装置9が取得したこれらOS及びアプリケーションソフトウェア並びに各種データをマスタ60として管理する。
【0028】
またVDI装置8は、リモート作業支援装置6からの要求に応じて、かかるマスタ60のレプリカ61を作成し、作成したレプリカ61に基づいて対象コンピュータ装置5の仮想的なコンピュータ環境を提供する仮想マシン62を各作業者2にそれぞれ対応させて作成すると共に、これら仮想マシン62を各作業者2の作業用端末3にそれぞれ提供する。そして各作業者2は、それぞれ対象コンピュータ装置5に対する更新作業を疑似的に自己に割り当てられた仮想マシン62に対して実行する。そしてVDI装置8は、このとき各作業者2がそれぞれ仮想マシン62に対して行った更新作業の作業内容を、レプリカ61との差分として管理する。
【0029】
共有ストレージ装置9は、複数台のハードディスク装置やSSD又はフラッシュメモリが搭載された大容量の記憶装置から構成される。共有ストレージ装置9には、上述のマスタ60及びレプリカ61や、各作業者2にそれぞれ提供される仮想マシン62の情報がVDI装置8により格納される。
【0030】
(1-2)リモート作業支援機能
次に、リモート作業支援装置6に搭載されたリモート作業支援機能について説明する。なお、以下においては、複数の作業者2が、それぞれ自己の作業用端末3を用いて、自己に割り当てられた仮想マシン62に対する同じ更新作業を同時に行うものとする。また以下においては、かかる更新作業が、コマンドプロンプトへのコマンド入力などの文字入力作業であるものとする。
【0031】
本実施の形態のリモート作業支援機能は、上述のように複数の作業者2がそれぞれ対象コンピュータ装置5に対する同じ更新作業を同時に行う際に、各作業者2の更新内容を監視し、各作業者2の更新内容の多数決により正しいと推定される更新内容を決定し、決定した更新内容のみを対象コンピュータ装置5に反映する機能である。
【0032】
このようなリモート作業支援機能を実現するための手段として、
図2に示すように、リモート作業支援装置6には、作業確認・認証用GUI表示部70、入力監視部71、入力判断部72、VDI指令部73及び自動入力部74と、入力バッファ36、画面バッファ37、除外パターンテーブル35及びマスタ入力プール38が設けられ、認証サーバ7には認証部75及びユーザテーブル46が設けられている。
【0033】
作業確認・認証用GUI表示部70は、リモート作業支援装置6のプロセッサ21(
図1)が主記憶装置22(
図1)に読み出された作業確認・認証用GUI表示プログラム30(
図1)を実行することにより具現化される機能部である。この作業確認・認証用GUI表示部70は、
図4A~
図4Cについて後述する各種画面を必要なタイミングで作業用端末3に表示させる機能を有する。
【0034】
また作業確認・認証用GUI表示部70は、作業者2の所定操作に応じてその作業者2の作業用端末3から与えられるログイン要求に応じて認証サーバ7にその作業者2の認証を要求したり、認証サーバ7に認証された作業者2ごとの仮想マシン62の作成をVDI指令部73を介してVDI装置8に要求したり、最終的な作業結果の反映を自動入力部74を介して対象コンピュータ装置5に指示する機能も有する。
【0035】
加えて、作業確認・認証用GUI表示部70には、必要に応じて必要な仮想マシン62の状態を戻す機能も搭載されている。実際上、作業確認・認証用GUI表示部70は、正しいと推定される更新内容を各作業者2の更新内容の多数決で決定できなかった場合には、各作業者2の仮想マシン62の状態をそれぞれ最後に正しいと推定された更新内容が反映された仮想マシン62の状態にまで戻すようVDI指令部73を介してVDI装置8を制御する。また作業確認・認証用GUI表示部70は、正しいと推定される更新内容を各作業者2の更新内容の多数決で決定できた場合には、その更新内容が正しいと推定された更新内容と不一致であった作業者2の仮想マシン62の状態を、最後に正しいと推定された仮想マシン62の状態にまで戻すようVDI指令部73を介してVDI装置8を制御する。このように仮想マシン62の状態を最後に正しいと推定された仮想マシン62の状態にまで戻すことにより、作業者2がその状態から更新作業を再開することが可能となる。
【0036】
入力監視部71は、リモート作業支援装置6のプロセッサ21が主記憶装置22に読み出された入力監視プログラム31(
図1)を実行することにより具現化される機能部である。入力監視部71は、各作業者2がそれぞれ作業用端末3を用いて行っている対応する仮想マシン62の更新作業の作業情報をそれぞれ収集する機能を有する。
【0037】
具体的に、入力監視部71は、作業者2が作業用端末3に文字を入力したときにその作業用端末3からVDI装置8に送信されるその文字に応じたデータ(以下、これを入力データと呼ぶ)を1文字ごと及び作業用端末3ごとにそれぞれ取得し、取得したこれら作業用端末3ごとの入力データをそれぞれ対応する入力バッファ36に格納する。
【0038】
また入力監視部71は、そのときの各作業用端末3の表示画面の一定時間ごとのキャプチャ画像又は動画像の画像データを各作業用端末3からそれぞれ逐次取得し、取得したこれら作業用端末3ごとの画像データをそれぞれ対応する画面バッファ37に格納する。
【0039】
入力判断部72は、リモート作業支援装置6のプロセッサ21が主記憶装置22に読み出された入力判断プログラム32(
図1)を実行することにより具現化される機能部である。入力判断部72は、各入力バッファ36にそれぞれ蓄積された各作業者2の入力データに基づいて各作業者2の更新内容を比較し、これら更新内容の一致/不一致を判定する。そして入力判断部72は、かかる比較により正しいと推定される更新内容を多数決により決定し、決定した更新内容を更新データとしてマスタ入力プール38に格納する。
【0040】
加えて、入力判断部72は、かかる比較により正しいと推定される更新内容を決定できなかった場合にはその旨を作業確認・認証用GUI表示部70を介してすべての作業者2の作業用端末3にそれぞれ通知する。また入力判断部72は、多数決により正しいと推定される更新内容を決定できた場合にも、その更新内容と更新内容が不一致であった各作業者2の作業用端末3に作業確認・認証用GUI表示部70を介してその旨をそれぞれ通知する。
【0041】
VDI指令部73は、リモート作業支援装置6のプロセッサ21が主記憶装置22に読み出されたVDI指令プログラム33(
図1)を実行することにより具現化される機能部である。VDI指令部73は、作業確認・認証用GUI表示部70からの依頼を受けて、レプリカ61や仮想マシン62の作成をVDI装置8に指示する機能を有する。
【0042】
また自動入力部74は、リモート作業支援装置6のプロセッサ21が主記憶装置22に読み出された自動入力プログラム34(
図1)を実行することにより具現化される機能部である。自動入力部74は、作業確認・認証用GUI表示部70からの依頼を受けて、マスタ入力プール38に蓄積された更新データを後述する検証用の仮想マシン(以下、これを検証用仮想マシンと呼ぶ)62に反映するようVDI装置8に指示を与える機能を有する。また自動入力部74は、かかる検証用仮想マシン62を用いた検証の結果、問題がないと作業者2に判断された場合に、マスタ入力プール38に蓄積された更新データを反映するよう対象コンピュータ装置5に指示を与える。
【0043】
入力バッファ36は、作業者2が自己の作業用端末3を用いて入力した各文字やキー操作の内容を表す情報を入力データとして蓄積するために利用される記憶領域である。また画面バッファ37は、作業者2が自己の作業用端末3を用いて作業しているときにその作業用端末3に表示されている画面の動画像又は一定時間ごとのキャプチャ画像の情報を画像データとして蓄積するために利用される記憶領域である。これら入力バッファ36及び画面バッファ37は、上述のように各作業者2にそれぞれ対応させて設けられる。
【0044】
マスタ入力プール38は、各作業者2の更新内容のうち、入力判断部72により正しいと推定された更新内容を更新データとして蓄積するために利用される記憶領域である。マスタ入力プール38に蓄積された更新データが対象コンピュータ装置5に反映されることにより、対象コンピュータ装置5が作業者2の所望する状態に更新される。
【0045】
除外パターンテーブル35は、作業者2によって入力が異なっていても更新後の対象コンピュータ装置5の動作に影響を与えない現在時刻などの情報がそれぞれ除外パターンとして予め登録されたテーブルである。入力判断部72は、この除外パターンテーブル35に登録された除外パターンを除外して各作業者2の更新内容の一致/不一致を判定する。
【0046】
認証サーバ7のユーザテーブル46は、
図3に示すように、
図4Bについて後述する管理者用画面81を用いて管理者により作業者として登録された各ユーザのユーザID及びパスワードなどの情報が格納されたテーブルである。
【0047】
また認証サーバ7の認証部75は、認証サーバ7のプロセッサ41(
図1)が主記憶装置42(
図1)に格納された認証プログラム45(
図1)を実行することにより具現化される機能部である。認証部75は、リモート作業支援装置6の作業確認・認証用GUI表示部70から転送された作業者2が
図4Aについて後述するログイン画面80に入力したユーザID及びパスワードと、ユーザテーブル46に登録されている各ユーザのユーザID及びパスワードとを照合し、照合結果を作業確認・認証用GUI表示部70に通知する。
【0048】
(1-3)各種画面の構成
図4Aは、所定操作により作業用端末3に表示させ得るログイン画面80を示す。このログイン画面80は、管理者や作業者2が本リモート作業支援システム1にログインするための画面であり、ユーザID用テキストボックス80A、パスワード用テキストボックス80B及びログインボタン80Cを備えて構成される。
【0049】
かかるログイン画面80において、管理者や作業者2として登録されたユーザは、ユーザID用テキストボックス80A及びパスワード用テキストボックス80Bにそれぞれ自己のユーザIDやパスワードをそれぞれ入力した後ログインボタン80Cをクリックすることによって、本リモート作業支援システム1にログインすることができる。
【0050】
一方、
図4Bは、管理者用画面81を示す。この管理者用画面81は、管理者が自己の作業用端末3を用いて本リモート作業支援システム1にログインしたときに、その作業用端末3に表示される画面であり、ユーザ操作ボタン81A、作業予定登録ボタン81B及び情報表示領域81Cを備えて構成される。
【0051】
そして管理者用画面81では、ユーザ操作ボタン81Aをクリックすることによって、それまでに作業者2として登録されたユーザの一覧(図示せず)を情報表示領域81Cに表示させることができる。管理者は、この一覧を利用して、新たなユーザを作業者2として登録したり、既に作業者2として登録されているユーザのユーザIDやパスワードなどを変更したり、既に作業者2として登録されているユーザを削除することができる。
【0052】
また管理者用画面81では、作業予定登録ボタン81Bをクリックすることによって、作業者2として登録された各ユーザの作業日や作業時間などの作業予定を登録するための図示しない作業管理表を情報表示領域81Cに表示させることができる。
【0053】
他方、
図4Cは、作業者用画面82を示す。この作業者用画面82は、作業者2の更新内容が他の作業者2の更新内容と不一致であるとリモート作業支援装置6の入力判断部72に判定された場合に、その作業者2の作業用端末3にポップアップ表示されるポップアップ画面であり、情報表示領域82A、状態同期ボタン82B、作業完了ボタン82C及びマスタ反映ボタン82Dを備えて構成される。
【0054】
そして情報表示領域82Aには、作業者2が自己に割り当てられた仮想マシン62にアクセスするための情報が表示される。また情報表示領域82Aには、作業者2の作業中にその作業者2の更新内容が他の作業者2の更新内容と不一致であった場合には、その旨のメッセージ(以下、これを不一致メッセージと呼ぶ)や、最後にその作業者2の更新内容が最後に他の作業者2の更新内容が一致していると判定されてからそのときまでのその作業用端末3に表示されていた作業画面の動画像又は一定時間ごとのキャプチャ画像なども表示される。
【0055】
そして作業者用画面82では、情報表示領域82Aにかかる不一致メッセージなどが表示された場合に状態同期ボタン82Bをクリックすることによって、その作業者2に割り当てられた仮想マシン62(つまりその作業者2が更新作業を行っている仮想マシン62)の状態を、他の作業者2の更新内容と一致していたときの状態にまで戻すことができる。
【0056】
また作業者用画面82では、すべての作業完了後に作業完了ボタン82Cをクリックすることによって、作業を完了した旨をその作業用端末3からリモート作業支援装置6に通知させることができ、その後、マスタ反映ボタン82Dをクリックすることによって、そのときマスタ入力プール38に蓄積されているすべて更新データを対象コンピュータ装置5に反映するようリモート作業支援装置6に指示を与えることができる。
【0057】
(1-4)リモート作業支援機能に関する一連の処理の流れ
次に、かかるリモート作業支援機能に関してリモート作業支援システムにおいて実行される基本的な処理の流れについて説明する。この処理は、以下の認証フェーズ、作業フェーズ及び検証・マスタ反映フェーズを備える。
【0058】
認証フェーズは、各作業者2が認証サーバ7の認証を受けて作業を開始するまで(仮想マシン62の割当てを含む)のフェーズであり、作業フェーズは、各作業者2が自己に割り当てられた仮想マシン62にアクセスして作業を行うフェーズである。また検証・マスタ反映フェーズは、各作業者2の作業終了後に作業結果を検証し、問題がなければ作業結果を対象コンピュータ装置5に反映するフェーズである。以下、これらの各フェーズにおける具体的な処理の流れをそれぞれ説明する。
【0059】
(1-4-1)認証フェーズにおける処理の流れ
図5は、作業者2として登録されたユーザ(以下、作業者2)が自己の作業用端末3を用いてVDI装置8にログインして作業を開始するまでにリモート作業支援システム1において行われる一連の処理の流れを示す。
【0060】
作業者2は、所定操作により自己の作業用端末3にログイン画面80(
図4A)を表示させ、このログイン画面80に自己のユーザID及びパスワードを入力する。このとき入力されたユーザID及びパスワードが認証情報としてその作業用端末3からリモート作業支援装置6に送信される(S1)。
【0061】
この認証情報は、リモート作業支援装置6の作業確認・認証用GUI表示部70により、認証サーバ7に転送される(S2)。そして認証サーバ7がこの認証情報を受信すると、認証サーバ7の認証部75(
図3)が、受信した認証情報をユーザテーブル46(
図3)に格納されている登録された各ユーザのユーザID及びパスワードと比較し(S3)、これらユーザID及びパスワードの組合せが一致するユーザがユーザテーブル46に登録されていた場合には認証が成功した旨をリモート作業支援装置6の作業確認・認証用GUI表示部70に通知する(S4)。
【0062】
この通知を受信した作業確認・認証用GUI表示部70は、かかる認証された作業者2が最初にログインした作業者2であった場合には、対象コンピュータ装置5(
図1)のマスタ60のレプリカ61(
図3)の作成をVDI指令部73に依頼する(S5)。そして、かかる依頼を受けたVDI指令部73は、VDI装置8に対して対象コンピュータ装置5のかかるマスタ60のレプリカ61の作成を指示する(S6)。
【0063】
またこの指示を受信したVDI装置8は、予め作成されて共有ストレージ装置9に格納されている対象コンピュータ装置5のマスタ60のレプリカ61を共有ストレージ装置9上で作成する(S7)。そしてVDI装置8は、かかるレプリカ61の作成を完了すると、その旨をリモート作業支援装置6のVDI指令部73に通知する。またVDI指令部73は、この通知を受信すると、かかるレプリカ61の作成に成功した旨を作業確認・認証用GUI表示部70に通知する(S9)。
【0064】
この通知を受信した作業確認・認証用GUI表示部70は、そのときログインした作業者2に割り当てる仮想マシン62(
図3)の作成をVDI指令部73に依頼する(S10)。またVDI指令部73は、かかる依頼が与えられると、かかる作業者2に割り当てる仮想マシン62の作成をVDI装置8に指示する(S11)。かくして、この指示が与えられたVDI装置8は、要求された仮想マシン62を作成し(S12)、そのとき作成した仮想マシン62にその作業者2がアクセスするためのIPアドレスや、その際のユーザID及びパスワードなどの情報(以下、これらを纏めて仮想マシン情報と呼ぶ)をリモート作業支援装置6のVDI指令部73に通知する(S13)。
【0065】
この仮想マシン情報を受信したVDI指令部73は、受信した仮想マシン情報を作業確認・認証用GUI表示部70に転送する(S14)。また作業確認・認証用GUI表示部70は、この仮想マシン情報をステップS1でログインしてきた作業者2の作業用端末3に転送する(S15)。
【0066】
この結果、その作業用端末3に作業者用画面82(
図4C)が表示され、その情報表示領域82A(
図4C)にその仮想マシン情報が表示される。かくして、かかる作業者2は、この仮想マシン情報を利用してVDI装置8が提供する自己専用の仮想マシン62にログインし(S16)、この後、作業を開始する。
【0067】
なお、ステップS5~ステップS9の処理は最初の作業者2がログインしたときにのみ実行され、その後、他の作業者2がログインしたときにはステップS1~ステップS4及びステップS10~ステップS16の処理のみが実行される。
【0068】
(1-4-2)作業フェーズにおける処理の流れ(1)
図6は、各作業者2が作業を開始してからリモート作業支援装置6において逐次実行される一連の処理の流れを示す。リモート作業支援装置6は、この
図6に示す手順で、各作業者2の更新内容のうちの正しいと推定した更新内容を更新データとしてマスタ入力プール38に順次格納する。
【0069】
実際上、各作業者2が、作業開始後に自己の作業用端末3を操作して文字入力やエンターキーなどの機能キーの操作を行うと、その入力情報が入力データとしてVDI装置8に送信され(S20)、これらの入力データに基づいて対応する仮想マシン62が順次更新される。
【0070】
このとき、リモート作業支援装置6の入力監視部71は、各作業用端末3からVDI装置8にそれぞれ送信される入力データを順次取得し、取得した入力データをそれぞれ作業者2ごとの入力バッファ36に順次格納する。また入力監視部71は、そのとき各作業用端末3に表示されている作業画面の動画像又は一定時間ごとのキャプチャ画像の画像データを各作業用端末3からそれぞれ取得し、取得した画像データをそれぞれ作業者2ごとの画面バッファ37(
図3)に順次格納する(S21)。
【0071】
この場合において、入力監視部71は、取得した入力データを入力バッファ36に格納するに際しては、エンターキーの押圧操作があってから次にエンターキーの押圧操作があるまでに入力された文字列を1つの塊(以下、これを区分と呼ぶ)として、区分ごとに入力データを分けて入力バッファ36に順次格納する。
【0072】
一方、入力判断部72は、そのとき作業している各作業者2にそれぞれ対応する入力バッファ36から区分単位で文字列及び機能キーの操作内容をそれぞれ読み出し(S22)、読み出した区分ごとに各文字及び機能キーの操作内容を比較するようにして各作業者2の更新内容の一致/不一致を判断する(S23)。この際、入力判断部72は、除外パターンについてはかかる一致/不一致の判断対象から除外する。
【0073】
そして入力判断部72は、かかる一致/不一致の判断の結果、過半数の作業者2の更新内容が同じであった場合には、その更新内容が正しいと推定して、その更新内容を更新データとしてマスタ入力プール38に格納する(S24)。
【0074】
また入力判断部72は、この後、ステップS22~ステップS24の処理を繰り返すことにより、各作業者2の更新内容のうちの正しいと推定した更新内容をマスタ入力プール38に格納する処理を繰り返す。これによりマスタ入力プール38には、各作業者2の作業の進行に伴って区分単位で正しいと推定された更新内容が順次更新データとして蓄積される。
【0075】
なおステップS21における入力監視部71の具体的な処理内容を
図7に示す。この
図7は一人の作業者2に対する処理であり、入力監視部71は、各作業者2について同様の処理を並行して実施する。また以下においては、各作業者2がいずれも文字入力中の同じタイミングで(例えば、コマンドプロンプトの1行を入力するごとに)エンターキーを押圧操作するものとする。
【0076】
まず、入力監視部71は、作業者2の作業用端末3からVDI装置8に送信される入力データを監視してその作業者2が一文字分の文字又は機能キーのキー操作が入力するのを待ち受け(S30)、やがてその作業者2が何らかの文字を一文字入力し又は機能キーを操作したことを認識すると、その文字の文字情報(例えばアスキーコード)や機能キーの操作情報を入力データとしてその作業者2に対応させて設けた入力バッファ36のi(iは正の整数)番目の区分用の記憶領域に追加登録する(S31)。
【0077】
続いて、入力監視部71は、ステップS30で認識したその作業者2が文字入力又は機能キーの押圧操作後にエンターキーを押圧操作したか否かを判断し(S32)、否定結果を得るとステップS30に戻る。そして入力監視部71は、この後、作業者2が一文字分の文字入力又は機能キーの押圧操作を行うごとにステップS30~ステップS32の処理を繰り返す。
【0078】
そして入力監視部71は、やがてその作業者2がエンターキーを押圧したことを認識すると、その作業者2の入力バッファ36のi番目の区分に対応する記憶領域に区分完了情報を格納する(S33)。また、入力監視部71は、その入力バッファ36における次の区分用の記憶領域をi+1番目の区分用の記憶領域に切り替える(S34)。さらに入力監視部71は、ステップS30に戻り、この後、ステップS30以降の処理を同様に繰り返す。
【0079】
一方、
図8は、
図6のステップS23における入力判断部72の具体的な処理内容を示す。入力判断部72は、かかるステップS23に進むと、この
図8に示す入力比較処理を開始し、まず、作業中の各作業者2にそれぞれ対応する各入力バッファ36の先頭情報(最も値が小さい未処理のi番目の区分に対応する記憶領域に格納された入力情報)をそれぞれ読み出すことにより取得する(S40)。
【0080】
続いて、入力判断部72は、ステップS40で取得したすべての先頭情報が区分完了情報を含んでいるか否かを判断する(S41)。
【0081】
この判断で否定結果を得ることは、一部の作業者2がその区分の入力を未だ完了していないことを意味する。かくして、このとき入力判断部72は一定時間待機し(S42)、この後、ステップS40に戻る。
【0082】
これに対して、ステップS41で肯定結果を得ることは、すべての作業者2がその区分の入力を完了していることを意味する。かくして、このとき入力判断部72は、いずれかの作業者2の区分にバックスペース(つまり誤入力した文字の削除)が含まれている場合には、その作業者2が入力した文字列等をバックスペースを反映した文字列等に変換する(S43)。
【0083】
次いで、入力判断部72は、そのとき対象としている区分の文字列等が除外バターンを含む場合にはその除外パターンをマスクする(S44)。この後、入力判断部72は、その区分における各作業者2の更新内容を一文字ずつ順番に比較し(S45)、過半数の作業者2の更新内容が一致しているか否かを判断する(S46)。
【0084】
入力判断部72は、この判断で否定結果を得ると、作業確認・認証用GUI表示部70(
図3)を介して、そのとき作業しているすべての作業者2の作業用端末3に対して、その作業者2の更新内容が他の作業者2の更新内容と不一致であった旨を通知し(S47)、この後、この入力比較処理を終了する。
【0085】
これに対して、入力判断部72は、ステップS46の判断で肯定結果を得ると、作業者2の過半数が一致した更新内容が正しい更新内容であると推定する(S48)。このようにして推定された更新内容が、
図6のステップS24でマスタ入力プール38に更新データとして格納される。
【0086】
また入力判断部72は、その更新内容が、正しいと推定した更新内容と不一致であった各作業者2の作業用端末3に対しては、作業確認・認証用GUI表示部70を介して、その作業者2の更新内容が他の作業者2の更新内容と不一致であった旨を通知する(S49)。
【0087】
さらに入力判断部72は、ステップS40で読み出した先頭情報を各入力バッファ36からそれぞれ削除し(S50)、この後、この入力比較処理を終了する。
【0088】
(1-4-3)作業フェーズにおける処理の流れ(2)
図9は、作業フェーズにおいて、リモート作業支援装置6の入力判断部72が、
図8のステップS47やステップS49において、作業者2の更新内容が他の作業者2の更新内容と不一致であった旨を作業確認・認証用GUI表示部70を介して対応する作業用端末3に通知した場合に本リモート作業支援システム1で実行される一連の処理の流れを示す。
【0089】
実際上、入力判断部72は、
図8のステップS46で多数決により正しい更新内容を決定できなかったときや、多数決により正しい更新内容を決定できた場合においても、その更新内容と不一致の更新内容の作業者2が存在するときには、その旨をその作業者2を特定して作業確認・認証用GUI表示部70に通知する(S60)。
【0090】
また作業確認・認証用GUI表示部70は、かかる通知が与えられると、該当する作業者2の作業用端末3に対してその作業者2の更新内容が他の作業者2の更新内容と不一致であった旨を通知する(S61)。以下においては、この通知を入力不一致通知と呼ぶ。
【0091】
なお、ここでの「該当する作業者」とは、そのとき作業確認・認証用GUI表示部70が受信した通知が、
図8のステップS47で入力判断部72から出力された通知であった場合にはすべての作業者2であり、そのとき作業確認・認証用GUI表示部70が受信した通知が、
図8のステップS49で入力判断部72から出力された通知であった場合には正しいと推定された更新内容と更新内容が不一致であった各作業者2である。
【0092】
かかる入力不一致通知を受信した各作業用端末3は、それぞれその旨のメッセージ(不一致メッセージ)が情報表示領域82A(
図4C)に表示された作業者用画面82(
図4C)をポップアップ表示する。そして、これらの作業用端末3は、かかる不一致メッセージに応じて作業者2が作業者用画面82の状態同期ボタン82B(
図4C)をクリックすると、状態同期要求をリモート作業支援装置6に送信する(S62)。以下においては、この作業者2を状態同期要求作業者2と呼ぶ。
【0093】
この状態同期要求を受信したリモート作業支援装置6の作業確認・認証用GUI表示部70は、そのとき受信した状態同期要求の送信元の作業用端末3にそれぞれ対応付けた新たな仮想マシン62(
図3)の作成をVDI指令部73に依頼する(S63)。以下においては、この依頼を新規仮想マシン作成依頼と呼ぶ。
【0094】
また、入力監視部71は、更新内容が他の作業者2の更新内容と不一致となった区分の作業時における作業用端末3の表示画面の表示が状態同期要求作業者2により要求された場合には、状態同期要求作業者2の所定操作に応じて、その状態同期要求作業者2に対応する画面バッファ37から必要な画像データを読み出し、読み出した画像データを作業確認・認証用GUI表示部70を介してその作業用端末3に送信する(S64,S65)。かくして、この画像データに基づいて、かかる区分の作業時におけるその作業用端末3の表示画面が当該作業用端末3に表示される。これにより作業者2は、この表示画面に基づいてどの入力を間違えたのかを確認することができる。
【0095】
一方、かかる新規仮想マシン作成依頼を受信したVDI指令部73は、要求された新たな仮想マシン62を作成するようVDI装置8に指示を与える(S66)。かくして、この指示に応じてVDI装置8において要求された仮想マシン62が作成され(S67)、作成された仮想マシン(以下、これを新規作成仮想マシンと呼ぶ)62の仮想マシン情報がリモート作業支援装置6に送信される(S68)。また、この仮想マシン情報を受信したリモート作業支援装置6のVDI指令部73は、受信した仮想マシン情報を作業確認・認証用GUI表示部70に転送する(S69)。
【0096】
作業確認・認証用GUI表示部70は、かかる仮想マシン情報を受信すると、そのときマスタ入力プール38に格納されているすべての更新データをその新規作成仮想マシン62に反映するよう自動入力部74に依頼(以下、この依頼を自動入力依頼と呼ぶ)する(S70)。
【0097】
かくして、この自動入力依頼を受信した自動入力部74は、そのときマスタ入力プール38に格納されているすべての更新データを読み出し(S71)、読み出した更新データをVDI装置8に転送する(S72)。この結果、VDI装置8は、このとき自動入力部74から転送されてきた更新データをかかる新規作成仮想マシン62に反映する(S73)。これにより、かかる新規作成仮想マシン62の状態が、その時点で更新内容が正しいと推定されている状態に更新される。そして自動入力部74は、この後、かかる自動入力依頼に対する処理が終了した旨を作業確認・認証用GUI表示部70に通知する(S74)。
【0098】
作業確認・認証用GUI表示部70は、この通知が与えられると、かかる新規作成仮想マシン62と、元の仮想マシン62(かかる状態同期要求作業者2に割り当てられていた仮想マシン62)とを切り替えるようVDI指令部73に依頼する(S75)。以下においては、この要求を仮想マシン切替え依頼と呼ぶ。また作業確認・認証用GUI表示部70は、これと併せて、かかる状態同期要求作業者2に対応付けられている入力バッファ36を初期化する(S76)。
【0099】
かかる仮想マシン切替え依頼を受信したVDI指令部73は、かかる新規作成仮想マシン62と、元の仮想マシン62との切替えをVDI装置8に指示する(S77)。この結果、VDI装置8は、この指示に応じて状態同期要求作業者2の仮想マシン62をステップS73で更新した新規作成仮想マシン62に切り替える(S78)。この後、VDI指令部73は、状態同期要求作業者2の仮想マシン62の切替えが完了した旨を作業確認・認証用GUI表示部70に通知する(S79)。
【0100】
作業確認・認証用GUI表示部70は、この通知を受信すると、状態同期要求作業者2の作業用端末3に対して、ステップS69で取得した切替え後の新たな仮想マシン(新規作成仮想マシン)62の仮想マシン情報を状態同期要求作業者2の作業用端末3に送信し、その仮想マシン情報をその作業用端末3に表示させる(S80)。この結果、かかる新規作成仮想マシン62の仮想マシン情報がその作業用端末3にポップアップ表示された作業者用画面82(
図4C)の情報表示領域82A(
図4C)に表示される。
【0101】
かくして状態同期要求作業者2は、この後、そのとき作業者用画面82の情報表示領域82Aに表示されている新規作成仮想マシン62の仮想マシン情報に基づいてその新規作成仮想マシン62にアクセスすることができ、現時点で正しいと判定されている区分から作業を再開することができる(S81)。
【0102】
なお上述のステップS62~ステップS81の処理は、状態同期要求作業者2ごとにそれぞれ実行される。
【0103】
(1-4-4)検証・マスタ反映フェーズにおける処理の流れ
図10は、検証・マスタ反映フェーズにおける一連の処理の流れを示す。本リモート作業支援システム1において、各作業者2は、作業が完了した場合、自己の作業用端末3に表示されている作業者用画面82(
図4C)の作業完了ボタン82C(
図4C)をクリックする。そして作業用端末3は、かかる作業完了ボタン82Cがクリックされると、対応する作業者2の作業が完了した旨の作業完了通知をリモート作業支援装置6に送信する(S90)。
【0104】
リモート作業支援装置6の作業確認・認証用GUI表示部70は、すべての作業者2の作業用端末3から作業完了通知が送信されてきたことを確認すると、検証用の仮想マシン(検証用仮想マシン)62の作成をVDI指令部73に依頼する(S91)。またVDI指令部73は、かかる依頼が与えられると、新たな仮想マシン62の作成をVDI装置8に指示する(S92)。かくしてVDI装置8は、この指示に応じて新たな仮想マシン62を検証用仮想マシン62として作成し(S93)、作成した検証用仮想マシン62の仮想マシン情報をリモート作業支援装置6に送信する(S94)。
【0105】
リモート作業支援装置6のVDI指令部73は、かかる仮想マシン情報を受信すると、これを検証用仮想マシン62の仮想マシン情報として作業確認・認証用GUI表示部70に転送する(S95)。また作業確認・認証用GUI表示部70は、かかる検証用仮想マシン62の仮想マシン情報を受信すると、その検証用仮想マシン62に対して現時点でマスタ入力プール38に格納されているすべての更新データを検証用仮想マシン62に反映すべきことを自動入力部74に依頼する(S96)。
【0106】
かくして、この依頼を受信した自動入力部74は、マスタ入力プール38に格納されているすべての更新データを読み出し(S97)、読み出した更新データを自動入力指示と共にVDI装置8に送信する(S98)。かくして、VDI装置8は、この更新データを検証用仮想マシン62に反映する。
【0107】
また自動入力部74は、検証用仮想マシン62への更新データの反映が完了すると、その旨を作業確認・認証用GUI表示部70に通知する(S99)。そして作業確認・認証用GUI表示部70は、かかる通知が与えられると、ステップS95でVDI指令部73から送信されてきた検証用仮想マシン62の仮想マシン情報をすべての作業者2の作業用端末3にそれぞれ送信する(S100)。
【0108】
かくして、各作業者2は、このとき作業用端末3に表示された作業者用画面82(
図4C)の情報表示領域82Aに表示されている検証用仮想マシン62の仮想マシン情報に基づいてその検証用仮想マシン62にアクセスすることができ、検証用仮想マシン62を用いて必要な検証作業を行うことができる。
【0109】
また各作業者2は、かかる検証作業により、それまでの作業に問題がないことを確認できた場合には、作業者用画面82のマスタ反映ボタン82D(
図4C)をクリックすることにより、それまでの作業内容を対象コンピュータ装置5に反映させることができる。
【0110】
実際上、作業者2が作業用端末3に表示された作業者用画面82のマスタ反映ボタン82Dをクリックすると、その作業用端末3からリモート作業支援装置6にマスタ反映要求が送信される(S101)。
【0111】
そしてリモート作業支援装置6の作業確認・認証用GUI表示部70は、すべての作業者2の作業用端末3からかかるマスタ反映要求が与えられると、そのときマスタ入力プール38に格納されているすべての更新データ(現時点までの作業で正しいと判定された更新内容のデータ)を対象コンピュータ装置5に反映するよう自動入力部74に依頼する(S102)。
【0112】
また自動入力部74は、かかる依頼が与えられると、マスタ入力プール38に格納されているすべての更新データを読み出し(S103)、読み出した更新データを反映指示と共に対象コンピュータ装置5に送信する(S104)。かくして対象コンピュータ装置5は、かかる反映指示に従って、当該反映指示と共に送信されてきた更新データを自己のプログラムに反映する(S105)。これにより対象コンピュータ装置5の状態が各作業者2の作業内容に応じた状態に更新される。
【0113】
また自動入力部74は、この後、対象コンピュータ装置5に対する更新データの反映が完了した旨を作業確認・認証用GUI表示部70に通知する(S106)。そして作業確認・認証用GUI表示部70は、かかる通知を受信すると、かかる反映作業が完了した旨の作業完了通知を作業者2全員の作業用端末3にそれぞれ通知する(S107)。かくして、この通知に基づいて、対象コンピュータ装置5への更新データの反映が完了した旨のメッセージが情報表示領域82A(
図4C)に表示された作業者用画面82(
図4C)が各作業者2の作業用端末3にポップアップ表示される。
【0114】
(1-5)本実施の形態の効果
以上のように本実施の形態のリモート作業支援システム1では、複数の作業者2がそれぞれ対象コンピュータ装置5に対する同じ更新作業を同時に行う際に、各作業者2の更新内容を監視し、各作業者2の更新内容の多数決により正しいと推定される更新内容を決定し、決定した更新内容のみを対象コンピュータ装置5に反映する。
【0115】
従って、作業者2がペアチェックを行うことなく、各作業者の作業内容のチェックすることができるため、ヒューマンエラーの発生を抑制しながらリモート作業を支援することができる。
【0116】
(2)第2の実施の形態
図1及び
図2において、90は全体として第2の実施の形態によるリモート作業支援システムを示す。このリモート作業支援システム90は、リモート作業支援装置91の主記憶装置22に格納された入力判断プログラム92及び当該入力判断プログラム92をプロセッサ21が実行することにより具現化される入力判断部93の機能が第1の実施の形態の入力判断プログラム32及び入力判断部72とは異なる点と、認証サーバ94の補助記憶装置43に格納されたユーザテーブル95の構成が第1の実施の形態のユーザテーブル46(
図3)とは異なる点とを除いて第1の実施の形態のリモート作業支援システム1と同様に構成されている。
【0117】
実際上、本実施の形態の場合、ユーザテーブル95には、
図11に示すように、登録された各ユーザのユーザID及びパスワードに加えて、ユーザごとに比較回数及び一致回数が格納される。ここで、「比較回数」は、
図6のステップS23でその作業者2の更新内容が他の作業者2の更新内容と比較された回数であり、「一致回数」は、かかる比較によりその作業者2の更新内容が正しいと推定された回数である。
【0118】
これらの「比較回数」及び「一致回数」は、入力判断部93が、
図6のステップS23において更新内容を他の作業者2の更新内容と比較した各作業者2の「比較回数」を1だけ増加させ、さらにこのとき更新内容が正しいと推定された作業者2の「一致回数」を1だけ増加させるよう、作業確認・認証用GUI表示部70(
図2)を介して認証サーバ94(
図2)に指示を与えることにより、認証サーバ94の認証部75(
図2)によりそのように更新される。
【0119】
一方、本実施の形態の入力判断部93は、ユーザテーブル95で管理されている作業者2ごとの「比較回数」及び「一致回数」に基づいて算出される各作業者2の正確性に基づいて、各作業者2の更新内容のうちの正しいと推定する更新内容を決定する点が第1の実施の形態の入力判断部72(
図2)と相違する。
【0120】
具体的に、入力判断部93は、i番目の作業者2の正確性x
iを、次式
【数1】
により算出される値であるものとして、
図6のステップS23において、
図12に示すように、各作業者2をその更新内容が同じもの同士が同一のグループ(以下、これを作業者グループと呼ぶ)に属するようにグループ化し、作業者グループごとにその作業者グループの信頼度Rを次式
【数2】
によりそれぞれ算出する。なお(2)式において、nはその作業者グループに属する作業者2の数を表し、Nは作業者グループの総数を表す。
【0121】
そして入力判断部93は、このようにして算出した作業者グループごとの信頼度Rの値に基づいて、信頼度Rが最も大きい作業者グループに属する各作業者2の更新内容を正しいと推定し、この更新内容を更新データとしてマスタ入力プールに登録する。
【0122】
例えば、
図12の例において、「user1」という作業者2の正確性が「0.9」、「user2」という作業者2の正確性が「0.7」、「user3」という作業者2の正確性が「0.95」、「user4」という作業者2の正確性が「0.8」であるものとする。
【0123】
この場合、
図12に示すように、「user1」及び「user2」により構成される「グループ1」という作業者グループの信頼度Rは「0.98」、「user3」により構成される「グループ2」という作業者グループの信頼度Rは「0.95」、「user4」により構成される「グループ3」という作業者グループの信頼度Rは「0.80」となる。
【0124】
よって、この場合には、信頼度Rが最も大きい「グループ1」に属する「user1」及び「user2」の更新内容である「foo」が正しい更新内容と推定され、この「foo」が、対応する区分の更新データとしてマスタ入力プール38(
図2)に格納される。
【0125】
なお、信頼度が最も大きい作業者グループに属する各作業者2の更新内容を正しいと推定するに際しては、最大の信頼度(以下、これを最大信頼度と呼ぶ)に下限閾値を設けるようにしてもよい。このようにすることによって最大信頼度が小さいにも関わらず対応する作業者グループに属する作業者2の更新内容が正しいと推定される事態の発生を防止することができる。
【0126】
ここで、(2)式の根拠は以下の通りである。例えば
図13において、集合Aを正解の集合、集合Bを集合Aの補集合、x
iをユーザiがAを選択する確率、Nをグループの総数、nをグループ内のユーザ数、あるグループ内の全ユーザが集合Aの要素を選択する確率をP
1、そのグループ内の全ユーザが集合Bの要素を選択する確率をP
2とすると、あるグループ内の全ユーザが同じ回答をしてそれが正解である確率Pは次式
【数3】
で表される。
【0127】
この場合、確率P
1は次式
【数4】
で表され、確率P2は次式
【数5】
で表されることから、(4)式及び(5)式を(3)式に代入することにより、(2)式を得ることができる。
【0128】
図14は、
図6のステップS23において、
図8について上述した第1の実施の形態の入力比較処理に代えて入力判断部93により実行される本実施の形態の入力比較処理の具体的な処理内容を示す。
【0129】
入力判断部93は、
図6のステップS23に進むと、この
図14に示す入力比較処理を開始し、まず、ステップS110~ステップS112を図のステップS40~ステップS42と同様に処理し、この後、ユーザテーブル95(
図11)における作業中の各作業者2の比較回数をそれぞれインクリメント(1増加)するよう作業確認・認証用GUI表示部70を介して認証サーバ94に指示を与える(S113)。この結果、この指示に従って、認証サーバ94の認証部75がユーザテーブル95における作業中の各作業者2の「比較回数」をそれぞれインクリメントする。
【0130】
続いて、入力判断部93は、ステップS114及びステップS115を
図8のステップS43及びステップS44と同様に処理する。また入力判断部93は、この後、更新内容が同じ作業者2同士を同じ作業者グループに振り分けるように作業中のすべての作業者2をグループ分けし、各作業者グループの信頼度を上述の(2)式によりそれぞれ算出する(S116)。
【0131】
次いで、入力判断部93は、ステップS116で算出した各作業者グループの信頼度のうちの最も大きい信頼度(最大信頼度)が予め設定された下限閾値以上であるか否かを判断する(S117)。そして入力判断部93は、この判断で否定結果を得ると、作業確認・認証用GUI表示部70(
図3)を介して、そのとき作業しているすべての作業者2の作業用端末3に対して、その作業者2の更新内容が他の作業者2の更新内容と不一致であった旨を通知し(S118)、この後、この入力比較処理を終了する。
【0132】
これに対して、入力判断部93は、ステップS117の判断で肯定結果を得ると、信頼度が最大信頼度であった作業者グループに属する各作業者2の更新内容を正しい更新内容であると推定する(S119)。このようにして推定された更新内容が、
図6のステップS24でマスタ入力プール38に更新データとして格納される。
【0133】
続いて、入力判断部93は、更新内容が正しいと推定した各作業者(最大信頼度の作業者グループに属する各作業者)2のユーザテーブル95における「一致回数」をインクリメントするよう作業確認・認証用GUI表示部70を介して認証サーバ94に指示を与える(S120)。この結果、この指示に従って、認証サーバ94の認証部75がユーザテーブル95における指定された各作業者2の「一致回数」をそれぞれインクリメントする。
【0134】
また入力判断部93は、正しいと推定した更新内容とその更新内容が不一致であった各作業者2の作業用端末3に対しては、作業確認・認証用GUI表示部70を介して、その作業者の更新内容が他の作業者2の更新内容と不一致であった旨を通知する(S121)。
【0135】
さらに入力判断部93は、ステップS110で読み出した先頭情報を各入力バッファ36からそれぞれ削除し(S122)、この後、この入力比較処理を終了する。
【0136】
以上の構成を有する本実施の形態のリモート作業支援システム90によれば、各作業者2の更新内容の中から正しいと推定できる更新内容を決定することによって、過半数の作業者2の更新内容が一致しない場合においても、その中で最も正しいと予測される更新内容を正しいと推定することができる。
【0137】
従って、本リモート作業支援システム90によれば、第1の実施の形態のリモート作業支援システム1により得られる効果に加えて、正しいと推定する更新内容を第1の実施の形態よりも柔軟に決定することができるという効果を得ることができる。
【0138】
(3)他の実施の形態
なお上述の第1及び第2の実施の形態においては、作業者2が行う作業内容が対象コンピュータ装置5の更新作業である場合について述べたが、本発明はこれに限らず、作業者2が行う作業が対象コンピュータ装置5の更新作業以外の作業であってもよい。
【0139】
また上述の第1及び第2の実施の形態においては、リモート作業支援装置6,91のすべての機能を1台のサーバ装置に搭載するようにした場合について述べたが、本発明はこれに限らず、かかるリモート作業支援装置6,91の一部又は全部の機能をネットワークを介して接続された複数のコンピュータ装置に分散して搭載するようにしてもよい。
【0140】
さらに上述の第1及び第2の実施の形態においては、作業者2の作業内容がコマンドプロンプトに文字入力を行うものである場合について述べたが、本発明はこれに限らず、例えばボタンをクリックしてゆくことで更新を行えるような作業にも本発明を適用することができる。
【0141】
さらに上述の第1及び第2の実施の形態においては、各作業者2にそれぞれ対応させて対象コンピュータ装置5の仮想的なコンピュータ環境を提供する仮想マシン62作成し、作成した各仮想マシン62をそれぞれ対応する作業者2に提供する仮想マシン提供装置を、VDI機能が搭載されたVDI装置8により構成するようにした場合について述べたが、本発明はこれに限らず、この他種々のコンピュータ装置により仮想マシン提供装置を構成することができる。
【0142】
さらに上述の第1の実施の形態においては、作業中の過半数の作業者2の更新内容が一致した場合にその更新内容を正しいと入力判断部72が判断するようにした場合について述べたが、本発明はこれに限らず、例えば作業中の6割以上や7割以上の作業者2の更新内容が一致した場合にその更新内容を正しいと入力判断部72が判断するようにしてもよく、入力判断部72が正しいと推定する作業者2の割合としては、この他種々の割合を広く適用することができる。
【0143】
さらに上述の第2の実施の形態においては、各作業者グループの信頼度を(2)式により算出するようにした場合について述べたが、本発明はこれに限らず、この他種々の演算式を広く適用することができる。
【産業上の利用可能性】
【0144】
本発明は、複数の作業者によりリモートで実行される対象コンピュータ装置に対する作業を支援するリモート作業支援システムに適用することができる。
【符号の説明】
【0145】
1,90……リモート作業支援システム、2……作業者、3……作業用端末、5……対象コンピュータ装置、6,91……リモート作業支援装置、7,94……認証サーバ、8……VDI装置、21,41,51……プロセッサ、30……作業確認・認証用GUI表示プログラム、31……入力監視プログラム、32,92……入力判断プログラム、33……VDI指令プログラム、34……自動入力プログラム、35……除外パターンテーブル、36……入力バッファ、37……画面バッファ、38……マスタ入力プール、45……認証プログラム、46,95……ユーザテーブル、60……マスタ、61……レプリカ、62……仮想マシン、70……作業確認・認証用GUI表示部、71……入力監視部、72,93……入力判断部、73……VDI指令部、74……自動入力部、80……ログイン画面、81……管理者用画面、82……作業者用画面。