(57)【要約】【課題】Ｇｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等の更新に追従可能とする。【解決手段】インタフェース情報取得起動部２６は、実行段階検知部２５により、選択したサービスコンポーネントが実行段階であることが検知されると、サービスコンポーネント実行・連携部２４に対して、オペレーションのインタフェース情報の取得動作を起動させる。また、再選択起動部２７は、サービスコンポーネント選択部２３に対して、サービスコンポーネントのオペレーションメタデータの再選択動作を起動させ、再検出起動部２８は、サービスコンポーネント検出部２２に対して、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる。【選択図】図２
2008276577.tif 000002
【特許請求の範囲】
【請求項１】
指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するインタフェース解決方法であって、
前記指定されたサービスシナリオに記述されたメタデータに基づき、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出ステップと、
前記サービスコンポーネント検出ステップで検出されたサービスコンポーネント群のオペレーションメタデータに基づき、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択ステップと、
前記サービスコンポーネント選択ステップで選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携ステップと、
前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知ステップと、
前記実行段階検知ステップにおいて実行段階が検知されると、前記サービスコンポーネント実行・連携ステップに対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動ステップと
を含むことを特徴とするインタフェース解決方法。
【請求項２】
前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント選択ステップに対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動ステップ、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出ステップに対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動ステップのいずれかを更に含むことを特徴とする請求項１記載のインタフェース解決方法。
【請求項３】
前記実行段階検知ステップは、前記連携サービスの処理時間を測定し、
前記実行段階検知ステップによる測定時間が第１の特定時間以上になった場合には、前記再選択起動ステップを選択的に起動し、
前記実行段階検知ステップによる測定時間が第２の特定時間以上になった場合には、前記再検出起動ステップを選択的に起動することを特徴とする請求項２記載のインタフェース解決方法。
【請求項４】
前記実行段階検知ステップは、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを、現在実行しているサービスコンポーネントの実行が終了したことにより検知することを特徴とする請求項１から請求項３のいずれかの項に記載のインタフェース解決方法。
【請求項５】
指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するサービス連携装置であって、
前記指定されたサービスシナリオに記述されたメタデータに基づいて、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出手段と、
前記サービスコンポーネント検出手段により検出されたサービスコンポーネント群のオペレーションメタデータに基づいて、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択手段と、
前記サービスコンポーネント選択手段により選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携手段と、
前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知手段と、
前記実行段階検知手段により実行段階が検知されると、前記サービスコンポーネント実行・連携手段に対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動手段と
を具備することを特徴とするサービス連携装置。
【請求項６】
前記実行段階検知手段で実行段階が検知されると、前記サービスコンポーネント選択手段に対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動手段、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出手段に対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動手段のいずれかを更に具備することを特徴とする請求項５記載のサービス連携装置。
【請求項７】
前記実行段階検知手段は、前記連携サービスの処理時間を測定し、第１の特定時間以上になった場合には、その旨を前記再選択起動手段に通知する一方、第２の特定時間以上になった場合には、その旨を前記再検出起動手段に通知し、
前記再選択起動手段は、前記実行段階検知手段から通知を受けると、前記サービスコンポーネントのオペレーションメタデータを再選択し、
前記再検出起動手段は、前記実行段階検知手段から通知を受けると、前記サービスコンポーネントのオペレーションメタデータを再検出することを特徴とする請求項６記載のサービス連携装置。
【請求項８】
指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するサービス連携装置として用いられるコンピュータに、
前記指定されたサービスシナリオに記述されたメタデータに基づき、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出ステップと、
前記サービスコンポーネント検出ステップで検出されたサービスコンポーネント群のオペレーションメタデータに基づき、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択ステップと、
前記サービスコンポーネント選択ステップで選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携ステップと、
前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知ステップと、
前記実行段階検知ステップにおいて実行段階が検知されると、前記サービスコンポーネント実行・連携ステップに対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動ステップと
を実行させることを特徴とするサービス連携プログラム。
【請求項９】
前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント選択ステップに対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動ステップ、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出ステップに対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動ステップのいずれかを更に実行させることを特徴とする請求項８記載のサービス連携プログラム。
【請求項１０】
前記実行段階検知ステップは、前記連携サービスの処理時間を測定し、
前記実行段階検知ステップによる測定時間が第１の特定時間以上になった場合には、前記再選択起動ステップを選択的に起動し、
前記実行段階検知ステップによる測定時間が第２の特定時間以上になった場合には、前記再検出起動ステップを選択的に起動することを特徴とする請求項９記載のサービス連携プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスコンポーネントのインタフェースを動的に解決するインタフェース解決方法、サービス連携装置及びサービス連携プログラムに関する。
【背景技術】
【０００２】
従来のインタフェース解決技術としては、個々のＷＳ（Web Service）を連携させるときに用いられるＢＰＥＬ（Business Process Execution Language for Web Services）がある（例えば、非特許文献１参照）。本ＢＰＥＬは、複数のＷＳを順に呼び出して実行する手順を一連のビジネスの流れとして記述するための言語である。これにより、「注文を受け付ける」、「在庫を確認する」といった一連のビジネス・プロセスの中で、「いつ」、「どのような条件のときに」、「どのＷＳを呼び出すか」を定義することが可能になる。
【０００３】
しかしながら、ＢＰＥＬは、本来、Ｂ２Ｂ（Business to Business）を対象にしたものであり、予め利用するＷＳを決定し、それに合わせたサービスフローであるＢＰＥＬ文書と接続定義とを、ＢＰＥＬ実行エンジンにデプロイする必要がある。このため、一般のユーザがユーザの状況に応じてＷＳを選択し、バインドして実行することは困難である（すなわち、予め利用するＷＳを決められない）。
【０００４】
また、他のインタフェース技術としては、サービスや、ネットワークなどを構成するためのより小さな単位である「機能」を基本単位とし、該基本単位である「機能」を、「機能」に関するメタデータを利用して動的に組み合わせ、サービスや、ネットワークなどを構築するものがある。これにより、ユーザや、ネットワークなどの状況に適用するような柔軟性を持つサービス環境が実現できることになる（例えば、非特許文献２参照）。
【０００５】
しかしながら、メタデータと「機能」とのインタフェースに名前を付けて処理するものであることから、メタデータを選択すると、選択と同時にメタデータと「機能」との間のインタフェースも固定されることになる。このため、例えば、メタデータの選択後に「機能」が変更されたとしても、変更に追従することができない。
【０００６】
また、他のインタフェース技術としては、ネットワーク上のサービス機能要素であるサービスコンポーネントをユーザの状況に応じて連携することで、ユーザに適切なサービスを提供するものがある。この場合、サービスコンポーネントの機能動作（オペレーション）を、メタデータ情報（オペレーションメタデータ）を用いて抽象的に記述することで、インタフェースは異なるが、オペレーションが同等である、選択の候補となるサービスコンポーネントのオペレーションメタデータを幅広く検出し、それらの中から利用するサービスコンポーネントのオペレーションメタデータを選択し、選択したサービスコンポーネントのオペレーションメタデータとオペレーションのインタフェース情報との間のマッピング情報により、オペレーションのインタフェース情報を取得するものである。
【０００７】
ここでのオペレーションメタデータの記述には、ＯＷＬ−Ｓ（Web Ontology Language for Services）が適用されている（例えば、非特許文献３参照）。ＯＷＬ−Ｓは、Ｐｒｏｆｉｌｅと、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌと、Ｇｒｏｕｎｄｉｎｇとの３つの記述からなる。Ｐｒｏｆｉｌｅ記述には、どのようなサービスを提供するかを記述し、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述には、サービスコンポーネントのオペレーションがどのようなオペレーションであるかを抽象化して表わしたＡｔｏｍｉｃ  Ｐｒｏｃｅｓｓや、Ａｔｏｍｉｃ  Ｐｒｏｃｅｓｓのパラメータを記述し、Ｇｒｏｕｎｄｉｎｇ記述には、どのようにサービスにアクセスするか、すなわち、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述と実際のオペレーションのインタフェース情報とのマッピング情報を記述している。
【０００８】
図６は、上述した従来技術によるインタフェース解決処理を説明するための図である。同図は、サービス連携エンジン２が、ユーザ端末装置８から送出されるサービス提供依頼に含まれるサービスシナリオを受信する等により、カテゴリＡ〜カテゴリＣが記述されたサービスシナリオがサービスシナリオ設定部２１に設定された場合を示している。
【０００９】
サービスコンポーネント検出部２２は、サービスシナリオに記述されたカテゴリ名及びオペレーションメタデータに基づいて、選択の候補となるサービスコンポーネントのオペレーションメタデータ（Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述）を検出する（検出Ａ〜検出Ｃ）。次に、サービスコンポーネント選択部２３は、上記候補の中から利用するサービスコンポーネントのオペレーションメタデータを選択する（選択Ａ〜選択Ｃ）。
【００１０】
次に、サービスコンポーネント実行・連携部２４は、選択されたサービスコンポーネントのオペレーションメタデータとオペレーションのインタフェース情報間のマッピング情報（Ｇｒｏｕｎｄｉｎｇ記述）により、オペレーションのインタフェース情報を取得し（インタフェース情報取得Ａ〜インタフェース情報取得Ｃ）、インタフェース情報に基づきサービスコンポーネント提供装置４ａ〜４ｃに対して、順番にサービスコンポーネントの実行を要求し（実行Ａ〜実行Ｃ）、連携し、依頼サービス実行結果をユーザ端末装置８に送出する。
【００１１】
これにより、サービスシナリオに記述されたカテゴリに基づき、カテゴリ毎にサービスコンポーネントのオペレーションメタデータを選択し、選択したサービスコンポーネントのオペレーションのインタフェース情報を取得することが可能になる（例えば、非特許文献４参照）。
【００１２】
しかしながら、上述した従来技術では、サービスコンポーネントのオペレーションメタデータの選択が行われると、続いてＧｒｏｕｎｄｉｎｇ記述によりインタフェース情報を取得するものであり、すなわち、選択と同時に取得するものであることから、選択から実行までのサービス連携の処理時間が長くなり、その間にＧｒｏｕｎｄｉｎｇ記述が更新される場合があっても、更新に追従できない。
【００１３】
上述した通り、これらの従来技術によるインタフェース解決技術では、サービスコンポーネントのオペレーションメタデータの選択と同時にインタフェース情報を取得するものであるため、選択から実行までのサービス連携の処理時間が長くなる場合に、その間にＧｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等が更新されても、更新に追従できない。
【非特許文献１】Business Process Execution Language，［平成１９年３月２６日検索］，インターネット<http://www.oasis-open.org/committees/download.php/18714/wsbpel-specification-draft-Mayl7.htm>
【非特許文献２】南  正輝、森川  博之、青山  友紀，“動的でアドホックなネットワークサービスフレームワークの検討〜ネットワークサービスシンセサイザＳＴＯＮＥ〜”，DICOM02000，２０００年６月，＜http://www.mlab.t.u-tokyo.ac.jp/publications/pdf/dicomo/2000/minami.pdf＞
【非特許文献３】ＯＷＬ−Ｓ  ｗｅｂ  ｓｉｔｅ，［平成１９年３月２６日検索］，インターネット<URL:http://www.daml.org/services/owl-s/1.1>
【非特許文献４】山登  庸次、中辻  真、須永  宏，“ユビキタス環境で動的にサービスを実現するためのサービス合成技術”，情報処理学会論文誌、第４８巻第２号別冊、ｐｐ．５６２−５７７，２００７年２月
【発明の開示】
【発明が解決しようとする課題】
【００１４】
上述した従来技術によるインタフェース解決技術にあっては、サービスコンポーネントのオペレーションメタデータの選択と同時にインタフェース情報を取得するため、サービスコンポーネントのオペレーションメタデータの選択から実行までのサービス連携の処理時間が長くなる場合に、その間にＧｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等が更新されても、更新に追従できないという問題がある。
【００１５】
すなわち、図６に示すように、実行Ａが終了する前に取得したインタフェース情報Ｂ、Ｃを用いて実行Ｂ、Ｃが行われる。よって、実行Ａの間にインタフェース情報Ｂ、Ｃや、検出Ｂ、Ｃ、選択Ｂ、Ｃなどに影響する変更がＧｒｏｕｎｄｉｎｇ記述や、サービスコンポーネントに対して行われたとしても、実行に反映されないことになる。
【００１６】
本発明は、このような事情を考慮してなされたものであり、その目的は、Ｇｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等の更新に追従できるインタフェース解決方法、サービス連携装置及びサービス連携プログラムを提供することにある。
【課題を解決するための手段】
【００１７】
上述した課題を解決するために、本発明は、指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するインタフェース解決方法であって、前記指定されたサービスシナリオに記述されたメタデータに基づき、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出ステップと、前記サービスコンポーネント検出ステップで検出されたサービスコンポーネント群のオペレーションメタデータに基づき、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択ステップと、前記サービスコンポーネント選択ステップで選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携ステップと、前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知ステップと、前記実行段階検知ステップにおいて実行段階が検知されると、前記サービスコンポーネント実行・連携ステップに対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動ステップとを含むことを特徴とするインタフェース解決方法である。
【００１８】
本発明は、上記の発明において、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント選択ステップに対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動ステップ、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出ステップに対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動ステップのいずれかを更に含むことを特徴とする。
【００１９】
本発明は、上記の発明において、前記実行段階検知ステップは、前記連携サービスの処理時間を測定し、前記実行段階検知ステップによる測定時間が第１の特定時間以上になった場合には、前記再選択起動ステップを選択的に起動し、前記実行段階検知ステップによる測定時間が第２の特定時間以上になった場合には、前記再検出起動ステップを選択的に起動することを特徴とする。
【００２０】
本発明は、上記の発明において、前記実行段階検知ステップは、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを、現在実行しているサービスコンポーネントの実行が終了したことにより検知することを特徴とする。
【００２１】
また、上述した課題を解決するために、本発明は、指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するサービス連携装置であって、前記指定されたサービスシナリオに記述されたメタデータに基づいて、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出手段と、前記サービスコンポーネント検出手段により検出されたサービスコンポーネント群のオペレーションメタデータに基づいて、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択手段と、前記サービスコンポーネント選択手段により選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携手段と、前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知手段と、前記実行段階検知手段により実行段階が検知されると、前記サービスコンポーネント実行・連携手段に対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動手段とを具備することを特徴とするサービス連携装置である。
【００２２】
本発明は、上記の発明において、前記実行段階検知手段で実行段階が検知されると、前記サービスコンポーネント選択手段に対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動手段、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出手段に対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動手段のいずれかを更に具備することを特徴とする。
【００２３】
本発明は、上記の発明において、前記実行段階検知手段は、前記連携サービスの処理時間を測定し、第１の特定時間以上になった場合には、その旨を前記再選択起動手段に通知する一方、第２の特定時間以上になった場合には、その旨を前記再検出起動手段に通知し、前記再選択起動手段は、前記実行段階検知手段から通知を受けると、前記サービスコンポーネントのオペレーションメタデータを再選択し、前記再検出起動手段は、前記実行段階検知手段から通知を受けると、前記サービスコンポーネントのオペレーションメタデータを再検出することを特徴とする。
【００２４】
また、上述した課題を解決するために、本発明は、指定されたサービスシナリオに基づき、サービス機能の要素であるサービスコンポーネントを連携して連携サービスを提供する際に、前記サービスコンポーネントのオペレーションを表わすオペレーションメタデータに基づいて前記サービスシナリオを構成するカテゴリ毎に選択したサービスコンポーネントのインタフェースを動的に解決するサービス連携装置として用いられるコンピュータに、前記指定されたサービスシナリオに記述されたメタデータに基づき、当該サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネント群のメタデータを検出するサービスコンポーネント検出ステップと、前記サービスコンポーネント検出ステップで検出されたサービスコンポーネント群のオペレーションメタデータに基づき、前記各カテゴリについて、利用するサービスコンポーネントのオペレーションメタデータを選択するサービスコンポーネント選択ステップと、前記サービスコンポーネント選択ステップで選択されたサービスコンポーネントのオペレーションメタデータに基づいてインタフェース情報を取得し、取得したインタフェース情報により記述されるインタフェースを用いて、前記各カテゴリについて選択された前記サービスコンポーネントを実行させるサービスコンポーネント実行・連携ステップと、前記選択されたオペレーションメタデータに対応したサービスコンポーネントのうち、次に実行すべきカテゴリについて選択されたサービスコンポーネントを実行する段階になったことを検知する実行段階検知ステップと、前記実行段階検知ステップにおいて実行段階が検知されると、前記サービスコンポーネント実行・連携ステップに対して、次に実行すべきカテゴリについて選択されたサービスコンポーネントのオペレーションメタデータに基づいたインタフェース情報の取得動作を起動させるインタフェース情報取得起動ステップとを実行させることを特徴とするサービス連携プログラムである。
【００２５】
本発明は、上記の発明において、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント選択ステップに対して、次に実行すべきカテゴリについて、利用するサービスコンポーネントのオペレーションメタデータの再選択動作を起動させる再選択起動ステップ、あるいは、前記実行段階検知ステップで実行段階が検知されると、前記サービスコンポーネント検出ステップに対して、次に実行すべきカテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる再検出起動ステップのいずれかを更に実行させることを特徴とする。
【００２６】
本発明は、上記の発明において、前記実行段階検知ステップは、前記連携サービスの処理時間を測定し、前記実行段階検知ステップによる測定時間が第１の特定時間以上になった場合には、前記再選択起動ステップを選択的に起動し、前記実行段階検知ステップによる測定時間が第２の特定時間以上になった場合には、前記再検出起動ステップを選択的に起動することを特徴とする。
【発明の効果】
【００２７】
この発明によれば、前記指定されたサービスシナリオに基づいてサービスコンポーネントを検出し、該検出されたサービスコンポーネントのオペレーションメタデータを選択し、該選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得して実行する際に、選択したサービスコンポーネントを実行する段階になったことを検知し、実行段階が検知されると、オペレーションのインタフェース情報の取得動作を起動させる。これにより、サービスコンポーネントの実行段階になったときに、実際のインタフェースに変換してバインドすることが可能となるため、サービスコンポーネントのオペレーションメタデータの選択から実行までのサービス連携の処理時間が長くなる場合であっても、Ｇｒｏｕｎｄｉｎｇ記述やインタフェース情報の更新に追従してオペレーションメタデータを実行させることができるという利点が得られる。
【００２８】
また、本発明によれば、実行段階が検知されると、サービスコンポーネントのオペレーションメタデータの再選択動作を起動させるか、あるいは、選択の候補となるサービスコンポーネントのオペレーションメタデータの再検出動作を起動させる。したがって、サービスコンポーネントのオペレーションメタデータの選択から実行までのサービス連携の処理時間が長くなる場合であっても、Ｇｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等の更新に追従してオペレーションメタデータを実行させることができるという利点が得られる。
【００２９】
また、本発明によれば、サービス連携の処理時間を測定し、第１の特定時間以上になった場合には、サービスコンポーネントのオペレーションメタデータを再選択し、測定時間が第２の特定時間以上になった場合には、サービスコンポーネントのオペレーションメタデータを再検出する。したがって、サービスコンポーネントのオペレーションメタデータの選択から実行までのサービス連携の処理時間が長くなる場合であっても、Ｇｒｏｕｎｄｉｎｇ記述や、ユーザコンテキスト等の更新に追従してオペレーションメタデータを実行させることができるという利点が得られる。
【００３０】
上記により、エンドユーザにとっては、最近の状況に応じて最適なサービスを提供してもらえることから安心してサービスを使うことができるようになり、また、サービス提供者にとっては、実行時の状況に応じてサービスコンポーネントをバインドすることができ、ユーザの状況にフィットしたサービスを提供でき、ユーザの満足度を上げることができるようになる、という更なる効果がある。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の一実施形態を、図面を参照して説明する。
【００３２】
（システム構成）
図１は、本発明の実施形態によるサービス提供システムの構成例を示すブロック図である。図１において、サービス提供システムは、ネットワーク１、サービス連携エンジン２、オントロジＤＢ３、サービスコンポーネント提供装置４、サービスコンポーネント情報ＤＢ５、サービスシナリオＤＢ６、ユーザコンテキスト・ポリシＤＢ７、及びユーザ端末装置８から構成されている。
【００３３】
サービス連携エンジン２、オントロジＤＢ３、サービスコンポーネント提供装置４、サービスコンポーネント情報ＤＢ５、サービスシナリオＤＢ６、ユーザコンテキスト・ポリシＤＢ７及びユーザ端末装置８は、ネットワーク１に接続されている。ネットワーク１は、電話交換等の通信ネットワーク、あるいは、インターネット等の情報ネットワーク、あるいは、移動体ネットワーク等のネットワークである。
【００３４】
サービス連携エンジン２は、サービスシナリオに基づいて、選択の候補となるサービスコンポーネントのオペレーションメタデータを検出し、サービスコンポーネントのオペレーションメタデータを選択し、サービスコンポーネントの実行・連携を行うエンジンである。さらに、サービス連携エンジン２は、本発明の特徴であるカテゴリ毎に選択したサービスコンポーネントについて、そのサービスコンポーネントが実行段階になったことにより、インタフェース情報を取得する等の機能を有する。詳細については後述する。
【００３５】
オントロジＤＢ３は、オペレーションメタデータ群を目的毎に分類したカテゴリ、及び、そのカテゴリに登録されたＰｒｏｃｅｓｓ  Ｍｏｄｅｌ記述を蓄積するとともに、カテゴリ間の関係（継承関係あるいは同値関係）を蓄積するデータベースである。サービスコンポーネント提供装置４は、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述等をサービスコンポーネント情報ＤＢ５に、またＰｒｏｃｅｓｓ  Ｍｏｄｅｌ記述をオントロジＤＢ３に登録し、さらに、サービス連携エンジン２からサービスコンポーネントのオペレーションの実行要求を受信してオペレーションを実行し、結果をサービス連携エンジン２に返送する。
【００３６】
サービスコンポーネント情報ＤＢ５は、登録されたＰｒｏｃｅｓｓ  Ｍｏｄｅｌ記述等を蓄積し、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述を検索キーとして、サービスコンポーネントのオペレーションのインタフェース情報の取得先情報等が検索できるデータベースであり、ＯＷＬ−Ｓのサービス記述の発見を支援するものである。サービスシナリオＤＢ６は、サービスシナリオ記述者（図示略）が記述したサービスシナリオを蓄積するデータベースである。ユーザコンテキスト・ポリシＤＢ７は、ユーザのコンテキスト情報及びポリシ情報を蓄積するデータベースである。ユーザ端末装置８は、ユーザが操作する端末装置であり、サービス連携エンジン２にサービス提供依頼を送信し、サービス連携エンジン２から返送される依頼サービス実行の結果を受信する。
【００３７】
なお、同図において、サービスコンポーネント提供装置４及びユーザ端末装置８は、１つずつ示しているが、それぞれ複数存在していてもよい。その場合、サービスコンポーネント提供装置４であれば、サービスコンポーネント提供装置４ａ、サービスコンポーネント提供装置４ｂ、サービスコンポーネント提供装置４ｃのように表わすものとする。
【００３８】
（システム機能）
本サービス提供システムの機能は、サービス連携エンジン２が、ユーザ端末装置８から送出されるサービス提供依頼を受信し、各種のＤＢを検索し、利用するサービスコンポーネントのオペレーションメタデータを選択し、インタフェース情報を取得し、実行・連携を行う場合に、選択から実行までのサービス連携の処理時間が長くなると、その間にＧｒｏｕｎｄｉｎｇ記述が更新されることが考えられる。そこで、サービスコンポーネントが実行される段階になったことを契機に、Ｇｒｏｕｎｄｉｎｇ記述を取得し、取得したＧｒｏｕｎｄｉｎｇ記述に基づいて、インタフェース情報を取得する。また、サービス連携の処理時間が長くなると、ユーザのコンテキストの変更が生じることも考えられるため、サービスコンポーネントのオペレーションメタデータを再選択し、さらに、選択の候補となるサービスコンポーネントのオペレーションメタデータを再検出することを可能にする。
【００３９】
（サービス連携エンジン構成）
次に、上述したサービス提供システムの構成装置の構成について説明する。
図２は、本実施形態によるサービス提供システムのうち、本発明に関係するサービス連携エンジン２の構成例を示すブロック図である。図２は、サービス連携エンジン２の機能のうち、本発明に関る部分のみを概念的に示したものである。なお、図６に示したものと同一または同等の機能要素については同一の符号を付けている。
【００４０】
サービス連携エンジン２は、サービスシナリオに対応するサービスコンポーネントをオントロジＤＢ３と、サービスコンポーネント情報ＤＢ５とユーザコンテキスト・ポリシＤＢ７とから検索し、サービスシナリオ設定部２１と、サービスコンポーネント検出部２２と、サービスコンポーネント選択部２３と、サービスコンポーネント実行・連携部２４と、本発明の特徴である実行段階検知部２５と、本発明の特徴であるインタフェース情報取得起動部２６と、本発明の特徴である再選択起動部２７と、本発明の特徴である再検出起動部２８とを備えている。
【００４１】
サービスシナリオ設定部２１は、ユーザ端末装置８からサービス提供依頼を受信して、サービスシナリオを設定する。サービスコンポーネント検出部２２は、サービスシナリオに適用する候補となるサービスコンポーネントのＰｒｏｃｅｓｓ  Ｍｏｄｅｌ記述を要求する検索要求信号をオントロジＤＢ装置３に送信し、オントロジＤＢ装置３から返送された応答情報のＰｒｏｃｅｓｓ  Ｍｏｄｅｌ記述を検索キーとして、サービスコンポーネント情報ＤＢ５から、当該Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述にマッピングされた、すなわち、対応付けて記憶されている、Ｐｒｏｆｉｌｅ記述、Ｐｒｏｃｅｓｓ  Ｍｏｄｅｌ記述、Ｇｒｏｕｎｄｉｎｇ記述を含むＯＷＬ−Ｓ情報を検索する。
【００４２】
サービスコンポーネント選択部２３は、連携サービスの提供先のユーザに対応するユーザコンテキスト情報をユーザコンテキスト・ポリシＤＢ７から読み出し、読み出したユーザコンテキスト情報と、検索したサービスコンポーネントのＰｒｏｆｉｌｅ記述とに基づき、検索した複数の候補となるサービスコンポーネントから、ユーザに適するサービスコンポーネントを選択する。
【００４３】
サービスコンポーネント実行・連携部２４は、サービスコンポーネント情報ＤＢ５から、サービスコンポーネント選択部２３が選択したサービスコンポーネントのＧｒｏｕｎｄｉｎｇ記述を取得し、さらに、このＧｒｏｕｎｄｉｎｇ記述に基づいてインタフェース情報を取得し、これらに基づいて、サービスコンポーネント提供装置４へサービスコンポーネントの実行要求を送信して当該サービスコンポーネントを実行させ、その実行結果をユーザ端末装置８に送信する。
【００４４】
実行段階検知部（実行段階検知手段）２５は、選択したサービスコンポーネントが実行する段階になったことを検知し、実行を待つサービスコンポーネントがない場合には、終了と判断する。実行段階検知部２５は、選択したサービスコンポーネントが実行する段階になったことを検知すると、検知したことをインタフェース情報取得起動部２６に通知する。上記実行段階検知部２５の動作は、最初のカテゴリに対応したサービスコンポーネントを実行する場合を除き、全てのカテゴリに対応したサービスコンポーネントの実行が終了するまで繰り返される。
【００４５】
また、実行段階検知部２５は、サービス連携の処理時間を測定し、第１の特定時間以上になった場合には、検知したことを再選択起動部２７に通知し、第２の特定時間以上になった場合には、検知したことを再検出起動部２８に通知する。
【００４６】
インタフェース情報取得起動部（インタフェース情報取得起動手段）２６は、実行段階検知部２５から実行段階になったことが通知されると、オペレーションのインタフェース情報を取得させるべく、サービスコンポーネント実行・連携部２４を起動する。サービスコンポーネント実行・連携部２４は、起動を受けると、該当するインタフェース情報を取得し、インタフェース情報に基づきサービスコンポーネント提供装置４に対して、順番にサービスコンポーネントの実行を要求し、連携し、依頼サービス実行結果をユーザ端末装置８に送出する。
【００４７】
また、再選択起動部（再選択起動手段）２７は、実行段階検知部２５から実行段階になったことが通知されると、サービスコンポーネントのオペレーションメタデータを再選択させるべく、サービスコンポーネント選択部２３を起動する。サービスコンポーネント選択部２３は、起動を受けると、該当するカテゴリのサービスコンポーネントのオペレーションメタデータを再選択する。この場合、インタフェース情報取得起動部２６も併せて動作するので、サービスコンポーネント実行・連携部２４は、再選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、インタフェース情報に基づきサービスコンポーネント提供装置４に対して、順番にサービスコンポーネントの実行を要求する。
【００４８】
また、再検出起動部（再検出起動手段）２８は、実行段階検知部２５から実行段階になったことが通知されると、選択の候補となるサービスコンポーネントのオペレーションメタデータを再検出させるべく、サービスコンポーネント検出部２２を起動する。サービスコンポーネント検出部２２は、起動を受けると、該当するカテゴリの選択の候補となるサービスコンポーネントのオペレーションメタデータを再検出し、再検出した選択の候補となるサービスコンポーネントのオペレーションメタデータをサービスコンポーネント選択部２３に通知する。
【００４９】
サービスコンポーネント選択部２３は、通知を受けると、サービスコンポーネントのオペレーションメタデータを選択する。この場合、インタフェース情報取得起動部２６も併せて動作するので、サービスコンポーネント実行・連携部２４は、選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、インタフェース情報に基づきサービスコンポーネント提供装置４に対して、順番にサービスコンポーネントの実行を要求する。
【００５０】
（インタフェース解決処理）
次に、本サービス提供システムのインタフェース解決処理について説明する。
図３は、本実施形態によるサービス連携エンジン２のインタフェース解決処理の動作を説明するための概念図である。図３において、符号（１）で示すように、サービスコンポーネント提供装置４ａにおいて、最初のカテゴリであるカテゴリＡに対応したサービスコンポーネントの実行（実行Ａ）が終了すると、次のカテゴリＢに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｂ）が実行段階になったことを実行段階検知部２５が検知する。次に、インタフェース情報取得起動部２６がインタフェース情報の取得を起動し、サービスコンポーネント実行・連携部２４がインタフェース情報を取得してサービスコンポーネント提供装置４ｂに実行を要求し、サービスコンポーネント提供装置４ｂがサービスコンポーネントを実行する（実行Ｂ）。
【００５１】
同様に、カテゴリＢに対応したサービスコンポーネントの実行（実行Ｂ）が終了し、次のカテゴリＣに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｃ）が実行段階になったことを実行段階検知部２５が検知する。次に、インタフェース情報取得起動部２６がインタフェース情報の取得を起動し、サービスコンポーネント実行・連携部２４がインタフェース情報を取得してサービスコンポーネント提供装置４ｃに実行を要求し、サービスコンポーネント提供装置４ｃがサービスコンポーネントを実行する（実行Ｃ）。そして、カテゴリＣに対応したサービスコンポーネントの実行が終了すると、ユーザ端末装置８に依頼サービス実行結果が送出される。
【００５２】
また、符号（２）で示すように、サービスコンポーネント提供装置４ａにおいて、最初のカテゴリであるカテゴリＡに対応したサービスコンポーネントの実行Ａが終了すると、次のカテゴリＢに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｂ）が実行段階になったことを実行段階検知部２５が検知する。次に、再選択起動部２７が起動し、サービスコンポーネント選択部２３が該当するカテゴリのサービスコンポーネントのオペレーションメタデータを再選択する。このとき、インタフェース情報取得起動部２６も起動されているので、インタフェース情報取得起動部２６の指示を受けたサービスコンポーネント実行・連携部２４が、再選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、サービスコンポーネント提供装置４ｂに実行を要求し、サービスコンポーネント提供装置４ｂがサービスコンポーネントを実行する（実行Ｂ）。
【００５３】
同様に、カテゴリＢに対応したサービスコンポーネントの実行Ｂが終了すると、次のカテゴリＣに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｃ）が実行段階になったことを実行段階検知部２５が検知する。次に、再選択起動部２７が起動し、サービスコンポーネント選択部２３が該当するカテゴリのサービスコンポーネントのオペレーションメタデータを再選択する。このとき、インタフェース情報取得起動部２６も起動されているので、インタフェース情報取得起動部２６の指示を受けたサービスコンポーネント実行・連携部２４が、再選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、サービスコンポーネント提供装置４ｃに実行を要求し、サービスコンポーネント提供装置４ｃがサービスコンポーネントを実行する（実行Ｃ）。そして、カテゴリＣに対応したサービスコンポーネントの実行が終了すると、ユーザ端末装置８に依頼サービス実行結果が送出される。
【００５４】
また、符号（３）に示すように、サービスコンポーネント提供装置４ａにおいて、最初のカテゴリであるカテゴリＡに対応したサービスコンポーネントの実行Ａが終了すると、次のカテゴリＢに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｂ）が実行段階になったことを実行段階検知部２５が検知する。次に、再検出起動部２８が起動し、サービスコンポーネント検出部２２が該当するカテゴリの選択の候補となるサービスコンポーネントのオペレーションメタデータを再検出し、サービスコンポーネント選択部２３が再検出されたサービスコンポーネントのオペレーションメタデータを選択する。このとき、インタフェース情報取得起動部２６も起動されているので、インタフェース情報取得起動部２６の指示を受けたサービスコンポーネント実行・連携部２４が、選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、サービスコンポーネント提供装置４ｂに実行を要求し、サービスコンポーネント提供装置４ｂがサービスコンポーネントを実行する（実行Ｂ）。
【００５５】
同様に、カテゴリＢに対応したサービスコンポーネントの実行Ｂが終了すると、次のカテゴリＣに対応して選択されたサービスコンポーネントのオペレーションメタデータ（選択Ｃ）が実行段階になったことを実行段階検知部２５が検知する。次に、再検出起動部２８が起動し、サービスコンポーネント検出部２２が該当するカテゴリの選択の候補となるサービスコンポーネントのオペレーションメタデータを再検出し、サービスコンポーネント選択部２３が再検出されたサービスコンポーネントのオペレーションメタデータを選択する。このとき、インタフェース情報取得起動部２６も起動されているので、インタフェース情報取得起動部２６の指示を受けたサービスコンポーネント実行・連携部２４が、選択されたサービスコンポーネントのオペレーションメタデータのインタフェース情報を取得し、サービスコンポーネント提供装置４ｃに実行を要求し、サービスコンポーネント提供装置４ｃがサービスコンポーネントを実行する（実行Ｃ）。そして、カテゴリＣに対応したサービスコンポーネントの実行が終了すると、ユーザ端末装置８に依頼サービス実行結果が送出される。
【００５６】
（サービス連携エンジン動作）
次に、本サービス提供システムの全体動作について説明する。
図４は、本実施形態によるサービス連携エンジン２の動作例を示すフローチャートである。サービス連携エンジン２のサービスシナリオ設定部２１は、ユーザ端末装置８からサービス提供依頼を受信し（ステップＳａ１）、サービスシナリオを設定する（ステップＳａ２）。次に、サービスコンポーネント検出部２２は、設定されたサービスシナリオに基づき、サービスシナリオを構成する各カテゴリについて、選択の候補となるサービスコンポーネントのオペレーションメタデータを検出する（ステップＳａ３）。つまり、サービスシナリオに記述されたサービスコンポーネントのメタデータをキーとして、サービスコンポーネント情報ＤＢ２を検索することで、そのメタデータにマッチするオペレーションメタデータを有するサービスコンポーネント群を検出することができる。なお、メタデータには、サービスコンポーネントがどのようなカテゴリであるかを表すカテゴリ情報、サービスコンポーネントのオペレーションがどのようなオペレーションであるかを表すＡｔｏｍｉｃ  Ｐｒｏｃｅｓｓや、Ａｔｏｍｉｃ  Ｐｒｏｃｅｓｓの効果、前提条件、入力パラメータのメタデータ、出力パラメータのメタデータなどが含まれる。サービスコンポーネント選択部２３は、サービスコンポーネント検出部２２が検出したサービスコンポーネントのオペレーションメタデータに基づいて、各カテゴリについてサービスコンポーネントを選択する（ステップＳａ４）。選択する際は、ユーザコンテキスト情報とユーザポリシ情報、検出されたサービスコンポーネントのＰｒｏｆｉｌｅ記述とをマッチングすることで、適切なサービスコンポーネントを選択する。
【００５７】
次に、サービスコンポーネント実行・連携部２４は、サービスシナリオに記述された制御ロジックに従って、最初のカテゴリに対応したサービスコンポーネントを実行する（ステップＳａ５）。具体的には、サービスコンポーネント実行・連携部２４は、サービスコンポーネント情報ＤＢ５から、サービスコンポーネント選択部２３が選択したサービスコンポーネントのＧｒｏｕｎｄｉｎｇ記述を取得し、さらに、このＧｒｏｕｎｄｉｎｇ記述に基づいてインタフェース情報を取得する。そして、サービスシナリオに記述されているメタデータと、取得したサービスコンポーネントのＧｒｏｕｎｄｉｎｇ記述及びインタフェース情報を用いて、サービスコンポーネントの実際のインタフェースに変換し、サービスコンポーネントの実行要求をサービスコンポーネント提供装置４へ送信して当該サービスコンポーネントを実行させる。つまり、サービスコンポーネントの動作メタデータであるプロセス情報と、サービスコンポーネントの実際のインタフェースは、Ｇｒｏｕｎｄｉｎｇ記述及びインタフェース情報によりマッピングが記述されているため、サービスコンポーネント実行・連携部２４がサービスコンポーネントを呼び出して実行する際には、メタデータから実際のインタフェースに合致する変換を行う。
【００５８】
そして、実行段階検知部２５が、サービスコンポーネント実行・連携部２４によるサービスコンポーネントの実行が終了か否かを判断する（ステップＳａ６）。終了の場合には、実行段階検知部２５は、依頼サービス実行結果を送出する（ステップＳａ７）。一方、ステップＳａ６において終了でない場合には、実行段階検知部２５は、次のカテゴリに対応したサービスコンポーネントが実行段階になったことを検知し、インタフェース情報取得起動部２６に通知する（ステップＳａ８）。インタフェース情報取得起動部２６は、サービスコンポーネント実行・連携部２４を起動する（ステップＳａ９）。
【００５９】
また、実行段階検知部２５が次のカテゴリに対応したサービスコンポーネントが実行段階になったことを検知すると、再選択起動部２７、あるいは再検出起動部２８に通知する、再選択起動部２７がサービスコンポーネント選択部２３を起動し（ステップＳａ１０）、あるいは再検出起動部２８がサービスコンポーネント検出部２２を起動する（ステップＳａ１１)。
【００６０】
また、ステップＳａ８にあっては、サービス連携の処理時間を測定し、第１の特定時間以上になった場合には、検知したことを再選択起動部２７に通知し、第２の特定時間以上になった場合には、検知したことを再検出起動部２８に通知するようにしてもよい。
【００６１】
（システム動作）
次に、本サービス提供システムの動作について説明する。合わせて本発明の方法について説明する。
図５は、本サービス提供システムの動作例を示すシーケンス図である。図５は、ユーザ端末装置８、ユーザコンテキスト・ポリシＤＢ７、サービス連携エンジン２、オントロジＤＢ３、サービスシナリオＤＢ６、サービスコンポーネント情報ＤＢ５、及びサービスコンポーネント提供装置４間のシーケンスを示している。
【００６２】
ユーザ端末装置８がサービス連携エンジン２にサービス提供依頼を送出すると（ステップＳｂ１）、サービス連携エンジン２がサービス提供依頼を受信し、サービスシナリオＤＢ６にアクセスするなどしてサービスシナリオを設定し（ステップＳｂ２）、オントロジＤＢ３及びサービスコンポーネント情報ＤＢ５を検索してサービスコンポーネントのオペレーションメタデータを検出する(ステップＳｂ３)。
【００６３】
次に、ユーザコンテキスト・ポリシＤＢ７の情報によりサービスコンポーネントを選択し（ステップＳｂ４）、最初のカテゴリに対応したサービスコンポーネントの実行をサービスコンポーネント提供装置４に要求する（ステップＳｂ５）。そして、終了か否かを判断し（ステップＳｂ６）、終了の場合には、ユーザ端末装置８に依頼サービス実行結果を送出する（ステップＳｂ７）。一方、終了でない場合には、実行段階になったことを検知し（ステップＳｂ８）、インタフェース情報取得起動部２６がサービスコンポーネント実行・連携部２４を起動する。
【００６４】
また、ステップＳｂ８においては、再選択起動部２７がサービスコンポーネント選択部２３を起動し（ｂ）、あるいは再検出起動部２８がサービスコンポーネント検出部２２を起動する（ａ）ことを含む。
【００６５】
また、ステップＳｂ８にあっては、サービス連携の処理時間を測定し、第１の特定時間以上になった場合には、検知したことを再選択起動部２７に通知し、第２の特定時間以上になった場合には、検知したことを再検出起動部２８に通知するようにしてもよい。
【００６６】
上述した本発明を実施するための最良の形態によれば、サービスコンポーネントが実行段階になったときに実際のインタフェースに変換してバインドすることができるようになる。よって、サービスコンポーネントのオペレーションメタデータの選択から実行までのサービス連携の処理時間が長くなる場合であっても、Ｇｒｏｕｎｄｉｎｇ記述や、インタフェース情報、ユーザコンテキスト等の更新に追従してオペレーションメタデータを実行させることができるという利点が得られる。
【００６７】
また、エンドユーザにとっては、最近の状況に応じて最適なサービスが提供されることから安心してサービスを使うことができるようになる。また、サービス提供者にとっては、実行時の状況に応じてサービスコンポーネントをバインドすることができ、ユーザの状況に最適なサービスを提供することができ、ユーザの満足度を上げることができる。
【００６８】
なお、本発明は、図１〜図５を用いて説明した形態に限定されるものではなく、その主旨を逸脱しない範囲において種々変更可能である。
【００６９】
上述のサービス連携エンジン２は内部にコンピュータシステムを有している。そして、サービス連携エンジン２のサービスシナリオ設定部２１、サービスコンポーネント検出部２２、サービスコンポーネント選択部２３、サービスコンポーネント実行・連携部２４、実行段階検知部２５、インタフェース情報取得起動部２６、再選択起動部２７、再検出起動部２８の動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、ＣＰＵ及び各種メモリやＯＳ、周辺機器等のハードウェアを含むものである。
【００７０】
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【産業上の利用可能性】
【００７１】
上記に説明したとおり、本発明が産業上の利用が可能であることは明らかである。即ちエンドユーザにとっては、最近の状況に応じて最適なサービスが提供してもらえることから安心して使うことができるようになり、サービス提供者にとっては、実行時の状況に応じてサービスコンポーネントをバインドすることができ、ユーザの状況にフィットしたサービスが提供でき、ユーザの満足度を上げることができることから、サービスの利用拡大、システムおよび関連装置の需要が一層高まることが期待できる。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施形態によるサービス提供システムの構成例を示すブロック図である。
【図２】本実施形態によるサービス連携エンジン２の構成例を示すブロック図である。
【図３】本実施形態によるサービス連携エンジン２のインタフェース解決処理の動作を説明するための概念図である。
【図４】本実施形態によるサービス連携エンジン２の動作例を示すフローチャートである。
【図５】本サービス提供システムの動作例を示すシーケンス図である。
【図６】従来技術によるインタフェース解決処理を説明するための概念図である。
【符号の説明】
【００７３】
１…ネットワーク
２…サービス連携エンジン
２１…サービスシナリオ設定部
２２…サービスコンポーネント検出部（サービスコンポーネント検出手段）
２３…サービスコンポーネント選択部（サービスコンポーネント選択手段）
２４…サービスコンポーネント実行・連携部（サービスコンポーネント実行・連携手段）
２５…実行段階検知部（実行段階検知手段）
２６…インタフェース情報取得起動部（インタフェース情報取得起動手段）
２７…再選択起動部（再選択起動手段）
２８…再検出起動部（再検出起動手段）
３…オントロジＤＢ
４、４ａ、４ｂ、４ｃ…サービスコンポーネント提供装置
５…サービスコンポーネント情報ＤＢ
６…サービスシナリオＤＢ
７…ユーザコンテキスト・ポリシＤＢ
８…ユーザ端末装置
【図１】
2008276577.tif 000003
【図２】
2008276577.tif 000004
【図３】
2008276577.tif 000005
【図４】
2008276577.tif 000006
【図５】
2008276577.tif 000007
【図６】
2008276577.tif 000008