(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続される複数の端末の状態及びその変更を管理する管理サーバと、該管理サーバにネットワークを介して接続され、該端末の状態の変更を指示する管理装置とを有する端末管理システムであって、
該端末は、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルを記憶する記憶装置を有し、
該管理サーバは、
該端末が有する該端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルを記憶するストレージと、
該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理手段と、
該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理手段と、
該第１の処理手段及び該第２の処理手段によって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理手段と、を有し、
該管理サーバは、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信し、
該端末は、該管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて処理を実行する、
ことを特徴とする端末管理システム。
【請求項２】
前記管理テーブルは、前記端末管理データモデルと、前記制御情報管理データモデルを、共通の様式のデータ構造を用いて管理し、
該共通の様式のデータ構造は、データモデルの種類を示す識別子を示すデータモデル種別と、データモデルを識別するデータモデルＩＤと、データモデルで表現されるデータの属性名を示すデータキーと、データモデルで表現される該データキーに関する値を示すデータ値を保持する構造である、
請求項１記載の端末管理システム。
【請求項３】
前記管理装置は、情報を画面表示する表示装置と、操作者によって入力操作される入力装置を有し、
該表示装置は、該端末が有する前記端末管理データモデルの変更を指示する第１表示部と、該端末に新たな端末管理データモデルの追加を指示する第２表示部とを有する管理画面を表示することができ、
該入力装置の操作によって、該第１表示部又は該第２表示部に必要な情報が入力され、登録が指示された場合、
前記第２の処理手段は、該管理画面に入力された情報を基に、該該端末管理データモデル又は該制御情報管理データモデルの内容を変更又は追加する、
請求項１乃至２のいずれかに記載の端末管理システム。
【請求項４】
前記第１の処理手段は、前記データモデル種別と、前記データモデルＩＤと、前記データキーと、前記データ値を用いた、該端末管理データモデルを作成し、
第２の処理手段は、前記データモデル種別と、前記データモデルＩＤと、前記データキーと、前記データ値を用いた、前記制御情報管理データモデルを作成する、
請求項２又は３の端末管理システム。
【請求項５】
前記各端末は、自らの記憶装置に端末エージェントを保持し、
該端末エージェントは、自端末が保有する前記端末管理データモデルを作成し、又は作成済みの該端末管理データモデルの内容を更新し、更に前記管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて端末制御処理を実行する、
請求項１乃至４のいずれかに記載の端末管理システム。
【請求項６】
前記第１の処理手段及び前記第２の処理手段は、前記管理サーバが有する処理装置で、端末制御情報登録プログラムを実行することで実現され、
前記第３の処理手段は、該処理装置で、データモデル操作プログラムを実行することで実現される、
請求項１乃至５のいずれかに記載の端末管理システム。
【請求項７】
前記管理テーブルは、複数に分割された分割管理テーブルで構成され、
前記ストレージは、複数のストレージで構成され、複数の該ストレージは、分割された該分割管理テーブルを記憶する、請求項１乃至５のいずれかに記載の端末管理システム。
【請求項８】
データモデル種別と配置先のストレージとの対応付けルールに基づき、データを該分割テーブルデータに分散配置する、請求項７の端末管理システム。
【請求項９】
データモデル種別とＩＤと属性名とを連結した文字列のハッシュ値の計算結果と配置先のストレージとの対応付けルールに基いて、データを該分割テーブルデータに分散配置する、
請求項７の端末管理システム。
【請求項１０】
ネットワークを介して、該端末の状態の変更を指示する管理装置に接続され、かつネットワークを介して、複数の端末に接続されて、該複数の端末の状態及びその変更を管理する管理サーバであって、
該端末が有する、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルを記憶するストレージと、
該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理手段と、
該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理手段と、
該第１の処理手段及び該第２の処理手段によって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理手段と、を有し、
該制御情報管理データモデルが有する制御情報に基づいて処理を実行するために、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信する、
ことを特徴とする管理サーバ。
【請求項１１】
ネットワークを介して接続される複数の端末の状態及びその変更を管理する管理サーバと、該管理サーバにネットワークを介して接続され、該端末の状態の変更を指示する管理装置とを有する端末管理システムにおける端末管理方法であって、
該端末において、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルを記憶装置に記憶するステップと、
該管理サーバにおいて、該端末が有する該端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルをストレージに記憶するステップと、
該管理サーバにおいて、該該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理ステップと、
該管理サーバにおいて、該該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理ステップと、
該管理サーバにおいて、該該第１の処理ステップ及び該第２の処理ステップによって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理ステップと、
該管理サーバにおいて、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信するステップと、
該端末において、該管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて処理を実行するステップを有する、
ことを特徴とする端末管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末管理システム、管理サーバ及び方法に係り、特にセンサや携帯機器など多種多様な業務端末の機能やアプリケーションに対応することができる端末管理システム、端末管理サーバ、及び端末管理方法に関するものである。
【背景技術】
【０００２】
近年、様々な産業分野においてセンサや携帯機器等の利用が拡大しており、これら業務端末を、ネットワーク回線を介してサーバに接続して、サーバが各業務端末を遠隔管理して対応するシステムが提唱されている。このサーバには、管理対象となる多種多様な端末や業務アプリケーションに対応できる機能拡張性と、大量端末の制御を想定した高性能なデータ管理が求められる。
【０００３】
従来の端末管理システムに関して、例えば、特許文献１には、物流分野においてセンサが収集する温度や湿度等のセンサ情報と、物品の梱包状態と設定場所を表す情報と、輸送経路情報を収集してそれぞれ異なるテーブルに格納し、外部端末からの参照要求に応じて、指定物品の指定場所におけるセンサ情報を検索して、提示するセンサ情報管理システムが開示されている。
【０００４】
また、特許文献２には、複数のデバイスに対する設定を行うデバイス設定サーバであって、デバイス情報とデバイスが備える機能とを対応づけた管理データモデル情報と、サービスと使用デバイスとを対応づけたポリシ情報とを、それぞれ異なるテーブルに格納して管理し、サービス提供に必要な機能をもつデバイスの組み合わせを特定し、特定した各デバイスに対して、サービス実行に必要な設定情報を送信するデバイス設定システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２１９１９７号公報
【特許文献２】特開２０１０−２７１９３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記特許文献に記載された従来の端末管理システムにおいては、サーバの機能拡張性と大量端末制御時のデータ管理性能について課題がある。即ち、従来の端末管理システムでは、端末毎或いはサーバ機能毎に個別のテーブル構造を定義してデータ処理を行っているので、新たに別の種類の端末を追加し或いはサーバ機能を追加してそれらを管理する場合に、データ処理に関する設計変更の箇所が多く、迅速かつ低コストにサーバ機能の拡張を行うことが困難となる。また、データアクセス処理の負荷分散が考慮されていない端末管理システムにあっては、大量の端末を制御する場合のサーバ処理性能の確保が困難である。
【０００７】
そこで、本発明の目的は、管理対象となる多種の端末や業務アプリケーションに対応できる機能拡張性と、大量の端末の管理を想定した高性能なデータ管理機能を実現することが可能な端末管理システム、管理サーバ及び端末管理方法を実現することにある。
【課題を解決するための手段】
【０００８】
本発明に係る端末管理システムは、好ましくは、ネットワークを介して接続される複数の端末の状態及びその変更を管理する管理サーバと、該管理サーバにネットワークを介して接続され、該端末の状態の変更を指示する管理装置とを有する端末管理システムであって、
該端末は、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルを記憶する記憶装置を有し、
該管理サーバは、
該端末が有する該端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルを記憶するストレージと、
該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理手段と、
該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理手段と、
該第１の処理手段及び該第２の処理手段によって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理手段と、を有し、
該管理サーバは、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信し、
該端末は、該管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて処理を実行する、ことを特徴とする端末管理システムとして構成される。
【０００９】
好ましい例では、前記管理テーブルは、前記端末管理データモデルと、前記制御情報管理データモデルを、共通の様式のデータ構造を用いて管理し、
該共通の様式のデータ構造は、データモデルの種類を示す識別子を示すデータモデル種別と、データモデルを識別するデータモデルＩＤと、データモデルで表現されるデータの属性名を示すデータキーと、データモデルで表現される該データキーに関する値を示すデータ値を保持する構造である。
【００１０】
また、好ましくは、前記管理装置は、情報を画面表示する表示装置と、操作者によって入力操作される入力装置を有し、
該表示装置は、該端末が有する前記端末管理データモデルの変更を指示する第１表示部と、該端末に新たな端末管理データモデルの追加を指示する第２表示部とを有する管理画面を表示することができ、
該入力装置の操作によって、該第１表示部又は該第２表示部に必要な情報が入力され、登録が指示された場合、
前記第２の処理手段は、該管理画面に入力された情報を基に、該該端末管理データモデル又は該制御情報管理データモデルの内容を変更又は追加する前記端末管理システムである。
【００１１】
また、好ましくは、前記第１の処理手段は、前記データモデル種別と、前記データモデルＩＤと、前記データキーと、前記データ値を用いた、該端末管理データモデルを作成し、
第２の処理手段は、前記データモデル種別と、前記データモデルＩＤと、前記データキーと、前記データ値を用いた、前記制御情報管理データモデルを作成する前記端末管理システムである。
【００１２】
また、好ましくは、前記各端末は、自らの記憶装置に端末エージェントを保持し、
該端末エージェントは、自端末が保有する前記端末管理データモデルを作成し、又は作成済みの該端末管理データモデルの内容を更新し、更に前記管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて端末制御処理を実行する前記端末管理システムである。
【００１３】
また、好ましくは、前記第１の処理手段及び前記第２の処理手段は、前記管理サーバが有する処理装置で、端末制御情報登録プログラムを実行することで実現され、
前記第３の処理手段は、該処理装置で、データモデル操作プログラムを実行することで実現される前記端末管理システムである。
【００１４】
また、好ましくは、前記管理テーブルは、複数に分割された分割管理テーブルで構成され、
前記ストレージは、複数のストレージで構成され、複数の該ストレージは、分割された該分割管理テーブルを記憶する。
【００１５】
また、好ましくは、データモデル種別と配置先のストレージとの対応付けルールに基づき、データを該分割テーブルデータに分散配置する。
また、好ましくは、データモデル種別とＩＤと属性名とを連結した文字列のハッシュ値の計算結果と配置先のストレージとの対応付けルールに基いて、データを該分割テーブルデータに分散配置する。
【００１６】
本発明に係る端末管理システムにおける管理サーバは、好ましくは、ネットワークを介して、該端末の状態の変更を指示する管理装置に接続され、かつネットワークを介して、複数の端末に接続されて、該複数の端末の状態及びその変更を管理する管理サーバであって、
該端末が有する、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルを記憶するストレージと、
該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理手段と、
該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理手段と、
該第１の処理手段及び該第２の処理手段によって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理手段と、を有し、
該制御情報管理データモデルが有する制御情報に基づいて処理を実行するために、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信する、ことを特徴とする管理サーバとして構成される。
【００１７】
また、本発明に係る端末管理方法は、好ましくは、ネットワークを介して接続される複数の端末の状態及びその変更を管理する管理サーバと、該管理サーバにネットワークを介して接続され、該端末の状態の変更を指示する管理装置とを有する端末管理システムにおける端末管理方法であって、
該端末において、該端末の状態を端末の種別に依存しないデータ構造で表現した端末管理データモデルを記憶装置に記憶するステップと、
該管理サーバにおいて、該端末が有する該端末管理データモデルと同じデータ構造を持つ端末管理データモデルと、該端末を制御する制御情報を管理する制御情報管理データモデルを共通の様式で保管して管理する管理テーブルをストレージに記憶するステップと、
該管理サーバにおいて、該該端末が有する該端末管理データモデルに変更があった場合、変更された該端末管理データモデルと同一のデータ構造を持つ該端末管理データモデルを作成する第１の処理ステップと、
該管理サーバにおいて、該該管理装置からの指示に基いて、該端末が持つ該端末管理データモデルの変更又は追加を行い、かつ該端末管理データモデルに関連する該制御情報を用いて該制御情報管理データモデルを作成する第２の処理ステップと、
該管理サーバにおいて、該該第１の処理ステップ及び該第２の処理ステップによって作成された、該該端末管理データモデル及び該制御情報管理データモデルを、該管理テーブルに登録する第３の処理ステップと、
該管理サーバにおいて、該端末からの要求に応じて、該管理テーブルから該制御情報管理データモデルを読み出して、該端末へ送信するステップと、
該端末において、該管理サーバから取得した該制御情報管理データモデルが有する制御情報に基づいて処理を実行するステップを有する、ことを特徴とする端末管理方法として構成される。
【発明の効果】
【００１８】
本発明によれば、管理対象となる多種の端末や業務アプリケーションに対応できる機能拡張性と、大量の端末の管理を想定した高性能なデータ管理機能を実現することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】一実施形態（実施例１）における端末管理システムの全体構成を示す図である。
【図２】一実施形態における管理サーバの構成例を示す図である。
【図３】一実施形態における端末の構成例を示す図である。
【図４】一実施形態におけるデータモデル管理テーブルの構成例を示す図である。
【図５】一実施形態における管理装置の管理画面の例を示す図である。
【図６】一実施形態における端末管理データモデル同期処理のフローを示すフローチャートである。
【図７】一実施形態におけるバイナリ登録処理のフローを示すフローチャートである。
【図８】一実施形態における端末制御登録処理のフローを示すフローチャートである。
【図９】一実施形態における端末制御実行処理のフローを示すフローチャートである。
【図１０】一実施形態における管理装置の構成例を示す図である。
【図１１】他の実施形態（実施例２）による端末管理システムの全体構成を示す図である。
【図１２】実施例２におけるデータモデル種別で分割管理した場合のデータモデル管理テーブルの構成例を示す図である。
【図１３】実施例２におけるデータモデル種別とデータモデルＩＤとデータキーの組み合わせにより分割管理した場合のデータモデル管理テーブルの構成例を示す図である。
【発明を実施するための形態】
【００２０】
以下、添付図面を参照して本発明の実施形態について説明する。
［実施例１］
実施例１は、単一のストレージに格納したデータモデル管理デーブルを用いた端末管理システムを示すものである。実施例１は、端末の数が比較的少ない場合に、シンプルなサーバ構成でシステムを稼働させる上で好適な構成である。
【００２１】
＜全体システム構成＞
図１は、端末管理システムの構成を示す。
端末管理システムは、管理装置１０１と、管理サーバ１０２と、ストレージ１０３と、管理対象となる多数の端末１０４と、ファイルサーバ１０５が、インターネット等のネットワーク１０６を介して接続して構成される。この端末管理システムは、例えば企業において社員が用いる携帯電話、スマートフォン、携帯端末等の多種多様な業務端末の管理情報の追加、更新、削除等を、管理サーバ１０２で管理するシステムに適用される。また、各家庭や、ビル、工場などに設置される、セットトップボックス、センサ、通信機器、工作機器等の業務端末の管理情報を、管理サーバ１０２で管理するシステムにも適用される。
【００２２】
管理装置１０１は、端末管理システムにおける端末１０４を管理するための指示を行う、例えばパーソナルコンピュータのような情報処理装置であり、管理者の操作によって主に端末の状態の変更の指示を発する。管理装置１０１は、図１０に示すように、例えば、プログラムの実行により種々の情報処理を行う処理装置（ＣＰＵ）１０１１と、プログラムやデータをロードするメモリ１０１２と、キーボードやマウス等の入力装置１０１３と、ディスプレイ等の表示装置１０１４と、他機器との通信コネクションを確立する通信装置１０１５と、記憶装置１０１６を備え、これらの構成ユニットが内部バスで接続して構成される。記憶装置１０１６は、管理画面表示・操作プログラム１０７を格納する。処理装置１０１１は、記憶装置に格納された管理画面表示・操作プログラム１０７をメモリ１０１２にロードし、それを実行することで、入出力の諸操作を可能とする。
【００２３】
管理サーバ１０２は、端末管理システムにおける主たる処理を実行する情報処理装置であり、多数の端末の状態情報、制御情報等を登録、更新して管理する。そのために、本実施例では、処理装置２０１（図２）で、管理画面作成・通信プログラム１０８と、バイナリ登録プログラム１０９と、端末制御情報登録プログラム１１０と、端末通信プログラム１１１と、データモデル操作プログラム１１２と、ストレージアクセスプログラム１１３、等のプログラムを実行させることができる。なお、管理サーバ１０２のハードウェア構成については図２を参照して後述する。
【００２４】
ここで、管理画面作成・通信プログラム１０８は、管理装置１０１の表示装置に表示される管理画面を作成して、管理装置１０１へ提供する機能を実現する。管理画面作成・通信プログラム１０８は、管理装置１０１が有する管理画面表示・操作プログラム１０７と協働して実行される。
バイナリ登録プログラム１０９は、バイナリ管理データモデルへの登録及び更新を行う機能を実現する。バイナリ登録処理（図７）においてこのプログラムが実行される。
【００２５】
端末制御情報登録プログラム１１０は、端末１０４の状態変更等に伴う端末制御情報をデータモデル管理テーブル１１４に登録する機能を実現する。端末管理データモデルの同期処理（図６参照）や端末制御情報登録処理（図８参照）、端末制御実行処理（図９参照）において、このプログラムが実行される。
端末通信プログラム１１１は、端末１０４との間でデータ通信を行う機能を実現する。
【００２６】
データモデル操作プログラム１１２は、端末制御情報登録プログラム１１０やバイナリ登録プログラム１０９の指示に基づいて、データモデル管理テーブル１１４の内容を変更する機能を実現する。
ストレージアクセスプログラム１１３は、ストレージに格納されたデータモデル管理テーブル１０３の内容を読み出し及び書き込みする機能を実現する。
【００２７】
これらのプログラムの内、データモデル操作プログラム１１２と、ストレージアクセスプログラム１１３が本システムの共通部として機能し、その他プログラムが拡張部として機能する。換言すれば、従来、端末ごとにデータモデルを定義して、管理テーブルに個別に登録し更新していたものを、本実施例では、端末やサーバ機能に特有なデータモデルの作成や変更は端末制御情報登録プログラム１１０の制御の下で行い、データモデル管理テーブル１１４への登録や更新のための処理は共通化して、データモデル操作プログラム１１２とストレージアクセスプログラム１１３の実行（共通部による実行）によって行うこととした。これにより、異種の端末を新たに追加しサーバ機能を追加する場合でも、共通部による処理は変更することなく、実行することが可能であるため、設計変更を最小化でき、迅速かつ低コストにサーバ機能の拡張を期待できる。
【００２８】
ストレージ１０３は、管理サーバ１０２で扱うバイナリ以外のデータを保存する記憶装置であって、例えばＲＤＢ（リレーショナルデータベース）等の記憶装置である。ストレージ１０３は、本実施例に特徴的なデータモデル管理テーブル１１４を保存する。なお、データモデル管理テーブル１１４については図４を参照して後述する。
【００２９】
端末１０４は、端末管理システムにおいて使用される携帯端末やセンサなどの業務端末であり、多種の機能やアプリケーションを備える。各端末１０４は、端末アプリケーション１１５と、端末エージェント１１６を実行することができる。なお、端末１０４の内部構成例については図３を参照して後述する。
【００３０】
ここで、端末アプリケーション１１５は、センサデータの収集など、端末１０４のサービスを機能させるためのプログラムである。また、端末エージェント１１６は、管理サーバ１０２と連携して、端末１０４の設定変更や端末アプリケーション１１５の更新等の端末制御を実行するプログラムである。各端末１０４では、端末エージェント１１６の実行により、端末種別に依存しないデータ構造である端末管理データモデル３０７（図３）を作成して、記憶装置に保持する。例えば、端末１０４の端末製造番号やソフトウェアＸの電源状態といった端末状態情報から、”Device/SerialNumber＝00001”や”Binary/SoftwareX/Status＝running”といった端末管理データモデルが作成される。
【００３１】
さらに、各端末１０４では、端末エージェント１１６の実行により、データモデルの更新内容に応じた端末制御を行う。例えば、”Binary/SoftwareX/Status＝running”のデータモデルが、”Binary/SoftwareX/Status＝stop”に変更されると、稼働中のソフトウェアＸを停止するように制御する。
【００３２】
ファイルサーバ１０５は、Webサーバ機能を持つバイナリ格納・配信機能を有する情報処理装置であり、管理サーバ１０２からのバイナリ格納要求に対してバイナリを格納すると共に、格納したバイナリをネットワーク１０６経由で取得するためのアドレス情報を提供する。なお、本実施例におけるバイナリは、テキスト形式（文字データ）以外のデータ形式のデータ又はファイルであり、例えば端末アプリケーション１１５の実行ファイルである。
【００３３】
＜管理サーバ１０２の内部構成＞
図２は、管理サーバ１０２の内部構成例を示す。管理サーバ１０２は、プログラムの実行や演算を行う処理装置２０１と、プログラムやデータをロードするメモリ２０２と、キーボードやマウス等の入力装置２０３と、ディスプレイ等の表示装置２０４と、他機器との通信コネクションを確立する通信装置２０５と、記憶装置２０６を備え、これらの構成部位が内部バス２０７で接続して構成される。記憶装置２０６は、プログラム１０８〜１１３を格納する。処理装置２０１は、記憶装置２０６に格納されたプログラムをメモリ２０２にロードし、当該プログラムの指令に従った処理を実行する。
【００３４】
＜端末１０４の内部構成＞
図３は、端末１０４の内部構成例を示す。端末１０４は、プログラムの実行を行う処理装置３０１と、プログラムやデータをロードするメモリ３０２と、利用者により入力操作される入力装置３０３と、情報を表示する表示装置３０４と、他機器との通信コネクションを確立する通信装置３０５と、記憶装置３０６と、を備え、これらのユニットが内部バスで接続して構成される。なお、端末１０４には種々の構成のものがあり、それらの中には入力装置や表示装置を持たないものもある。
【００３５】
記憶装置３０６は、端末アプリケーション１１５及び端末管理エージェント１１６、端末管理エージェント１１６の処理で作成された端末管理データモデル３０７を格納する。処理装置３０１は、記憶装置３０６に格納されたプログラムをメモリ３０２にロードし、当該プログラムの指令に従った処理を実行する。なお、ここで端末管理データモデル３０７は、データモデル管理テーブル１１４に登録して管理される端末管理データモデル４１と同じ形式のデータ構造である。
【００３６】
＜データモデル管理テーブル１１４＞
図４は、データモデル管理テーブル１１４の構成を示す。データモデル管理テーブル１１４は、バイナリを除く端末管理システムの動作に必要な情報を、データモデルの構造を持つ共通の様式で管理する。データモデル管理テーブル１１４は、この端末管理システムで管理される端末１０４を管理する端末管理データモデル４１と、この端末管理システムで扱われるバイナリを管理するバイナリ管理データモデル４２と、端末１０４の制御に用いられる制御情報を管理する制御情報管理データモデル４３の３つデータモデルを保持して管理する。この制御情報には、端末を指定するアドレスやＵＲＬ、端末を起動、停止する命令「start」「stop」等がある。
【００３７】
データモデル種別４０１は、データモデルの種類を示す識別子である。本実施例では、端末管理データモデル４１に”Device Manage”、バイナリ管理データモデル４２に”Binary Manage”、制御情報管理データモデル４３に”Task Manage”という識別子を指定し保持している。
【００３８】
データモデルＩＤ４０２は、同じデータモデル種別内で管理対象を区別するための識別子である。データキーとデータ値の集合で表す管理対象を一意に特定するための情報という意味で、同じデータモデルＩＤを付与しているが、データモデルＩＤをどのように解釈するか(どういう情報として使うか）は、データモデル種別毎に異なる。本実施例では、異なるデータモデルＩＤ“D00001”や“D00002”を指定された端末管理データモデルは、それぞれ別端末の端末管理データモデルであることを示す。また、異なるデータモデルＩＤ“B0011”や“B0012”を指定されたバイナリ管理データモデルは、それぞれ別バイナリのバイナリ管理データモデルであることを示す。そして、異なるデータモデルＩＤ“D00001”や”D00002”を指定された制御情報管理データモデルは、それぞれ異なる端末１０４向けの制御情報データモデルを管理していることを示す。
【００３９】
データキー４０３は、データモデルで表現されるデータの属性名である。例えば、端末１０４の製造メーカ名を示す”Device/Vender Name”や、端末１０４上で動作するソフトウェアＸの稼働状態を示す”Binary/SoftwareX/Status”、ソフトウェアＸのバイナリダウンロード先ＵＲＬを示す”Binary/SoftwareX/DataUrl”といった属性名が保持される。
データ値４０４は、データモデルで表現されるデータの各データキーに対する値を保持する。
【００４０】
＜管理画面＞
図５は、管理装置１０１における表示装置の管理画面の例を示す。
管理画面は、管理サーバ１０２において管理画面作成・通信プログラム１０８の実行によって作成され、管理装置１０１において管理画面表示・操作プログラム１０８の実行によって表示装置１０１４の画面に表示される。
【００４１】
管理画面５０１は、端末管理画面表示部５０２と、バイナリ管理画面表示部５０３を有して構成される。端末管理画面表示部５０２は、端末１０４の状態を表示し、端末ＩＤで指定される端末１０４の端末エージェント１１６に制御命令を実行させるための、データモデル編集のための画面を提供する。バイナリ管理画面表示部５０３は、端末管理システムで管理するバイナリ情報を表示し、新たに管理対象として追加するバイナリを登録するための画面を提供する。
【００４２】
より詳しく説明すれば、端末管理画面表示部５０２は、端末管理データモデル表示・編集部５０４と、端末管理データモデル追加部５０５と、更新登録ボタン５０６で構成される。端末管理データモデル表示・編集部５０４は、データモデル管理テーブル１１４に保存されている端末管理データモデルを基に、端末１０４の状態を表示する。端末管理データモデル表示・編集部５０４は、端末を識別する端末ＩＤ、端末ベンダ名、端末製造番号、データキー、及びデータ値の入力表示部としてのデータ入力欄５０７の各項目を備えている。管理者は、入力装置１０１３からデータ入力欄５０７にデータ値を入力し、更新登録ボタン５０６を押下することで、端末エージェント１１６に端末管理データモデルの更新を通知することができる。
【００４３】
端末管理データモデル追加部５０５は、新規の端末管理データモデルを追加するための入力欄である。管理者は、入力装置１０１３から端末管理データモデル追加部５０５に、上記各項目に対応するデータ値を入力し、更新登録ボタン５０６を押下することで、端末エージェント１１６に端末管理データモデルの追加を通知することができる。図５の例では、バイナリのダウンロードＵＲＬを記載したデータモデルの追加を指示する例を示している。なお、端末管理データモデルにバイナリ情報を指定する場合は、データ入力欄５０７の押下により起動する入力支援用の画面を用意してもよい。例えば、データモデル管理テーブル１１４に登録されているバイナリの一覧を管理画面に表示し、一覧からのバイナリ指定受け付けることで、ダウンロードＵＲＬ等を指定の欄に入力する画面などが考えられる。
更新登録ボタン５０６は、端末管理データモデル表示・編集部５０４や端末管理データモデル追加部５０５のデータ入力欄５０７の入力値を確定するボタンである。
【００４４】
バイナリ管理画面表示部５０３は、バイナリ管理データモデル表示・編集部５０８と、バイナリ管理データモデル追加部５０９と、バイナリ登録ボタン５１０を有して構成される。バイナリ管理データモデル表示・編集部５０８は、データモデル管理テーブル１１４に保存されているバイナリ管理データモデルを基に、端末管理システムに登録済みのバイナリの情報を表示する。バイナリ管理データモデル表示・編集部５０８は、バイナリを識別するバイナリＩＤ、バイナリ名、バージョン番号、作成者、及び対称ファイル各項目を備えている。管理者は、入力装置１０１３から対称ファイル名を入力し、バイナリ登録ボタン５１０を押下することで、バイナリ登録情報を更新することができる。
【００４５】
バイナリ管理データモデル追加部５０９は、端末管理システムで管理するバイナリを新たに追加するための入力欄である。管理者は、入力装置１０１３から新たに登録したいバイナリの属性情報とバイナリデータを入力欄に入力することで、バイナリデータを登録することができる。バイナリ登録を行うことにより、端末管理画面表示部５０２において当該バイナリのダウンロードＵＲＬ等を指定できるようになる。
データ指定欄５１１は、バイナリ管理画面表示部５０３の対象ファイルを指定する欄である。バイナリ登録ボタン５１０は、バイナリ管理データモデル表示・編集部５０８やバイナリ管理データモデル追加部５０９のデータ指定欄５１１の入力値を確定するボタンである。
【００４６】
＜端末管理システムの処理フロー＞
次に、この端末管理システムの処理フローについて説明する。本実施形態による端末管理システムでは、端末設定変更や端末アプリケーション１１５の更新といった端末制御を実行するための準備処理として、図６に示す端末管理データモデル同期処理フローと、図７に示すバイナリ登録処理フローを実行する。これらの準備処理の後、管理者の操作により、図８に処理フローを示す端末制御登録処理を実行することで端末制御を実現できる。なお、図９は端末制御登録処理の完了により起動される、端末制御実行処理の処理フローである。以下、各処理の詳細を説明する。
【００４７】
＜端末管理データモデル同期処理＞
図６は、端末管理データモデル同期処理のフローを示す。この同期処理とは、端末と管理サーバの両者で管理している端末のデータモデルの同一性の確保のための処理である。即ち、端末１０４のデータモデルに変更が生じた場合、その変更を反映して作成されるデータモデルと、管理サーバ１０２が管理している当該端末のデータモデルと一致させる処理である。この同期処理は、端末１０４に端末エージェント１１６が導入された直後と、端末管理エージェント１１６が端末１０４の設定変更を検出する度に、実行される。
【００４８】
端末１０４の処理装置３０１は、端末エージェント１１６の指令を受けて以下の処理を実行する。即ち、端末１０４に端末エージェント１１６を導入した直後の起動の場合、端末エージェント１１６は、端末１０４上で動作する端末アプリケーション１１５の状態や端末１０４自体の状態を収集し、端末管理データモデル３０７を作成して、記憶装置３０６に格納する。そして、この作成した端末管理データモデル３０７を管理サーバ１０２へ送信する。端末エージェント１１６の導入直後以外の場合、端末エージェント１１６は、端末１０４の設定変更に応じて該当する端末管理データモデル３０７を更新し、その更新された端末管理データモデル３０７を管理サーバ１０２へ送信する（Ｓ６０１）。
【００４９】
管理サーバ１０２では、処理装置２０１が端末通信プログラム１１１の指令を受けて、Ｓ６０１で送信された端末管理データモデルを受信し、端末制御情報登録プログラム１１０へ処理要求を行う（Ｓ６０２）。
そして、処理装置２０１は端末制御情報登録プログラム１１０の指令を受けて、Ｓ６０２で取得した端末管理データモデルにデータモデル種別とデータモデルＩＤを付与し、データモデル操作プログラム１１２に当該データモデルの更新要求を行う。この処理では、データモデル種別として端末管理データモデルを表す識別子である“Device Manage”を指定する。データモデルＩＤは、端末ベンダ名と端末製造番号の組み合わせで個々の端末を識別し、“D00001”といった端末毎の連番を指定する（Ｓ６０３）。
【００５０】
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、Ｓ６０３で要求されたデータモデルの更新処理を行う。具体的には、データモデル管理テーブル１１４の操作をストレージアクセスプログラム１１３へ要求し、操作完了の通知を待つ（Ｓ６０４）。
【００５１】
処理装置２０１は、ストレージアクセスプログラム１１３の指令を受けて、Ｓ６０４で取得した操作要求に従い、データモデル管理テーブル１１４の操作処理、即ち更新のための書き換えを実行する（Ｓ６０５）。
ストレージ１０３は、データモデル操作、即ちデータモデル管理テーブル１１４の書き換えを行い、完了通知をストレージアクセスプログラム１１３へ返す（Ｓ６０６）。
【００５２】
処理装置２０１は、ストレージアクセスプログラム１１３の指令を受けて、データモデル管理テーブル１１４の操作完了を、データモデル操作プログラム１１２へ通知する（Ｓ６０７）。
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、端末管理データモデルが更新された旨を、管理画面作成・通信プログラム１０８へ通知する（Ｓ６０８）。
【００５３】
そして処理装置２０１は、管理画面作成・通信プログラム１０８の指令を受けて、Ｓ６０８で取得した通知を受けて、データモデル管理テーブル１１４に格納された端末管理データモデルの情報を読み取り、管理画面５０１の端末管理データモデル表示・編集部５０４を更新した画面を作成してそれを管理装置１０１へ送信する（Ｓ６０９）。
【００５４】
管理装置１０１において処理装置１０１１は、管理画面表示・操作プログラム１０７の指令を受けて、Ｓ６０９で受信した管理画面５０１を表示装置１０１４に表示する（Ｓ６１０）。
以上で、端末管理データモデル同期処理における一連の処理を終わる。
【００５５】
なお、上記処理フローのＳ６０８〜Ｓ６０９では、処理装置２０１が、データモデル操作プログラム１１２の指令を受けて、端末管理データモデルの更新完了を管理画面作成・通信プログラム１０８へ通知して、端末管理データモデル表示・編集部５０４を更新するとした。しかし、この手順は、Ｓ６０８で処理装置２０１は、端末管理データモデルの更新が完了した時点でデータモデル操作プログラム１１２の実行を終了し、次回管理画面作成・通信プログラム１０８が実行された際に、更新された端末管理データモデルを読み込んで、端末管理データモデル表示・編集部５０４を更新するようにしても良い。
【００５６】
＜バイナリ登録処理＞
図７は、バイナリ登録処理のフローを示す。この処理は、管理装置１０１からの指示に基づいて、管理サーバ１０２のデータモデル管理テーブル１１４にバイナリ管理データモデルを登録、更新する処理である。この処理は、管理者が、管理装置１０１の入力装置から管理画面５０１のバイナリ管理データモデル表示・編集部５０８やバイナリ管理データモデル追加部５０９のデータ指定欄５１１にバイナリデータ（実行ファイル含む）を入力し、バイナリ登録ボタン５１０を押下することで実行される。
【００５７】
管理装置１０１において処理装置１０１１は、管理画面表示・操作プログラム１０７の指令を受けて、バイナリ管理データモデル表示・編集部５０８とバイナリ管理データモデル追加部５０９のデータ指定欄５１１に入力された入力情報を取得し、管理サーバ１０２へ送信する（Ｓ７０１）。
【００５８】
管理サーバ１０２において処理装置２０１は、管理画面作成・通信プログラム１０８の指令を受けて、Ｓ７０１で送信された入力情報を受信し、バイナリ登録プログラム１０９へ処理要求を行う（Ｓ７０２）。
【００５９】
処理装置２０１は、バイナリ登録プログラム１０９の指令を受けて、Ｓ７０２で取得したバイナリ管理データモデルにデータモデル種別とデータモデルＩＤとを付与し、データモデル操作プログラム１１２に当該データモデルの更新要求を行う。この処理では、データモデル種別としてバイナリ管理データモデルを表す識別子である“Binary Manage”を指定する。データモデルＩＤは、バイナリ名とバージョン番号の組み合わせで個々のバイナリを識別し、“B00001”といったバイナリ毎の連番を指定する。なお、入力情報のうち、対象ファイル情報は次の処理でダウンロードＵＲＬに置き換られる。処理装置２０１は、取得した対象ファイル情報をファイルサーバ１０５へ送信して格納要求を行い、ファイルサーバ１０５から当該バイナリのダウンロードに必要なアドレス情報であるダウンロードＵＲＬを取得する。その後、バイナリ情報とダウンロードＵＲＬとを置き換える（Ｓ７０３）。
【００６０】
Ｓ７０４〜Ｓ７０７（共通部による処理）はそれぞれ、上記したＳ６０４〜Ｓ６０７と同じ処理を実行する（Ｓ７０４〜Ｓ７０７）。
【００６１】
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、バイナリ管理データモデルの更新を、管理画面作成・通信プログラム１０８へ通知する（Ｓ７０８）。
処理装置２０１は、管理画面作成・通信プログラム１０８の指令を受けて、Ｓ７０８で取得した通知を受けて、データモデル管理テーブル１１４に格納されたバイナリ管理データモデルの情報を読み取り、管理画面５０１のバイナリ管理データモデル表示・編集部５０８の表示を更新し、管理装置１０１へ送信する（Ｓ７０９）
管理装置１０１の処理装置は、管理画面表示・操作プログラム１０７の指令を受けて、Ｓ７０９で受信した管理画面５０１を表示装置に表示する（Ｓ７１０）。以上で、一連のバイナリ登録処理を終了する。
【００６２】
なお、上記処理フローのＳ７０８〜Ｓ７０９では、処理装置２０１が、データモデル操作プログラム１１２の指令を受けて、バイナリ管理データモデルの更新完了を管理画面作成・通信プログラム１０８へ通知して、本通知を受けてバイナリ管理データモデル表示・編集部５０８を更新するものとしたが、この手順は、Ｓ７０８で処理装置２０１は、バイナリ管理データモデルの更新が完了した時点でデータモデル操作プログラム１１２の実行を終了し、次回管理画面作成・通信プログラム１０８が実行された際に、更新されたバイナリ管理データモデルを読み込んで、バイナリ管理データモデル表示・編集部５０８を更新するようにしても良い。
【００６３】
＜端末制御情報登録処理＞
図８は、端末制御情報登録処理のフローを示す。この処理は、管理装置１０１からの指示に基づいて、管理サーバ１０２のデータモデル管理テーブル１１４に制御情報管理データモデルを登録、更新する処理である。この処理は、管理者が、管理装置１０１の入力装置から管理画面５０１の端末管理データモデル表示・編集部５０４や端末管理データモデル追加部５０５のデータ入力欄５０７にデータ値を入力し、更新登録ボタン５０６を押下することで実行される。
【００６４】
管理装置１０１において処理装置は、管理画面表示・操作プログラム１０７の指令を受けて、端末管理データモデル表示・編集部５０４と端末管理データモデル追加部５０５のデータ入力欄５０７に入力された情報を取得し、管理サーバ１０２へ送信する（Ｓ８０１）。
【００６５】
管理サーバ１０２において処理装置２０１は、管理画面作成・通信処理手段１０８の指令を受けて、Ｓ８０１で送信された入力情報を受信し、端末制御情報登録プログラム１１０へ処理要求を行う（Ｓ８０２）。
【００６６】
処理装置２０１は、端末制御情報登録プログラム１１０の指令を受けて、Ｓ８０２で取得した端末管理データモデルの入力情報にデータモデル種別とデータモデルＩＤを付与し、データモデル操作プログラム１１２に当該データモデルの保存要求を行う。この処理では、データモデル種別として制御情報管理データモデルを表す識別子である“Task Manage”を指定する。データモデルＩＤには、データモデル更新対象の端末エージェント１１６を特定する情報である、端末管理画面表示部５０２の端末ＩＤ欄の値を指定する（Ｓ８０３）。
Ｓ８０４〜Ｓ８０７（共通部による処理）は、それぞれＳ６０４〜Ｓ６０７と同じ処理を実行する（Ｓ８０４〜Ｓ８０７）
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、制御情報管理データモデルが更新された旨の通知を、端末通信プログラム１１１へ送信する（Ｓ８０８）。
処理装置２０１は、端末通信プログラム１１１の指令を受けて、制御情報管理データモデルの更新通知を端末１０４へ送信する（Ｓ８０９）。
【００６７】
端末１０４の処理装置３０１は、端末管理エージェント１１６の指令を受けて、制御情報管理データモデルの更新通知を受信すると、端末制御実行処理（図９参照）を開始する（Ｓ８１０）。以上で、一連の端末制御登録処理を終了する。
【００６８】
＜端末制御実行処理＞
図９は、端末制御実行処理のフローを示す。この処理は、端末１０４が管理サーバ１０２のデータモデル管理テーブル１１４から自端末に関する制御情報管理データモデルを取得して、当該制御情報管理データモデルを用いて自端末を制御する処理である。この処理は、端末１０４がＳ８０９で制御情報管理データモデルの更新通知を受信するか、又は端末１０４の処理装置３０１が、端末エージェント１１６の指令を受けて、定期的に管理サーバ１０２上の制御情報管理データモデルの更新をチェックし、更新を検出した場合に実行される。
【００６９】
端末１０４の処理装置３０１は、端末エージェント１１６の指令を受けて、端末ベンダ名と端末製造番号と共に制御情報管理データモデルの取得要求を管理サーバ１０２へ送信する（Ｓ９０１）。
管理サーバ１０の処理装置２０１は、端末通信プログラム１１１の指令を受けて、Ｓ９０１で送信された端末ベンダ名と端末製造番号と制御情報管理データモデルの取得要求を、端末制御情報登録プログラム１１０へ送信する（Ｓ９０２）。
【００７０】
処理装置２０１は、端末制御情報登録プログラム１１０の指令を受けて、Ｓ９０２で取得した端末ベンダ名と端末製造番号から端末エージェント１１６のデータモデルＩＤ（例えば“D00001”）を特定し、データモデル管理テーブル１１４のデータモデルＩＤ４０２に登録された“D00001”と同じＩＤを持ち、かつデータモデル種別が“Task Manage”である制御情報管理データモデルの読出し要求を行う（Ｓ９０３）。
【００７１】
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、Ｓ９０３で要求されたデータモデルの読出し処理を行う。具体的には、データモデル管理テーブル１１４の操作要求をストレージアクセスプログラム１１３へ送信し、操作完了の通知を待つ（Ｓ９０４）。
Ｓ９０５〜Ｓ９０７（共通部による処理）は、それぞれＳ６０５〜Ｓ６０７と同じ処理を実行する（Ｓ９０５〜Ｓ９０７）。
【００７２】
処理装置２０１は、データモデル操作プログラム１１２の指令を受けて、読出しが完了した制御情報管理データモデルを、端末通信プログラム１１１へ送信する（Ｓ９０８）。
そして処理装置２０１は、端末通信プログラム１１１の指令を受けて、制御情報管理データモデルを端末１０４へ送信する（Ｓ９０９）。
【００７３】
端末１０４の処理装置３０１は、端末エージェント１１６の指令を受けて、Ｓ９０９で受信した制御情報管理データモデルの情報に基づき、制御処理を実行する。例えば、“Binary/SoftwareX/Status＝stop”を受信した場合は、端末管理データモデル３０７の該当部分を更新するとともに、端末１０４上で稼働中のソフトウェアＸを停止する。また、“Binary/SoftwareZ/DataUrl＝http://download/SoftwareZ”が指定された場合は、端末管理データモデル３０７の該当部分を更新するとともに、ファイルサーバ１０５に指定されたダウンロードＵＲＬでアクセスしてバイナリを取得し、当該バイナリを端末１０４に導入する（Ｓ９１０）。
なお、この端末制御実行処理の後、データモデル管理テーブル１１４からは、処理が完了した制御情報管理データモデルが削除される。
【００７４】
［実施例２］
実施例２は、データモデル管理デーブルを、複数のストレージに分散配置してシステムを構成した例である。この実施形態は、多くの端末１０４を制御する場合に、データモデル管理テーブルの操作処理負荷を分散させ、システムを高性能に稼働させる上で好適な構成である。
【００７５】
＜システム構成＞
図１１は、この実施形態における端末管理システムの全体構成を示す。
【００７６】
実施例１との違いは、ストレージ１１０２が複数あることと、データモデル管理テーブル１１０３の構成にある。即ち、複数（図示の例では３つ）のストレージ１１０２は、インターネットやSAN(Storage Area Network)等のネットワーク１１０４を介して管理サーバ１０２と接続される。複数のストレージ１１０２には、データモデル管理テーブル１１０３がそれぞれ記憶される。その他の構成要素は、図１に示した各構成要素と同じである。
【００７７】
＜管理サーバの内部構成＞
管理サーバ１１０１の内部構成は、実施例１の図２の構成と同じである。
【００７８】
＜端末の内部構成＞
端末の内部構成は、実施例１の図３の構成と同じである。
【００７９】
＜データモデル管理テーブル＞
データモデル管理テーブル１１０３の構成は、実施例１の図４の構成と同じである。
【００８０】
＜管理画面＞  管理画面は、実施例１の図５の構成と同じである。
【００８１】
＜端末管理システムの処理フロー＞
実施例１の図６〜図９に示した、単一ストレージ構成の処理フローとは、ストレージアクセスプログラム１１３の処理内容の一部が異なり、その他の処理内容は同じである。以下では、単一ストレージ構成の処理フローとの相違点について説明する。
【００８２】
Ｓ６０５、Ｓ７０５、Ｓ８０５、Ｓ９０５の代わりに、管理サーバ１０２の処理装置２０１は、ストレージアクセスプログラム１１３の指令を受けて、次の処理を実行する。まず、データモデル操作要求の内容に応じて操作対象とするストレージ１１０２の決定処理を行う。この処理の具体例は後述する。その後、決定した操作対象のストレージ１１０２に対して、データモデル管理テーブル１１０３の操作処理を実行する。
【００８３】
Ｓ６０７、Ｓ７０７、Ｓ８０７、Ｓ９０７の代わりに、管理サーバ１０２の処理装置２０１は、ストレージアクセスプログラム１１３の指令を受けて、次の処理を実行する。操作要求を行った全てのストレージ１１０２からの操作完了通知を待ち、全てのストレージ１１０２からの操作完了通知を受信した場合に、データモデル操作プログラム１１２へデータモデル管理テーブル１１０３の操作完了通知を返す。
【００８４】
＜操作対象ストレージの決定方法の詳細＞
上記説明のＳ６０５、Ｓ７０５、Ｓ８０５、Ｓ９０５で実行する操作対象ストレージ１１０２の決定方法には、例えば、操作要求を受けたデータモデルのデータモデル種別４０１に基づく方法や、操作要求を受けたデータモデルを基に算出したハッシュ値に基づく方法がある。
【００８５】
図１２は、データモデル種別４０１に基づき操作対象のストレージ１１０２を決定した場合のデータモデル管理テーブル１１０３の構成例を示す。この方法では、例えば、予めデータモデル種別４０１とストレージ１１０２との対応関係を記載した設定ファイルを記憶装置２０６に保存しておく。処理装置２０１が、ストレージアクセスプログラム１１３の指令を受けて処理を実行する際に、当該設定ファイルを参照するなどの方法で操作対象のストレージを決定する。操作要求を受けたデータモデルのデータモデル種別が”Device Manage”であった場合にはストレージＡを操作し、データモデル種別が”Binary Manage”であった場合にはストレージＢを操作するといった決定を行う。
【００８６】
図１３は、データモデルのハッシュ値に基づき操作対象のストレージ１１０２を決定した場合のデータモデル管理テーブル１１０３の構成例を示す。この方法では、処理装置２０１が、ストレージアクセスプログラム１１３の指令を受けて処理を実行する際に、操作要求を受けたデータモデルのデータモデル種別４０１とデータモデルＩＤ４０２とデータキー４０３を連結した文字列のハッシュ値を計算し、予め決めた当該ハッシュ値を担当するストレージ１１０２を操作対象に決定する。ハッシュ値とストレージ１１０２を対応づける方法には、ハッシュ値をストレージ１１０２の台数で割った余り(剰余)とストレージ１１０２を対応づける方法や、Consistent Hashing法などを用いて、個々のストレージ１１０２についてもネットワークアドレス情報などの固有情報を用いてハッシュ値を算出し、データモデルを基に算出したハッシュ値と、最もハッシュ値の値が近いストレージ１１０２に対応づける方法などがある。
【００８７】
［変形例］
以上、実施例１及び２について説明したが、本発明は上記した実施例に限定されることなく、更に種々変形して実施することができる。
例えば、上記実施例１及び２では、管理画面５０１は、端末管理データモデルとバイナリ管理データモデルの表示・編集・追加機能を有するとした。変形例によれば、管理画面５０１にはさらにデータモデルの削除機能を持たせても良い。この場合、例えば、管理画面に各データモデルレコードの選択チェックボックスを追加し、さらに削除ボタンを追加して、削除ボタンが押下された場合に、チェックボックスがついているレコードの削除処理が実行されるようにすれば良い。
また、管理画面５０１には、端末管理データモデル表示・編集部５０４とバイナリ管理データモデル表示・編集部５０８と同様の機能をもつ、制御情報管理データモデルの表示・編集部を追加しても良い。
【００８８】
更に他の変形例として、端末の中にはバイナリデータを扱わないものが在る可能性がある。そのような端末に対してはファイルサーバ１０５が不要である。そのため、図４に示したデータモデル管理テーブル１１４のバイナリ管理データモデル４２は必ずしも必要としない。
【００８９】
以上のように、本実施例によれば、新たに別種の端末を管理し或いはサーバ機能を追加する場合でも、データ処理を行う共通部を変更しないで使うことが可能であるため、設計変更を最小化でき、迅速かつ低コストにサーバ機能の拡張を行うことができる。
さらに、大量の端末を管理する場合、共通部にてデータアクセスが並列分散処理されるため、データアクセスを高速化でき、サーバ処理性能を確保できる。
【００９０】
また、実施例２によるデータアクセスの並列分散処理は、全て共通部で実行されるため、次のような効果を得られる。第一に、拡張部の設計を変更することなくストレージ構成の変更が行えるため、端末管理システムの稼働後に管理端末台数の増減に合わせて分散処理するストレージの数を増減させ、システムの導入段階に合わせてストレージの提供コストを調整することができる。第二に、拡張部はデータアクセスの並列分散処理を意識せずに開発できるため、大量端末管理に対応した高性能なサーバ機能を低コストかつ迅速に開発できる。
【符号の説明】
【００９１】
１０１：管理装置  １０２：管理サーバ  １０３：ストレージ
１０４：端末  １０５：ファイルサーバ
１０８：管理画面作成・通信プログラム  １０９：バイナリ登録プログラム
１１０：端末制御情報登録プログラム    １１１：端末通信プログラム
１１２：データモデル操作プログラム    １１２：ストレージアクセスプログラム
１１５：端末アプリケーション          １１６：端末エージェント
【図１】
0005657604.tif 000002
【図２】
0005657604.tif 000003
【図３】
0005657604.tif 000004
【図４】
0005657604.tif 000005
【図５】
0005657604.tif 000006
【図６】
0005657604.tif 000007
【図７】
0005657604.tif 000008
【図８】
0005657604.tif 000009
【図９】
0005657604.tif 000010
【図１０】
0005657604.tif 000011
【図１１】
0005657604.tif 000012
【図１２】
0005657604.tif 000013
【図１３】
0005657604.tif 000014