(57)【要約】【課題】サービスの連携中に一部のサービスコンポーネントをより適切なものに切換え継続することを可能とするサービス切換継続方法を提供する。【解決手段】サービス連携システム１００は、ネットワーク１とサービス連携装置２と、オントロジＤＢ装置４と、サービスコンポーネント提供装置５と、サービスコンポーネント情報ＤＢ装置６と、サービスシナリオＤＢ装置７と、ユーザコンテキスト・ポリシＤＢ装置８と、ユーザ端末装置９とを備える。サービスを連携するサービス連携装置２は、サービス連携処理中に、サービスコンポーネントの再検出、再選択、サービスコンポーネントの切換の処理を行い、サービス連携を行う。【選択図】図１
2008269470.tif 000002
【特許請求の範囲】
【請求項１】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス切換継続方法であって、
前記サービス連携装置が、
前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続することにより、サービスコンポーネントの候補の検出結果を更新する検出継続ステップと、
検出された前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続することにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択継続ステップと、
選択された前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続することにより、前記インタフェース情報を更新するインタフェース情報取得継続ステップと、
実行対象の前記サービスコンポーネントを前記選択継続ステップにおいて更新された前記サービスコンポーネントに切り換えるサービスコンポーネント切換ステップ
を含むことを特徴とするサービス切換継続方法。
【請求項２】
前記サービスコンポーネント検出手段において、前記サービスコンポーネントの候補の検出処理を継続することとして設定されている場合に、前記検出継続ステップの処理を行い、
前記サービスコンポーネント選択手段において、実行対象の前記サービスコンポーネントの選択処理を継続することとして設定されている場合に、前記選択継続ステップの処理を行い、
前記サービスコンポーネント実行・連携手段において、前記インタフェース情報の取得処理を継続することとして設定されている場合に、前記インタフェース情報取得継続ステップの処理を行う
ことを特徴とする請求項１に記載のサービス切換継続方法。
【請求項３】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス切換継続方法であって、
前記サービス連携装置の前記サービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、
前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動ステップと、
前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動ステップと
を含む特徴とするサービス切換継続方法。
【請求項４】
前記サービスコンポーネント提供装置から受信するサービスコンポーネント実行結果としての応答情報に基づいて、前記サービスコンポーネントの検出条件を設定し、当該検出条件に基づき、前記サービスコンポーネントを検出する条件付検出起動ステップ、あるいは、前記サービスコンポーネントの選択条件を設定し、当該選択条件に基づき、前記サービスコンポーネントを選択する条件付選択起動ステップのいずれかを行うステップと、
を含むことを特徴とする請求項１から３のいずれかに記載のサービス切換継続方法。
【請求項５】
前記サービスコンポーネント切換ステップは、
パラメータ数の不一致が生じた場合、ユーザが利用するユーザ端末装置へパラメータ数の不一致を示す通知を送信する
ことを特徴とする請求項１から４のいずれかに記載のサービス切換継続方法。
【請求項６】
前記サービスコンポーネント切換ステップは、
パラメータ型の不一致が生じた場合、自動キャストする
ことを特徴とする請求項１から５のいずれかに記載のサービス切換継続方法。
【請求項７】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおける、前記サービス連携装置であって、
前記サービスコンポーネント検出手段に、前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続させることにより、サービスコンポーネントの候補の検出結果を更新する検出段階更新継続手段と、
前記サービスコンポーネント選択手段に、前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続させることにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択段階更新継続手段と、
前記サービスコンポーネント実行・連携手段に、前記サービスコンポーネント選択手段が選択する実行対象の前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続させることにより、前記インタフェース情報を更新し、実行対象の前記サービスコンポーネントを、選択段階更新継続手段によってサービスコンポーネント選択手段が更新する前記サービスコンポーネントに切り換えるサービスコンポーネント切換手段と
を備えることを特徴とするサービス連携装置。
【請求項８】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおける、前記サービス連携装置であって、
前記サービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、
前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動手段と、
前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動手段と
を備えることを特徴とするサービス連携装置。
【請求項９】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス連携装置のコンピュータに、
前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続することにより、サービスコンポーネントの候補の検出結果を更新する検出継続ステップと、
検出された前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続することにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択継続ステップと、
選択された前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続することにより、前記インタフェース情報を更新するインタフェース情報取得継続ステップと、
実行対象の前記サービスコンポーネントを前記選択継続ステップにおいて更新された前記サービスコンポーネントに切り換えるサービスコンポーネント切換ステップ
を実行させることを特徴とするサービス切換継続プログラム。
【請求項１０】
サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス連携装置のコンピュータに、
前記サービス連携装置のサービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、
前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動ステップと、
前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動ステップと
を実行させることを特徴とするサービス切換継続プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、主にサービス連携に関わるサービス切換継続方法、サービス連携装置、及び、サービス切換継続プログラムに関する。
【背景技術】
【０００２】
従来のサービス連携に関わる技術としては、個々のＷＳ（Web Service）を連携させるときに用いるＢＰＥＬ（Business Process Execution Language for Web Services）（例えば、非特許文献１）がある。本ＢＰＥＬは、複数のＷＳを順に呼び出し実行する手順を一連のビジネスの流れとして記述するための言語である。
これにより、「注文を受け付ける」「在庫を確認する」といった一連のビジネス・プロセスのなかで「いつ」「どのような条件のときに」「どのＷＳを呼び出すか」を定義することが可能になる。
【０００３】
また、他のサービス連携に関わる技術として、ネットワーク上のサービス機能要素であるサービスコンポーネントをユーザの状況に応じて連携することで、ユーザに適切なサービスを提供する技術がある。この技術は、サービスコンポーネントの機能動作（オペレーション）をメタデータ情報（オペレーションメタデータ）を用いて抽象的に記述することにより、インタフェースは異なるがオペレーションが同等である、サービスコンポーネントのオペレーションメタデータを利用対象のサービスコンポーネントの候補として幅広く検出することが可能となる。そして、検出した候補の中から利用するサービスコンポーネントのオペレーションメタデータを選択し、選択したサービスコンポーネントのオペレーションメタデータとオペレーションのインタフェース情報間のマッピング情報とに基づいて、オペレーションのインタフェース情報を取得し、連携する技術である。
【０００４】
このオペレーションメタデータの記述には、例えば、非特許文献２に示されるＯＷＬ−Ｓ（Web Ontology Language for Services）が適用される。ＯＷＬ−Ｓは、オントロジの記述として、プロファイル（Profile）と、プロセスモデル（Process Model）と、グラウンディング（Grounding）との３つの記述を規定する。
【０００５】
ここで、プロファイル情報は、どのようなサービスを提供するかの情報を記述した情報である。プロセスモデル情報は、サービスコンポーネントのオペレーションがどのようなオペレーションであるかや、その動作処理を抽象化して表したアトミックプロセス（Atomic Process）情報や、そのパラメータを含む。グラウンディング情報は、当該サービスコンポーネントへのアクセス方法の情報、即ち、プロセスモデル情報と実際のオペレーションのインタフェース情報とのマッピング情報である。ここで、プロセスモデル情報がオペレーションメタデータに相当する。
【０００６】
図１４は、従来のサービス連携処理を示す図である。図１４において、サービス連携装置２ａが、ユーザ端末装置９からサービスシナリオを含むサービス提供要求信号を受信する等により、サービスシナリオ設定部２１ａがサービスシナリオを読み込む場合の例である。ここで、例えば、カテゴリ「Ａ」〜カテゴリ「Ｃ」が記述されているサービスシナリオを例に説明する。
【０００７】
サービスコンポーネント検出部２２ａは、サービスシナリオの各カテゴリに記述されているカテゴリ名情報及びオペレーションメタデータに基づいて、利用対象の候補となるサービスコンポーネントのオペレーションメタデータ（Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述）を検出する（例えば、図１４の検出「Ａ」〜検出「Ｃ」）。サービスコンポーネント選択部２３ａは、サービスコンポーネント検出部２２ａが検出したオペレーションメタデータのいずれかを、利用対象のサービスコンポーネントのオペレーションメタデータとして選択する（例えば、図１４の選択「Ａ」〜選択「Ｃ」）。
【０００８】
サービスコンポーネント実行・連携部２４ａは、サービスコンポーネント選択部２３ａが選択したサービスコンポーネントのオペレーションメタデータと、プロセスモデル情報と実際のオペレーションのインタフェース情報とのマッピング情報であるグラウンディング情報とに基づき、オペレーションのインタフェース情報を取得する（例えば、図１４のインタフェース情報取得「Ａ」〜インタフェース情報取得「Ｃ」）。
【０００９】
サービスコンポーネント実行・連携部２４ａは、取得したインタフェース情報に基づき、サービスコンポーネント提供装置５ａにサービスコンポーネントの実行を要求し（例えば、図１４の実行「Ａ」）、応答情報に基づき、サービスコンポーネント提供装置５ｂにサービスコンポーネントの実行を要求し（例えば、図１４の実行「Ｂ」）、同様に、サービスコンポーネント提供装置５ｂからの応答情報に基づき、サービスコンポーネント提供装置５ｃにサービスコンポーネントの実行を要求することにより、サービスコンポーネント提供装置５ａからサービスコンポーネント提供装置５ｃのサービスを連携する（例えば、図１４の実行「Ｃ」）。
【００１０】
サービスコンポーネント実行・連携部２４ａは、サービスシナリオの実行結果をユーザ端末装置９に送信する。なお、サービス連携装置２ａは継続してサービス提供する場合は実行「Ａ」から処理を繰り返す。
これによりサービスシナリオに記述されたカテゴリに基づき、カテゴリごとにサービスコンポーネントのオペレーションメタデータを選択し、選択したサービスコンポーネントのオペレーションのインタフェース情報を取得し、サービスコンポーネントの実行を要求し、連携することが可能になる（例えば、非特許文献３）。
【非特許文献１】”ウェブ  サービセズ  ビジネスプロセス  エグゼキューション  ランゲージ（Web Services Business Process Execution Language）”、[online]、[平成１９年３月１日検索]、インターネット＜http://www.Oasis-open.org/committees/download.php/18714/wsbpel-specification-draft-May17.htm＞
【非特許文献２】デイヴィッド  マーティン（David Martin）、他、”ＯＷＬ−Ｓ：セマンティック  マークアップ  フォア  ウェブ  サービセズ（OWL-S : Semantic Markup for Web Services）”、[online]、平成１６年１１月、OWL-S Coalition、[平成１９年１月３０日検索]、インターネット＜http://www.daml.org/services/owl-s/1.1/owl-s.html＞
【非特許文献３】山登庸次他、”ユビキタス環境にて動的にサービス実現するためのサービス合成技術”、情報処理学会論文誌、２００７年２月、第４８巻、第２号、ｐ．５６２−５７７
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、非特許文献１に示すように、ＢＰＥＬは、元来Ｂ２Ｂ（Business to Business）を対象にしたものであり、予め利用するＷＳを決定し、それに合わせたサービスフローであるＢＰＥＬ文書と接続定義とをＢＰＥＬ実行エンジンにデプロイ、すなわち、コンポーネントなどを、利用可能な状態にする必要があることから、一般のユーザがユーザ自身の状況に応じて適したＷＳを選択し、バインド（連携）し実行すること、あるいはサービスの連携中にＷＳを切換えることに適用するのは困難であるという問題がある。
【００１２】
また、非特許文献３に示す技術において、サービスシナリオに記述されたカテゴリに基づきサービスコンポーネントのオペレーションメタデータの選択を行ってからサービスコンポーネントの実行に入るまでの時間が長くなる、あるいは、例えば、監視カメラなどを用いる警備サービスなどのように、長期間にわたってサービスを継続する場合等がある。現在、このような連携サービスに対して、実行中の連携サービスの一部のサービスコンポーネントをより適応性の高いものに切換えることが求められている。
ここにおいて、本発明の解決すべき主要な課題は、上記の問題を解決し、サービスの連携中に一部のサービスコンポーネントをより適切なものに切換え継続することが可能なサービス切換継続方法、サービス連携装置、サービス切換継続プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
上記問題を解決するために、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス切換継続方法であって、前記サービス連携装置が、前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続することにより、サービスコンポーネントの候補の検出結果を更新する検出継続ステップと、検出された前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続することにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択継続ステップと、選択された前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続することにより、前記インタフェース情報を更新するインタフェース情報取得継続ステップと、実行対象の前記サービスコンポーネントを前記選択継続ステップにおいて更新された前記サービスコンポーネントに切り換えるサービスコンポーネント切換ステップを含むことを特徴とするサービス切換継続方法である。
【００１４】
また、本発明のサービス切換継続方法は、前記サービスコンポーネント検出手段において、前記サービスコンポーネントの候補の検出処理を継続することとして設定されている場合に、前記検出継続ステップの処理を行い、前記サービスコンポーネント選択手段において、実行対象の前記サービスコンポーネントの選択処理を継続することとして設定されている場合に、前記選択継続ステップの処理を行い、前記サービスコンポーネント実行・連携手段において、前記インタフェース情報の取得処理を継続することとして設定されている場合に、前記インタフェース情報取得継続ステップの処理を行うことを特徴とする。
【００１５】
また、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス切換継続方法であって、前記サービス連携装置の前記サービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動ステップと、前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動ステップとを含む特徴とするサービス切換継続方法である。
【００１６】
また、本発明のサービス切換継続方法は、前記サービスコンポーネント提供装置から受信するサービスコンポーネント実行結果としての応答情報に基づいて、前記サービスコンポーネントの検出条件を設定し、当該検出条件に基づき、前記サービスコンポーネントを検出する条件付検出起動ステップ、あるいは、前記サービスコンポーネントの選択条件を設定し、当該選択条件に基づき、前記サービスコンポーネントを選択する条件付選択起動ステップのいずれかを行うステップとを含むことを特徴とする。
【００１７】
また、本発明のサービス切換継続方法は、前記サービスコンポーネント切換ステップにおいて、パラメータ数の不一致が生じた場合、ユーザが利用するユーザ端末装置へパラメータ数の不一致を示す通知を送信することを特徴とする。
【００１８】
また、本発明のサービス切換継続方法は、前記サービスコンポーネント切換ステップにおいて、パラメータ型の不一致が生じた場合、自動キャストすることを特徴とする。
【００１９】
また、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおける、前記サービス連携装置であって、前記サービスコンポーネント検出手段に、前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続させることにより、サービスコンポーネントの候補の検出結果を更新する検出段階更新継続手段と、前記サービスコンポーネント選択手段に、前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続させることにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択段階更新継続手段と、前記サービスコンポーネント実行・連携手段に、前記サービスコンポーネント選択手段が選択する実行対象の前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続させることにより、前記インタフェース情報を更新し、実行対象の前記サービスコンポーネントを、選択段階更新継続手段によってサービスコンポーネント選択手段が更新する前記サービスコンポーネントに切り換えるサービスコンポーネント切換手段とを備えることを特徴とするサービス連携装置である。
【００２０】
また、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおける、前記サービス連携装置であって、前記サービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動手段と、前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動手段とを備えることを特徴とするサービス連携装置である。
【００２１】
また、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス連携装置のコンピュータに、前記サービスコンポーネントの候補の検出処理を前記連携サービスが終了するまで継続することにより、サービスコンポーネントの候補の検出結果を更新する検出継続ステップと、検出された前記サービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択する処理を前記連携サービスが終了するまで継続することにより、前記実行対象のサービスコンポーネントの選択結果を更新する選択継続ステップと、選択された前記サービスコンポーネントの前記インタフェース情報を取得する処理を前記連携サービスが終了するまで継続することにより、前記インタフェース情報を更新するインタフェース情報取得継続ステップと、実行対象の前記サービスコンポーネントを前記選択継続ステップにおいて更新された前記サービスコンポーネントに切り換えるサービスコンポーネント切換ステップを実行させることを特徴とするサービス切換継続プログラムである。
【００２２】
また、本発明は、サービスコンポーネントのカテゴリを識別するカテゴリ識別情報を含むサービスシナリオの前記カテゴリ識別情報に基づき前記サービスコンポーネントの候補を検出するサービスコンポーネント検出手段と、検出したサービスコンポーネントの候補のいずれかを実行対象のサービスコンポーネントとして選択するサービスコンポーネント選択手段と、選択された前記サービスコンポーネントのインタフェース情報を取得し、前記カテゴリごとに前記サービスコンポーネント間を連携するサービスコンポーネント実行・連携手段とを備える連携サービスを提供するサービス連携装置と、前記サービスコンポーネントを提供するサービスコンポーネント提供装置とを含むサービス連携システムにおいて、サービス連携中に前記サービスコンポーネントを切換え、前記連携サービスを継続するサービス連携装置のコンピュータに、前記サービス連携装置のサービスコンポーネント実行・連携手段が前記サービスコンポーネントの実行処理を行う際に、前記サービスコンポーネントの再検出処理を実行することとして設定されている場合に、サービスコンポーネント検出手段を再起動する再検出起動ステップと、前記サービスコンポーネントの再選択処理を実行することとして設定されている場合に、サービスコンポーネント選択手段を再起動する再選択起動ステップとを実行させることを特徴とするサービス切換継続プログラムである。
【発明の効果】
【００２３】
本発明によれば、サービスの連携中に一部のサービスコンポーネントをより適切なものに切換え継続することができるようになるという効果がある。
【発明を実施するための最良の形態】
【００２４】
＜第１実施形態＞
以下、本発明の第１実施形態によるサービス連携システム１００の全体構成を図面を参照して説明する。
図１は、本実施形態によるサービス連携システム１００の全体構成を示す概略ブロック図である。サービス連携システム１００は、ネットワーク１を介して接続されるサービス連携装置２、オントロジＤＢ装置４、サービスコンポーネント提供装置５、サービスコンポーネント情報ＤＢ装置６、サービスシナリオＤＢ装置７、ユーザコンテキスト・ポリシＤＢ装置８、ユーザ端末装置９を備える。ネットワーク１は、固定電話網、携帯電話網などの通信ネットワークや、インターネットなどの公衆網や、ＬＡＮ（Local Area Network）、専用線などの私設網などである。
【００２５】
ユーザ端末装置９は、例えば、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistants：情報携帯端末）、携帯電話などのコンピュータ端末等であり、ユーザの操作によって入力されるサービスシナリオの利用要求をサービス連携装置２に送信する。
サービス連携装置２は、ユーザ端末装置９から受信するサービスシナリオの利用要求に応じて、サービスシナリオに基づきサービス（サービスコンポーネント）を連携し、連携したサービスの実行結果を利用要求に対する応答としてユーザ端末装置９に送信する。また、サービス連携装置２は、後述する付加情報に基づき、連携サービスの実行中に一部のサービスコンポーネントをより適切なものに切換え継続する。
【００２６】
オントロジＤＢ装置４は、サービスコンポーネントの動作を表すオペレーションメタデータをカテゴリ識別情報と対応付けて記憶する。
サービスコンポーネント提供装置５は、情報処理などのサービスを実行するサービスコンポーネントを提供する。また、サービスコンポーネント提供装置５は、自身が提供するサービスコンポーネントの動作を表すオペレーションメタデータとしてプロセスモデル情報を、カテゴリ識別情報と対応付けてオントロジＤＢ装置４に登録する。
【００２７】
また、サービスコンポーネント提供装置５は、サービス連携装置２から受信するサービスコンポーネントの機能（オペレーション）であるサービスの実行要求に対応して、実行したサービスの実行結果を応答情報としてサービス連携装置２に送信する。また、サービスコンポーネント提供装置５は、プロファイル情報、プロセスモデル情報、グラウンディング情報、インタフェース情報などのサービスコンポーネントの情報をサービスコンポーネント情報ＤＢ装置６に登録する。
【００２８】
サービスコンポーネント情報ＤＢ装置６は、サービスコンポーネントのプロファイル情報、プロセスモデル情報、グラウンディング情報、インタフェース情報と、当該サービスコンポーネントのＵＲＩ（Uniform Resource Identifier）、すなわち、インタフェース情報などの取得先の情報を対応付けて記憶するデータベースであり、これにより、ＯＷＬ−Ｓのサービス記述の検出が容易となる。
サービスシナリオＤＢ装置７は、サービスコンポーネントの実行手順を示すサービスシナリオを記憶する。
【００２９】
ユーザコンテキスト・ポリシＤＢ７は、ユーザに対応したユーザコンテキストの情報と、ユーザポリシの情報と、ユーザ端末装置９の識別情報とを対応付けて記憶する。ここで、ユーザコンテキストの情報とは、例えば、ユーザの位置や、ユーザのおかれている、気温、湿度、照度などの環境状況や、ユーザの体温、脈拍、血圧などのユーザの身体状況情報などであり、ユーザのおかれている状況を示す状況情報である。また、ユーザポリシとは、どのようなサービスコンポーネントを優先するかをという指針を優先度とともに示す情報である。
【００３０】
サービス連携装置２は、ユーザコンテキスト情報と、ユーザポリシ情報と、プロファイル情報とを用いることにより、ユーザコンテキスト情報とユーザポリシ情報とに適する、すなわち、ユーザに適するサービスコンポーネントを選択することが可能となる。なお、これらの選択処理手順は、上述した非特許文献３に記載の方法を用いた場合を例に説明している。
【００３１】
なお、図１において、サービスコンポーネント提供装置５、及び、ユーザ端末装置９は、それぞれ一つの装置として示しているが、それぞれ複数の構成としてもよい。例えば、サービス連携システム１００が、サービスコンポーネント提供装置５を３つ備える場合に、サービスコンポーネント提供装置５ａ、サービスコンポーネント提供装置５ｂ、サービスコンポーネント提供装置５ｃとする。
【００３２】
次に、各装置の内部構成について説明する。図２は、サービス連携装置２の内部構成を示すブロック図である。なお、本実施形態においては、図１４と同様の構成について、同一の符号を付している。
【００３３】
サービス連携装置２は、サービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４、第１付加情報設定部２５、検出段階第１付加情報検知部２６、検出段階更新継続部２７、選択段階第１付加情報検知部２８、選択段階更新継続部２９、実行段階第１付加情報検知部３０、サービスコンポーネント切換部３１を備える。
また、サービス連携装置２は、サービスシナリオに対応するサービスコンポーネントをオントロジＤＢ装置４と、サービスコンポーネント情報ＤＢ装置６とユーザコンテキスト・ポリシＤＢ装置８とから検索する。
【００３４】
サービス連携装置２において、サービスシナリオ設定部２１は、例えば、ユーザ端末装置９から送信されるサービスシナリオを含むサービス提供要求を受信する等により、サービスシナリオを設定する。ここで、サービスシナリオとは、実行対象のサービスコンポーネントのカテゴリ名と、オペレーションメタデータとの情報によってサービスコンポーネントの実行手順が記述されているシナリオである。また、サービスシナリオを設定するとは、サービスシナリオ設定部２１がサービスシナリオを実行対象サービスシナリオとしてサービスシナリオＤＢ装置７から読み込むことである。
サービスコンポーネント検出部２２は、サービスシナリオ設定部２１が設定するサービスシナリオの各カテゴリへの適用候補となるサービスコンポーネントのプロセスモデル情報を要求する検索要求信号をオントロジＤＢ装置４に送信し、応答情報をオントロジＤＢ装置４から受信する。
【００３５】
また、サービスコンポーネント検出部２２は、受信した応答情報のプロセスモデル情報を検索キーとして、サービスコンポーネント情報ＤＢ装置６から、当該プロセスモデル情報に対応付けて記憶されている、すなわち、マッピングされているプロファイル情報、プロセスモデル情報、グラウンディング情報を含むＯＷＬ−Ｓ情報と、インタフェース情報とを検索する。
【００３６】
ここで、サービスコンポーネント検出部２２は、オントロジＤＢ装置４から受信する応答情報のプロセスモデル情報が、複数のプロセスモデル情報である場合、プロセスモデル情報ごとに対応するＯＷＬ−Ｓ情報と、インタフェース情報とをサービスコンポーネント情報ＤＢ装置６から読み出す。また、一つのプロセスモデル情報にマッピングされたサービスコンポーネントが複数ある場合も、サービスコンポーネント情報ＤＢ装置６より、該当するサービスコンポーネントごとのＯＷＬ−Ｓ情報を検索する。
【００３７】
サービスコンポーネント選択部２３は、連携サービスの提供先のユーザ端末装置９や、ユーザの識別情報に対応するユーザコンテキスト情報をユーザコンテキスト・ポリシＤＢ７から読み出す。サービスコンポーネント選択部２３は、読み出したユーザコンテキスト情報と、検索したサービスコンポーネントのプロファイル情報とに基づき、サービスコンポーネント検出部２２が検出する複数サービスコンポーネントの候補から、ユーザに適するサービスコンポーネントを選択する。
【００３８】
サービスコンポーネント実行・連携部２４は、サービスコンポーネント選択部２３が選択したサービスコンポーネントのグラウンディング情報と、インタフェース情報とをサービスコンポーネント情報ＤＢ装置６から読み出す。サービスコンポーネント実行・連携部２４は、読み出したグラウンディング情報と、インタフェース情報とに基づきサービスコンポーネントをサービスシナリオ設定部２１が設定するサービスシナリオに従って実行する。サービスコンポーネント実行・連携部２４は、サービスシナリオの実行結果をユーザに送信する。なお、サービス連携装置２のサービスコンポーネント検出部２２がオントロジＤＢ装置４から応答情報を受信後、サービスコンポーネント実行・連携部２４が、サービスシナリオの実行結果をユーザに送信する処理手順は、上述した非特許文献３に示す従来の処理手順を例に説明している。
【００３９】
第１付加情報設定部２５は、サービスシナリオ設定部２１が設定するサービスシナリオに含まれる実行対象のカテゴリに第１の付加情報を付与する。ここで、第１の付加情報の付与とは、例えば、フラグを立てることを意味し、フラグが「１」の場合、第１の付加情報が付与されていることを示し、フラグが「０」の場合、第１の付加情報が付与されていないことを示すことによって、第１の付加情報を付与することなどでもよい。
【００４０】
また、第１付加情報設定部２５は、内部の記憶領域に予め第１の付加情報の付与対象のカテゴリのカテゴリ名を第１付加情報付与対象カテゴリ名として記憶している。
ここで、第１の付加情報の付与対象のカテゴリは、更新が予測される、例えば、新しいサービスコンポーネントが提供されうると予測される分野のカテゴリや、ユーザのコンテキストに応じて、サービス提供対象のユーザに好適なサービスコンポーネントが異なるカテゴリ等などであり、ここでは、予め、サービス連携装置２の管理者などに入力されていることとする。
【００４１】
検出段階第１付加情報検知部２６は、サービスコンポーネント検出部２２がオペレーションメタデータを検出する段階において、サービスコンポーネント検出部２２による検索対象となるカテゴリに第１の付加情報が付与されているか否かを検知する。
検出段階更新継続部２７は、検出段階第１付加情報検知部２６が検索対象のカテゴリに第１の付加情報が付与されていることを検知した場合、サービスコンポーネント検出部２２においてサービスコンポーネントのオペレーションメタデータの検出後も、サービスコンポーネント検出部２２に、サービスコンポーネントのオペレーションメタデータの検索を予め定める所定周期ごとに再検出させることにより、オペレーションメタデータの検出処理を継続させる。なお、この検出処理の継続は、サービスシナリオ設定部２１が設定するサービスシナリオの実行が終了するまで継続する。
【００４２】
検出段階更新継続部２７は、サービスコンポーネント検出部２２によるオペレーションメタデータの検出処理の継続中に、検出処理ごとに、前回と異なる検出結果が得られた場合、サービスコンポーネント検出部２２に、サービスコンポーネント選択部２３への検索結果の更新通知を出力させる。
【００４３】
選択段階第１付加情報検知部２８は、サービスコンポーネント選択部２３が実行対象のするサービスコンポーネントのオペレーションメタデータを選択する段階において、選択対象となるカテゴリに第１の付加情報が付与されているか否かを検知する。
選択段階更新継続部２９は、選択段階第１付加情報検知部２８が検索対象のカテゴリに第１の付加情報が付与されていることを検知した場合、サービスコンポーネント選択部２３において実行対象のサービスコンポーネントのオペレーションメタデータの選択後も、サービスコンポーネント選択部２３に、ユーザコンテキスト・ポリシＤＢ装置８が記憶するユーザコンテキスト・ポリシ情報に基づくサービスコンポーネントのオペレーションメタデータの選択処理を継続させる。この継続処理により、頻繁に変化する可能性があるユーザ状況、すなわち、ユーザコンテキストの変化に対応することが可能となる。
【００４４】
選択段階更新継続部２９は、サービスコンポーネント選択部２３によるオペレーションメタデータの選択処理の継続中に、選択処理ごとに、前回と異なる選択結果が得られた場合、サービスコンポーネント選択部２３に、サービスコンポーネント実行・連携部２４への選択結果の更新通知を出力させる。
実行段階第１付加情報検知部３０は、サービスコンポーネント実行・連携部２４がサービスコンポーネントを実行する段階において、実行対象となるカテゴリに第１の付加情報が付与されているか否かを検知する。
【００４５】
サービスコンポーネント切換部３１は、実行段階第１付加情報検知部３０が第１の付加情報が付与されていることを検知した場合、サービスコンポーネント実行・連携部２４において、サービスコンポーネント情報ＤＢ装置６から実行対象のサービスコンポーネントのインタフェース情報の取得処理後も、予め定める所定周期ごとにインタフェース情報を再取得させることにより、サービスコンポーネント実行・連携部２４にインタフェース情報の取得処理を継続させる。
【００４６】
なお、この検出処理の継続は、サービスシナリオ設定部２１が設定するサービスシナリオの実行が終了するまで継続する。
また、サービスコンポーネント切換部３１は、パラメータ数の不一致が生じた場合は、パラメータの削除あるいはユーザへの問合せを行い、パラメータ型の不一致が生じた場合は、パラメータ型の変換、すなわち、自動キャスト処理を行う。
【００４７】
次に、第１実施形態におけるサービス連携システム１００の連携サービスの実行中に、サービスシナリオの一部のサービスコンポーネントを切換え、継続するサービス切換継続処理の概略的な処理の流れの一例を図を用いて説明する。図３は、本実施形態のサービス連携システム１００において、主にサービス連携装置２が行うサービス切換継続処理例の流れを示す概念図である。
なお、図３において、処理の概略を説明するために、サービス連携装置２のサービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４以外の構成を省略して図示している。
【００４８】
図３のサービス連携装置２において、サービスシナリオ設定部２１が、ユーザ端末装置９から受信するサービス提供要求に含まれるサービスシナリオ識別情報に基づき、サービスシナリオがサービスシナリオ設定部２１に設定された場合を示している。ここで、例えば、サービスシナリオの例として、カテゴリ「Ａ」〜カテゴリ「Ｃ」が記述されているサービスシナリオであり、サービスシナリオのカテゴリ「Ｂ」が第１の付加情報「＊」の付与対象カテゴリであるサービスシナリオを例に説明する。
【００４９】
図３において、カテゴリ「Ａ」〜カテゴリ「Ｃ」が記述されているサービスシナリオのうち、カテゴリ「Ａ」及び、カテゴリ「Ｃ」における処理は、図１４に示す従来の処理と同様であるため、以下、第１の付加情報の付与対象であるカテゴリ「Ｂ」のサービスコンポーネントの検出、選択、実行の処理の流れを説明する。
【００５０】
サービスシナリオ設定部２１において、ユーザ端末装置９から受信するサービス提供要求に含まれるサービスシナリオが読み込まれた場合、第１付加情報設定部２５が、サービスシナリオに記述されるカテゴリごとに、第１の付加情報の付与対象カテゴリであるか否かを判定する。なお、第１付加情報設定部２５は、予め内部の記憶領域に第１の付加情報の付与対象カテゴリのカテゴリ識別情報を記憶している。第１付加情報設定部２５は、この第１の付加情報の付与対象カテゴリのカテゴリ識別情報に基づき、第１の付加情報の付与対象カテゴリであるか否かの判定処理を行う。ここでは、カテゴリ「Ｂ」が第１の付加情報の付与対象カテゴリであるため、サービスシナリオ設定部２１が、カテゴリ「Ｂ」に、第１の付加情報「＊」を付与する。
【００５１】
サービスコンポーネント検出部２２は、カテゴリ「Ｂ」に記述されているカテゴリ名を検索キーとしてオントロジＤＢ装置４及びサービスコンポーネント情報ＤＢ装置６よりサービスコンポーネントのオペレーションメタデータを検出し、検出結果をサービスコンポーネント選択部２３に出力する（検出Ｂ）。
【００５２】
ここで、検出段階第１付加情報検知部２６が、カテゴリ「Ｂ」に付与されている第１の付加情報「＊」を検知することにより、上述したように、サービスコンポーネント検出部２２は、サービスコンポーネントのオペレーションメタデータの検出処理を継続する。オペレーションメタデータの検出結果が、前回の検出結果と異なる場合、サービスコンポーネント検出部２２は、最新の検出結果を含む更新の通知をサービスコンポーネント選択部２３に出力する。
【００５３】
サービスコンポーネント選択部２３は、サービスコンポーネント検出部２２から入力されるオペレーションメタデータの候補のうち、上述したように、サービスシナリオＤＢ装置７から読み出すユーザコンテキスト情報に基づき、利用対象のサービスコンポーネントのオペレーションメタデータを選択し、選択結果をサービスコンポーネント実行・連携部２４に出力する（選択Ｂ）。ここで、選択段階第１付加情報検知部２８が、カテゴリ「Ｂ」に付与されている第１の付加情報「＊」を検知することにより、上述したように、サービスコンポーネント選択部２３は、サービスコンポーネントのオペレーションメタデータの選択処理を継続する。オペレーションメタデータの選択結果が、前回の選択結果と異なる場合、サービスコンポーネント選択部２３は、更新の通知をサービスコンポーネント実行・連携部２４に出力する。
【００５４】
上述した手順、及び、図１４と同様の手順によって、サービスコンポーネント実行・連携部２４に、カテゴリ「Ａ」〜カテゴリ「Ｃ」までの実行対象のサービスコンポーネントのオペレーションメタデータが入力される。次に、カテゴリ「Ａ」のサービスコンポーネントのインタフェース情報取得Ａ、及び、実行Ａの処理が行われた場合におけるカテゴリ「Ｂ」のサービスコンポーネントの実行Ｂの処理について説明する。
【００５５】
サービスコンポーネント実行・連携部２４において、実行段階第１付加情報検知部３０が、カテゴリ「Ｂ」に付与されている第１の付加情報「＊」を検知することにより、サービスコンポーネント実行・連携部２４は、サービスコンポーネント選択部２３から入力されるカテゴリ「Ｂ」の最新のオペレーションメタデータに対応するサービスコンポーネントに切換え、切換えたサービスコンポーネントのインタフェース情報を取得し（インタフェース情報取得Ｂ）、実行Ａの結果に基づき、サービスコンポーネント提供装置５ｂのサービスコンポーネントを実行する（実行Ｂ）。ここで、実行Ａの結果を用いてサービスコンポーネント提供装置５ｂのサービスコンポーネントを実行することにより、サービス連携装置２は、サービスコンポーネント提供装置５ａからサービスコンポーネント提供装置５ｂへのサービス連携を行うこととなる。
【００５６】
上述したサービス切換継続処理により、サービスコンポーネントのオペレーションメタデータの選択後、サービスコンポーネントが実行されるまでの時間が長くなる場合、あるいは長時間にわたりサービスが継続される場合にあっても、第１の付加情報「＊」が付与されたカテゴリ「Ｂ」は常に更新されたサービスを提供できるようになるという効果がある。
【００５７】
次に、第１実施形態におけるサービス連携装置２の処理の流れをフローチャートを用いて説明する。図４は、第１実施形態におけるサービス連携装置２の処理フローを示す。
サービス連携装置２において、サービスシナリオ設定部２１は、ユーザ端末装置９からサービスシナリオを含むサービス提供要求を受信する（ステップＳａ１）。サービスシナリオ設定部２１は、受信したサービス提供要求のサービスシナリオを設定し（ステップＳａ２）、第１付加情報設定部２５が、サービスシナリオに記述されるカテゴリ名に基づき、第１の付加情報を設定する（ステップＳａ３）。
【００５８】
次に、サービスシナリオ設定部２１に設定されるサービスシナリオのカテゴリごとに実行される、ステップＳａ４からステップＳａ９の処理について説明する。サービスコンポーネント検出部２２は、カテゴリごとに、実行対象のサービスコンポーネントの候補のオペレーションメタデータを検出し、検出結果をサービスコンポーネント選択部２３に出力する（ステップＳａ４）。
【００５９】
また、サービスコンポーネント検出部２２は、検出段階第１付加情報検知部２６に、処理対象のカテゴリ名を含む付加情報検出要求を出力する。検出段階第１付加情報検知部２６は、検出対象のカテゴリに対し、第１の付加情報の有無を判定する（ステップＳａ５）。検出段階第１付加情報検知部２６は、第１の付加情報があると判定した場合、検出段階更新継続部２７を介して、サービスコンポーネント検出部２２にサービスコンポーネントのオペレーションメタデータの検出処理を継続させる（ステップＳａ６）。
【００６０】
サービスコンポーネント選択部２３は、サービスコンポーネント検出部２２から入力されるオペレーションメタデータの候補のうち、利用対象のサービスコンポーネントのオペレーションメタデータを選択し、選択結果をサービスコンポーネント実行・連携部２４に出力する（ステップＳａ７）。また、サービスコンポーネント選択部２３は、選択段階第１付加情報検知部２８に、処理対象のカテゴリ名を含む付加情報検出要求を出力する。選択段階第１付加情報検知部２８は、検出対象のカテゴリに対し、第１の付加情報の有無を判定する（ステップＳａ８）。
【００６１】
選択段階第１付加情報検知部２８は、第１の付加情報があると判定した場合、選択段階更新継続部２９を介して、サービスコンポーネント選択部２３にサービスコンポーネントのオペレーションメタデータの選択処理を継続させる（ステップＳａ９）。以上、ステップＳａ４からステップＳａ９の処理が、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリについて繰り返される。
【００６２】
次に、上述した処理に基づき、サービスコンポーネント実行・連携部２４に、カテゴリ「Ａ」〜カテゴリ「Ｃ」までの実行対象のサービスコンポーネントのオペレーションメタデータが入力された場合における、サービスコンポーネント実行・連携部２４、実行段階第１付加情報検知部３０、サービスコンポーネント切換部３１が行うサービスコンポーネントの実行処理について説明する。
【００６３】
サービスコンポーネントの実行段階において、実行段階第１付加情報検知部３０が、サービスシナリオ設定部２１に設定されるサービスシナリオに基づき、カテゴリごとに、第１の付加情報の有無を判定する（ステップＳａ１０）。実行段階第１付加情報検知部３０は、第１の付加情報があると判定した場合、サービスコンポーネント切換部３１を介して、サービスコンポーネント実行・連携部２４に、サービスコンポーネントの中の最新のものに切換えさせる（ステップＳａ１１）。
【００６４】
サービスコンポーネント実行・連携部２４は、切換えたサービスコンポーネントのインタフェース情報を取得し（ステップＳａ１２）、当該インタフェース情報に基づき、切り換えたサービスコンポーネントの実行・連携処理を行う（ステップＳａ１３）。サービスコンポーネント実行・連携部２４は、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリのサービスが終了したか否かを判定し（ステップＳａ１４）、終了の場合はサービス実行結果をユーザ端末装置９に送信し（ステップＳａ１５）、終了していない場合、ステップＳａ１０に戻る。
【００６５】
次に、第１実施形態におけるサービス連携システム１００の動作全体について、図面を参照して説明する。図５は、図１におけるサービス連携システム１００の動作例を示すシーケンスチャートである。図５は、ユーザ端末装置９、ユーザコンテキスト・ポリシＤＢ装置８、サービス連携装置２、オントロジＤＢ装置４、サービスシナリオＤＢ装置７、サービスコンポーネント情報ＤＢ装置６及びサービスコンポーネント提供装置５間のシーケンスを示している。
【００６６】
ユーザ端末装置９は、サービス連携装置２にサービスシナリオ識別情報を含むサービス提供要求を送信する（ステップＳｂ１）。サービス連携装置２は、サービス提供要求を受信すると、サービスシナリオ識別情報に基づき、サービスシナリオＤＢ装置７からサービスシナリオ読み出し、上述したように、読み出したサービスシナリオを設定する（ステップＳｂ２）。サービス連携装置２は、上述したように、カテゴリごとに第１の付加情報を付加するか否かを設定する（ステップＳｂ３）。
【００６７】
サービス連携装置２は、サービスシナリオのカテゴリごとに、オントロジＤＢ装置４及びサービスコンポーネント情報ＤＢ装置６を検索することにより、サービスコンポーネントのオペレーションメタデータの候補を検出する。ここで、処理中のカテゴリに第１の付加情報が付与されていることを検出した場合、オペレーションメタデータの候補を検出を継続する（ステップＳｂ４）。サービス連携装置２は、ユーザコンテキスト・ポリシＤＢ装置８が記憶するユーザコンテキスト・ポリシ情報に基づき、ユーザに適するサービスコンポーネントのオペレーションメタデータを選択する。ここで、処理中のカテゴリに第１の付加情報が付与されていることを検出した場合、選択処理を継続する（ステップＳｂ５）。
【００６８】
サービス連携装置２は、ステップＳｂ２からステップＳｂ５の処理を、サービスシナリオに含まれる全てのカテゴリに関して実行すると、カテゴリごとにサービスコンポーネントの実行処理を行う。ここで、サービス連携装置２は、第１の付加情報を検知すると更新されたサービスコンポーネントに切換え（ステップＳｂ６）、サービスコンポーネント情報ＤＢ装置６を検索してサービスコンポーネントのインタフェース情報を取得する（ステップＳｂ７）。
【００６９】
サービス連携装置２は、サービスコンポーネントの実行をサービスコンポーネント提供装置５に要求し（ステップＳｂ８）、全カテゴリのサービス実行処理が終了か否かを判定し（ステップＳｂ９）、終了の場合はサービス実行結果をユーザ端末装置９に送信し（ステップＳｂ１０）、終了でない場合はステップＳｂ６に戻る。
【００７０】
上記第１実施形態によれば、更新が予測されるカテゴリに予め付加情報を付与しておくことにより、サービス連携装置２は、サービスコンポーネントのオペレーションメタデータを検出する段階において検出後においても検出処理を継続する。さらに、サービス連携装置２は、サービスコンポーネントのオペレーションメタデータを選択する段階においても選択後に更新処理を継続する。
【００７１】
さらに、サービス連携装置２は、サービスコンポーネントを実行する段階において更新された中から最新のサービスコンポーネントに切換えサービスを継続することが可能になる、つまり、付加情報の有無に基づき、連携サービスの実行中に一部のサービスコンポーネントをより適切なものに切換え継続することが可能となる効果がある。また、付加情報が付与されたカテゴリに限定して、サービスコンポーネントの切換を行う処理となることから、サービス連携装置２における処理負担が抑えられるという効果がある。
【００７２】
なお、第１付加情報設定部２５は、サービスシナリオ設定部２１が読み込むサービスシナリオの全てのカテゴリに第１の付加情報を付与することとしてもよい。
また、ユーザ端末装置９から受信するサービス提供要求のサービスシナリオに記述されるカテゴリ名に、予め第１の付加情報が含まれることとしてもよい。また、第１の付加情報は、１つのカテゴリにかかる処理全体に対して付与されてもよいし、例えば、図２のサービスコンポーネント検出部２２が行うオペレーションメタデータの検出処理に対してなど、いずれかのカテゴリのいずれかの処理に対して付与することとしてもよい。
【００７３】
また、ステップＳｂ６において、サービスコンポーネントの切換え時に、パラメータ数の不一致が生じた場合は、パラメータの削除を行ってもよいし、ユーザヘの問合せを行ってもよい。また、同様に、パラメータ型の不一致が生じた場合は、自動キャスト、すなわち、予めサービスコンポーネント実行・連携部２４が内部の記憶領域に記憶するパラメータ型変換方式に従って、パラメータ型を変換することとしてもよい。
【００７４】
＜第２実施形態＞
次に、第２実施形態によるサービス連携システム１００の全体構成を図面を参照して説明する。図６は、本実施形態によるサービス連携装置２の内部構成を示すブロック図である。なお、本実施形態においては、図２と同様の構成について、同一の符号を付し、異なる構成について説明する。
【００７５】
第１実施形態と第２実施形態とで異なる点は、サービスコンポーネントのオペレーションメタデータを検出する段階、及びサービスコンポーネントのオペレーションメタデータを選択する段階において検出処理及び選択処理を継続せず、サービスコンポーネントの切換を、サービスコンポーネントを実行する段階で、サービスコンポーネントのオペレーションメタデータの検出のやり直し、あるいはサービスコンポーネントのオペレーションメタデータの選択のやり直しを起動する点である。
【００７６】
第２実施形態において、サービス連携装置２は、サービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４、第１付加情報設定部２５、再検出起動部３２、再選択起動部３３、実行段階第１付加情報検知部３０、サービスコンポーネント切換部３１を備える。
再検出起動部３２は、実行段階第１付加情報検知部３０が、実行対象のサービスシナリオのカテゴリに第１の付加情報が付与されていると判定した場合、サービスコンポーネントのオペレーションメタデータの検出のやり直し、すなわち、再検出をサービスコンポーネント検出部２２に対して要求する。
【００７７】
再選択起動部３３は、実行段階第１付加情報検知部３０が、実行対象のサービスシナリオのカテゴリに第１の付加情報が付与されていると判定した場合、利用対象のサービスコンポーネントのオペレーションメタデータの選択のやり直しをサービスコンポーネント選択部２３に対して要求する。
【００７８】
次に、第２実施形態におけるサービス連携システム１００の概略的な処理の流れの一例を図を用いて説明する。図７は、本実施形態のサービス連携システム１００において、主にサービス連携装置２が行う処理の流れを示す概念図である。
ここで、サービスシナリオ設定部２１が、ユーザ端末装置９から受信するサービス提供要求に含まれるサービスシナリオ識別情報に基づき、サービスシナリオがサービスシナリオ設定部２１に設定された場合を示している。ここでは、第１実施形態と同様に、サービスシナリオの例として、カテゴリ「Ａ」〜カテゴリ「Ｃ」が記述されているサービスシナリオであり、サービスシナリオのカテゴリ「Ｂ」が第１の付加情報「＊」の付与対象カテゴリであるサービスシナリオを例に説明する。
【００７９】
本実施形態のサービス連携装置２において、サービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３が行うオペレーションメタデータの検出「Ａ」〜「Ｃ」、選択「Ａ」〜「Ｃ」は、図１４に示す従来例と同様の処理であるため、本実施形態における特徴的な処理であるカテゴリ「Ｂ」に関する処理の概略を説明する。
【００８０】
カテゴリ「Ｂ」のサービスコンポーネントを実行する段階において、実行段階第１付加情報検知部３０は、実行対象のカテゴリ「Ｂ」に第１の付加情報「＊」があると判定し、以下のいずれかの処理を行う。
第１の処理として、実行段階第１付加情報検知部３０は、再検出起動部３２にサービスコンポーネント検出部２２に対する、サービスコンポーネントのオペレーションメタデータの再検出の実行を要求させる。そして、サービスコンポーネント検出部２２は、再検出の実行結果をサービスコンポーネント選択部２３に出力し、サービスコンポーネント選択部２３は、再検出されたオペレーションメタデータのいずれかを選択し、選択結果をサービスコンポーネント実行・連携部２４に出力する。
【００８１】
第２の処理として、実行段階第１付加情報検知部３０は、再選択起動部３３にサービスコンポーネント選択部２３に対する、サービスコンポーネントのオペレーションメタデータの再選択の実行を要求させる。サービスコンポーネント選択部２３は、再選択した選択結果をサービスコンポーネント実行・連携部２４に出力する。
上記第１の処理又は、第２の処理のいずれを行うかは、予めサービス連携装置２の管理者によって設定されていても良いし、ユーザ端末装置９から受信するサービス提供要求に含まれていることとしてもよい。
【００８２】
サービスコンポーネント実行・連携部２４は、上述した第１の処理、又は、第２の処理に基づき、サービスコンポーネント選択部２３から入力されるカテゴリ「Ｂ」の最新のオペレーションメタデータに対応するサービスコンポーネントに切換え、切換えたサービスコンポーネントのインタフェース情報を取得し（インタフェース情報取得Ｂ）、実行Ａの結果に基づき、サービスコンポーネントを実行する（実行Ｂ）。
【００８３】
次に、第２実施形態におけるサービス連携装置２の処理の流れをフローチャートを用いて説明する。図８は、第２実施形態における図６のサービス連携装置２の処理フローを示す。
サービス連携装置２において、サービスシナリオ設定部２１は、ユーザ端末装置９からサービスシナリオを含むサービス提供要求を受信する（ステップＳｃ１）。サービスシナリオ設定部２１は、受信したサービス提供要求のサービスシナリオを設定し（ステップＳｃ２）、第１付加情報設定部２５が、サービスシナリオに記述されるカテゴリ名に基づき、第１の付加情報を設定する（ステップＳｃ３）。
【００８４】
次に、サービスシナリオ設定部２１に設定されるサービスシナリオのカテゴリごとに実行される、ステップＳｃ４からステップＳｃ５の処理について説明する。サービスコンポーネント検出部２２は、カテゴリごとに、実行対象のサービスコンポーネントの候補のオペレーションメタデータを検出し、検出結果をサービスコンポーネント選択部２３に出力する（ステップＳｃ４）。
【００８５】
サービスコンポーネント選択部２３は、サービスコンポーネント検出部２２から入力されるオペレーションメタデータの候補のうち、利用対象のサービスコンポーネントのオペレーションメタデータを選択し、選択結果をサービスコンポーネント実行・連携部２４に出力する（ステップＳｃ５）。以上、ステップＳｃ４からステップＳｃ５の処理が、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリについて繰り返される。
【００８６】
次に、サービスコンポーネント実行・連携部２４は、実行対象のサービスコンポーネントが、後述するステップＳｃ１０−１、又は、ステップＳｃ１０−２の再起動処理を経てサービスコンポーネント選択部２３から入力されたか否かを判定する（ステップＳｃ６）。
この判定は、例えば、ステップＳｃ１０−１、又は、ステップＳｃ１０−２を実行する際に、再起動を経たことを示す再起動フラグをサービスコンポーネント検出部２２、又は、サービスコンポーネント選択部２３に出力し、サービスコンポーネント選択部２３が再起動フラグを付与して選択結果をサービスコンポーネント実行・連携部２４に出力する。この再起動フラグの有無に基づき、サービスコンポーネント実行・連携部２４が、ステップＳｃ６の判定を行うことでもよい。
【００８７】
ステップＳｃ６において、サービスコンポーネント実行・連携部２４が、再起動を経ていると判定した場合、サービスコンポーネント実行・連携部２４は、更新されたサービスコンポーネントに切換え（ステップＳｃ７）、ステップＳｃ１１に進む。
サービスコンポーネント実行・連携部２４は、ステップＳｃ６において、再起動を経ていないと判定した場合、実行段階第１付加情報検知部３０に第１の付加情報の有無判定要求を出力する。実行段階第１付加情報検知部３０は、カテゴリごとに、第１の付加情報の有無を判定する（ステップＳｃ８）。実行段階第１付加情報検知部３０は、実行対象のカテゴリに第１の付加情報が付与されていないと判定した場合は、ステップＳｃ１１に進む。
【００８８】
ステップＳｃ８において、実行段階第１付加情報検知部３０が、実行対象のカテゴリに第１の付加情報が付与されていると判定した場合、上述したように、実行段階第１付加情報検知部３０は、ステップＳｃ１０−１に示す再検出の起動と、ステップＳｃ１０−２に示す再選択の起動とのうち、予め設定されているいずれか一方の処理を実行させる（ステップＳｃ９）。
【００８９】
予め、サービスコンポーネント検出部２２における再検出の処理を行うこととして設定されている場合、実行段階第１付加情報検知部３０は、再検出起動部３２にサービスコンポーネントの再検出要求をサービスコンポーネント検出部２２へ出力させ（ステップＳｃ１０−１）、ステップＳｃ４に進む。
一方、予め、サービスコンポーネント選択部２３における再選択の処理を行うこととして設定されている場合、実行段階第１付加情報検知部３０は、再選択起動部３３にサービスコンポーネントの再選択要求をサービスコンポーネント選択部２３へ出力させ（ステップＳｃ１０−２）、ステップＳｃ５に進む。
【００９０】
サービスコンポーネント実行・連携部２４は、サービスコンポーネントのインタフェース情報を取得し（ステップＳｃ１１）、当該インタフェース情報に基づき、切り換えたサービスコンポーネントの実行・連携処理を行う（ステップＳｃ１２）。サービスコンポーネント実行・連携部２４は、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリのサービスが終了したか否かを判定し（ステップＳｃ１３）、終了の場合はサービス実行結果をユーザ端末装置９に送信し（ステップＳｃ１４）、終了していない場合、ステップＳｃ６に戻る。
【００９１】
次に、第２実施形態におけるサービス連携システム１００の動作全体について、図面を参照して説明する。図９は、図６のサービス連携装置２を含むサービス連携システム１００の動作例を示すシーケンスチャートである。図９は、ユーザ端末装置９、ユーザコンテキスト・ポリシＤＢ装置８、サービス連携装置２、オントロジＤＢ装置４、サービスシナリオＤＢ装置７、サービスコンポーネント情報ＤＢ装置６及びサービスコンポーネント提供装置５間のシーケンスを示している。
【００９２】
ユーザ端末装置９は、サービス連携装置２にサービスシナリオ識別情報を含むサービス提供要求を送信する（ステップＳｄ１）。サービス連携装置２は、サービス提供要求を受信すると、サービスシナリオ識別情報に基づき、サービスシナリオＤＢ装置７からサービスシナリオ読み出し、読み出したサービスシナリオを設定する（ステップＳｄ２）。サービス連携装置２は、上述したように、カテゴリごとに第１の付加情報を付加するか否かを設定する（ステップＳｄ３）。
【００９３】
サービス連携装置２は、サービスシナリオのカテゴリごとに、オントロジＤＢ装置４及びサービスコンポーネント情報ＤＢ装置６を検索することにより、サービスコンポーネントのオペレーションメタデータの候補を検出する（ステップＳｄ４）。サービス連携装置２は、ユーザコンテキスト・ポリシＤＢ装置８が記憶するユーザコンテキスト・ポリシ情報に基づき、ユーザに適するサービスコンポーネントのオペレーションメタデータを選択する（ステップＳｄ５）。
【００９４】
次に、サービス連携装置２は、図８のステップＳｃ６と同様に、実行対象のサービスコンポーネントが、再検出処理又は、再選択処理のいずれかを経ているか否かを判定する（ステップＳｄ６）。再検出処理又は、再選択処理のいずれかを経ていない場合、第１の付加情報の有無を判定する。第１の付加情報が付与されていることを示す判定結果の場合、図８のステップＳｃ９と同様に、予め所定に定められるステップＳｄ４、又は、ステップＳｄ５のいずれかの処理に進む（ステップＳｄ８）。
【００９５】
ここで、再びステップＳｄ４、あるいはステップＳｄ５のいずれかの処理を再度行うことにより、サービスコンポーネントのオペレーションメタデータが更新され、再起動フラグが付与される。再びステップＳｄ６に進んだ場合、サービス連携装置２は、再起動フラグに基づき、再検出処理又は、再選択処理のいずれかを経ているものであると判定し、更新されたサービスコンポーネントに切換え（ステップＳｄ７）、サービスコンポーネント情報ＤＢ装置６を検索して切換えたサービスコンポーネントのインタフェース情報を取得する（ステップＳｄ９）。
【００９６】
サービス連携装置２は、当該インタフェース情報に基づき、サービスコンポーネントの実行をサービスコンポーネント提供装置５に要求し、応答情報を受信し（ステップＳｄ１０）、サービスシナリオに含まれる全カテゴリ（サービス）が終了か否かを判定し（ステップＳｄ１１）、終了の場合、サービス実行結果をユーザ端末装置９に送信し（ステップＳｄ１２）、終了でない場合、ステップＳｄ６に戻る。
【００９７】
なお、ステップＳｄ７において、サービスコンポーネントの切換え時に、パラメータ数の不一致が生じた場合は、パラメータの削除を行ってもよいし、ユーザヘの問合せを行ってもよい。また、同様に、パラメータ型の不一致が生じた場合は、自動キャスト、すなわち、予めサービスコンポーネント実行・連携部２４が内部の記憶領域に記憶するパラメータ型変換方式に従って、パラメータ型を変換することとしてもよい。
【００９８】
上記実施の形態によれば、サービス切換継続処理により、サービスコンポーネントのオペレーションメタデータの選択後実行に入るまでの時間が長くなる場合、あるいは長時間にわたりサービスが継続される場合にあっても、第１の付加情報が付与されるカテゴリ「Ｂ」は、常に更新されたサービスを提供できるようになる。そして、第２実施形態において、第１実施形態と異なり、サービスコンポーネントのオペレーションメタデータを検出する段階、及びサービスコンポーネントのオペレーションメタデータを選択する段階において検出処理及び選択処理を継続せず、サービスコンポーネントの切換を、サービスコンポーネントを実行する段階で、サービスコンポーネントのオペレーションメタデータの検出のやり直し、あるいはサービスコンポーネントのオペレーションメタデータの選択のやり直しを起動するため、第１実施形態に比して処理が減るため、より高速な処理を行うことが可能となる効果がある。
【００９９】
＜第３実施形態＞
次に、第３実施形態によるサービス連携システム１００の全体構成を図面を参照して説明する。図１０は、本実施形態によるサービス連携装置２の内部構成を示すブロック図である。なお、本実施形態においては、図２と同様の構成について、同一の符号を付し、異なる構成について説明する。
【０１００】
第３実施形態における特徴は、サービスコンポーネントの実行結果に基づいて、次のカテゴリのサービスコンポーネントの切換えの有無を判定し、切換対象となるカテゴリに付加情報を付与しておくことにより、実行結果を反映させたサービスコンポーネントのオペレーションメタデータの検出、あるいはサービスコンポーネントのオペレーションメタデータの選択を行う点である。
【０１０１】
サービス連携装置２は、サービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４、第２付加情報設定部３４、条件付検出起動部３５、条件付選択起動部３６、実行段階第２付加情報検知部３７、サービスコンポーネント切換部３１を備える。
第２付加情報設定部３４は、サービスシナリオ設定部２１が設定するサービスシナリオのカテゴリに第２の付加情報を付与する第２付加情報設定手段を有する。第２の付加情報は、サービスコンポーネントの実行結果に基づき、次の実行対象のカテゴリのサービスコンポーネントの切換え対象であるか否かを判定し、切換対象のカテゴリに付与する。
【０１０２】
第２の付加情報の設定は、例えば、第２付加情報設定部３４が、内部の記憶領域に予め第２の付加情報の付与対象となる場合の実行結果に対応付けたカテゴリ識別情報を第２付加情報付与対象カテゴリ名として予め、サービス連携装置２の管理者などに入力され、記憶し、この情報に基づき、次の実行対象のカテゴリのサービスコンポーネントの切換え対象であるか否かを判定することとする。
なお、第２の付加情報の付与対象となるか否かは、ユーザ端末装置９が送信するサービス提供要求に含まれる情報に含まれていてもよい。
【０１０３】
条件付検出起動部３５は、実行段階第２付加情報検知部３７が第２の付加情報を検知した場合、サービスコンポーネントの実行結果に基づき、サービスコンポーネントのオペレーションメタデータの検出条件を設定する。また、条件付検出起動部３５は、設定した検出条件に基づき、次の実行対象のカテゴリの再検出要求をサービスコンポーネント検出部２２に出力する。
条件付選択起動部３６は、実行段階第２付加情報検知部３７が第２の付加情報を検知した場合、サービスコンポーネントの実行結果に基づき、サービスコンポーネントのオペレーションメタデータの選択条件を設定する。また、条件付選択起動部３６は、設定した選択条件に基づき、次の実行対象のカテゴリの再選択要求をサービスコンポーネント選択部２３に出力する。
実行段階第２付加情報検知部３７は、サービスコンポーネント実行・連携部２４がサービスコンポーネントを実行する段階において、実行対象のカテゴリの第２の付加情報が付与されているか否かを判定する。
【０１０４】
次に、第３実施形態におけるサービス連携システム１００の概略的な処理の流れの一例を図を用いて説明する。図１１は、本実施形態のサービス連携システム１００において、主にサービス連携装置２が行う処理の流れを示す概念図である。
なお、図１１において、処理の概略を説明するために、サービス連携装置２のサービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４以外の構成を省略して図示している。
【０１０５】
図１１のサービス連携装置２において、サービスシナリオ設定部２１が、ユーザ端末装置９から受信するサービス提供要求に含まれるサービスシナリオ識別情報に基づき、サービスシナリオがサービスシナリオ設定部２１に設定された場合を示している。ここで、例えば、サービスシナリオの例として、カテゴリ「Ａ」〜カテゴリ「Ｃ」が記述されているサービスシナリオであり、サービスシナリオのカテゴリ「Ｂ」が第２の付加情報「＊＊」の付与対象カテゴリであるサービスシナリオを例に説明する。
【０１０６】
本実施形態のサービス連携装置２において、サービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３が行うオペレーションメタデータの検出「Ａ」〜「Ｃ」、選択「Ａ」〜「Ｃ」は、図１４に示す従来例と同様の処理であるため、本実施形態における特徴的な処理であるカテゴリ「Ｂ」に関する処理の概略を説明する。
【０１０７】
カテゴリ「Ｂ」のサービスコンポーネントを実行する段階において、実行段階第２付加情報検知部３７は、実行対象のカテゴリ「Ｂ」に第２の付加情報「＊＊」があると判定し、以下のいずれかの処理を行う。
第１の処理として、実行段階第２付加情報検知部３７は、条件付検出起動部３５に、サービスコンポーネントの実行結果を含む検出条件設定要求を出力する。
第２の処理として、実行段階第２付加情報検知部３７は、条件付選択起動部３６に、サービスコンポーネントの実行結果を含む選択条件設定要求を出力する。
上記第１の処理又は、第２の処理のいずれを行うかは、予めサービス連携装置２の管理者によって設定されていても良いし、ユーザ端末装置９から受信するサービス提供要求に含まれていることとしてもよい。
【０１０８】
実行段階第２付加情報検知部３７が、第１の処理を行う場合、サービスコンポーネント検出部２２は、条件付検出起動部３５から入力される検出条件に基づき、サービスコンポーネントのオペレーションメタデータの再検出を行い（検出Ｃ）、サービスコンポーネント選択部２３に検出結果を出力する。サービスコンポーネント選択部２３は、入力される検出結果に基づき実行対象のサービスコンポーネントのオペレーションメタデータを選択し（選択Ｃ）、サービスコンポーネント実行・連携部２４に選択結果を出力する。サービスコンポーネント実行・連携部２４は、選択Ｃに基づき、インタフェース情報を取得し（インタフェース情報取得Ｃ）、サービスコンポーネントの実行を行う（実行Ｃ）。
【０１０９】
実行段階第２付加情報検知部３７が、第２の処理を行う場合、サービスコンポーネント選択部２３は、条件付選択起動部３６から入力される選択条件に基づき、サービスコンポーネントのオペレーションメタデータの再選択を行い（選択Ｃ）、サービスコンポーネント実行・連携部２４に選択結果を出力する。サービスコンポーネント実行・連携部２４は、選択Ｃに基づき、インタフェース情報を取得し（インタフェース情報取得Ｃ）、サービスコンポーネントの実行を行う（実行Ｃ）。
【０１１０】
次に、第３実施形態におけるサービス連携装置２の処理の流れをフローチャートを用いて説明する。図１２は、第２実施形態における図１１のサービス連携装置２の処理フローを示す。
サービス連携装置２において、サービスシナリオ設定部２１は、ユーザ端末装置９からサービスシナリオを含むサービス提供要求を受信する（ステップＳｅ１）。サービスシナリオ設定部２１は、受信したサービス提供要求のサービスシナリオを設定し（ステップＳｅ２）、第１付加情報設定部２５が、サービスシナリオに記述されるカテゴリ名に基づき、第１の付加情報を設定する（ステップＳｅ３）。
【０１１１】
次に、サービスシナリオ設定部２１に設定されるサービスシナリオのカテゴリごとに実行される、ステップＳｅ４からステップＳｅ５の処理について説明する。サービスコンポーネント検出部２２は、カテゴリごとに、実行対象のサービスコンポーネントの候補のオペレーションメタデータを検出し、検出結果をサービスコンポーネント選択部２３に出力する（ステップＳｅ４）。
【０１１２】
サービスコンポーネント選択部２３は、サービスコンポーネント検出部２２から入力されるオペレーションメタデータの候補のうち、利用対象のサービスコンポーネントのオペレーションメタデータを選択し、選択結果をサービスコンポーネント実行・連携部２４に出力する（ステップＳｅ５）。以上、ステップＳｅ４からステップＳｅ５の処理が、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリについて繰り返される。
【０１１３】
次に、サービスコンポーネント実行・連携部２４は、実行対象のサービスコンポーネントが、後述するステップＳｅ１３、又は、ステップＳｅ１４の条件付起動処理を経てサービスコンポーネント選択部２３から入力されたか否かを判定する（ステップＳｅ６）。
この判定は、例えば、ステップＳｅ１３、又は、ステップＳｅ１４を実行する際に、条件付起動処理を経たことを示す条件付起動フラグをサービスコンポーネント検出部２２、又は、サービスコンポーネント選択部２３に出力し、サービスコンポーネント選択部２３が条件付起動フラグを付与して選択結果をサービスコンポーネント実行・連携部２４に出力する。この条件付起動フラグの有無に基づき、サービスコンポーネント実行・連携部２４が、ステップＳｅ６の判定を行うことでもよい。
【０１１４】
ステップＳｅ６において、サービスコンポーネント実行・連携部２４が、条件付起動を経ていると判定した場合、サービスコンポーネント実行・連携部２４は、更新されたサービスコンポーネントに切換え（ステップＳｅ７）、ステップＳｅ８に進む。
サービスコンポーネント実行・連携部２４は、ステップＳｃ６において、再起動を経ていないと判定した場合、ステップＳｅ８に進む。
サービスコンポーネント実行・連携部２４は、サービスコンポーネントのインタフェース情報を取得し（ステップＳｅ８）、当該インタフェース情報に基づき、切り換えたサービスコンポーネントの実行・連携処理を行う（ステップＳｅ９）。
また、サービスコンポーネント実行・連携部２４は、実行段階第２付加情報検知部３７に第２の付加情報の有無判定要求を出力する。実行段階第２付加情報検知部３７は、カテゴリごとに、第２の付加情報の有無を判定する（ステップＳｅ１０）。実行段階第２付加情報検知部３７は、実行対象のカテゴリに第２の付加情報が付与されていないと判定した場合は、ステップＳｅ１５に進む。
【０１１５】
ステップＳｅ１０において、実行段階第２付加情報検知部３７が、実行対象のカテゴリに第２の付加情報が付与されていると判定した場合、上述したように、実行段階第２付加情報検知部３７は、ステップＳｅ１１に示す検出条件設定と、ステップＳｅ１２に示す選択条件設定とのうち、予め設定されているいずれか一方の処理を実行させる。
【０１１６】
予め、検出条件設定の処理を行うこととして設定されている場合、実行段階第２付加情報検知部３７は、条件付検出起動部３５にサービスコンポーネントの実行結果を含む検出条件設定要求を出力し、条件付検出起動部３５が検出条件設定要求に基づき、検出条件を設定し（ステップＳｅ１１）、サービスコンポーネント検出部２２に検出条件を含むサービスコンポーネントのオペレーションメタデータの検出要求を出力し（ステップＳｅ１３）、ステップＳｅ４に進む。
一方、予め、選択条件設定の処理を行うこととして設定されている場合、実行段階第２付加情報検知部３７は、条件付選択起動部３６にサービスコンポーネントの実行結果を含む選択条件設定要求を出力し、条件付選択起動部３６が選択条件設定要求に基づき、選択条件を設定し（ステップＳｅ１２）、サービスコンポーネント選択部２３に選択条件を含むサービスコンポーネントのオペレーションメタデータの選択要求を出力し（ステップＳｅ１４）、ステップＳｅ５に進む。
【０１１７】
ステップＳｅ１０において、実行段階第２付加情報検知部３７が、実行対象のカテゴリに第２の付加情報が付与されていないと判定した場合、サービスコンポーネント実行・連携部２４は、サービスシナリオ設定部２１が設定するサービスシナリオに記述される全カテゴリのサービスが終了したか否かを判定し（ステップＳｅ１５）、終了の場合はサービス実行結果をユーザ端末装置９に送信し（ステップＳｅ１６）、終了していない場合、ステップＳｅ６に戻る。
【０１１８】
次に、第３実施形態におけるサービス連携システム１００の動作全体について、図面を参照して説明する。図１３は、図１０のサービス連携装置２を含むサービス連携システム１００の動作例を示すシーケンスチャートである。図１３は、ユーザ端末装置９、ユーザコンテキスト・ポリシＤＢ装置８、サービス連携装置２、オントロジＤＢ装置４、サービスシナリオＤＢ装置７、サービスコンポーネント情報ＤＢ装置６及びサービスコンポーネント提供装置５間のシーケンスを示している。
【０１１９】
ユーザ端末装置９は、サービス連携装置２にサービスシナリオ識別情報を含むサービス提供要求を送信する（ステップＳｆ１）。サービス連携装置２は、サービス提供要求を受信すると、サービスシナリオ識別情報に基づき、サービスシナリオＤＢ装置７からサービスシナリオ読み出し、読み出したサービスシナリオを設定する（ステップＳｆ２）。サービス連携装置２は、上述したように、カテゴリごとに第２の付加情報を付加するか否かを設定する（ステップＳｆ３）。
【０１２０】
サービス連携装置２は、サービスシナリオのカテゴリごとに、オントロジＤＢ装置４及びサービスコンポーネント情報ＤＢ装置６を検索することにより、サービスコンポーネントのオペレーションメタデータの候補を検出する（ステップＳｆ４）。サービス連携装置２は、ユーザコンテキスト・ポリシＤＢ装置８が記憶するユーザコンテキスト・ポリシ情報に基づき、ユーザに適するサービスコンポーネントのオペレーションメタデータを選択する（ステップＳｆ５）。
【０１２１】
次に、サービス連携装置２は、図１２のステップＳｅ６と同様に、実行対象のサービスコンポーネントが、条件付起動処理を経ているか否かを判定する（ステップＳｆ６）。実行対象のサービスコンポーネントが、条件付起動処理を経ていない場合、ステップＳｆ８に進み、実行対象のサービスコンポーネントが、条件付起動処理を経ている場合、更新されたサービスコンポーネントに切換え（ステップＳｄ７）、サービスコンポーネント情報ＤＢ装置６を検索してサービスコンポーネントのインタフェース情報を取得する（ステップＳｆ８）。サービス連携装置２は、当該インタフェース情報に基づき、サービスコンポーネントの実行をサービスコンポーネント提供装置５に要求し、応答情報を受信する（ステップＳｆ９）。次に、サービス連携装置２は、第２の付加情報の有無を判定する（ステップＳｆ１０）。
【０１２２】
ステップＳｆ１０において、第２の付加情報が付与されていることを示す判定結果の場合、図１２のステップＳｅ１１又はＳｅ１２と同様に、検出条件又は選択条件の設定を行う（ステップＳｆ１１）。
予め、検出条件設定の処理を行うこととして設定されている場合、検出条件に基づき、ステップＳｆ４のサービスコンポーネントのオペレーションメタデータの検出処理を行う。
一方、予め、選択条件設定の処理を行うこととして設定されている場合、選択条件に基づき、ステップＳｆ５のサービスコンポーネントのオペレーションメタデータの選択処理を行う。
【０１２３】
ステップＳｆ１０において、第２の付加情報が付与されていないことを示す判定結果の場合、サービス連携装置２は、サービスシナリオに含まれる全カテゴリ（サービス）が終了か否かを判定し（ステップＳｆ１２）、終了の場合、サービス実行結果をユーザ端末装置９に送信し（ステップＳｆ１３）、終了でない場合、ステップＳｆ６に戻る。
【０１２４】
なお、ステップＳｆ７にあっては、パラメータ数の不一致が生じた場合は、パラメータの削除あるいはユーザ端末装置９ヘの問合せを行ってもよい。また、パラメータ型の不一致が生じた場合は、自動キャスト処理を行ってもよい。
なお、上述した第１の付加情報、第２の付加情報は、例えば、フラグ情報などであってもよい。
【０１２５】
上記に述べたとおり、第３実施形態によれば、実行した結果により次のカテゴリのサービスコンポーネントの切換えが必要になるカテゴリに付加情報を付けておくことにより、サービスコンポーネントの実行結果を反映させて、次の実行対象のカテゴリのサービスコンポーネントのオペレーションメタデータの検出、あるいはサービスコンポーネントのオペレーションメタデータの選択条件を設定することができる。また付加情報が付与されたカテゴリのみ処理だけですむことから処理負担が抑えられるものである。
【０１２６】
上述した、実施形態においては、例えば継続処理の例として、例えば、図２の検出段階更新継続部２７が、サービスコンポーネント検出部２２に、予め定める所定周期ごとにオペレーションメタデータの検出処理を行わせることとしたが、これに限らず、例えば、サービスコンポーネント検出部２２が、オントロジＤＢ装置４や、サービスコンポーネント情報ＤＢ装置６から、データベースの内容の更新通知を、受信した場合、サービスコンポーネント検出部２２がサービスコンポーネントの検出処理を再度行う構成としてもよい。
同様に、ユーザコンテキスト・ポリシＤＢ装置８からのデータベースの内容の更新通知を受信した場合に、サービスコンポーネント選択部２３は、サービスコンポーネントの選択処理を再度行う構成としてもよい。また、サービスコンポーネント実行・連携部２４が、サービスコンポーネント情報ＤＢ装置６、又は、サービスコンポーネント提供装置５から、インタフェース情報を再検出する構成としてもよい。
なお、本発明は、図１〜図１３を用いて説明した形態に限定されるものではなく、その主旨を逸脱しない範囲において種々変更可能である。
【０１２７】
なお、上述のサービス連携装置２は、内部にコンピュータシステムを有している。そして、サービス連携装置２のサービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４、第１付加情報設定部２５、検出段階第１付加情報検知部２６、検出段階更新継続部２７、選択段階第１付加情報検知部２８、選択段階更新継続部２９、実行段階第１付加情報検知部３０、サービスコンポーネント切換部３１、再検出起動部３２、再選択起動部３３、第２付加情報設定部３４、条件付検出起動部３５、条件付選択起動部３６、実行段階第２付加情報検知部３７の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【０１２８】
また、図４、５、８、９、１２、１３に示す各ステップを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、また、図２、６、１０に示すサービス連携装置２の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、連携サービスの実行中において、ユーザにとって、より適したサービスコンポーネントに切り換える処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
【０１２９】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【０１３０】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
【０１３１】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【産業上の利用可能性】
【０１３２】
上記に説明したとおり、本発明が産業上の利用が可能であることは明らかである。即ちエンドユーザにとっては、最近の状況に応じて最適なサービスが提供してもらえることから安心して使うことができるようになり、サービス提供者にとっては、実行時の状況に応じてサービスコンポーネントをバインド（連携）することができ、ユーザの状況にフィットしたサービスが提供でき、ユーザの満足度を上げることができることから、サービスの利用拡大、システム及び関連装置の需要が一層高まることが期待できる。
【図面の簡単な説明】
【０１３３】
【図１】本発明の第１実施形態におけるサービス連携システム１００の構成例を示すブロック図である。
【図２】同実施形態におけるサービス連携装置２の構成例を示すブロック図である。
【図３】同実施形態におけるサービス切換継続処理例を説明するための概念図である。
【図４】同実施形態におけるサービス連携装置２の動作例を示すフローチャートである。
【図５】同実施形態におけるサービス連携システム１００の動作例を示すシーケンスチャートである。
【図６】本発明の第２実施形態におけるサービス連携装置２の構成例を示すブロック図である。
【図７】同実施形態におけるサービス切換継続処理例を説明するための概念図である。
【図８】同実施形態におけるサービス連携エンジンの動作例を示すフローチャートである。
【図９】同実施形態におけるサービス連携システム１００の動作例を示すシーケンスチャートである。
【図１０】本発明の第３実施形態におけるサービス連携装置２の構成例を示すブロック図である。
【図１１】同実施形態におけるサービス切換継続処理例を説明するための概念図である。
【図１２】同実施形態におけるサービス連携装置２の動作例を示すフローチャートである。
【図１３】同実施形態におけるサービス連携システム１００の動作例を示すシーケンスチャートである。
【図１４】従来のサービス連携処理を説明するための概念図である。
【符号の説明】
【０１３４】
１  ネットワーク
２  サービス連携装置
２１  サービスシナリオ設定部
２２  サービスコンポーネント検出部
２３  サービスコンポーネント選択部
２４  サービスコンポーネント実行・連携部
２５  第１付加情報設定部
２６  検出段階第１付加情報検知部
２７  検出段階更新継続部
２８  選択段階第１付加情報検知部
２９  選択段階更新継続部
３０  実行段階第１付加情報検知部
３１  サービスコンポーネント切換部
３２  再検出起動部
３３  再選択起動部
３４  第２付加情報設定部
３５  条件付検出起動部
３６  条件付選択起動部
３７  実行段階第２付加情報検知部
４  オントロジＤＢ装置
５  サービスコンポーネント提供装置
５ａ  サービスコンポーネント提供装置
５ｂ  サービスコンポーネント提供装置
５ｃ  サービスコンポーネント提供装置
６  サービスコンポーネント情報ＤＢ装置
７  サービスシナリオＤＢ装置
８  ユーザコンテキスト・ポリシＤＢ装置
９  ユーザ端末装置
【図１】
2008269470.tif 000003
【図２】
2008269470.tif 000004
【図３】
2008269470.tif 000005
【図４】
2008269470.tif 000006
【図５】
2008269470.tif 000007
【図６】
2008269470.tif 000008
【図７】
2008269470.tif 000009
【図８】
2008269470.tif 000010
【図９】
2008269470.tif 000011
【図１０】
2008269470.tif 000012
【図１１】
2008269470.tif 000013
【図１２】
2008269470.tif 000014
【図１３】
2008269470.tif 000015
【図１４】
2008269470.tif 000016