(57)【要約】      （修正有）【課題】サービスシステムおよび関連した通信機器のために、ワークフローをマネジメントオブジェクトツリーに変換する方法を提供する。【解決手段】クライアントがマネジメントオブジェクトツリーにしたがってワークフローを実行するために、前記ワークフローの第１ステップを前記マネジメントオブジェクトツリーの第１ステップサブツリーに変換するステップを含む。【選択図】図３
2012044672.tif 000002
【特許請求の範囲】
【請求項１】
デバイスマネジメント（Device Management；ＤＭ）のためのワークフローを、サービスシステムのサーバおよびクライアントのためのマネジメントオブジェクトツリーに変換する方法であって、
前記クライアントが前記マネジメントオブジェクトツリーにしたがって前記ワークフローを実行するために、前記ワークフローの第１ステップを前記マネジメントオブジェクトツリーの第１ステップサブツリーに変換するステップを含むことを特徴とする方法。
【請求項２】
前記第１ステップサブツリーは、前記第１ステップのユニークＩＤを記憶する第１ノードと、前記第１ステップに関連するオペレーション情報を記憶する第２ノードとを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記クライアントは、前記第１ステップサブツリーに含まれる前記オペレーション情報にしたがって、前記第１ステップを実行することを特徴とする請求項２に記載の方法。
【請求項４】
前記第２ノードはオペレーションサブツリーへマップし、
前記オペレーションサブツリーは、前記オペレーション情報のユニークＩＤを記憶する第１オペレーションノードと、前記オペレーション情報を記憶する第２オペレーションノードとを含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記クライアントが前記第１ステップを実行した後に、前記ワークフローの第２ステップを実行することが必要である場合、前記第２ステップを前記マネジメントオブジェクトツリーの第２ステップサブツリーに変換するステップをさらに含み、
前記第２ステップサブツリーは、前記第２ステップのユニークＩＤを記憶する第１ノードと、前記第２ステップに関連するオペレーション情報を記憶する第２ノードとを含むことを特徴とする請求項２に記載の方法。
【請求項６】
前記第１ステップサブツリーは、前記第２ステップのユニークＩＤを記憶する第３ノードと、前記第１ステップに対応する条件情報を記憶する第４ノードとをさらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記条件情報が適用されない場合、前記クライアントは前記第２ステップのユニークＩＤにしたがって前記第２ステップを配置し、実行することを特徴とする請求項６に記載の方法。
【請求項８】
前記クライアントが前記第１ステップを実行した後、前記条件情報で構成される少なくとも１つの条件を満たしていると判定した場合に、前記条件情報が適用されることを特徴とする請求項７に記載の方法。
【請求項９】
前記クライアントは、前記第２ステップサブツリーに含まれるオペレーション情報を実行することによって、前記第２ステップを実行することを特徴とする請求項６に記載の方法。
【請求項１０】
実行される初期ステップを前記クライアントに指示するための、前記マネジメントオブジェクトツリーにおけるノードを生成するステップをさらに含み、
前記クライアントは、前記ワークフローの実行を開始する前に、前記ノードを最初に検査することを特徴とする請求項１に記載の方法。
【請求項１１】
前記マネジメントオブジェクトツリーにしたがって、前記クライアントが前記ワークフローを実行するために、前記マネジメントオブジェクトツリーを前記サービスシステムの前記クライアントに送信するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記サーバおよび前記クライアントは、オープン・モバイル・アライアンス（ＯＭＡ）によって開発されたソフトウェアアンドアプリケーションコントロール・マネジメントオブジェクト（ＳＡＣＭＯ）に準拠していることを特徴とする請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスシステムおよび関連した通信機器で使われる方法に関するものである。より具体的には、サービスシステムおよび関連した通信機器のために、ワークフローをマネジメントオブジェクトツリーに変換する方法に関するものである。
【背景技術】
【０００２】
〔関連出願の相互参照〕
本出願は、「ワークフローをマネジメントオブジェクトツリーに変換する方法」と題されて２０１０年８月２２日に出願された、米国特許仮出願６１／３７５，８６２号の利益を享受するものであり、その内容は参照によって本明細書に組み込まれる。
【０００３】
〔背景技術〕
オープン・モバイル・アライアンス（Open Mobile Alliance; ＯＭＡ）は、携帯電話サービスがユーザのニーズに合致するように、ＯＭＡ仕様を策定するために設立された。ＯＭＡ仕様は、地理的エリア（例えば国々）、オペレータ（operators）、サービスプロバイダ、ネットワーク、オペレーティングシステム、および携帯機器を超えて相互に運用可能な携帯電話サービスを提供することを目的としている。より詳細には、ユーザは特定のオペレータやサービスプロバイダの制約を受けることなく、ＯＭＡ仕様に準拠した携帯電話サービスを利用できる。また、ＯＭＡ仕様に準拠した携帯電話サービスは、基幹となるシステムを問わない（bearer agnostic）。すなわち、携帯電話サービスを担うシステムは、ＧＳＭ、ＥＤＧＥ、またはＧＰＲＳといった第２世代（２Ｇ）携帯電話システム、第３世代（３Ｇ）携帯電話システム、およびＵＭＴＳ、ＬＴＥ、ＬＴＥアドバンスド（LTE-Advanced）といった携帯電話システムを超えたものであってもよい。また、様々な携帯機器で動作するＷｉｎｄｏｗｓ（登録商標）、Ａｎｄｒｏｉｄ（登録商標）、またはＬｉｎｕｘ（登録商標）といったオペレーティングシステムの上で、当該携帯電話サービスを実行できる。したがって、ＯＭＡ仕様に準拠した機器または携帯電話サービスを提供する産業は、携帯電話サービスの相互運用性によって大きく成長する市場から恩恵を受けられる。さらに、ＯＭＡ仕様に準拠した機器や携帯電話サービスを使うユーザは、携帯電話サービスの相互運用性により、より良い体験を得ることもできる。
【０００４】
ＯＭＡデバイスマネジメント（Device Management；ＤＭ）要件では、ＯＭＡ仕様に準拠したＤＭプロトコルを使うことで、１つまたは複数のＤＭクライアント（例えば携帯機器）を管理可能な公認の法人として、マネジメントオーソリティ（Management Authority；ＭＡ）が定義されている。また、ＯＭＡをサポートするシステムが普及するにしたがって、ＭＡはＤＭクライアントを直接管理してもよいし、ＭＡは１つまたは複数のＤＭサーバを介してＤＭクライアントを管理してもよい。すなわち、ＤＭクライアントは、１つまたは複数のＤＭサーバによって実際に管理されている。より詳細には、ＤＭプロトコルは、パケットまたはメッセージがＤＭサーバとＤＭクライアントとの間で交換されることに基づく方法を定義する。また、ＤＭプロトコルは、ＤＭクライアントがコマンド、ステータス、またはＤＭサーバへのレポートをフィードバック可能な方法を定義する。さらに、ＤＭプロトコルを使う場合、ＤＭクライアントにおけるマネジメントオブジェクトを通して、ＤＭサーバはＤＭクライアントを管理する。マネジメントオブジェクトは、１つの整数のように小さくてもよく、１つの映像のように大きくてもよい。また、ソフトウェアコンポーネント・マネジメントオブジェクト（Software Component Management Object；ＳＣＯＭＯ）、ソフトウェアアンドアプリケーションコントロール・マネジメントオブジェクト（Software and Application Control Management Object；ＳＡＣＭＯ）、またはファイアウェアアップデータ・マネジメントオブジェクト（Firmware Update Management Object；ＦＵＭＯ）のように、マネジメントオブジェクトはＤＭプロトコルにしたがっていてもよい。
【０００５】
一般に、ＤＭのためのワークフロー（workflow）は、複数のＤＭオペレーション（DM operations）を含み、特定の目的のためにＤＭクライアントによって実行される。本来、ワークフロー（例えばスクリプト）のＤＭオペレーションを（例えば条件付きで）実行するために、ＤＭサーバがＤＭクライアントを制御することは非効率である。また、ＤＭオペレーションは、マネジメントオブジェクトにおける他のタイプのオペレーション、プロセス、コマンド、またはアクションであってもよい。実行されるワークフローのＤＭオペレーションを指示するために、ＤＭサーバはＤＭコマンドをＤＭクライアントに送信しなければならない。ＤＭクライアントは、ＤＭサーバにＤＭオペレーションの結果を返す。これにより、ＤＭサーバは、当該ワークフローの次のオペレーションのために、他のＤＭコマンドをＤＭクライアントに送信できる。ここで、ワークフローが完了する前に、ＤＭクライアントとＤＭサーバとの間で大量の送受信が行われ、これがワークフローの実行を非効率にし、時間を浪費させる。
【０００６】
この問題を扱うために、ＤＭクライアントとＤＭサーバとの間の通信量を減らすＳＡＣＭＯが提案された。ＳＡＣＭＯは、ＤＭクライアントにおいて、ソフトウェアおよびアプリケーションを制御するために遠隔オペレーションを可能にすることを目的とする。ＳＡＣＭＯは、ワークフローのようなマネジメントアクションを処理する能力、または既存のマネジメントオブジェクトを利用するソフトウェアおよびアプリケーションのデバイスマネジメントの能力を、ＤＭクライアントに付与する。また、ＳＡＣＭＯにしたがって定義されたマネジメントオブジェクトツリー（management object tree）は、ＤＭサーバからの指示のないワークフローを実行するのに必要となるパラメータや動作機能を設定するために使われることになる。したがって、あるステップが終了した後は、ＤＭクライアントは条件にしたがって次ステップを決定できる。言い換えれば、ワークフローを設定するために、ＤＭサーバはマネジメントオブジェクトツリーをＤＭクライアントに送信し、ワークフローが完了するかエラーが発生するまで、ＤＭクライアントはマネジメントオブジェクトツリーにしたがってワークフローを実行する。しかし、マネジメントオブジェクトツリーを受信した後で、ＤＭクライアントがワークフローを適切に実行できるように、ワークフローをマネジメントオブジェクトツリーへ適切かつ効率的に変換する方法は、未だ明らかでない。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Open Mobile Alliance，”Software and Application Control Management Object Requirements (Draft Version 1.0)”，OMA-RD-SACMO-V1_0-20100601-D，1 June 2010
【非特許文献２】Open Mobile Alliance，”SACMO Architecture (Draft Version 1.0)”，OMA-AD-SACMO-V1_0-20100810-D，10 Aug 2010
【発明の概要】
【発明が解決しようとする課題】
【０００８】
したがって、上記の問題を解決するため、ワークフローをマネジメントオブジェクトツリーへ変換する方法が開示される。
【課題を解決するための手段】
【０００９】
サービスシステムのサーバおよびクライアントのための、ワークフローをマネジメントオブジェクトツリーに変換する方法が開示される。この方法は、前記クライアントが前記マネジメントオブジェクトツリーにしたがって前記ワークフローを実行するために、前記ワークフローの第１ステップを前記マネジメントオブジェクトツリーの第１ステップサブツリーに変換するステップを含む。
【００１０】
本発明の前述したおよび他の目的は、さまざまな図面で示される望ましい実施の形態についての、以下の詳細な記載を読むことにより、当業者に明らかになるだろう。
【図面の簡単な説明】
【００１１】
【図１】本開示に係るサービスシステムの一例の概略図である。
【図２】本開示に係る通信機器の一例の概略図である。
【図３】本開示に係る処理の一例のフローチャートである。
【図４】本発明に係るワークフローの概略図である。
【図５】本発明に係るマネジメントオブジェクトツリーの概略図である。
【図６】本発明に係る一ステップサブツリーのオペレーションサブツリーの概略図である。
【発明を実施するための形態】
【００１２】
図１を参照されたい。図１は、本開示の一例に係るサービスシステム１０の概略図である。サービスシステム１０は、オープン・モバイル・アライアンス（ＯＭＡ）・デバイスマネジメント（ＤＭ）プロトコルをサポートしており、サーバと複数のＤＭクライアント（以下では略して「クライアント」という）とから簡潔に構成される。また、サーバおよび複数のＤＭクライアントは、ソフトウェアアンドアプリケーションコントロール・マネジメントオブジェクト（ＳＡＣＭＯ）に準拠している。したがって、サーバが、複数のステップ（例えばプロセスまたはコマンド）を構成するワークフロー（workflow）を実行するようにクライアントに要求する場合、サーバは、当該ワークフローをマネジメントオブジェクトツリー（management object tree）へ変換し、当該マネジメントオブジェクトツリーをクライアントへ送信する。クライアントはマネジメントオブジェクトツリーを受信すると、当該マネジメントオブジェクトツリーにしたがってワークフローを実行する。
【００１３】
図２を参照されたい。図２は、本開示の一例に係る通信機器２０の概略図である。通信機器２０は、図１に示されるクライアントまたはサーバになり得るが、それには限定されない。通信機器２０は、マイクロプロセッサまたは特定用途向け集積回路（Application Specific Integrated Circuit；ＡＳＩＣ）のようなプロセッサ２００、記憶ユニット２１０、および通信インターフェースユニット２２０を含んでいてもよい。記憶ユニット２１０は、プログラムコード２１４を記憶でき、プロセッサ２００がアクセスできるものであれば、いかなるデータ記憶装置であってもよい。記憶ユニット２１０の例には、加入者識別モジュール（subscriber identity module；ＳＩＭ）、読み出し専用メモリ（read-only memory；ＲＯＭ）、フラッシュメモリ、ランダムアクセスメモリ（random-access memory；ＲＡＭ）、ＣＤ−ＲＯＭ／ＤＶＤ−ＲＯＭ、磁気テープ、ハードディスク、および光データ記憶装置が含まれるが、これに限られない。通信インターフェースユニット２２０は送受信機（transceiver）が望ましく、プロセッサ２００の処理結果にしたがってサーバと信号を交換できる。
【００１４】
図３を参照されたい。図３は、本開示の一例に係る処理３０のフローチャートである。処理３０は、図１で示されるサービスシステム１０のサーバおよびクライアントのためのワークフローを、マネジメントオブジェクトツリーに変換するために利用される。これにより、クライアントは、サーバから受信したマネジメントオブジェクトツリーにしたがってワークフローを実行できる。処理３０は、プログラムコード２１４としてコンパイルされてよく、以下のステップを含む。
【００１５】
ステップ３００：開始。
【００１６】
ステップ３０２：クライアントがマネジメントオブジェクトツリーにしたがってワークフローを実行するために、前記ワークフローの第１ステップを前記マネジメントオブジェクトツリーの第１ステップサブツリーに変換する。
【００１７】
ステップ３０４：終了。
【００１８】
処理３０によれば、サーバは、ワークフローの第１ステップをマネジメントオブジェクトツリーの第１ステップサブツリーに変換する。すなわち、処理３０は、マネジメントオブジェクトツリーが当該ワークフローと等価になるまで、ワークフローの各ステップを、マネジメントオブジェクトツリーの対応するステップサブツリー（step subtree）に変換し続ける。そして、サーバはマネジメントオブジェクトツリーをクライアントに送信する。これにより、クライアントは、当該マネジメントオブジェクトツリーにしたがってワークフローを実行できる。したがって、各ステップに対する指示を必要とすることなく、ワークフローに含まれる必要なステップを、クライアントは実行できる。言い換えれば、実行したステップについてのレポートをサーバへ返す必要も、サーバから次ステップの指示を待つ必要もない。これにより、レポートを返したり指示を送受信したりするためのリソースを節約できるだけでなく、これによる遅延を回避することもできる。
【００１９】
この例として、図４を参照されたい。図４は、本発明に係るワークフロー４０の概略図である。ワークフロー４０によれば、クライアントはステップＳ＿Ａを実行した後、対応する結果を出力するか、または対応する状態へと移行する。そして、クライアントは、当該結果または当該状態が条件ＣＤ＿Ｄを満たすか否かを判定する。当該結果または当該状態が条件ＣＤ＿Ｄを満たす場合、クライアントは続けてステップＳ＿Ｂを実行する。そうでない場合、クライアントはステップＳ＿Ｃを実行する。ここで、本発明を示すために、ワークフロー４０においては、４つのステップと１つの条件しか使われていないことに注意する。実際は、より多くのステップおよび条件がワークフロー４０に含まれ、クライアントはステップの実行後に複数の条件を検査する必要があるが、ここではこれに限られない。例えば、クライアントはステップＳ＿Ａの実行後に、結果および状態の両方を検査する必要がある場合もある。
【００２０】
処理３０によれば、ワークフロー４０は、図５に示されるマネジメントオブジェクトツリー５０に変換される。より詳細には、ステップＳ＿Ａ、Ｓ＿Ｂ、およびＳ＿Ｃは、それぞれステップサブツリーＳＴ＿Ａ、ＳＴ＿Ｂ、およびＳＴ＿Ｃに変換される。また、各サブツリーは２つのノードを含む。すなわち、第１ノードおよび第２ノードである。サブツリーＳＴ＿Ａ、ＳＴ＿Ｂ、およびＳＴ＿Ｃの第１ノードは、ステップＳ＿Ａ、Ｓ＿Ｂ、およびＳ＿ＣのユニークＩＤであるＩＤ＿Ａ、ＩＤ＿Ｂ、およびＩＤ＿Ｃをそれぞれ記憶する。ユニークＩＤは、それぞれのサブツリーを識別するために使われる。サブツリーＳＴ＿Ａ、ＳＴ＿Ｂ、およびＳＴ＿Ｃの第２ノードは、ステップＳ＿Ａ、Ｓ＿Ｂ、およびＳ＿Ｃのオペレーション情報（operation information）ＯＩ＿Ａ、ＯＩ＿Ｂ、およびＯＩ＿Ｃをそれぞれ記憶する。オペレーション情報はクライアントに実行される情報を含み、マネジメントオブジェクトを示すＵＲＬパスや、１つまたは複数のテキスト記述オペレーションであってもよいが、これに限られない。
【００２１】
また、第２ノードは、オペレーション情報のユニークＩＤを記憶する第１のオペレーションノードと、オペレーション情報を記憶する第２のオペレーションノードとを含むオペレーションサブツリー（operation subtree）に、マップしてもよい。この例として、図６を参照されたい。図６は、本発明に係るステップサブツリーＳＴ＿Ｂのオペレーションサブツリーの概略図である。図６において、サブツリーＳＴ＿Ｂの第２ノードは、第１のオペレーションノードおよび第２のオペレーションノードをさらに含むオペレーションサブツリーＳＴＯ＿Ｂにマップする。当該第１のオペレーションノードは、オペレーション情報ＯＩ＿ＢのユニークＩＤであるＩＤＯ＿Ｂを含み、当該第２のオペレーションノードは、オペレーション情報ＯＩ＿Ｂを含む。
【００２２】
また、クライアントは、マネジメントオブジェクトツリー５０を受信した後、どのステップを最初に実行するかについて知る必要があるため、ユニークＩＤとしてＩＤ＿Ａを含むノードＮＤ＿ｉが、マネジメントオブジェクトツリー５０に生成される。クライアントは、マネジメントオブジェクトツリー５０にしたがってワークフロー４０の実行を開始する前に、実行される初期ステップ（例えばステップＳ＿Ａ）を指示するノードＮＤ＿ｉを最初に検査する。
【００２３】
一方で、クライアントがステップＳ＿Ａを実行した後で、後続するステップがあるため、サブツリーＳＴ＿Ａは、第３および第４ノードをさらに含む。ここで、各第３ノードは、第４ノードと対をなしている。より詳細には、サブツリーＳＴ＿Ａの第３ノードは、ステップＳ＿Ａを実行した後で実行されるステップのユニークＩＤを含む。サブツリーＳＴ＿Ａの第４ノードは、条件ＣＤ＿Ｄに対応する条件を含む。クライアントは、条件を最初に検査することにより、次ステップを決定する。したがって、クライアントはステップＳ＿Ａを実行した後、第４ノードに含まれる条件を満たしているか否かを判定する。条件を満たしている場合、クライアントは対応する第３ノードに含まれるユニークＩＤにしたがって、次ステップを配置し、実行する。次ステップを決定するために、第４ノードに含まれる条件がクライアントに使われ、第４ノードに含まれる条件の種類や数は、これに限られないことに注意する。例えば、第４ノードは複数の条件を含んでもよく、第４ノードの全ての条件が満たされた場合にのみ、クライアントは対応する第３ノードに含まれるユニークＩＤにしたがって次ステップを配置し、実行する。
【００２４】
したがって、処理３０および上記説明によれば、ワークフローはマネジメントオブジェクトツリーへ適切かつ効率的に変換される。これにより、クライアントはサーバからマネジメントオブジェクトツリーを受信した後、ワークフローを正しく実行できる。
【００２５】
提案されたステップを含む処理の上述のステップは、ハードウェア、ハードウェアデバイスおよびコンピュータ装置の組み合わせとして知られるファームウェア、およびハードウェアデバイスまたは電気的システムにおける読み出し専用のソフトウェアとして記憶されたデータによっても実現され得る。ハードウェアの例には、マイクロ回路、マイクロチップ、またはシリコンチップとして知られるアナログ、デジタル、およびこれらを組み合わせた回路が含まれる。電気的システムの例には、システムオンチップ（system on chip；ＳＯＣ）、システムインパッケージ（system in package；ＳｉＰ）、コンピュータオンモジュール（computer on module；ＣＯＭ）、および通信機器２０が含まれる。
【００２６】
結論として、サービスシステムおよび関連した通信機器のための、ワークフローをマネジメントオブジェクトツリーへ変換する方法が開示された。マネジメントオブジェクトツリーに係るワークフローを実行する場合、クライアントは次ステップのためにサーバから指示を要求せず、ワークフローが完了するか、またはエラーが発生した後に、単にサーバへ最終結果を返すだけである。したがって、指示を要求して送受信するためのリソースを節約できるだけでなく、これによる遅延も回避できる。
【００２７】
当業者には、本発明の開示を元に、本装置および方法の多くの変形例および変更例が可能であることが容易に分かるであろう。したがって、上記開示は、添付の特許請求の範囲によってのみ限定されるものと解釈しなければならない。
【図１】
2012044672.tif 000003
【図２】
2012044672.tif 000004
【図３】
2012044672.tif 000005
【図４】
2012044672.tif 000006
【図５】
2012044672.tif 000007
【図６】
2012044672.tif 000008