(57)【要約】【課題】通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信するバンドル配信システムにおいて、管理システムにおける負荷増大を防止することを課題とする。【解決手段】契約情報に結び付けられた理想状態バンドルリストと、ＯＳＧｉ端末５のＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストとを比較処理と、その比較の結果に基づくバンドル制御とをＯＳＧｉ端末５で実現するので、ＯＳＧｉ端末５が増加した場合であっても管理システム３における負荷増大を防止することが可能となる。【選択図】図１
2011059926.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信可能なバンドル制御システムにおいて、
前記管理システムは、
契約情報に基づいて生成された理想状態バンドルリストを前記ＯＳＧｉ機器の識別情報に対応付けて記憶しておく記憶手段と、
前記通信ネットワークを介して前記ＯＳＧｉ機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、
取得した当該理想状態バンドルリストを前記ＯＳＧｉ機器に送信する送信手段と、を有し、
前記ＯＳＧｉ機器は、
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、
バンドルの実行環境であるＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、
を有することを特徴とするバンドル制御システム。
【請求項２】
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、
前記制御手段は、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする請求項１に記載のバンドル制御システム。
【請求項３】
前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、
前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、
前記制御手段は、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、
前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、
前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、
インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする請求項１に記載のバンドル制御システム。
【請求項４】
前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、
前記ＯＳＧｉ機器は、
前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする請求項２又は３に記載のバンドル制御システム。
【請求項５】
前記ＯＳＧｉ機器は、
前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成する報告生成手段と、
前記バンドル制御結果報告を前記管理システムに送信する送信手段と、を更に有し、
前記管理システムは、
前記通信ネットワークを介して前記バンドル制御結果報告を受信する受信手段と、
受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させる保存手段と、
を更に有することを特徴とする請求項１乃至４のいずれか１項に記載のバンドル制御システム。
【請求項６】
前記管理システムの取得手段は、
前記記憶手段から前記バンドル現状情報を読み出して、前記理想状態バンドルリストとの比較の結果差異がある場合に、報告要求指示を前記理想状態バンドルリストに含め、
前記ＯＳＧｉ機器の報告生成手段は、
バンドルが制御された場合、又は前記理想状態バンドルリストに前記報告要求指示が含まれている場合に、前記バンドル制御結果報告を生成することを特徴とする請求項５に記載のバンドル制御システム。
【請求項７】
通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信可能なバンドル制御システムで処理するバンドル制御方法において、
前記管理システムにより、
契約情報に基づいて生成された理想状態バンドルリストを前記ＯＳＧｉ機器の識別情報に対応付けて記憶手段に記憶しておくステップと、
前記通信ネットワークを介して前記ＯＳＧｉ機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得するステップと、
取得した当該理想状態バンドルリストを前記ＯＳＧｉ機器に送信するステップと、を有し、
前記ＯＳＧｉ機器により、
前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信するステップと、
バンドルの実行環境であるＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストを取得するステップと、
受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御するステップと、
を有することを特徴とするバンドル制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＯＳＧｉ技術においてバンドルを制御する技術に関する。
【背景技術】
【０００２】
現在、ソフトウェアのモジュール化を実現するミドルウェア技術の一つに、ＯＳＧｉ（Open Service Gateway Initiative）が存在している。ＯＳＧｉでは、バンドルというソフトウェアモジュールをセンタシステムから各ＯＳＧｉ機器に配信・ダウンロードすることによって、新たなサービスの追加や、ユーザ毎のカスタマイズ、バグへの対応等を容易に行うことが可能となっている。
【０００３】
ＯＳＧｉ機器の一例としては、サービスゲートウェイ、ルータ、ＡＶ機器、自動車、携帯電話、ＰＤＡ、ＰＣ、ネットワーク機器等が挙げられ、バンドルを実行するための実行環境であるＯＳＧｉフレームワークが実装されている。センタシステムから配信等されたバンドルは、各ＯＳＧｉ機器におけるそれぞれ固有機能（例えば、携帯電話であれば通信機能や電子メール機能等）や他のサービス機能を実現し、ＯＳＧｉフレームワーク上で起動・実行されることになる。
【０００４】
ここで、特許文献１には、ＳＧＷ（上記ＯＳＧｉ機器に対応）にインストールされたバンドル（プログラム動作状態リスト）が、管理システム（上記センタシステムに対応）で管理されているバンドル（プログラム理想動作状態リスト）に一致するか否かを確認する方法として、プログラム動作状態リストを管理システムに送信し、それら２つの動作状態リストを管理システム側で比較する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２１３４３８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、動作状態リストの比較処理や、更にはプログラム理想動作状態リストが示す動作状態に変更する（戻す）プログラム動作状態変更命令の生成処理を管理システム側で行うため、ＯＳＧｉ機器の増加に伴って管理システムの負荷が増加するという問題があった。すなわち、管理システムで管理可能なＯＳＧｉ機器の数が極端に制限されるという問題があった。
【０００７】
本発明は、上記課題を鑑みてなされたものであり、通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信するバンドル配信システムにおいて、管理システムにおける負荷増大を防止することを課題とする。
【課題を解決するための手段】
【０００８】
請求項１に記載の本発明は、通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信可能なバンドル制御システムにおいて、前記管理システムは、契約情報に基づいて生成された理想状態バンドルリストを前記ＯＳＧｉ機器の識別情報に対応付けて記憶しておく記憶手段と、前記通信ネットワークを介して前記ＯＳＧｉ機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得する取得手段と、取得した当該理想状態バンドルリストを前記ＯＳＧｉ機器に送信する送信手段と、を有し、前記ＯＳＧｉ機器は、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信する受信手段と、バンドルの実行環境であるＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストを取得する取得手段と、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御する制御手段と、を有することを特徴とする。
【０００９】
請求項２に記載の本発明は、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールして、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする。
【００１０】
請求項３に記載の本発明は、前記理想状態バンドルリストには、バンドルシンボリック名と、バンドルバージョンと、バンドル取得アドレスとが関連付けられたバンドル情報が記載され、前記動作中バンドルリストには、バンドルシンボリック名と、バンドルバージョンとが関連付けられたバンドル情報が記載されており、前記制御手段は、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記動作中バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報内のバンドル取得アドレスからバンドルをインストールし、前記動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が前記理想状態バンドルリストに含まれていないバンドル情報に対しては、当該バンドル情報のバンドルをアンインストールし、前記理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一としバンドルバージョンが異なるバンドル情報が前記動作中バンドルリストに含まれているバンドル情報に対しては、当該バンドル情報のバンドルを停止させた後に、バンドル取得アドレスからバンドルを取得して更新して、インストールされているバンドルのパッケージをリフレッシュした後に、未起動のバンドルを全て起動させることを特徴とする。
【００１１】
請求項４に記載の本発明は、前記理想状態バンドルリストのバンドル情報にバンドル取得アドレスが記載されていない代わりに、前記ＯＳＧｉ機器は、前記バンドルシンボリック名及び前記バンドルバージョンから前記バンドル取得アドレスを生成するアドレス生成手段を更に有することを特徴とする。
【００１２】
請求項５に記載の本発明は、前記ＯＳＧｉ機器が、前記バンドルを一つも制御しなかった場合であっても、現在動作中のバンドル情報をバンドル制御結果報告として生成する報告生成手段と、前記バンドル制御結果報告を前記管理システムに送信する送信手段と、を更に有し、前記管理システムは、前記通信ネットワークを介して前記バンドル制御結果報告を受信する受信手段と、受信した前記バンドル制御結果報告をバンドル現状情報として前記記憶手段に保存させる保存手段と、を更に有することを特徴とする。
【００１３】
請求項６に記載の本発明は、前記管理システムの取得手段が、前記記憶手段から前記バンドル現状情報を読み出して、前記理想状態バンドルリストとの比較の結果差異がある場合に、報告要求指示を前記理想状態バンドルリストに含め、前記ＯＳＧｉ機器の報告生成手段は、バンドルが制御された場合、又は前記理想状態バンドルリストに前記報告要求指示が含まれている場合に、前記バンドル制御結果報告を生成することを特徴とする。
【００１４】
請求項７に記載の本発明は、通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信可能なバンドル制御システムで処理するバンドル制御方法において、前記管理システムにより、契約情報に基づいて生成された理想状態バンドルリストを前記ＯＳＧｉ機器の識別情報に対応付けて記憶手段に記憶しておくステップと、前記通信ネットワークを介して前記ＯＳＧｉ機器から送信された識別情報を受け取り、当該識別情報に対応する理想状態バンドルリストを前記記憶手段から検索して取得するステップと、取得した当該理想状態バンドルリストを前記ＯＳＧｉ機器に送信するステップと、を有し、前記ＯＳＧｉ機器により、前記通信ネットワークを介して前記管理システムから送信された前記理想状態バンドルリストを受信するステップと、バンドルの実行環境であるＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストを取得するステップと、受信した前記理想状態バンドルリストと前記動作中バンドルリストとを比較し、当該比較の結果に基づいてバンドルを制御するステップと、を有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、通信ネットワークを介して管理システムからＯＳＧｉ機器にバンドルを配信するバンドル配信システムにおいて、管理システムにおける負荷増大を防止することができる。
【図面の簡単な説明】
【００１６】
【図１】実施例１に係るバンドル制御システムの機能ブロック構成を示す図である。
【図２】実施例１に係る理想状態バンドルリストの一例を示す図である。
【図３】実施例１に係るバンドル制御システムの処理フローを示す図である。
【図４】理想状態バンドルリストと動作中バンドルリストとの比較に基づくバンドルの制御処理例１を示す図である。
【図５】理想状態バンドルリストと動作中バンドルリストとの比較に基づくバンドルの制御処理例２を示す図である。
【図６】実施例２に係るバンドル制御システムの機能ブロック構成を示す図である。
【図７】実施例２に係る理想状態バンドルリストの一例を示す図である。
【図８】実施例３に係るバンドル制御システムの機能ブロック構成を示す図である。
【図９】実施例３に係るバンドル制御システムの処理フローを示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明を実施する４つの実施例（実施例１乃至実施例４）について図面を用いて説明する。
【実施例１】
【００１８】
最初に、実施例１に係るバンドル制御システムについて説明する。図１は、実施例１に係るバンドル制御システムの機能ブロック構成を示す図である。実施例１のバンドル制御システムは、バンドルを配信・管理可能な管理システム３と、通信ネットワーク１を介して管理システム３から配信されたバンドルやダウンロードしたバンドルを受信して実行可能なＯＳＧｉ端末５とで構成されている。以下、このバンドル制御システムの各構成装置の機能について個別具体的に説明すると共に、システム全体の処理フローについて説明する。
【００１９】
まず、管理システム３の機能について説明する。この管理システム３は、管理データベース部３０と、端末ＩＤ受信部３１と、ユーザＩＤ取得部３２と、理想状態バンドルリスト取得部３３と、理想状態バンドルリスト送信部３４とで構成されている。
【００２０】
管理データベース部３０は、ＯＳＧｉ端末５を識別する端末ＩＤとＯＳＧｉ端末５の利用ユーザのユーザＩＤとを結び付けた管理リストを記憶しておく機能を有している。また、ユーザが契約している契約情報に結び付けられたバンドルのリスト（理想状態バンドルリスト）を記憶しておく機能を有している。この理想状態バンドルリストは上記契約情報に基づいて予め生成されており、理想状態バンドルリストには、ユーザによって契約されたサービスを提供するためにＯＳＧｉ端末５で動作させなければならないバンドルのバンドル情報が、契約したユーザＩＤ毎に対応付けて記載されている。なお、実施例１におけるバンドル情報には、図２に示すように、バンドルシンボリック名（Budle Symbolic Name）と、バンドルバージョン（Bundle Version）と、バンドルを取得可能なＵＲＬが関連付けて記載されている。
【００２１】
なお、バンドルとは、ＯＳＧｉ技術におけるソフトウェアモジュールであり、ＯＳＧｉ端末５に実装されているＯＳＧｉフレームワーク上で複数のバンドルが組み合わされて実行（ダウンロード→インストール→実行）されることにより、そのＯＳＧｉ端末５で所定のサービスを提供可能にするものである。
【００２２】
端末ＩＤ受信部３１は、通信ネットワーク１を介してＯＳＧｉ端末５から送信された（送られた）端末ＩＤを受信する機能を有している。
【００２３】
ユーザＩＤ取得部３２は、管理データベース部３０から管理リストを読み出して、端末ＩＤ受信部３１で受信したＯＳＧｉ端末５の端末ＩＤに結び付けられたユーザＩＤを検索して取得する機能を有している。
【００２４】
理想状態バンドルリスト取得部３３は、ユーザＩＤ取得部３２で取得したユーザＩＤを受け取り、受け取ったユーザＩＤに対応する理想状態バンドルリストを管理データベース部３０から検索して取得する機能を有している。
【００２５】
理想状態バンドルリスト送信部３４は、理想状態バンドルリスト取得部３３で取得した理想状態バンドルリストをＯＳＧｉ端末５に送信する（返す）機能を有している。
【００２６】
次に、ＯＳＧｉ端末５の機能について説明する。このＯＳＧｉ端末５は、端末ＩＤ取得部５０と、端末ＩＤ送信部５１と、理想状態バンドルリスト受信部５２と、動作中バンドルリスト取得部５３と、バンドル制御部５４とで構成されている。
【００２７】
端末ＩＤ取得部５０は、ＯＳＧｉ端末５を識別する端末ＩＤを記憶部（図示せず）から読み出して取得する機能を有している。
【００２８】
端末ＩＤ送信部５１は、端末ＩＤ取得部５０で取得した端末ＩＤを管理システム３に送信する（送る）機能を有している。
【００２９】
理想状態バンドルリスト受信部５２は、通信ネットワーク１を介して管理システム３から送信された（返された）理想状態バンドルリストを受信する機能を有している。
【００３０】
動作中バンドルリスト取得部５３は、ＯＳＧｉフレームワーク上にインストールされているバンドルのリスト（動作中バンドルリスト）を取得する機能を有している。
【００３１】
バンドル制御部５４は、受信した理想状態バンドルリストと、取得した動作中バンドルリストとを比較して、その比較の結果に基づいてバンドルを制御（バンドルのインストール、アンインストール、起動、停止、更新等）する機能を有している。
【００３２】
なお、ＯＳＧｉ端末５とは、ＣＰＵ等のハードウェアやＯＳ（Operating System）から構成され、Ｊａｖａ（登録商標）バーチャルマシン上にバンドルの実行環境であるＯＳＧｉフレームワークが搭載されている。そして、そのＯＳＧｉフレームワーク上で各バンドルが制御（起動、停止、バンドル間サービス、セキュリティ制御、イベント処理等）されることにより、所定のサービスがユーザに提供されることになる。このようなＯＳＧｉ端末５の一例として、例えば、サービスゲートウェイ、ルータ、ＡＶ機器、自動車、携帯電話、ＰＤＡ、ＰＣ、ネットワーク機器を挙げることができる。
【００３３】
続いて、実施例１に係るバンドル制御システムの処理フローについて説明する。図３は、実施例１に係るバンドル制御システムの処理フローを示す図である。
【００３４】
最初に、ＯＳＧｉ端末５において、端末ＩＤ取得部５０が、記憶部（図１において図示せず）から端末ＩＤを取得し（Ｓａ１）、端末ＩＤ送信部５１が、取得した端末ＩＤを管理システムに送る（Ｓａ２）。
【００３５】
次に、管理システム３において、端末ＩＤ受信部３１が、ＯＳＧｉ端末５から送られた端末ＩＤを受信し（Ｓａ３）、ユーザＩＤ取得部３２が、受信した端末ＩＤに対応するユーザＩＤを管理データベース部３０に記憶されている管理リストから検索して取得する（Ｓａ４）。
【００３６】
そして、理想状態バンドルリスト取得部３３が、取得したユーザＩＤに対応する理想状態バンドルリストを管理データベース部３０から検索して取得して（Ｓａ５）、理想状態バンドルリスト送信部３４が、取得した理想状態バンドルリストをＯＳＧｉ端末５に返す（Ｓａ６）。
【００３７】
その後、ＯＳＧｉ端末５において、理想状態バンドルリスト受信部５２が、管理システム３から返された理想状態バンドルリストを受信する（Ｓａ７）。
【００３８】
一方、動作中バンドルリスト取得部５３は、ＯＳＧｉフレームワーク上にインストールされている動作中バンドルリストを取得する（Ｓａ８）。
【００３９】
その後、バンドル制御部５４が、理想状態バンドルリストと動作中バンドルリストとを比較して、その比較の結果に基づいてバンドルを制御する（Ｓａ９）。
【００４０】
なお、ＯＳＧｉ端末５が端末ＩＤを管理システム３に送り、管理システム３が理想状態バンドルリストを返す方法としては、例えば、ＨＴＴＰやＨＴＴＰＳプロトコルを使用して、端末ＩＤをＨＴＴＰ  ＰＯＳＴ等で管理システム３に伝え、その戻り値として理想状態バンドルリストを返す方法を利用することができる。
【００４１】
実施例１によれば、理想状態バンドルリストと動作中バンドルリストとを比較処理と、その比較の結果に基づくバンドル制御とをＯＳＧｉ端末５で実現するので、ＯＳＧｉ端末５が増加した場合であっても管理システム３における負荷増大を防止することが可能となる。すなわち、従来技術では、管理システム３において、理想状態バンドルリストと動作中バンドルリストとを比較し、その比較結果に応じたプログラム動作状態変更命令を生成する必要であったが、それら比較処理及び生成処理が不要となり、データベースに対する検索処理のみが主な処理になるので、管理システム３の処理負荷を低減することが可能となる。
【００４２】
続いて、上記構成及び処理フローを有するＯＳＧｉ端末５におけるバンドル制御部５４の２つの具体的な制御処理例（制御処理例１および制御処理例２）について説明する。
【００４３】
〔制御処理例１〕
理想状態バンドルリストには、ＯＳＧｉ端末上で動作しているべきバンドルに関するバンドル情報（但し、ユーザによる新規契約や解約、それに基づくバンドルの変更等により更新され得る）が含まれ、そのバンドル情報には、図２に示したように、バンドルシンボリック名と、バンドルバージョンと、ＵＲＬとが含まれている。
【００４４】
一方、動作中バンドルリストには、ＯＳＧｉ端末５のＯＳＧｉフレームワーク上にインストールされているバンドルのバンドル情報が含まれ、そのバンドル情報には、バンドルシンボリック名と、バンドルバージョンとが関連付けられて記載されて（含まれて）いる。
【００４５】
そこで、バンドル制御部５４は、理想状態バンドルリストに記載されているバンドル情報のバンドルのみが起動した状態となるよう、図４に示すように、以下の制御を行う。なお、図４に示す各バンドルリストのフォーマットは一例であってこれに限定されるものではない。一般的には、カンマ区切りやＸＭＬ文書等を用いることができる。
【００４６】
最初に、以下Ｓｂ１−１〜Ｓｂ１−３の処理を順不同で行う（Ｓｂ１）。なお、理想状態バンドルリスト又は動作中バンドルリストに含まれているバンドル情報の内容によっては、Ｓｂ１−１〜Ｓｂ１−３の全ての処理ではなく、例えば、Ｓｂ１−１のみ、Ｓｂ１−１及びＳｂ１−２のみ等、Ｓｂ１−１〜Ｓｂ１−３の各処理うちいずれか１つ以上の処理を行う。
【００４７】
まず、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、インストール処理・更新処理・アンインストール処理を行わない（Ｓｂ１−１）。
【００４８】
一方、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれていないバンドル情報に対しては、理想状態バンドルリストのバンドル情報内に指定されているＵＲＬからバンドルをインストールする（Ｓｂ１−２）。
【００４９】
一方、動作中バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が理想状態バンドルリストに含まれていないバンドル情報に対しては、そのバンドル情報のバンドルをアンインストールする（Ｓｂ１−３）。
【００５０】
その後、インストールされたバンドルのパッケージをリフレッシュする（Ｓｂ２）。例えば、ＯＳＧｉ仕様で定められたＰａｃｋａｇｅＡｄｍｉｎサービスのＡＰＩを利用することにより、パッケージのリフレッシュを行うことができる。
【００５１】
最後に、理想状態バンドルリストに含まれているバンドル情報のバンドルであって、ＯＳＧｉフレームワーク上にインストールされているバンドルのうち、未起動のバンドルを全て起動させる（Ｓｂ３）。
【００５２】
なお、前述したようにＳｂ１−１〜Ｓｂ１−３の各処理は順不同であるが、Ｓｂ１〜Ｓｂ３の各処理は、上記の順番（Ｓｂ１→Ｓｂ２→Ｓｂ３）で行うことが必要である。ＯＳＧｉでは、例えば、あるバンドルＡがＥｘｐｏｒｔするパッケージをバンドルＢがＩｍｐｏｒｔする必要がある場合、バンドルＢは、バンドルＡがインストールされて該当パッケージがＥｘｐｏｒｔされていなければ、バンドルステートをＲＥＳＯＬＶＥＤにすることができず、起動することができない。例えば、図４のバンドルシンボリック名１のバンドルがＥｘｐｏｒｔするパッケージをバンドルシンボリック名２のバンドルがＩｍｐｏｒｔする必要がある場合、後者のバンドルを前者よりも先にインストールして、前者のバンドルをインストールしない状態で後者のバンドルを起動しようとしても、後者のバンドルは起動することができない。よって、Ｓｂ３のバンドル起動処理は、Ｓｂ１の処理が全て終了した後に行う必要がある。
【００５３】
また、アンインストールしたバンドルシンボリック名３のバンドルの旧バージョンがＥｘｐｏｒｔしていたパッケージをバンドルシンボリック名１のバンドルがＩｍｐｏｒｔしていた場合、パッケージのリフレッシュを行わなければ、バンドルシンボリック名１のバンドルはアンインストールしたバンドルシンボリック名３のバンドルの旧バージョンがＥｘｐｏｒｔしていたパッケージを使用し続けることになる（これは、ＯＳＧｉの仕様に基づく）。よって、Ｓｂ３のバンドル起動処理前に、パッケージをリフレッシュする処理が必要となる。
【００５４】
従って、Ｓｂ１→Ｓｃ２→Ｓｂ３の順番で処理を行うことが必要となる。
【００５５】
〔制御処理例２〕
続いて、制御処理例１で説明した制御処理方法とは異なる制御処理例２について説明する。制御処理例２の場合であっても制御処理例１と同様に、バンドル制御部５４は、一連の処理の終了時点において、理想状態バンドルリストに記載されているバンドル情報のバンドルのみが起動した状態となるよう、図５に示すように、以下の制御を行う。
【００５６】
最初に、以下Ｓｃ１−１〜Ｓｃ１−４の処理を順不同で行う（Ｓｃ１）。なお、理想状態バンドルリスト又は動作中バンドルリストに含まれているバンドル情報の内容によっては、Ｓｃ１−１〜Ｓｃ１−４の全ての処理ではなく、例えば、Ｓｃ１−１のみ、Ｓｃ１−１及びＳｃ１−２のみ、Ｓｃ１−１〜Ｓｃ１−３のみ等、Ｓｃ１−１〜Ｓｃ１−４の各処理うちいずれか１つ以上の処理を行う。
【００５７】
まず、理想状態バンドルリストに含まれているバンドル情報のうち、バンドルシンボリック名及びバンドルバージョンを同一とするバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、インストール処理・更新処理・アンインストール処理を行わない（Ｓｃ１−１）。
【００５８】
一方、理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が動作中バンドルリストに含まれていないバンドル情報に対しては、理想状態バンドルリストのバンドル情報内に指定されているＵＲＬからバンドルをインストールする（Ｓｃ１−２）。
【００５９】
一方、動作中バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名を同一とするバンドル情報が理想状態バンドルリストに含まれていないバンドル情報に対しては、そのバンドル情報のバンドルをアンインストールする（Ｓｃ１−３）。
【００６０】
一方、理想状態バンドルリストに記載されているバンドル情報のうち、バンドルシンボリック名が同一であってバンドルバージョンが異なるバンドル情報が動作中バンドルリストに含まれているバンドル情報に対しては、動作中バンドルリストのバンドル情報のバンドルを停止させた後に、理想状態バンドルリストのバンドル情報内に指定されているＵＲＬから新しいバンドルをダウンロードして更新する（Ｓｃ１−４）。
【００６１】
その後、インストールされたバンドルのパッケージをリフレッシュする（Ｓｃ２）。
【００６２】
最後に、理想状態バンドルリストに含まれているバンドル情報のバンドルであって、ＯＳＧｉフレームワーク上にインストールされているバンドルのうち、未起動のバンドルを全て起動させる（Ｓｃ３）。
【００６３】
なお、制御処理例１で説明したのと同様の理由から、Ｓｃ１−１〜Ｓｃ１−４の各処理は順不同であるが、Ｓｃ１〜Ｓｃ３の各処理は、上記の順番（Ｓｃ１→Ｓｃ２→Ｓｃ３）で行うことが必要である。
【００６４】
制御処理例２におけるＳｃ１−４の処理に該当するバンドル情報に関し、制御処理例１では旧バージョンのバンドルをアンインストールして新バージョンのバンドルがインストールされたが、制御処理例２ではバンドルが更新されることになる。すなわち、ＯＳＧｉ仕様に従い、制御処理例１の場合には、該当バンドルのバンドルＩＤは変更されるが、制御処理例２の場合には、そのバンドルＩＤは変更されることはないという違いがある。また、ＢｕｎｄｌｅＣｏｎｔｅｘｔ＃ｇｅｔＤａｔａＦｉｌｅ（Ｓｔｒｉｎｇ）メソッドで返されるバンドル個別永続ストレージが、制御処理例１では新旧バンドル間で引き継がれないものの、制御処理例２では引き継がれるという違いもある。
【実施例２】
【００６５】
次に、実施例２に係るバンドル制御システムについて説明する。図６は、実施例２に係るバンドル制御システムの機能ブロック構成を示す図である。実施例２のバンドル制御システムは、実施例１におけるＯＳＧｉ端末５の構成のみが異なり、ＵＲＬ生成部５５を更に備えている。
【００６６】
ＵＲＬ生成部５５は、バンドルシンボリック名及びバンドルバージョンからバンドルを取得可能なＵＲＬを生成する機能を有している。一方、管理システム３の各部、及びＯＳＧｉ端末５の他の各部の機能については実施例１で説明したものと同様であるが、管理データベース部３０で記憶している理想状態バンドルリストのバンドル情報には、図７に示すように、バンドルシンボリック名およびバンドルバージョンのみが関連付けて記載され、バンドルを取得する際に必要となるＵＲＬについての記載がない。
【００６７】
そこで、ＵＲＬ生成部５５は、ＵＲＬを用いてバンドルをインストール又はダウンロードする必要がある場合（実施例１における制御処理例１のＳｂ１−２の処理や、制御処理例２のＳｃ１−２やＳｃ１−４の各処理の場合）に、バンドルシンボリック名及びバンドルバージョンからバンドルを取得可能なＵＲＬを生成し、バンドル制御部５４に返す機能を有している。例えば、予め決定されている文字列とバンドルシンボリック名とバンドルバージョンとを組み合わせることにより、ＵＲＬを生成する。具体的な一例としては、“http://www.acme.com/jar/”という文字列を事前に決定しておき、バンドルシンボリック名が“symbolicName”で、バンドルバージョンが“1.0.0”であった場合には、“http://www.acme.com/jar/symbolicName_1.0.0.jar”というＵＲＬを生成する。なお、この予め決定される文字列がＯＳＧｉ端末５にどのように与えられるかについては限定されない。
【００６８】
実施例２によれば、ＯＳＧｉ端末５に送信される理想状態バンドルリストにＵＲＬが含まれていないので、通信ネットワーク１を介して送信するデータ量が小さくなり、消費ネットワーク帯域や管理システム側での理想状態バンドルリストの生成処理やＯＳＧｉ端末側のパース処理の負荷を低減することが可能となる。
【実施例３】
【００６９】
次に、実施例３に係るバンドル制御システムについて説明する。実施例１や実施例２によれば、管理システム３の管理データベース部３０に登録されている契約情報等に基づいて、各ＯＳＧｉ端末５で動作するべき必要なバンドルをＯＳＧｉ端末５に配信し、起動させることが可能となる。しかし、管理システム３では、最終的にバンドル配信が成功したかどうかを把握することができない。そのため、実施例３では、ＯＳＧｉ端末５で実施したバンドルの制御結果を管理システム側で把握可能なシステムを提供する。
【００７０】
図８は、実施例３に係るバンドル制御システムの機能ブロック構成を示す図である。実施例３のバンドル制御システムは、実施例２のバンドル制御システムに対して、バンドル制御結果報告受信部３５と、バンドル制御結果報告保存部３６とを管理システム３に更に備え、バンドル制御結果報告生成部５６と、バンドル制御結果報告送信部５７とをＯＳＧｉ端末５に更に備えている。
【００７１】
バンドル制御結果報告生成部５６は、バンドル制御部５４でバンドルを制御したバンドル制御結果報告を、たとえ何らバンドル制御を行なっていない場合であっても生成する機能を有している。なお、生成されるバンドル制御結果報告には、ＯＳＧｉ端末５の端末ＩＤと、そのＯＳＧｉ端末５で動作中となっているバンドルの情報（バンドル現状情報）とが含まれている。
【００７２】
バンドル制御結果報告送信部５７は、バンドル制御結果報告生成部５６で生成されたバンドル制御結果報告を管理システム３に送信する機能を有している。
【００７３】
バンドル制御結果報告受信部３５は、通信ネットワーク１を介してＯＳＧｉ端末５から送信されたバンドル制御結果報告を受信する機能を有している。
【００７４】
バンドル制御結果報告保存部３６は、バンドル制御結果報告受信部３５で受信したＯＳＧｉ端末５でのバンドル制御結果報告を管理データベース部３０に登録する機能を有している。
【００７５】
続いて、実施例３に係るバンドル制御システムの処理フローについて説明する。図９は、実施例３に係るバンドル制御システムの処理フローを示す図である。
【００７６】
最初に、実施例１で説明したＳａ１〜Ｓａ８の処理と同様の処理を行い（Ｓｄ１）、ＯＳＧｉ端末５において、バンドル制御結果報告生成部５６が、バンドル制御部５４におけるバンドル制御に基づいてバンドル制御結果報告を生成し（Ｓｄ２）、バンドル制御結果報告送信部５７が、生成されたバンドル制御結果報告を管理システム３に送信する（Ｓｄ３）。
【００７７】
その後、管理システム３において、バンドル制御結果報告受信部３５が、ＯＳＧｉ端末５から送信されたバンドル制御結果報告を受信し（Ｓｄ４）、バンドル制御結果報告保存部３６が、受信したバンドル制御結果報告（ＯＳＧｉ端末５の端末ＩＤと、そのＯＳＧｉ端末５で動作中となっているバンドル現状情報とを含む）を管理データベース部３０に登録する（Ｓｄ５）。
【００７８】
ここで、通信ネットワーク１や管理システム３やＯＳＧｉ端末５は、常に正常に動作しているとは限らないと言える。例えば、ＯＳＧｉ端末５がバンドル制御結果報告を管理システム３に送信しようとした時点で通信ネットワーク１が切断されている可能性や、管理システム３がシステムダウンしている可能性がある。
【００７９】
バンドル制御部５４での処理において、何らかのバンドルの制御を行った場合のみ、バンドル制御結果報告を管理システム３に送信することも可能である。しかし、バンドル制御部５４が何らかのバンドル制御を終了した後に、上記のようなトラブルにより管理システム３の管理データベース部３０にバンドル制御結果報告が登録されなかった場合であって、後にそのトラブルの原因が取り除かれて正常動作が可能となったとしても、以降管理システム３の管理データベース部３０に登録されたバンドル制御結果報告は、永遠にＯＳＧｉ端末５の実情と異なる可能性がある。これは、再度一連の処理が行われたとしても、既にＯＳＧｉ端末５ではバンドル制御が成功しており、取得した理想状態バンドルリストと動作中バンドルリストとが一致しているため、何ら処理がされないため、バンドル制御結果報告が管理システム３に送信されないからである。
【００８０】
そこで、実施例３では、ＯＳＧｉ端末５のバンドル制御部５４で一つのバンドルも制御しなかった場合であっても、すなわち、理想状態バンドルリストと動作中バンドルリストとが一致している場合であっても、バンドル制御結果報告をＯＳＧｉ端末５から管理システム３に送信することにより、ＯＳＧｉ端末５でのバンドル制御結果を確実に管理システム側で把握することが可能となる。これにより、少なくとも再度一連の処理が行われて通信不全や管理システム３の停止等のトラブルが無ければ、管理システム３の管理データベース部３０にＯＳＧｉ端末上の最終的なバンドル状態が蓄積されることになる。このように、管理システム３の管理データベース部３０に最終的なバンドル状態が蓄積されていれば、別途端末ＩＤをキーとして管理データベース部３０に登録された報告済みバンドル現状情報を検索することにより、ＯＳＧｉ端末５における最終的なバンドル状態を把握するこが可能となる。つまり、ＯＳＧｉ端末５における最終的なバンドル状態を知るために、管理システム３から通信ネットワーク１を介してＯＳＧｉ端末５に対してバンドル状態の取得制御を改めて行う処理が不要となり、非常に有用である。
【実施例４】
【００８１】
次に、実施例４に係るバンドル制御システムについて説明する。実施例３に係るバンドル制御システムの機能ブロック構成は実施例３と同様であるが、管理システム３の理想状態バンドルリスト取得部３３と、ＯＳＧｉ端末５のバンドル制御結果報告生成部５６との機能が異なっている。
【００８２】
理想状態バンドルリスト取得部３３は、実施例１乃至実施例３では、ＯＳＧｉ端末５のユーザＩＤに対応する理想状態バンドルリストを管理データベース部３０から検索して取得する機能のみであったが、実施例４では、ＯＳＧｉ端末５から受け取った端末ＩＤをキーとして報告済みバンドル現状情報を管理データベース部３０から検索して取得し、理想状態バンドルリストとバンドル現状情報とを比較して、その比較の結果差異がある場合には、ＯＳＧｉ端末５からの報告が必要であることを示す要報告フラグの情報を理想状態バンドルリストに含める機能を更に有している。
【００８３】
また、バンドル制御結果報告生成部５６は、バンドル制御部５４で何らかのバンドルが制御された場合、又は管理システム３から受信した理想状態バンドルリストに要報告フラグが含まれている場合に、バンドル制御の後に、バンドル制御結果報告を生成する機能を更に有している。
【００８４】
実施例３では、ＯＳＧｉ端末５のバンドル制御部５４において、理想状態バンドルリストと動作中バンドルリストとが一致しているために一つのバンドルもインストール処理・更新処理・アンインストール処理を行わなかった場合であっても、バンドル制御結果報告がＯＳＧｉ端末５から管理システム３に送信されるが、実施例４では送信されることはない。これにより、管理システム３に送信されるバンドル制御結果報告の数が減少し、管理システム３における管理データベース部３０への登録処理が低減され、通信ネットワーク消費帯域を減らすことが可能となる。
【００８５】
一方、実施例４の場合には、実施例３の場合と比較して、理想状態バンドルリストの生成処理において、管理データベース部３０からバンドル現状情報を読み込む処理と、理想状態バンドルリストとの比較処理とが増加し、更に理想状態バンドルリストにフラグ情報が付与されることによる通信ネットワーク消費帯域の増加が考えられる。しかしながら、通常、データベースからの読み込み処理よりも書込み処理（上記登録処理）の方が重い処理であり、管理システム３からＯＳＧｉ端末５に送信される理想状態バンドルリストにおいて増加したフラグ情報が消費するネットワーク帯域よりも、ＯＳＧｉ端末５から管理システム３に送信されるバンドル制御結果報告が消費するネットワーク帯域の方が大きいことから、総合的に実施例４の方が管理システム３の処理負荷やネットワーク消費帯域を少なくすることが可能となる。
【００８６】
最後に、実施例１乃至実施例４のバンドル制御システムを構成している管理システム３及びＯＳＧｉ端末５は、ＣＰＵ等の演算処理装置やメモリ等の記憶装置を備えたコンピュータにより構成可能なものであり、各機能処理はプログラムによって実行される。また、このようなプログラムは記憶装置に記憶されており、記録媒体に記録することも、ネットワークを通して提供することも可能である。
【符号の説明】
【００８７】
１…通信ネットワーク
３…管理システム
３０…管理データベース部
３１…端末ＩＤ受信部
３２…ユーザＩＤ取得部
３３…理想状態バンドルリスト取得部
３４…理想状態バンドルリスト送信部
３５…バンドル制御結果報告受信部
３６…バンドル制御結果報告保存部
５…ＯＳＧｉ端末
５０…端末ＩＤ取得部
５１…端末ＩＤ送信部
５２…理想状態バンドルリスト受信部
５３…動作中バンドルリスト取得部
５４…バンドル制御部
５５…ＵＲＬ生成部
５６…バンドル制御結果報告生成部
５７…バンドル制御結果報告送信部
Ｓａ１〜Ｓａ８、Ｓｂ１〜Ｓｂ３、Ｓｃ１〜Ｓｃ３、Ｓｄ１〜Ｓｄ５…ステップ
【図１】
2011059926.tif 000003
【図２】
2011059926.tif 000004
【図３】
2011059926.tif 000005
【図４】
2011059926.tif 000006
【図５】
2011059926.tif 000007
【図６】
2011059926.tif 000008
【図７】
2011059926.tif 000009
【図８】
2011059926.tif 000010
【図９】
2011059926.tif 000011