図面 (/)

技術 複数のコンピューティング機能ソースを用意するための装置及び方法

出願人 富士通株式会社
発明者 益岡竜介ヤニスラブロウジョシュアヌソンスンヨンリー
出願日 2006年9月8日 (13年1ヶ月経過) 出願番号 2006-244780
公開日 2007年4月5日 (12年6ヶ月経過) 公開番号 2007-087382
状態 特許登録済
技術分野 マルチプログラミング
主要キーワード インターフェースパラメータ ホワイトホール プロセスセクション グランディング 中央モジュール ダイナミズム インデックスモジュール マイホーム
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2007年4月5日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

コンピュータ環境の中でタスクリアルタイムで動的に発見し、公表し、構成し、管理し及び実行すること。

解決手段

本装置コンピューティング機能ソースを用意し、各コンピューティング機能はサービスを提供し、該装置の何らかのコンピューティング中に存在する。本装置は、セマンティックサービス記述SSD)をサービスに関連付ける。本装置は、発見手段を介してSSDを利用可能なサービスとして動的に発見し、各サービスに関連する各SSDの意味論的記述に基づいて、サービスを選別し、可能なタスクを連続的に提示するために、サービスを選択すること及びサービスを動的に選別することに基づいてタスクを動的に構成するためのユーザインターフェースを生成し、構成されたタスクの実行可能なセマンティックサービスワークフロー記述を生成する。

概要

背景

パーソナルコンピュティングは、ユーザが単独の装置を操作し及びその装置に常駐するアプリケーションアクセスする/を利用するパラダイムとして言及されてよい。パーソナルコンピューティングは、知識豊富なユーザが複雑なタスクを実行するのに利用可能なリソースを適切に利用できるように、ユーザのコンピュータ環境に関する及びそのユーザのコンピュータで利用可能なアプリケーションに関する充分な知識をユーザが有することを要する。これはほとんどのユーザが日常経験するコンピューティング環境である;複雑なタスクを如何にして達成するかを学習する義務はユーザにあり、そのユーザは、ユーザの機器で動作するアプリケーション各々の及びユーザの機器がサポートする機能各々を理解すること、アプリケーションの間でデータを手動移行すること(例えば、カットペースト)、タスクに関連するアプリケーションや特定の機能各々を手動で起動すること及び最終的にはその複合的なタスクを実行することに全ての注意を向けること(及び時間を捧げること)を必要とする。

パーソナルコンピューティングからコンピューティング環境のより多くのタスク指向への移行(シフト)は次のようになるであろう:
例えば、オペレーティングシステムの一例として、ユーザが音楽CDをCDトレイに挿入すると、その時点からユーザが実行可能なタスクをユーザに示唆するウインドウポップアップされる。これらの典型的な選択肢リストは:
オーディオCDを再生すること
CDから音楽をコピーすること
ファイルを見るためにフォルダを開くこと
何の動作(アクション)も行わないこと
を含んでもよい。

これらの選択肢の各々は、そのアクションを実行するのに使用されるアプリケーションにも言及する。関心事は実行されるアクション又はタスクについてであり、そのタスクを実行するのに使用されるアプリケーションではない。

しかしながら、目下のオペレーティングシステムは、特定のイベント(例えば、音楽CDを挿入することや、ディジタルカメラを接続したこと等)に関連するアクション又はタスクの所定のリストを利用し、そのイベントが生じたときに、関連するアクションのリストが実行時にユーザに示されるようにする。この意味において、システム応答ハードワイヤ接続的であり、トリガとなるイベントの結果として実行される可能なイベントについて、システムにプログラムされているものを超える柔軟性を備えていない。言い換えれば、システムは、ディジタルカメラがコンピュータに接続されたときに実行可能な同じアクション群(オペレーティングシステムのプログラマがその特定のイベントについて用意した具体的なアクションリスト)を示す。アプリケーションはリスト中の項目を変更できるが、エンドユーザがそれを変更する簡易な手法はない。

オペレーティングシステムの別の例では、ファイルタイプに依存するアクションの選択肢がユーザに提示される。即ち、ドキュメント、画像、フォトアルバム、音楽、音楽アーティスト音楽アルバム及びビデオ等のようなファイルタイプの各々について別々のタスクのリストがユーザに提示される。例えば、ファイルタイプが画像であったとすると、「画像タスクの」のリストが表示される:
スライドショーとして見る(表す)
オンライン印刷を要求する
画像を印刷する
画像を背景に設定する
画像をCDにコピーする。

このタスクのリストは再び予め組み合わせられ及び特定のファイルタイプに関連付けられる。エンドユーザがこのリストを修正する簡易な手法はない。

事務に適切なソフトウエアの別の例では、スマートタグ特性(機能)が利用可能である。スマートタグ機能は、エディタを利用しながら現在の書類中テキストを強調し、そのテキスト(文字)が示すオブジェクトと共に実行可能なアクションのドロップダウンメニューをユーザに提示する。例えば、テキストが名前表現するならば、この機能は人物名に関連するオブジェクトを判別し、可能なアクションの以下のリストを提示する:
(その人に)メールを送る
(その人と共に)ミーティング計画する
(その人の)連絡先を開く
(その人に関する)連絡先を生成する。

選択肢は、書類中の文字列が名前を表現するかもしれないことを確認することによってイネーブルにされる。このシステムは、特定のテキスト部分が名前を表現することを確認するために、そのテキストのシンタックス属性文法)を当てにする。しかしながら一般的なアメリカ人の名前に似ていない文字列(例えば、ラッセンジ)は、人物に関連する名前として確認されないかもしれない。その理由は、テキストの一部を名前として確認すシステムの部分は、テキストに関するシンタックス形式の中で判別可能パターンを簡易に確認しようとする非常に簡単なプログラム(スクリプト)であるに過ぎないためである。例えば人物、住所等のようにテキストの「属性(nature)」が(適切に又は不適切に)確認されると、予めコンパイルされた可能なアクションのリストがユーザに提示される。アプリケーションプログラマは、アドレスを確認すること及びマップアプリケーションを起動すること等のような他の書類やアプリケーションに関するスマートタグを作成することが可能である。

コンピューティング環境に関するより多くのタスク指向の観点からユーザに提示を行おうとする別の例が以下に説明される。ユーザがサーチエンジンサーチボックスに或るアドレスをタイプ入力すると、そのサービスは(通常のサーチ結果を超える)マッピング機能へのリンクを返し、それに従うとアドレスのマップを提供する。

しかしながら、タイプされたアドレスのマップをユーザが探しているかもしれないことは自明ではない。他の合理的な可能性が存在する:ユーザはそのアドレスに関連する電話番号リストを望んでいるかもしれない、或いはそのアドレスが会社ならば、ユーザは探索されたビジネスについてより良いビジネス案内(BETTERBUSINESS BUREAU)記録を見ることを望むかもしれない、又はその近辺天候を調べようとしているかもしれない、等々である。この現在の形式では、サーチエンジンは、タイプされたテキストが表現する「もの(thing)」(目下の例ではアドレス)のタイプを推定し、そのタイプのエントリに関連付けられたハードワイヤ的に関連するタスクを返す。

従ってコンピュータ環境のタスク指向の観点からは、関心事はタスクであり、そのタスクは実行可能なものであり、タスクを実行するのに使用されるアプリケーションに関してではない。更にユーザはタスクにどのアプリケーションが使用されるかを知る必要がない。示唆されたタスクの1つを実行するようにユーザが選択すると、適切なアプリケーションがそれに従って始まり及び呼び出され(開始される)。

しかしながら上述のコンピューティング例は、以下のようなリアルタイム且つダイナミックな実行可能な複合的なタスクを許容しないという同様な性質を示す。或る手法では、ユーザの入力(テキスト又はイベント)のタイプ又は性質が推定され;事実上、システムはそのシンタックス属性を当てにして文字列の意味(セマンティック)を判断しようとする。システムは、その入力の下でユーザが実行することを希望するもっともらしいタスクを推定するが;その推定はシステムに固有の(ハードワイヤ式の)ものであり、従って実際上は、そのシステムはリアルタイムで推定を行うものではなく、ユーザがそのシステムと相互作用する以前に、システムのプログラマがプログラミング時にシステムに関する推測を行うに過ぎない。(ユーザが第2ステップで選択するといつでも)適切なアプリケーションが、ユーザの選択時に自動的に呼び出され、(第1ステップでシステムが推定するといつでも)その適切な入力と共に例示され、静的な因果関係による機構(又は契機に応答する機構)である。

上述のコンピューティング例はユーザの利便性を増やすかもしれないが、従来のシステムは依然として以下のパーソナルコンピューティング的な性質を有する:
機能はアプリケーションの中に設計される;アプリケーションのプログラマはシステムの応答を(固定的に)プログラムする。その結果、これはフレキシブルスケーラブルな手法ではない。なぜなら可能性の広がりが設計時に決められているからである。

このシステムはユーザのアクション及び希望に対応することについては限られた手法であり、入力の性質(セマンティクス又は意味)を正確に「感知(perceive)」することはできない。上記の例各々で使用される様々な技法があるにもかかわらず、システムは文法特性により入力の意味を正確に推測することを当てにする。

従来のパーソナルコンピューティングシステムは、因果関係(又はトリガ応答)機構を利用する点で、所定のタイプの入力が単独のアクション(アプリケーションの起動)になることを意味する。

また、パーソナルコンピューティング−即ち、ユーザのアプリケーションを実行し及びユーザのデータを「保持」するコンピュータをユーザが所有及び操作する概念−は、境界の明確でないコンピューティング環境に対する手法を与える。コンピュータがコンピュータネットワーク永続的に接続されると、ローカル及びリモートアプリケーション間の区別、データ破壊は更に悪いことにコンピュータユーザ混乱させる。更に、ユーザは装置にアクセスし及び装置と相互作用することができ、その装置はパーソナルコンピュータという意味ではコンピュータでないが、依然としてかなりの演算能力を有し及びユーザの目的に寄与し、様々なタスクを達成することを支援する(例えば、カメラプリンタスマート機器等)。一例として、利用可能なリソース(デバイス及び機器)は定常的に変化するかもしれないが、平均的なユーザはそのようなコンピューティング環境の中で何が実行可能か或いは実現可能かに気付いてさえいないかもしれない。言い換えれば、パーソナルコンピュータの手法はユーザに事前に知られていない装置やアプリケーションに満ちた設定を行うことは不可能である。

概要

コンピュータ環境の中でタスクをリアルタイムで動的に発見し、公表し、構成し、管理し及び実行すること。本装置はコンピューティング機能ソースを用意し、各コンピューティング機能はサービスを提供し、該装置の何らかのコンピューティング中に存在する。本装置は、セマンティックサービス記述SSD)をサービスに関連付ける。本装置は、発見手段を介してSSDを利用可能なサービスとして動的に発見し、各サービスに関連する各SSDの意味論的記述に基づいて、サービスを選別し、可能なタスクを連続的に提示するために、サービスを選択すること及びサービスを動的に選別することに基づいてタスクを動的に構成するためのユーザインターフェースを生成し、構成されたタスクの実行可能なセマンティックサービスワークフロー記述を生成する。A

目的

ユーザがサーチエンジンのサーチボックスに或るアドレスをタイプ入力すると、そのサービスは(通常のサーチ結果を超える)マッピング機能へのリンクを返し、それに従うとアドレスのマップを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

(分野番号表示ON)※整理標準化データをもとに当社作成

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

複数のコンピュータ機能ソースを用意する装置であって、各コンピュータ機能ソースはサービスを提供し、当該装置のコンピューティング環境の中に、当該装置とネットワーク通信するコンピューティング環境の中に又はそれらの組み合わせの中に存在し、当該装置は或るプロセスに従って当該装置を制御するためのコントローラを有し、該プロセスは、セマンティックサービス記述SSD)をサービスに関連付けるプロセスであって、前記SSDは、コンピュータ解釈可能な言語に従い、サービスのパラメータセマンティック記述を含む、サービスのセマンティック記述を有し、SSDを表現するコンピュータ解釈可能な言語と、インターフェースパラメータを含む、サービスグラウンディングとしてのサービスのインターフェースとの間の対応関係とを有するところのプロセスと、SSDを発見するために複数の発見手段を介して1以上のSSDを利用可能なサービスとして動的に発見するプロセスと、各サービスに関連する各SSDの意味論的記述に基づいて、サービスを動的に選別するプロセスと、可能なタスクを連続的に提示するために、サービスを選択すること及びサービスを動的に選別することに基づいてタスクを動的に構成するためのユーザインターフェースを生成するプロセスと、実行可能なセマンティックサービスワークフロー記述を、構成されたタスクの構成されたタスク記述として生成するプロセスと、を有することを特徴とする装置。

請求項2

実行可能なセマンティックサービスワークフロー記述を生成するプロセスが、構成されたタスクのSSDに基づいて、構成されたタスクの記述のSSDプロセスモデルとして実行プランを、構成されたタスクのSSD全てのサービスグラウンディングのリストを生成し、構成されたタスクのサービスワークフローを構成されたタスク記述のプロファイル属性として抽出及び付加するプロセスを有することを特徴とする請求項1記載の装置。

請求項3

前記サービスワークフローが、タスク中の多数のSSD、タスク中のSSDの身元、タスク中有のSSDの接続性を記述するリンク情報又はそれらの組み合わせを有することを特徴とする請求項2記載の装置。

請求項4

前記コントローラのプロセスが、構成されたタスクの実行可能なセマンティックサービスワークフロー記述、構成されたタスクのサービスに関するSSD及びインデックスを有するタスクパッケージファイルを生成するプロセスを更に有し、前記タスクパッケージファイルは、クロスコンピューティング環境実行ファイルであることを特徴とする請求項2記載の装置。

請求項5

前記タスクパッケージファイルが、ジップフォーマットに従うことを特徴とする請求項4記載の装置。

請求項6

前記コントローラのプロセスが、前記タスクパッケージファイルに従って、編集用に、実行用に又はそれら双方用にユーザインターフェースで構成されたタスクを復元するプロセスを更に有することを特徴とする請求項4記載の装置。

請求項7

前記タスクを復元するプロセスが、構成されたタスクのサービスに関連するSSDを発見するための複数の発見手段に基づいて、構成されたタスクのサービスを発見するプロセスであって、該発見手段は、ウェブサービスインターフェースを介してタスクパッケージファイル中の関連するSSDにアクセスし、アクセスしたSSDを利用可能な発見されたサービスとして登録する、編集及び実行を含む現在のタスク構成に関するテンポラリサービス発見部、一定のサービス記述を有するサービスのワンタイム発見部としてのネイティブサービス発見部、又は、アプリケーション第三者発見手段若しくはそれらの組み合わせからソケット公表サービスメッセージに従う装置にローカルなサービス発見部を有するところのプロセスと、構成されたタスク記述中のプロファイル属性に基づいて、構成されたタスクに包含されるサービスをユーザインターフェースを介して提示するプロセスと、を有することを特徴とする請求項6記載の装置。

請求項8

サービスの複数の発見手段が、一定のサービス記述を有するワンタイムサービス発見部としてネイティブサービス発見部を有することを特徴とする請求項1記載の装置。

請求項9

サービスの複数の発見手段が、ウェブサービスインターフェースを介してサービスに関連するSSDを受け入れ、利用可能な発見されたサービスとしてSSDを登録することで、サービスの発見部としてテンポラリサービス発見部を有することを特徴とする請求項1記載の装置。

請求項10

前記コントローラのプロセスが、構成されたタスク記述のSSDプロセスモデル中のサービスの意味論的に記述されたパラメータ及びサービスインターフェースパラメータの間で各サービスについて変換するために、構成されたタスク記述サービスグラウンディングを利用することで、及び構成されたタスク記述のSSDプロセスモデルを介してサービスを実行するシーケンスを管理することでタスクを実行するプロセスを更に有することを特徴とする請求項1記載の装置。

請求項11

SSDのサービスのセマンティック記述を調べることで及び/又はSSDを発見した発見手段に基づいて、発見されたサービスとユーザ及びユーザの状況との関連性に基づいて、発見されたSSDを発見されたサービスとして動的に選別するプロセスを更に有することを特徴とする請求項1記載の装置。

請求項12

前記の選別が、リソース記述フレームワークデータクエリ言語(RDQL)クエリに従うことを特徴とする請求項11記載の装置。

請求項13

SSDを表現するコンピュータ解釈可能な言語が、ウェブオントロジ言語(OWL)ベースウェブサービスオントロジ(OWL−S)言語であることを特徴とする請求項1記載の装置。

請求項14

各SSDが或るオントロジに従って各サービスの機能特性を決定し、サービスは、各サービスの機能特性を決定したSSDに基づくコンパチビリティに従って選別されることを特徴とする請求項1記載の装置。

請求項15

SSDとサービスとの関連付けは、自然言語文の要素として名前をサービスに割り当て、自然言語文として自然言語要素の構築可能性へのサービスマッピングの構築可能性をサポートし、ユーザインターフェースを生成することは、自然言語文に従って自然言語サービス名に基づいて選択され選別されたサービスのタスクを構成することをサポートすることを含むことを特徴とする請求項14記載の装置。

請求項16

前記ユーザインターフェースがコンピュータ表示画グラフィカルユーザインターフェースであり、該グラフィカルユーザインターフェースは、第1グラフィカルユーザインターフェースウインドウで、発見されたSSDの選択可能な図形表示を、ツリー構造に従う利用可能なサービスとして表示し、或るプロセスに従って1以上のサービスをタスクにリアルタイムに動的に構成することをサポートする第2グラフィカルユーザインターフェースウインドウを提示し、該プロセスは、発見されたサービスを第1のウインドウでユーザにより選択させ、選択された発見されたサービスに関連する他のコンパチブルなサービスの選択可能な図形表示を自動的に表示し、コンパチブルなサービスをユーザにより選択させ、発見されたサービス及びコンパチブルなサービスをタスクとして選択するユーザに従って第2グラフィカルユーザインターフェースウインドウで指示されたサービスグラフをリアルタイムで動的に表示し、タスクを実行するためにタスク実行に関する選択可能な図形表示を表示することを特徴とする請求項15記載の装置。

請求項17

表示され発見されたサービスは、発見されたサービスの機能特性に従って第1グラフィカルユーザインターフェースウインドウで組織されることを特徴とする請求項16記載の装置。

請求項18

複数のコンピュータ機能ソースを用意するための方法であって、各コンピュータ機能ソースはサービスを提供し、装置のコンピューティング環境の中に、装置とネットワーク通信するコンピューティング環境の中に又はそれらの組み合わせの中に存在し、当該方法は、セマンティックサービス記述(SSD)をサービスに関連付けるステップであって、前記SSDは、コンピュータ解釈可能な言語に従い、サービスのパラメータのセマンティック記述を含む、サービスのセマンティック記述を有し、SSDを表現するコンピュータ解釈可能な言語と、インターフェースパラメータを含む、サービスグラウンディングとしてのサービスのインターフェースとの間の対応関係とを有するところのステップと、SSDを発見するために複数の発見手段を介して1以上のSSDを利用可能なサービスとして動的に発見するステップと、各サービスに関連する各SSDの意味論的記述に基づいて、サービスを動的に選別するステップと、可能なタスクを連続的に提示するために、サービスを選択すること及びサービスを動的に選別することに基づいてタスクを動的に構成するためのユーザインターフェースを生成するステップと、構成されたタスク用に、実行可能なセマンティックサービスワークフロー記述を生成するステップと、を有することを特徴とする方法。

請求項19

複数のコンピュータ機能ソースを用意する装置であって、各コンピュータ機能ソースはサービスを提供し、当該装置のコンピューティング環境の中に、当該装置とネットワーク通信するコンピューティング環境の中に又はそれらの組み合わせの中に存在し、当該装置は、セマンティックサービス記述(SSD)をサービスに関連付ける手段であって、前記SSDは、コンピュータ解釈可能な言語に従い、サービスのセマンティック記述を有し、サービスのパラメータのセマンティック記述を含む、SSDを表現するコンピュータ解釈可能な言語と、インターフェースパラメータを含む、サービスグラウンディングとしてのサービスのインターフェースとの間の対応関係とを有するところの手段と、SSDを発見するために複数の発見手段を介して1以上のSSDを利用可能なサービスとして動的に発見する手段と、各サービスに関連する各SSDの意味論的記述に基づいて、サービスを動的に選別する手段と、可能なタスクを連続的に提示するために、サービスを選択すること及びサービスを動的に選別することに基づいてタスクを動的に構成するためのユーザインターフェースを生成する手段と、実行可能なセマンティックサービスワークフロー記述を、構成されたタスクの構成されたタスク記述として生成する手段と、を有することを特徴とする装置。

技術分野

0001

本発明は、意味論的記述されたアプリケーションデバイス及びサービスに富んだコンピュータ環境に基づいて、複雑なタスクリアルタイムで、動的に構成及び実行することに関連する。

背景技術

0002

パーソナルコンピュティングは、ユーザが単独の装置を操作し及びその装置に常駐するアプリケーションにアクセスする/を利用するパラダイムとして言及されてよい。パーソナルコンピューティングは、知識豊富なユーザが複雑なタスクを実行するのに利用可能なリソースを適切に利用できるように、ユーザのコンピュータ環境に関する及びそのユーザのコンピュータで利用可能なアプリケーションに関する充分な知識をユーザが有することを要する。これはほとんどのユーザが日常経験するコンピューティング環境である;複雑なタスクを如何にして達成するかを学習する義務はユーザにあり、そのユーザは、ユーザの機器で動作するアプリケーション各々の及びユーザの機器がサポートする機能各々を理解すること、アプリケーションの間でデータを手動移行すること(例えば、カットペースト)、タスクに関連するアプリケーションや特定の機能各々を手動で起動すること及び最終的にはその複合的なタスクを実行することに全ての注意を向けること(及び時間を捧げること)を必要とする。

0003

パーソナルコンピューティングからコンピューティング環境のより多くのタスク指向への移行(シフト)は次のようになるであろう:
例えば、オペレーティングシステムの一例として、ユーザが音楽CDをCDトレイに挿入すると、その時点からユーザが実行可能なタスクをユーザに示唆するウインドウポップアップされる。これらの典型的な選択肢リストは:
オーディオCDを再生すること
CDから音楽をコピーすること
ファイルを見るためにフォルダを開くこと
何の動作(アクション)も行わないこと
を含んでもよい。

0004

これらの選択肢の各々は、そのアクションを実行するのに使用されるアプリケーションにも言及する。関心事は実行されるアクション又はタスクについてであり、そのタスクを実行するのに使用されるアプリケーションではない。

0005

しかしながら、目下のオペレーティングシステムは、特定のイベント(例えば、音楽CDを挿入することや、ディジタルカメラを接続したこと等)に関連するアクション又はタスクの所定のリストを利用し、そのイベントが生じたときに、関連するアクションのリストが実行時にユーザに示されるようにする。この意味において、システム応答ハードワイヤ接続的であり、トリガとなるイベントの結果として実行される可能なイベントについて、システムにプログラムされているものを超える柔軟性を備えていない。言い換えれば、システムは、ディジタルカメラがコンピュータに接続されたときに実行可能な同じアクション群(オペレーティングシステムのプログラマがその特定のイベントについて用意した具体的なアクションリスト)を示す。アプリケーションはリスト中の項目を変更できるが、エンドユーザがそれを変更する簡易な手法はない。

0006

オペレーティングシステムの別の例では、ファイルタイプに依存するアクションの選択肢がユーザに提示される。即ち、ドキュメント、画像、フォトアルバム、音楽、音楽アーティスト音楽アルバム及びビデオ等のようなファイルタイプの各々について別々のタスクのリストがユーザに提示される。例えば、ファイルタイプが画像であったとすると、「画像タスクの」のリストが表示される:
スライドショーとして見る(表す)
オンライン印刷を要求する
画像を印刷する
画像を背景に設定する
画像をCDにコピーする。

0007

このタスクのリストは再び予め組み合わせられ及び特定のファイルタイプに関連付けられる。エンドユーザがこのリストを修正する簡易な手法はない。

0008

事務に適切なソフトウエアの別の例では、スマートタグ特性(機能)が利用可能である。スマートタグ機能は、エディタを利用しながら現在の書類中テキストを強調し、そのテキスト(文字)が示すオブジェクトと共に実行可能なアクションのドロップダウンメニューをユーザに提示する。例えば、テキストが名前表現するならば、この機能は人物名に関連するオブジェクトを判別し、可能なアクションの以下のリストを提示する:
(その人に)メールを送る
(その人と共に)ミーティング計画する
(その人の)連絡先を開く
(その人に関する)連絡先を生成する。

0009

選択肢は、書類中の文字列が名前を表現するかもしれないことを確認することによってイネーブルにされる。このシステムは、特定のテキスト部分が名前を表現することを確認するために、そのテキストのシンタックス属性文法)を当てにする。しかしながら一般的なアメリカ人の名前に似ていない文字列(例えば、ラッセンジ)は、人物に関連する名前として確認されないかもしれない。その理由は、テキストの一部を名前として確認すシステムの部分は、テキストに関するシンタックス形式の中で判別可能パターンを簡易に確認しようとする非常に簡単なプログラム(スクリプト)であるに過ぎないためである。例えば人物、住所等のようにテキストの「属性(nature)」が(適切に又は不適切に)確認されると、予めコンパイルされた可能なアクションのリストがユーザに提示される。アプリケーションプログラマは、アドレスを確認すること及びマップアプリケーションを起動すること等のような他の書類やアプリケーションに関するスマートタグを作成することが可能である。

0010

コンピューティング環境に関するより多くのタスク指向の観点からユーザに提示を行おうとする別の例が以下に説明される。ユーザがサーチエンジンサーチボックスに或るアドレスをタイプ入力すると、そのサービスは(通常のサーチ結果を超える)マッピング機能へのリンクを返し、それに従うとアドレスのマップを提供する。

0011

しかしながら、タイプされたアドレスのマップをユーザが探しているかもしれないことは自明ではない。他の合理的な可能性が存在する:ユーザはそのアドレスに関連する電話番号リストを望んでいるかもしれない、或いはそのアドレスが会社ならば、ユーザは探索されたビジネスについてより良いビジネス案内(BETTERBUSINESS BUREAU)記録を見ることを望むかもしれない、又はその近辺天候を調べようとしているかもしれない、等々である。この現在の形式では、サーチエンジンは、タイプされたテキストが表現する「もの(thing)」(目下の例ではアドレス)のタイプを推定し、そのタイプのエントリに関連付けられたハードワイヤ的に関連するタスクを返す。

0012

従ってコンピュータ環境のタスク指向の観点からは、関心事はタスクであり、そのタスクは実行可能なものであり、タスクを実行するのに使用されるアプリケーションに関してではない。更にユーザはタスクにどのアプリケーションが使用されるかを知る必要がない。示唆されたタスクの1つを実行するようにユーザが選択すると、適切なアプリケーションがそれに従って始まり及び呼び出され(開始される)。

0013

しかしながら上述のコンピューティング例は、以下のようなリアルタイム且つダイナミックな実行可能な複合的なタスクを許容しないという同様な性質を示す。或る手法では、ユーザの入力(テキスト又はイベント)のタイプ又は性質が推定され;事実上、システムはそのシンタックス属性を当てにして文字列の意味(セマンティック)を判断しようとする。システムは、その入力の下でユーザが実行することを希望するもっともらしいタスクを推定するが;その推定はシステムに固有の(ハードワイヤ式の)ものであり、従って実際上は、そのシステムはリアルタイムで推定を行うものではなく、ユーザがそのシステムと相互作用する以前に、システムのプログラマがプログラミング時にシステムに関する推測を行うに過ぎない。(ユーザが第2ステップで選択するといつでも)適切なアプリケーションが、ユーザの選択時に自動的に呼び出され、(第1ステップでシステムが推定するといつでも)その適切な入力と共に例示され、静的な因果関係による機構(又は契機に応答する機構)である。

0014

上述のコンピューティング例はユーザの利便性を増やすかもしれないが、従来のシステムは依然として以下のパーソナルコンピューティング的な性質を有する:
機能はアプリケーションの中に設計される;アプリケーションのプログラマはシステムの応答を(固定的に)プログラムする。その結果、これはフレキシブルスケーラブルな手法ではない。なぜなら可能性の広がりが設計時に決められているからである。

0015

このシステムはユーザのアクション及び希望に対応することについては限られた手法であり、入力の性質(セマンティクス又は意味)を正確に「感知(perceive)」することはできない。上記の例各々で使用される様々な技法があるにもかかわらず、システムは文法特性により入力の意味を正確に推測することを当てにする。

0016

従来のパーソナルコンピューティングシステムは、因果関係(又はトリガ応答)機構を利用する点で、所定のタイプの入力が単独のアクション(アプリケーションの起動)になることを意味する。

0017

また、パーソナルコンピューティング−即ち、ユーザのアプリケーションを実行し及びユーザのデータを「保持」するコンピュータをユーザが所有及び操作する概念−は、境界の明確でないコンピューティング環境に対する手法を与える。コンピュータがコンピュータネットワーク永続的に接続されると、ローカル及びリモートアプリケーション間の区別、データ破壊は更に悪いことにコンピュータユーザ混乱させる。更に、ユーザは装置にアクセスし及び装置と相互作用することができ、その装置はパーソナルコンピュータという意味ではコンピュータでないが、依然としてかなりの演算能力を有し及びユーザの目的に寄与し、様々なタスクを達成することを支援する(例えば、カメラプリンタスマート機器等)。一例として、利用可能なリソース(デバイス及び機器)は定常的に変化するかもしれないが、平均的なユーザはそのようなコンピューティング環境の中で何が実行可能か或いは実現可能かに気付いてさえいないかもしれない。言い換えれば、パーソナルコンピュータの手法はユーザに事前に知られていない装置やアプリケーションに満ちた設定を行うことは不可能である。

発明が解決しようとする課題

0018

従ってコンピュータ環境の中でタスクをリアルタイムで動的に発見し、公表し、構成し、管理し及び実行することが望まれており、その手法はコンピューティング環境の中でタスクを実行するユーザの課題に対して根本的に異なるアプローチを必要とする。

課題を解決するための手段

0019

ここで説明される本発明の一形態は、意味論的に記述されたアプリケーション、装置及びサービスに富んだコンピューティング(コンピュータシステム)環境に基づいて、複合的なタスクをリアルタイムで動的に発見し、公表し、構成し、管理し及び実行する。一形態によれば、ある方法、装置及びそれに関するコンピュータ読取可能な媒体は、2以上のサービスの複合的なユーザのタスクをリアルタイムでダイナミックに管理し、そのサービスはイベント及びアクションのシーケンス又は列を有する複数のサービスのワークフロー必要とし、そのワークフローは従来のパーソナルコンピューティングシステムで使用される静的な又は予め指定された因果的なプログラミングで簡易に行うことは困難である。

0020

ここで説明される本発明の別の形態によれば、ユーザは、現実的に、効果的に、効率的に、動的に、リアルタイムでフレキシブルな統合されたタスクユーザインターフェースを当てにすることができ(そのインターフェースは機能を発見し、公表し、構成し、サービス提供し及び/又はタスク管理し、及び実行する)、汎用的なコンピュータ環境と共にやり取りを管理し且つインターフェースを取ることができる。別の形態によれば、複合的なタスクを成し遂げること(一連のサービスを管理すること)は、一方ではタスクに関するユーザの理解を、他方では利用可能なリソース(装置及びアプリケーション)のユーザの理解を当てにし、ユーザがそれらをワークフロー(ユーザが実行するワークフローであり、その最終的な成果が完全なタスクになる)に構成することができるようにする。

発明を実施するための最良の形態

0021

本願は、西2005年9月8日付けでリュースケマツオカ、ヤニスラブロウ、ゼクスアンソン及びサンリーにより米国特許商標に出願された「TASKCOMPUTING」と題する35USC119に基づく米国仮出願番号第60/714,952号(代理人管理番号1634.1020P)に関連し且つその利益を享受し、その内容は本願のリファレンス組み入れられる。

0022

本願は、西暦2005年4月27日付けでヤニスラブロウ、リュースケマツオカ及びゼクスアンソンにより米国特許商標庁に出願された「TASKCOMPUTING」と題する米国出願の継続出願第11/115,403号に関連し、その内容も本願のリファレンスに組み入れられる。

0023

本願は、西暦2003年12月12日付けでリュースケマツオカ、ヤニスラブロウ、ゼクスアンソン及びサンリーにより米国特許商標庁に出願された「TASKCOMPUTING」と題する米国出願の継続出願第10/733,328号に関連し、その内容も本願のリファレンスに組み入れられる。

0024

以下で充分に説明され及び特許請求の範囲に記載されるように、本発明並びに後述の他の形態及び利点は詳細な構成及び動作から更に明らかになり、説明の一部をなす図面が参照され、図中同様な番号は同様な部分を示す。

0025

図1Aは本発明の一実施例によるタスクコンピューティング環境(TCE: Task Computing Environment)100のタスクコンピューティングアーキテクチャを示すシステム図である。図1Aでは、コンピュータで実行される方法は、パーバシブ(汎用的な)タスクコンピューティングシステム環境100を複数のタスクコンピューティングコンピュータシステム実行段階(tier)に分けるステップを有し、その段階は、プレゼンテーション処理レイヤ104、リモートプロセジャコールメカニズムアプリケーションプログラムインターフェースAPI)106、リモートプロセジャコールAPI106によりプレゼンテーションレイヤ104に対するインターフェースがとられるミドルウエアサーバプロセシングレイヤ108を有し、本方法は、機能116の意味論的に記述されたコンピュータシステムのソース機能116に対して、コンピュータ100のサービス112として、ネットワーク化された、ネットワーク化されていない又は双方として(コンピュータシステム110)、リアルタイムで動的に(ダイナミックに)コンピュータで実現されるタスクインターフェース130(例えば、)をプレゼンテーションレイヤ104で生成する。

0026

一実施例によれば、機能ソース実現レイヤ114は機能性に関するコンピューティングソース(例えば、デバイス又はソフトウエア114)であり、例えばユーザに対するサービス機能115を表現する又は示すことができる。サービスレイヤ112は、サービス機能115を意味論的に記述するための、サービス機能115に関連するセマンティックサービス記述(SSD: Semantic Service Description)116を有する。かくてSSD116はサービス機能115を意味論的に表現又は記述する。かくて「サービス」112なる用語はSSD116のサービス機能115への関連付けを意味する。言い換えれば、SSD116は「サービス」を表現する。より具体的には、「サービス」112なる用語は、コンピュータ装置コンピュータアプリケーション/ソフトウエア、電子サービス及びコンピュータ(若しくはマシン又は双方で)読取可能なコンテンツの機能ソース実現レイヤ114の領域からの機能に関する演算例に関連する。より具体的には、サービスレイヤ112及び機能ソース実現レイヤ114は、機能116の意味論的に記述されたコンピュータシステムソースをコンピュータサービス112として用意し、ミドルウエアプロセシングレイヤ108は、コンピュータシステムでリアルタイムで動的に構成する実行可能なタスクに対するインターフェースをとり、そのタスクは、コンピュータシステム110で1以上のサービス112に対するプレゼンテーションレイヤ104で生成されたタスクインターフェースに従う1以上のサービス112より成る。

0027

タスクコンピューティング100は、アプリケーション、装置、電子サービス及びコンテンツリッチコンピュータネットワーク環境114で複合的なタスクをリアルタイムで動的に発見、公表、構成、管理及び実行する(即ち、実現レイヤ114でタスクを実行する)ための新たなパラダイム(paradigm)である。タスクコンピューティング100は、(例えば、セマンティックサービス記述(SSD)116a−nを介して)コンピュータ装置114a−nのサービス機能115a−nを意味論的に記述することに基づき、そのセマンティクスに従ってエンドユーザによりオンザフライで実行可能なタスクに構成可能である。従ってここで説明される実施例によれば、タスクコンピューティング100システムは、3つ又はそれいじょうのプログラムされたコンピューティング及びコンピュータ読取可能な情報レイヤマルチレイヤコンピュータシステムアーキテクチャを有し、そのアーキテクチャはプレゼンテーションクライアントプロセシングレイヤ104、ミドルウエアサーバープロセシングレイヤ108(例えば、セマンティックインスタンス、セマンティックサービス記述116)及び複数のコンピュータシステムレイヤ中の複数のサービスを含む。「タスク」126なる用語は、例えばユーザが実行するよう希望する、発見されたコンピュータシステムサービス112に従う1以上のアクションの構成に関連する。ここで説明される実施例によれば、「タスク」126は、ユーザにより自動的に駆動され、或いはそれらの如何なる組み合わせもコンピュータで実現されるタスクインターフェース130を介して構成及び管理される。ユーザの場合、1以上のサービス112の構成としてのタスク126はプレゼンテーションレイヤ104で管理される(例えば、発見され、公表され、構成され、実行される、等々)。非限定的なサービスの構成例として、「マイコンタクト112の勤務先アドレス112の天候情報112をプロジェクタ112で見る」は、「プロジェクタで見る」、「天候情報」、「勤務先アドレス」及び「マイコンタクト」の4つのサービス112で構成される。言い換えれば、「タスク」は1以上のサービス112の組み合わせより成る。

0028

「構成(composition)」なる用語は、(非限定的であるが)例えばサービス112の入力(消費)/出力(生成)に対するデータオブジェクトタイプのような、サービス112の意味論的入力及び出力のように、意味論的に記述されたサービス112の用意された機能特性に従って複数のサービス112を共に置くことで形成することに関連する。サービスの機能特性例は、サービスの構築性を決定ためにサービス112の影響及び前提条件にすることができる。サービス112の影響及び前提条件の具体例はサービス112の入力及び出力データオブジェクトタイプにすることができる。

0029

「セマンティックインスタンス(semantic instance)」又は「セマンティックオブジェクト(semantic object)」なる用語は、1以上のオントロジ(ontology)に基づく或る項目に関する記述群に関連する。セマンティックサービス記述(SSD)116は1以上のサービス機能オントロジに基づいてサービス機能115を記述する。

0030

「公表(publish)」なる用語は1以上のサービス発見手段を介してセマンティックサービス記述(SSD)116を利用可能にすることに関連する。

0031

一実施例による「セマンティックサービス記述」116なる用語は、サービス機能115自身から或るアプリケーション(例えば、タスクコンピューティングシステム(TCS)118)へ、サービス機能115のパラメータ通知するための媒介物に関連する。

0032

「発見(discover)」なる用語はセマンティックサービス記述116の発見に関連する。

0033

タスクコンピューティングはコンピュータシステム110のタイプを指定し、そのシステムは自動的な若しくはユーザが駆動する又はそれら双方の(適切な如何なる組み合わせによっても)リアルタイムで、ダイナミックに、「タスク」126を発見、公表、構成、管理及び実行し、そのタスクは意味論的に記述された116アプリケーション、装置及びサービスリッチなコンピュータコンピューティング(コンピュータシステム)環境110に基づく1以上のサービス112を有する。

0034

セマンティックタスク実行エディタR(STEER)(意味論的に記述されたサービス116の実行可能なタスクを発見及び構成するためのソフトウエア)及び汎用インスタンスプロビジョン環境(PIPE: Pervasive Instance Provision Environment)(セマンティックインスタンス及び/又はセマンティックサービス116を公表及び管理するためのソフトウエア)に関する2つのタスクコンピューティングクライアントの例は、関連する米国特許出願番号第10/733,328号に記載されており、その内容全体は本願のリファレンスに組み入れられる。ここで説明される実施例は、リアルタイムに使用される技術及び/又は技術における改善、意味論的に記述されたサービス116の実行可能なタスクへの動的な構成に加えて、意味論的に記述されたサービス116の管理(例えば、発見、生成/公表、操作等)に関連する
図1Aでは、ここで説明される実施例に従って、1以上のタスクコンピューティングシステム(TCS)118a−nが、リモートプロセジャコールメカニズムに基づいてクライアントサーバーコンピュータシステムアーキテクチャに従って用意される。TCS118は論理的であり、実行時にプレゼンテーションプロセシングレイヤ104にセグメント化され、クライアントタイプのプログラムされたプロセッサをタスクコンピューティングクライアント119a−nとして提供し、ミドルウエアプロセシングレイヤ108はサーバータイプのプログラムされたプロセスを提供し、セグメントされたプレゼンテーション及びミドルウエアプロセシングレイヤ104,108は、タスクコンピューティング環境ウェブサービスアプリケーションプログラミングインターフェース(TCE-WSAPI)106a−nのようなウェブサービス(WS)のような如何なるリモートプロセジャコールメカニズムにも従ってインターフェースをとる。ウェブサービスの概念は周知である。従ってここで説明される実施例では、概してTCS118は、プレゼンテーションレイヤ104でクライアントタイプのプロセスを用意するタスクコンピューティングクライアント(TCC)と、ウェブサービス(WS)のようなリモートプロセジャコールAPIを介するミドルウエアサーバープロセシングレイヤに関するTCC119インターフェースとを有し、この場合にTCC119はWSTCC199と言及される。リモートプロセジャコールメカニズムの具体例として、ウェブサービスを利用するTCS118は、WSTCS118と言及される。第三者アプリケーションを含む如何なるアプリケーション(例えば、マイクロソフトワードエクセルアウトルックアドーブアクロバット等)、ウェブサービスのようなリモートプロセジャコールメカニズム(ウェブサービスコールのようなリモートプロシジャコールを作成することができる(又はリモートプロシジャ呼出機能を組み込むことができる))を用いることで、タスクコンピューティングクライアント(TCC)119になることができる。ここで説明される実施例は、リモートプロセジャコールメカニズムの具体例としてウェブサービスを利用するが、本発明はそのようなコンフィギュレーションに限定されず、如何なるリモートプロシジャコールメカニズムが使用されてもよい。

0035

従ってウェブサービスをリモートプロシジャコールAPIの具体例として使用すると、セマンティックタスク実行エディタウェブサービスタスクコンピューティングシステム(STEER-WSTCS)118aはWSTCS118の一例であり、STEER-WSAPI12—を介して、ミドルウエアサーバープロセシングレイヤ108に関してインターフェースをとるプレゼンテーションプロセシングレイヤ104におけるSTEER−WSタスクコンピューティングクライアント(STEER-WSTCC)119aを有する。

0036

パーバシブイスタンスプロビジョン環境ウェブサービスタスクコンピューティングシステム(PIPE−WSTCS)118bはWSTCS118の別の例である。PIPE-WSAPI122はミドルウエアサーバ管理ツール124を明らかにし、そのツールは一般にタスク126を管理することに加えて、タスクコンピューティング100で使用されるSSD116及び/又はセマンティックオブジェクトインスタンスを管理(例えば、生成/公表、除去、操作等)するために使用される。PIPE−WS122を利用するアプリケーションクライアント119はここでは意味論的に記述されたサービスコントロールメカニズム(SDSCM: Semantically Described Service Control Mechanism)119bとして言及され、その具体例は「ホワイトホール(White Hole)」119b−1、「サービスマネジャ」119b−2、「リアルワールドオブジェクトマンタイザ」119b−3、及び「データベースセマンタイザ119b−4」であり、これらは関連する米国出願番号10/733,328号及び11/115,403号でも説明されている。例えば、例えば「ホワイトホール」タスクコンピューティング(ホワイトホール)119b−1のように、プレゼンテーションプロセシングレイヤ104で(PIPE-WSAPI122を介してミドルウエアサーバープロセシングレイヤ108とインターフェースをとる)、WSTCS118bはPIPE-WS122を利用し、ウェブサービスタスクコンピューティングクライアント(アプリケーションクライアント)又はSDSCM119bを有する。

0037

(非限定的であるが)STEER-WSTCC119aのようなウェブサービスタスクコンピューティングクライアント(WSTCC)119、ホワイトホール119b−1、「サービスマネジャ」119b−2、「リアルワールドオブジェクトセマンタイザ」119b−3及びデータベースセマンタイザ119b−4をプログラム可能コンピューティング素子(例えば、タスクコンピューティングクライアントソフトウエア)としてプレゼンテーションレイヤ104で利用することで、コンピューティング環境の1つ又は複数の如何なるものによってもTCE−WSAPI106を介するミドルウエアサーバープロセス108によって利用可能にされた意味論的に記述されたサービス116に基づいて、ユーザはタスク126を管理(例えば、発見、公表、構成、実行、操作)することができる。

0038

図1Aでは、今日のコンピューティング環境に従って、ユーザは実現レイヤ114に関連する機能で囲まれており、その機能は、インターネットで利用可能な電子サービス(eサービス)、ユーザが操作するコンピュータ装置で動作するアプリケーション、コンピュータ読取可能な媒体で利用可能なコンテンツ等のような装置若しくはコンピュータ媒介サービス、又は特定の機能をサポートする単なる装置を有する。そのような装置、アプリケーション、eサービス及びコンテンツの具体例は、(限定ではないが)電話コンピュータディスプレイ、カメラ、娯楽装置/コンテンツ、テレビジョンパーソナルディジタルアシスタント(PDA)、無線通信装置(例えば、移動電話等)、オーディオプレーヤファクシミリ装置、プリンタ、天気予報サービス、地図サービス、事務関連コンピュータソフトウエア(例えば、電子メールアプリケーションアドレスブック等)、マルチメディアコンピュータ読取可能メディア(例えば、音楽のコンパクトディスク映画ディジタルビデオディスク(DVD)等)、インターネットサイト、データベース等を含む。

0039

図1Aでは、実現レイヤ114で与えられる機能又はサービス機能115a−nは、例えば(限定ではないが)、(例えば、娯楽装置の場合に)音楽を聴くこと、ダウンロードすること、ストリーミングビデオ鑑賞すること、ラジオを聞くこと、連絡先情報を提供すること、地図上の住所を確認すること等を含む。従来、実現レイヤ114は、装置又はサービス各々とユーザがやり取りする(及び/又は操作する)ことにより、そのユーザに機能を提供するように設計されていた;例えば、ユーザが訪れている部屋に用意されている電話で同僚に電話することを希望し、その同僚の電話番号がユーザのラップトップ電子アドレスブックアプリケーションに記憶されていたならば、そのユーザはラップトップアプリケーションを起動し、問題としている電話番号を捜し、その電話でその電話番号に手動でダイヤルしなければならない。言い換えればユーザはタスク126を構成することはできない。アプリケーション、eサービス及び装置が物理的に互いに通信可能である場合でさえ、即ちそれらの間に通信リンクが存在する場合でさえ、実現レイヤ114の設計者コンピュータシステム機能ソース(例えば、コンピュータ装置)をタスクを考慮しながら設計していない限り、アプリケーション等はユーザのタスクについて有意義な方法でデータを交換できない。過剰な機能ソース114a−nに直面するとき、機能のソース114a−nがそのタスク用に設計されていない限り、ユーザはそれら全てのソース中の機能を活用するタスクを実行できない。更に、無関心なユーザはそのような如何なるタスクが可能であるかに気付いていないことが間々ある。

0040

図1Aでは、ここで説明される実施例により、サービスレイヤ112は、機能ソース実現レイヤ114からのサービス機能115aと、(ネットワーク化された、ネットワーク化されていない又は双方の部分を含む)コンピュータシステムのサービス112として、機能ソース実現レイヤ114のサービス機能115aを関連する意味論的に記述するセマンティックサービス記述116aとを有する。ここで説明される実施形態によれば、サービス機能115及びSSD116間の関係は、特定の機能ソース114に関して多対多(n:m)にすることができる。例えば1つのSSD116と複数のサービス機能115では、サービス機能115の構成を(その構成中の複数のサービス機能115と共に)SSD116として保存する。1つのサービス機能115と多数のSSD116の場合には、単一のサービス機能115の複数の種類又はタイプの意味を与える。例えば、書籍検索サービス機能115(ISBN入力について著者、価格、写真等を返すサービス)の場合、その機能はセマンティックサービス116に基づくことが可能であり、ある者が著者の連絡先を返すこと、別のSSD116が画像を返すこと等を行うようにする。より具体的には、ここで説明される実施例形態によれば、サービスレイヤ112は、(ネットワーク化された、ネットワーク化されていない又は双方の部分を含む)利用可能なコンピュータシステム110サービス112を形成することと共に、サービス機能115a−nに対応するセマンティックサービス記述(SSD)116a−n及び実現レイヤ114a−nにより利用可能なサービス機能115a−nを有する。SSD116は実現レイヤ114のコンピュータネットワークサービス機能115を明らかにする。SSD116の或る具体例は、関連する米国特許出願番号第10/733,328号及び11/115,403号にも記載されており、その全内容は本願のリファレンスに組み入れられる。

0041

従って、タスクコンピューティング100は、タスクを達成する具体的実現方法を強調するのではなく、タスク126を強調する実現レイヤ機能ソース114a−nのサービス機能115a−n(例えば、コンピュータ装置114)とユーザがどのようにやり取りするかの新たなパラダイムであり、そのタスク126は、そのコンピュータ装置114を利用しながら達成することをユーザが希望するタスクである。タスクコンピューティング100はユーザが実行したいことと(その環境で利用可能な)コンピュータ装置114のサービス機能115との間のギャップを埋める。タスクコンピューティング100は、現在のパーソナルコンピューティングパラダイムのような従来の手法を上回るかなりの恩恵をもたらし、エキスパートでないコンピュータユーザに一層相応しく、全てのタイプのユーザにとって時間を節約でき、汎用コンピュータタイプのコンピューティング環境を実現するのに特に適している。

0042

図1Aでは、従って、ここで説明される実施形態によれば、拡張及び構築に柔軟性のあるコンピュータシステムアーキテクチャ(ソフトウエア及び/又はプログラマブルコンピューティングハードウエア)を用意するため、個々のモジュール化されたミドルウエアサーバープロセシングレイヤ108が作成され、そのレイヤの機能は、リモートプロシジャコールアプリケーションプログラミングインターフェース(API)を介してプレゼンテーションプロセシングレイヤ104に利用可能になる;アプリケーション開発者及びユーザはそれらを用いてタスクコンピューティング機能(例えば、サービス112及び/又はタスク126の構築、保存、実行、関し、公表、管理等を含む、実行可能なタスク126へのサービス112発見及び構成)にアクセスする。例えばウェブサービスのようなリモートプロシジャコールメカニズムは、エンドユーザのアプリケーション開発に必要なプログラミング言語非依存性プラットフォーム及びロケーション(即ち、異なるコンピュータで異なるプロセシングレイヤ)を提供する。

0043

上述したように、ユビキタスパーバシブネットワークコンピュータコンピューティング環境は、その性質上しばしば一時的である多数の装置及びその他の機能(eサービス、アプリケーション、コンテンツ)114,115で満たされ;更に、エンドユーザ又はユビキタス環境のアプリケーションを作成する開発者さえも、如何なる機能(リソース)114が及び対応するサービス機能115が所与の時点で利用可能であるか及びより重要なことにそれらが何に利用可能であるかを前もって知らないかもしれない。このダイナミズムを考慮するため、サービス機能114,115は設計時点でなく実行時に発見され組み合わせ可能にされる必要がある。従ってここで説明される実施例は、一例としてセマンティックウェブ技術を利用し、その理由はコンピュータネットワークリソース114,115がマシン読取可能なセマンティクス116によりそれ自身充分に記述されていたならば、或るインフラストラクチャ100を構築することができ、そのインフラストラクチャはコンピュータシステムサービス110のようなリソース114,115を充分に理解し、アプリケーション開発者が一般的に行うことを、リソース114,115が提供するもの及び何のために利用可能であるか等の開発者自身の知識を利用することで、エンドユーザが行うことを可能にするからである。セマンティックウェブの概念は周知である。

0044

より具体的には、ここで説明される実施形態によれば、タスクコンピューティング100はセマンティックウェブ及びウェブサービスの周知の概念を利用する。しかしながら、真に動的なアドホックなユビキタスコンピューティング環境で実際の機能システムを実現するために、ここで説明されるタスクコンピューティング100では、以下のことが設定及び実行される:
(1)図1に示されるように、機能に関するコンピュータシステムソース110に対するタスクインターフェースを用意する。タスクインターフェース130は、(1)タスクコンピューティングクライアント(TCC)119を有するプレゼンテーションプロセシングレイヤ104、(2)ミドルウエアサーバープロセシングレイヤ108(プレゼンテーションレイヤ104でのTCC119がタスクコンピューティング環境(TCE)ウェブサービスAPI106(例えば、STEER-WSAPI120及びPIPE-WSAPI122)のようなリモートプロシジャコールメカニズムAPI106とインターフェースをとる)に論理的にセグメント化されたタスクコンピューティングシステム(TCS)118を有する。API106は、プレゼンテーションプロセシングレイヤ104によりインターフェースされるミドルウエアサーバープロセシングレイヤ108を明らかにする。タスクインターフェース130も、サービス機能115を意味論的に記述するセマンティックサービス記述(SSD)116を有する。SSD116はTCC119を介してプレゼンテーションレイヤ104で示されるミドルウエアプロセシングレイヤ109によって発見され、サービス機能115は、例えば実行されるタスク126の一部として、用意された制御コマンドに従って、例えば、TCC119を介してプレゼンテーションレイヤ104で及び実行されるサービス機能115のSSD116に基づいて、ミドルウエアプロセシングレイヤ108により実行される。

0045

(2)共にサービスレイヤ112を提供するように、セマンティックサービス記述(SSD)116及びサービス手段115を分離する。

0046

(3)サービス112について或る範囲の探索を達成するためにリモートタスクコンピューティングクライアント119でアクセス可能であってコンピュータ110で動作するリモートプロシジャコールAPIの部分集合としての「スフェア(sphere)」の概念を考察することで、(場合によっては、サービスの又は保存されたタスクの)探索の仕組み、探索範囲及びサービスの操作機能をそれらの範囲の中で及び間で分離する。

0047

(4)サービスを動的に作成及び操作するユーザ(及びアプリケーション)の能力は、利用可能であり(ユーザには能力があり)、他の者と共有可能である(或いは、必要に応じて共用できなくしてもよい。)(即ち、サービスコントロールマネジメントを行う。)。

0048

(5)興味のある及び真に有益なタスク126を実行可能にする様々なサービス112を用意する。

0049

従って図1Aに示されるように、上述のレイヤの分離は、論理的なもの及び実現的なもの双方に関連し、タスクコンピューティング100を構築するのに有益であり、ユーザは複雑なタスクを実行することができ、そのタスクはコンピュータネットワークシステムで(黙示的にも明示的にも)設計されていなかったものであり、かくてユーザのソース機能114,115(装置、アプリケーション、コンテンツ及びeサービス)を増やす。本発明はセマンティックウェブに限定されず、(データがアプリケーション、企業及び集団の境界を超えて共有及び再利用されることを可能にする)他の意味論的なタイプの技術やフレームワークがここで説明される実施例で使用可能である。

0050

図1Aでは、機能ソース実現レイヤ114は、最低レイヤとして示され、コンピュータ装置、コンピュータアプリケーション/ソフトウエア、電子サービス及びコンピュータ(又はマシン若しくは双方で)読取可能なコンテンツ等の領域を網羅し、ユーザに利用可能な全ての機能が生じる。機能ソース114のサービス機能115(以下で更に詳細に説明される)は機能性に関する演算例である。そのようなサービス機能115は一般に少なくとも3つの異なるタイプのソース114(装置、アプリケーション(ソフトウエア)及びオーバーザウェブeサービス)から発する。これら3つのソース114は厳密に手ではなく緩やかに定義され、カテゴリを限定していない。なぜならそれらの間の境界は融通性が高いからである。一例として、サービス115を発する装置114は、装置114がもたらすように設計された中核的な(コアの)機能である。例えば、電話(装置)114の主な機能は電話呼出(サービス)115を行うことである。同様に、機能を発するアプリケーション(ソフトウエア)114は、コンピュータ装置114で実行するソフトウエア114のサービス機能115である。例えば、個人情報管理(PIM: Personal Information Management)アプリケーションの機能は、人の連絡先情報を記憶及び検索することを含む。最後にeサービス及び/又はコンテンツ114サービス機能115は、例えば、ユーザのローカルなネットワークの境界を越えてウェブサービスを介してサービス機能115をもたらす何らかのリモートサーバーで動作するサービス機能115である。第4のソース機能114のようなコンテンツは非常に有用であり、そのコンテンツはサービス機能115として利用可能にされ;このタイプのサービス機能115は、ユーザ間での情報共有手段として非常に有用である。従って「サービス」112はここでは、コンピュータ装置の機能ソース実現レイヤ114、コンピュータアプリケーション/ソフトウエア、電子サービス及びコンピュータ(又はマシン若しくは双方で)読取可能なコンテンツの分野からの機能の演算例に関連する。従って機能ソース実現レイヤ114からの機能の演算例としての「サービス」112は、「サービス」112とやりとりするインターフェース特性を有し、それは、サービス名、実行される機能等を含む「サービス」の記述、及び「サービス」112に対する入力/出力のようなサービスの機能特性を有する。さらに、ここで説明される実施形態によれば、コンピュータシステムサービス110用にコンピュータで使用されるユーザインターフェースは意味論的に記述された「サービス」112の出力データ及び入力データに基づくオントロジに従う。例えば、ディスプレイプロジェクタにファイルを表示するためにセマンティックサービス記述116に記述されたサービス112は、「プロジェクタで表示」と名付けられ、入力としての「ファイル」を受け入れ、何らの出力パラメータもない。

0051

図1Aでは、サービスレイヤ112はセマンティックサービス記述(SSD)116を介してサービス機能115として演算に利用可能にされた機能のソース114である。SSDはサービス機能115を発見しそれにアクセスすることを可能にする。各サービス機能115は少なくとも1つのセマンティックサービス記述(SSD)116に関連し、例えばOWL−Sに従ってエンコードされ、OWL−Sはウェブオントロジ言語(OWL)に基づくウェブサービスオントロジ言語であり、リソース記述フレームワーク(RDF)/拡張可能マークアップ言語(XML)交換シンタックスを利用し、サービス115が動的に作成されるように(利用可能にされるように)、SSD116はPIPE−WSTCS118bを介して実行中に(オンザフライで)作成可能である。説明されるSSDの例はOWL−Sの例に限定されず、ウェブサービスを含む、コンピュータシステムサービス機能115の特性及び機能を記述するコンピュータで解釈可能な如何なる言語構造でも利用可能である。SSD116は3つの部分を有し、それらは:プロファイル、プロセス及びグランディング(grounding)であり、プロファイルの部分はユーザがサービス115を実際に起動可能にする。サービス115はタスクコンピューティング領域100で利用可能な機能を表現し、これらのサービス115のSSD116は、サービス機能115のソースに関する複雑さからユーザを隠蔽し、関心のある複雑なタスクを実行する際にそれらのサービス機能をユーザが利用しやすくすることになっている。意味論的に記述されたサービス116の例は関連する米国特許出願番号第10/733,328号及び第11/115,403号でも説明されており、その全内容は本願のリファレンスに組み入れられる。

0052

図1Aでは、ミドルウエアサーバープロセシングレイヤコンポーネント108はサービス115,116(又は112)を発見する責務を有し、サービス115,116が実行可能なタスクにどのように構成可能であるかを決定し、サービスを実行し、実行したサービスを監視し、(意味論的に記述されたサービス116の作成及び公表を含む)様々な管理動作を可能にする及び支援する。言い換えれば、ミドルウエアサーバープロセシングレイヤコンポーネント108の目的は、全てのサービスリソース115を意味論的に記述されたサービス116として抽象化することであり、そのサービスは、それらを操作するよう求めるアプリケーションに又はユーザに(例えば、TCC199を介してプレゼンテーションレイヤ104で)利用可能にされることが可能である。

0053

図1Aでは、プレゼンテーションプロセシングレイヤ104はミドルウエアプロセシングレイヤ108の機能を利用して、全ての利用可能なサービス機能116,115(112)を結合することでユーザがタスクを実行可能にする。WSTCC、WSアプリケーション及び/又はWSウェブベースインターフェースアプリケーション(ウェブブラウザと共にアクセス可能である)と呼ばれる(ここでは全てWSTCCと呼ばれる)ウェブサービス118a−nを用いる様々なプログラム可能なコンピューティングクライアント(例えば、ソフトウエアクライアント、プログラマブルコンピューティングハードウエアクライアント、又は双方等)が用意され、ミドルウエアプロセシングレイヤ108を介して利用可能な全てのサービス機能112を結合することでタスクを実行する。ここで説明される実施形態によれば、ミドルウエアレイヤコンポーネント108は、明確なウェブサービスアプリケーションプログラミングインターフェース(WSAPI)106を介して明らかにされ、それにより、これらのAPI106を用いるWSタスクコンピューティングクライアント(WSTCC)119の生成を可能にする。

0054

サービス112の発見、構成、実行、保存、生成、管理のようなタスクコンピューティングのコア機能に制限無くアクセスするミドルウエアプロセシングレイヤ108でタスクコンピューティング環境ウェブサービスAPI106を規定することは、列挙された機能全てを開放する。例えば、WSTCS119は、ユーザがウェブサービス106を呼出可能にする限り、タスクコンピューティングの特定の実現手段に拘束されず、ユーザは如何なるプラットフォームでも作業することができ、WSTCC119を作成し及びサービス112にアクセスするのに如何なるプログラミング言語でも利用できる。

0055

図1Aでは、従って、ここで説明される実施形態によれば、タスクコンピューティング環境ウェブサービス(TCE−WS)API106が提供される。TCE−WSAPI106の部分集合(サブセット)は様々なタスクコンピューティングの目的に使用可能であり、STEER−WSTCS118aで使用される場合にはSTEER-WSAPI120と、1以上のPIPE-WSTCS118bで使用される場合にはPIPE-WSAPI122と、クロス環境タスクコンピューティングの「スフェア(Sphere)」を用意するのに使用される場合にはスフェアオブマネジメント(SoM)-WSAPI123と言及される。本発明の実施例が以下に説明される:
セマンティックタスク実行エディタウェブサービス(STEER−WSTCCC)119aのような様々なウェブサービスタスクコンピューティングクライアント(WSTCC)119aの例が詳細に説明され、それはSTEER-WSAPI120に基づき、意味論的に記述されたサービス116を発見し及び実行可能なタスクに構成するソフトウエアである。WSTCS118のプレゼンテーションレイヤ104コンポーネント108のようなSTEER-WSTCC119aは、様々なコンピュータで実現されるユーザインターフェースを用意する。関連する米国特許出願番号第10/733,328号及び11/115,403号は、STEER-WS拡張(XT)TCC119a-1に関連するコンピュータ表示グラフカルユーザインターフェース、移動電話のような無線装置で実施されるコンピュータ表示グラフィカルユーザインターフェースを説明しており、それらは移動電話STEER-WSTCC119a-2、STEER-WS空間情報システム(SIS)TCC119a-3、音声STEER-WSTCC119a-4及びタスクレット-WSTCC119a-5と呼ばれる。本発明の一実施例によるタスクレットWSTCC119a-5が以下に説明される。

0056

ユーザインターフェース−STEER-WS-XT TCC119a-1:
図1Bは本発明の一実施例による、プレゼンテーションレイヤでのSTEER-WS-XTTCC119a-1によるコンピュータで実現されるタスクインターフェースとしてコンピュータに表示されたグラフィカルユーザインターフェース画像である。図1Bでは、コンピュータ表示グラフィカルユーザインターフェースウインドウ142は、発見されたサービス112ウインドウ(又は、発見プレーン)であり、そのウインドウは発見されたサービス112のアイコンツリー構造に従って表示される。ここで説明される実施形態によれば、サービス112は、(限定ではないが)、愛称フレンドリネーム)、サービスタイプアルファベット順等のようなオントロジ及び/又は他の特性に基づく何らかのタイプのサービスカテゴリ階層に従って、発見サービスウインドウ内で組織される。コンピュータ表示グラフィカルユーザインターフェースウインドウ144はタスクウインドウ144(又はタスク126構造プレーン)であり、多数の入力/出力に関するサービス112の非線形サービス構造を収容するよう意図されたサービスグラフである。図1Bでは、タスクウインドウ144は、非限定的に、5つのサービス112を含むタスク126を表示する。特に、タスク126は「マイコンタクト112からホームアドレス122及びビジネスアドレス122へのルート112をマイプロジェクタ112で表示する」である。

0057

図1Bではここで説明される実施形態に従って、SSD116ウインドウ150は、サービスウインドウ122で選択されたサービス112について、SSD116パラメータ/特性を表示する。SSDウインドウ135は、例えばタスク126の一部としてタスク126を検査する際に活用できる。

0058

図1Bでは、タスクウインドウ144はサービス112の選択可能な図形表示を提供し、そのサービスは発見サービスウインドウ142で選択されたものである。タスクウインドウ144では、発見されたサービス112の選択時に、オントロジに基づいてサービスの機能特性に従うコンパチブルなサービスが自動的に見分けられ、サービス112の図形表示も自動的に1以上の選択可能な機能特性ボタン145a−nを有し、そのボタンは選択された発見されたサービスについて利用可能な又は有効な(両立可能な)サービス112を表す。機能特性ボタンを選択すると、先行するサービス112の成果を利用可能な他の発見済みサービス112の選択可能なリストが表示され、サービス112の図形表示をつなぐ表示された線で示されるように、1以上のサービス112を構成することは、或るタスク126を作成する。より具体的には、タスクウインドウ142の中で、ユーザはタスク126として指示したサービス112のグラフを構成する。サービス112の入力/出力データオブジェクトタイプをサービス112の機能特性として用いる場合には、出力機能特性ボタン145aは、着色によって又はコンピュータ表示を区別する既知の何らかの方法によって、入力機能特性ボタン147と区別される。

0059

図1A及び図1Bを参照するに、タスクコンピューティングシステム100は或るアークテクチャを有し、そのアーキテクチャは、現在の環境で利用可能なサービスを発見し、利用可能なサービスのユーザ中心の観点によるタスクを構築及び処理し、複数のサービスで構成される結果のタスクを実行するための基礎を与える。必要ならば、エンドユーザさえも新たなサービスを動的且つ簡易に作成する。タスクコンピューティングシステム100の3つの特性/要素(1),(2),(3)は次のとおりである:
(1)サービス112として全ての機能114,115の一様な抽象化。ここで説明されるように、タスクコンピューティング100では、ミドルウエアサーバープロセシングレイヤ108は意味論的に記述されたサービス112として全てのリソースを抽象化するよう機能する。意味論的に記述されたサービスは、(限定ではないが)WSDLウェブサービス記述言語)、UPnP(ユニバーサルプラグアンドプレイ)、CORBA、RMI、RPC、DCE、DCOMサービス機能115のようなリモートプロシジャコールを介して利用可能なサービス機能115であり、サービスを記述するための言語(例えば、OWL−S)におけるセマンティック記述(ファイル)116が指定される。そのようなセマンティック記述116を指定すると、指定されたオントロジはそのサービス116,115(112)が動作する領域について具体化される。オントロジに関し、ソフトウエアツールが、オントロジを作成するために、及び可能性のある存在する又は利用可能なオントロジが利用可能なときはいつでも使用可能である。OWL−Sサービス記述116は、サービス機能115の機能特性を表現し、その機能は例えば入力及び出力をセマンティックオブジェクトとして、及びオーナー、創作者、ロケーション等とサービス112に関して意味付ける。その記述は、実際のWSDL及び/又はUPnPサービスが適切に実行可能になるようにする基礎情報を含む。これらの記述を用意する際に、セマンタイザツール(限定ではないが、ここで説明及び/又は言及されたリアルワールドオブジェクトセマンタイザ119b-4、データベースセマンタイザ119b-5、インターナルサービスインスタンスクリエータ等)は、オントロジオブジェクトをWSDLパラメータにマッピングし、何らかの必要な基礎情報(基礎情報(グラウンディング)はXSLTスクリプトを介して表現される)を作成するのに使用される。ウェブサービスインターフェース106はミドルウエアサーバープロセシングレイヤ108用に用意され、それに基づいてプレゼンテーションクライアントプロセシングレイヤ104での直感的なタスク126ユーザインターフェースが用意される。

0060

タスクコンピューティングミドルウエアはセマンティックサービス記述の動的なリポジトリ(repository)と見ることもできる。ここで説明されるこれらの記述にアクセス及び操作するためのAPI106とは別に、APIを実行することでそのリポジトリのディレクトリを問い合わせるための手段が用意され、APIはサービス記述に対する如何なるRDF問い合わせ言語(RDQL)クエリをも処理する(JENA2.0はRDQLクエリの処理例として使用される。)。例えば、開発者はロケーションのようなサービスの何らかの特性によりタスク合成用にユーザに提示されたサービスを、たとえその目的に対する明示的なAPIが用意されていなかったとしても選別できる。この能力はアプリケーション開発者の力を伸ばし、或るクエリがより有用になるので、それらはミドルウエアにAPI106(事前に選択されたRDQLクエリを実行する)として永続的に加えられてもよい。或る実施形態によれば、SSDにおけるサービスの意味論的記述を調べることによるユーザに対する発見されたサービスとユーザのコンテンツとの関連性に基づいて、SSDを発見した発見手段に基づいて、或いは各サービス又はそれらの如何なる組み合わせの機能特性で決定されたSSDに従うサービスコンパチビリティに基づいて、発見されたSSDは、動的に選別され発見されたサービスになる。

0061

サービス112としての機能の抽象化は機能を一般にアクセス可能にし、タスクコンピューティングインフラストラクチャがそのような機能とやり取りすることを可能にする。タスクコンピューティングシステム100は、ユーザのコンピュータ装置の(アプリケーション及びOSによる)、環境中の装置の及びインターネット上で利用可能なeサービスの機能114,115を抽象化されたサービス112に変換する。この抽象化はその環境で利用可能な機能を処理するための事前の用意を減らす道を開くが、それ自身単独で、ユーザにリアルタイムの操作能力及び機能をタスク126に構成する能力を与えるには充分でなく、ここで説明される実施例はプレゼンテーションレイヤ104を用意し、リアルタイムの、動的なタスク(複数のサービスを有するタスク)の管理をサポートする。

0062

(2)セマンティックサービス記述(SSD)116に基づいて抽象化されたサービス112の直感的な操作性を(ユーザに及び/又はシステムに)与えること。サービス112の直感的な操作性は、セマンティックサービス記述(SSD)116の利用を通じて可能になる;オントロジはそのようなユーザ及び/又はシステムの直感的な操作を達成するための仕組みである。SSD116の概念は、関連する米国特許出願第10/733,328号及び/又は第11/115,403号にも記載されており、その全内容は本願のリファレンスに組み入れられる。

0063

例えば、SSD116の代わりに、WSDL(ウェブサービス記述言語)機能ソース115だけがウェブサービスの機能特性を記述するのに使用される場合、WSDLベースのウェブサービスは、プログラマがそれらの意味を(WSDL記述内容以上に)理解し且つ適切にそのサービスを利用するためのコードを開発する必要がある。その結果、機能に関するエンドユーザのやりとりは、開発者により事前に決められたそれらのプログラムの範疇に制限される。オントロジオブジェクトをソース機能115パラメータ(例えば、限定ではないが、WSDLパラメータのようなパラメータ)にマッピングし、及び何らかの必要な基礎情報を作成することによる追加的なセマンティクス(SSD116で供給される)は、タスクコンピューティング100インフラストラクチャが、ユーザが詳細な知識なしにそのサービスを操作することを支援することを可能にする。例えば、セマンティクスはユーザによるサービスの操作を制約するために、又はその環境で可能性のあるタスク126についてユーザを禁止するために使用可能である。WSDLだけがサービスのセマンティック入力及び出力に基づくサービス構成を当てにしているならば、その構成はサービスの如何なる構成にも制約されず、例えば、XSDストリングを使用する別のものと共にCMLスキーマ定義(XSD)ストリングを生成し、おそらくは実行可能でない(無効な)サービス構成を導出する。従ってここで使用される実施形態によれば、「構成(composition)」は、(限定ではないが)例えばサービス112の入力(消費)/出力(生成)用のデータオブジェクトタイプのサービス112の意味論的な入力及び出力のような、意味論的に記述されたようなサービス112の用意された機能特性に従って複数のサービス112を共に置くことで形成されることに関する。サービスの機能特性の具体例は、サービス構成を決定するためのサービスの前提条件及び影響でもよい。サービス112の前提条件及び影響の具体例は、サービス112に関する入力及び出力データオブジェクトタイプでもよい。特に、サービス112のSSD116は微細粒度サービス入力及び出力をもたらし、例えば、「アドレス」セマンティックオブジェクトを生成するサービスは意味論的に両立性のあるサービスと共にだけ構成可能でもよい。

0064

ユーザの直感的なサービス112の操作の別のメカニズムは、「マイホームからのルート」のようなサービス名のような自然言語に従って適切なサービス名を与えることによるものであり、コンパチブルなサービスの構成サービス名は自然言語タスク126表現として機能してよい(例えば、「プロジェクタで見る」112+「マイファイル」、112「カンパニー1からのルート」112「都市空港」112)。オントロジは、サブクラススーパークラス関係に基づく構成のようなメカニズム、及びエンドユーザにとって非常に自然な意味論的オブジェクト変換をサポート可能である。従ってタスク126の構成は自然言語文に基づく、或いは換言すれば構成されたタスク126は自然言語文のように読める。より具体的には、ここで説明される実施例は、生前言語シーケンスの要素(例えば、フレーズ)のようなサービスに名称割り当て、自然言語文のような自然言語要素の構成に対応付けるためのサービスの構築性をサポートする。従ってタスクコンピューティングシステム100はエンドユーザが環境110のサービスとやりとりするのに非常に豊富で興味深い方法を可能にする。

0065

(3)ユーザは例えば図1Bに示されるような(1)及び(2)に基づいてコンピュータ実現ユーザインターフェースを介してタスク126のリアルタイムの及び/又はダイナミックな(後に結合する形式の)構成を行うことができる。

0066

ウェブサービスアプリケーションプログラムインターフェース(TCE-WSAPI)106:
図2は本発明の一実施例によるSTEER-WSAPI120の定義リスト例を示す。図1A及び1Bでは、STEER-WSTCC119aはWSTCC119であり、サービス112を発見し、選別し、構成し、実行し、タスク126としてサービス112を保存するのに便利なユーザインターフェースをもたらす。STEER-WSAPI120は、TCE-WSAPI106であり、独立モジュールからタスクコンピューティング機能を抽出し、例えばSTEER-WSTCC119aのような何らかのWSTCC199によりアクセス可能な標準的なウェブサービスインターフェースとしてそれらを明確にする。

0067

図2に示されるように、ウェブサービス106によるタスクコンピューティングミドルウエアサーバー処理レイヤ108の機能を明らかにすることで、プレゼンテーションプロセシングレイヤ104でのWSTCC119は、タスクコンピューティングミドルウエアサーバープロセシングレイヤ108のモジュールの実現手段から開放可能である。WSTCS119開発者は、ウェブサービス106の呼出がなされない限り、如何なるオペレーティングシステムで如何なるプログラミング言語も利用でき、WSTCC119をもたらす。ウェブサービス呼出を実行可能な(又はウェブサービス呼出機能を組み込むことが可能な)第三者のアプリケーション(マイクロソフトワード、エクセル、アウトルック、アドーブアクリバット等)さえ潜在的なWSTCC119でもよい。

0068

図2では、発見、構成、実行、監視、保存等のような機能がSTEER-WSAPI120でサポートされている。一般に、STEER-WSAPI120及びPIPE-WSAPI122のようなTCE-WSAPI106はサービス112識別子(SID)パラメータを当てにし、そのパラメータはSSD116で記述された意味論的に記述された或るサービス機能115を固有に特定するものである。典型的には、ここで説明される実施例によれば、SIDはSSD116で記述された意味論的に記述されたサービス115へのユニフォームリソースロケータ(URL)の文字列である。例えば、図3Aは発見されたサービス112に関するローカルな情報に同期するためにSTEER-WSAPI120を利用するコンピュータソースコード300の例を示す。図3Bは複数のサービス112と共にタスク126を起動するSTEER-WSAPI120を用いる別のコンピュータソースコード例310を示す。非限定的な例として、図3Bでは、サービスリストパラメータは例えば“&”を用いて複数のタスクを区別し且つ“|”を用いてタスク内のサービス112識別子を区別する入力文字列であり、WSTTCC199はタスクの実行を起動及び監視するために自身のコード中に図3Bプログラムループを有することができる。従って本発明では、図3A−3Bのようなソースコードは、TCEWSAPI106を用いてミドルウエアサーバープロセシングレイヤ108のリモートプロシジャを起動し、STEER-WSTCC119aのようなWSTCC119の実現例である。

0069

図4は本発明の一実施例によるSTEER-WSTCC119aのミドルウエアプロセッシングレイヤ108プログラムモジュール機能ブロック図である。図1及び図4に示されるように、STEER-WS-TCC119aのミドルウエアプロセシングレイヤ108はセントラルモジュール402を有し、そのモジュールは、プレゼンテーションプロセシングレイヤ104からのSTEER-WSAPI120を介するウェブサービス106要求に従って、サービス112の発見モジュール404、実行モジュール406及びモニタモジュール408を制御する。セントラルモジュール402は、サービス112分解及びインデックスモジュール410と、サービス112構成及びタスク126実行計画部412とを有する。サービス112分解及びインデックスモジュール410はインターフェース412を登録し、発見モジュール404が、発見したサービス112を登録すること/登録抹消することを可能にする。発見モジュール404は、ローカル発見モジュール414、UPnPのような第三者サービス機能115発見モジュール416、リモートサイト発見モジュール418及び発見モジュール管理部420のような個々の発見モジュール群を有し、管理部420は、各発見モジュールが様々な環境110で使用されるべきか否かを判定する管理機能を有する。

0070

ここで説明される実施形態によれば、ローカルサービス発見部414、第三者サービス発見部416、リモートサイトサービス発見部418、テンポラリサービス発見部428、ネイティブ(固有)サービス発見部426又はそれらの如何なる組み合わせによるものの1以上を含む複数の発見手段に従って関連するSSD116を発見することで、サービス機能115を発見する。ローカルサービス発見部414は、「ソケットポートを開き、同じ装置(コンピュータ)で起動されたアプリケーションからのSSD116公表メッセージを監視し、その装置でローカルサービス発見モジュール414が実行される。例えば、アプリケーションが始まると、アプリケーションは或るSSD116を公表し、SSD公表メッセージを、通知を受けるためにローカルサービス発見部414により開かれた所定の「ソケット」ポートに送信する。本実施形態によれば、そのアプリケーションからのローカルサービス発見部414により受信されたSSD公表メッセージは、公表されたSSD116のロケーションを含む。そして、ロケーションサービス発見モジュール414がTCC119に利用可能なSSD116を作成する。

0071

第三者発見部416は第三者発見標準規格を用いてSSD116を発見する。第三者発見メカニズム416は、例えば、ユニバーサルプラグアンドプレイ(UPnP)技術、ジニ(JINI)技術、ブルートゥース等又はそれらの如何なる組み合わせでもよい。例えば、サイバーリンクUPnP及び/又はインテルUPnPツールキット手段をダイダン社発見モジュール416で使用し、UPnPによるサブネットワーク内でブロードキャストされたサービス記述を発見してもよい。リモートサイト発見部418はリモートウェブサービスに対するウェブサービスプロトコル(ウェブサービスコール)を用いて、ウェブサービスインターフェースにより識別可能なSSDを発見する。

0072

ここで説明される実施形態によれば、ヒューレットパッカード開発会社によるJENAがSSD116を格納するのに使用される。分解及びインデックスモジュール410は、SSD116を分解及び分析するための分解及び分析する機能を有する。例えば、ここで説明される実施形態によれば、SSD116はヒューレットパッカード開発会社によるJENAを用いて、アメリカ合衆国メリーランド大学のMINDLABによるペレットPELLET)及びOWL−SAPIと共に分解される。特に、「サービス112が発見されること」は「或る機能ソース114(例えば、デバイス、ソフトウエア114)のサービス機能115を意味論的に表現するSSD116が発見されること」と等価である。SSD116は、サービス発見モジュール404の何れかにより発見可能であり、登録インターフェース422を介してセントラルモジュール402に送信され、SSD116が例えばペレットのサポートと共にJENAにより最初に分析される。SSDが分析されると、ペレットはRDQLクエリに対する回答する準備を行う。サービス分析及びインデックするモジュール410から問い合わせることで及び問い合わせ結果に基づいて、サービス構成及びタスク実行計画モジュール412はタスク126としてのサービス112の構成を想定し、TCC199からのタスク126実行命令に応答してタスク126の実行計画を決定する。実行計画が決定されると、中央モジュール402は実行モジュール406を介して関連するサービス機能115を呼び出し、その実行モジュールはサービス機能115を呼び出すためにSSD116に用意されたグラウンディング呼び出し部(grounding invocation)424を有する。発見モジュール404は、サービス機能115及びセマンティックサービス記述(SSD)116を含み得るサービスを発見する。サービス112分解及びインデックス部410の上記の説明は、そのようなコンフィギュレーションに限定されず、JENA及びペレット以外のSSD116を分解及び分析する如何なる仕組みも利用可能である。

0073

ここで説明される実施形態によれば、独立したモジュールとして、WSTCC119は、(例えば、基礎をなすブルートゥースSDP、IR、RENDEZVOUS、JINI等404,406についてウェブサービスインターフェース106を実現することで)統合される及び高度に抽象化される発見及び実行手段がウェブサービスAPI106に従って実行可能である限り、如何なる種類のサービス112発見手段404又は実行手段406をも使用可能である。従って、例えば、ユーザが特定するのに唯一必要なものは、サービスレイヤ112とのインターフェースをとるためのSTEER-WSAPI120用のウェブサービス定義言語(WSDL)ファイルのユニフォームリソースロケータ(URL)である。ウェブサービスAPI106が用意される限り、TCE−WSAPI106により基礎をなす発見手順全体が、プレゼンテーションレイヤ104でWSTCC119におけるユーザにとって透明(transparent)である。例えば、或るSTEER-WSAPI120は、ブルートゥースベースのサービス112を発見及び実行するためにブルートゥース発見モジュール404を利用することができる。別のSTEER-WSAPI120はUPnP発見モジュール404を利用することができる。

0074

一形態に従って、以下の2つのサービス112発見法が説明される:(1)ネイティブサービス発見モジュール426;及び(2)テンポラリサービス発見モジュール428。ここで説明されるように、サービス112の発見は、サービス機能115に関連するSSD116の効果的な発見になる。ネイティブサービス発見モジュール426はワンタイムファイルベースの発見モジュール(one-time file-based discovery function)である。いくつかのサービス112は頻繁に使用され、定常的に利用可能になるよう望まれる。例えば、「常にオン(ON)の」ウェブサービス115(例えば、アマゾンウェブサービス)に基づく又はグラウンディングのないWSTCS118(STEER-WSTCS118a)により実行可能な或るサービス112が存在する。一形態によれば、「常にオンの」ウェブサービス115では、そのウェブサービスの利用可能性はタスクコンピューティングシステム118の実行状態に関係しない。多くの場合、第三者ベンダはそのような「常にオンの」ウェブサービス115を用意するかもしれない。これらの「常にオンの」ウェブサービスに関し、関連するサービス記述116は固定されてもよい。なぜなら、(ウェブサービス115が提供されている場所のような)そのウェブサービス115に関する情報は不変だからである。従ってそのような「常にオンの」サービス115について、「固定された」(常に一定であることを意味する)サービス記述116を作成することが可能である。そのような場合、コストのかかる動的なサービス発見手段(例えば、関連する米国特許出願番号第10/733,328号及び第11/115,403号で説明されているようなPIPE-WSTCS118bによる手段)は不要である。

0075

ネイティブサービス発見モジュール426は、固定された記述を含み且つ頻繁に使用されるサービス112に関してワンタイムライトウエイト発見モジュールである。一実施形態によれば、ネイティブサービス発見モジュール426は、STEER-WSTCS118aのようなWSTCS118の初期開始段階で一度だけ動作する。例えば、STEER-WSTCS118aは指定されたディレクトリ(例えば、デフォルトの「マイドキュメント\マイサービス」)でサービス112として発見された全てのサービス記述ファイル116をロード又は設置し、これら発見されたサービス112をSTEER-WSTCS118a(例えば、発見されたサービス112ウインドウ(又は発見プレーン)142−図1B−で利用可能である)に登録する。その後に、ネイティブサービス発見モジュール426は閉鎖可能になる。以下の表1はネイティブサービス発見モジュール426とローカルサービス発見モジュール414との比較概要を与える。ローカルサービス発見414は「ソケット通信」に基づく。ローカル発見モジュール414は事前に形成されたソケットを開き、監視する。ローカルサービスが或るアプリケーションにより公表されると、そのアプリケーションは所定のソケットにメッセージを送信し、ローカル発見モジュール414により発見されるようにする。この手法は動的であり且つTCC119で動作する装置に局所的であると考えられる。なぜならTCC装置はTCC装置で動作するアプリケーションを介してサービスを提供しているからである。TCCのIP(インターネットプロトコル)アドレスが変わると、そのサービス記述も変更されなければならない。

0076

表1:ネイティブサービス発見モジュール426対ローカルサービス発見モジュール414

テンポラリサービス発見モジュール428はサービス112用に設計され、そのサービスは、STEER-WSTCS118aのようなWSTCS118の現在の実行セッションの中でのみ必要とされ、タスクパッケージ(後述)で使用されるそのようなサービス112は、ユーザがタスクパッケージのタスクレット(tasklet)と共に作業する場合にのみ必要とされる。一形態によれば、テンポラリサービス発見モジュール428は以下の2つのウェブサービスAPIを用意する:
1.レジスタAPI(これは、入力としてサービス記述を使用し、登録が成功すればサービスIDを返す。)。

0077

2.未登録API(これは、サービスIDを使用し、何も返さない。)。

0078

テンポラリサービス発見モジュール428はウェブサービスを介してユーザがサービス112を公表する/未公表にすることを可能にする。しかしながら、テンポラリサービス発見モジュール428を通じて発見されたサービス112は、STEER-WSTCS118aのようなWSTCS118の現在の実行セッションの中でのみの一時的なものである。例えば、STEER-WSTCS118aがリスタートされると、これらのサービス112はもはや発見されない。なぜならテンポラリサービス112に関する情報がクリアされるからである。

0079

図1Aでは、PIPE-WSTCS118bは、セマンティックオブジェクトインスタンスを公表及び管理するためのWSTCS118の別の例である。PIPE-WSAPI122は独立モジュールからタスクコンピューティング管理機能124を抽出し、「ホワイトホール」119b−1、「サービスマネジャ」119b−2、「リアルワールドオブジェクトセマンタイザ」119b−3及び「データベースセマンタイザ」119b−4のような何らかのWSTCS119によりアクセス可能な標準的なウェブサービスインターフェース106としてそれらを明らかにする。より具体的には、PIPE-WSAPI122はウェブサービスインターフェース106をPIPE-WSTCS118bに与え、オペレーティングシステム、アプリケーションオブジェクトデバイスサービス等を公表することのようなサービス112を管理する。PIPE-WSTCS118bは例えば関連する米国特許出願番号第10/733,328号及び第11/115,403号にも記載されている。

0080

プレゼンテーションプロセシングレイヤ104ユーザインターフェース:
STEER-WSAPI120及びPIPE-WSAPI122の実現は、WSTCC199用の多種多様のタスクコンピューティング100ユーザインターフェースを用意することを可能にする。なぜなら、WSTCC199のプレゼンテーションプロセシングレイヤ104は、タスクコンピューティングミドルウエアプロセシングレイヤ108のモジュールの実現手段から開放可能だからである。WSTCS119のユーザインターフェース104の例はタスクレットWSTCC199a-5に関してここで説明される。

0081

タスクレットWSTCC119a-5:
タスクレットTCC199a-5は非常に負担の軽い処理のタスクコンピューティングクライアント(TCC)119であり、サービスのOWL-Sファイルを実行する又はサービスを構成する(タスク126)。コマンドラインの中に含まれるOWL-Sファイルを実行するためにタスクレットTCCを形成する手法の中で、好ましい手法は実行されるOWL-Sファイルをダブルクリックすることで(或いは、他の何らかの適切なOS操作により)タスクレットTCCを呼び出すことである。タスクレットTCCがOWL-Sファイルを読み込むと、STEER-WSAPI120を用いることで、そのサービス又はサービス構成を実行する。タスクレットTCCはそれ自身のウインドウ中のサービス機能115の制御UIを示す。特に、図2を参照するに、タスクレットTCC119a-5はOWL-S記述を実行するために、「OWLS実行」API120を呼び出す。タスクレットTCC119a-5はOWL-S「プロセスモデル」及びタスク126を格納するサービスグラウンディングを利用し、「プロセスモデル」タスクレットを用意する。一実施例によれば、サービスワークフロー(及びタスクレットプラスサービスワークフロー)及びタスクパッケージが用意される。

0082

図5Aは本発明の一実施例によるタスクパッケージファイル構造を示す図である。一形態によれば、「タスクパッケージ」500はサービスワークフロー情報を含むサービスワークフロータスクレット(SW-タスクレット)502を含む。SW-タスクレット502サービスワークフロー情報及びタスクパッケージ500は、SW-タスクレット502に含まれる構成されたタスク126のSSD116(サービス112)を編集する能力及びポータビリティを改善する。「SW-タスクレット」なる用語は、意味論的に記述されたタスク126(2以上のサービス112で構成されるコンピュータ解釈可能な意味論的記述)に関連する。例えば、タスクレットTCC119a-5がOWL-Sに基づき且つOWL-Sファイルであり、ユーザがタスク126を格納、公表、実行及び共有するのに「プロセスモデル」タスクレットを利用可能ならば、タスク126を構成するサービス116(112)は一旦作成されると編集不可能になる。なぜなら、タスク126はOWL-S規格で規定される「プロセスモデル」に従って格納されるからである。OWL-S「プロセスモデル」は多くの方法で限定可能であり;例えば、「プロセスモデル」は実行についてだけである。従って、一実施例によれば、SW-タスクレット502は「サービスワークフロー」を含むように拡張される。ここでOWL-Sに基づいてタスク126を格納する3つの手法が概説される:
OLW-Sで規定される「プロセスモデル」は実行目的である。個々のサービスのプロセスだけが包含され、プロセスモデル以外にサービスワークフローを抽出することはできない。

0083

「SW-タスクレット」は「プロセスモデル」プラスサービスワークフロー情報である。SW-タスクレットにより、サービスワークフローを抽出し、サービス112の構成としてタスク126をリスト化することが可能である。

0084

しかしながら、或るサービス112が失われたと考えられる場合(例えば、目下の環境の中で発見されなかった場合)、その実行及び編集は失敗する。かくて「タスクパッケージ」500は「SW-タスクレット」502プラス包含されるサービス112全ての又は全てのSSD116の記述である。タスクパッケージに関し、或るサービス112が失われていた場合でさえ、WSTCS118は(例えば、テンポラリサービス発見手段を用いて)依然としてそれらを探すことができ、タスクパッケージ500のSW-タスクレット502に含まれているタスクの編集又は実行を続けることができる。

0085

特に、OWL-Sファイル各々は3つの部分を含むことができる:(1)プロファイル(これは、サービス名、サービス記述(人がサービス説明を読み取ることができる記述)及び/又はセマンティック入力/出力である。)、(2)プロセス(これは、実行に関連する情報を決める。)及び(3)グラウンディング(これは、実行情報を実際の呼出方法に対応付ける。)。一形態によれば、各SSD116はOWL−Sファイルである。また、2以上のSSD116のタスク126を記述するSW-タスクレット502はOWL−Sファイルファイルである。構成されたタスクの意味論的記述としてのSW-タスクレット502は、構成されたタスクのSSDに基づいて、構成されたタスク記述のSSDプロセスモデルとして実行プランを、構成された全てのSSDのサービスグラウンディングを生成し、及び後述するように構成されたタスク記述のプロファイル属性として構成されたタスクのサービスワークフローを抽出及び付加する。かくてタスク126を記述するOWL−Sファイルで又はSW−タスクレット502で、タスクレットOWL−Sファイルのプロセスセクション又は「プロセスモデル」は実行プランを含み、構成されたタスク126中にSSD116用のOWL−Sファイルのプロセスセクションのみを包含する。従ってタスク1126が一旦構築されると、そこから、TCC119はどのサービスが含まれているか及びタスク126の中でそれらがどんな役割であるかを知ることはできない。なぜなら、サービス112は複数のプロセスを含むかもしれないし、或いは複数のサービスが同じプロセスを共用するかもしれないからである。何れの場合も、「プロセスモデル」から、どのサービス112のプロセスが所属するかを特定することは困難である。換言すれば、「プロセスモデル」はサービス112及びプロセスの1対1の対応関係を明らかにしない。なぜなら、サービス112の「プロファイル」は「プロセスモデル」に含まれておらず、TCC119が「プロセスモデル」タスクレットを開くことは困難であり、そのタスクレットはプロセスモデルのみを含み、タスクウインドウ(又はタスク126構成プレーン)144に示されるサービス122のブロックを構築するようなサービスワークフローチャートのように、ユーザがサービス112からタスク126を初期に構築した段階に戻す。

0086

それ故に、一形態によれば、SW-タスクレット502はサービスワークフロー情報概念を有し、TCC119はSW-タスクレット502を開くことができ、SSD116を介して複数のサービス112を構成することでタスク126をユーザが構築する段階に戻す。タスクレットサービスワークフローの中で、関連するサービス112だけでなく、サービス112間の関係(或るサービス112の出力がどのようにして他のサービス112の入力に対応付けられるか等)も定義される。タスクレットサービスワークフローから、TCC119は、タスクレット/タスクパッケージをロードすること及びタスクウインドウ(又はタスク126の構成プレーン)144内でサービス112を構成するタスク(初期の構築段階)を表示することができる。タスクレットサービスワークフロー機能は、既存のタスク126をロードする機能及びそのタスク126がサービス112からどのように構築されたかを見る機能をユーザにもたらす。同一のTCC119に関し、タスク126から、ユーザはサービス112を付加/削除/編集することができ、TCC119により提供されるタスクインターフェース130を介して(例えば、図1B)新たなタスク126を生成する。これはタスク126「編集可能性(editability)」と呼ばれる。

0087

例えば、サービスワークフロー情報は:(1)タスク126を有する多数のサービス116(112)、(2)これらのサービス112のID(即ち、SSD116のID)及び(3)サービス112がタスク126を形成するために如何にしてリンクされたかを含む。タスクレットサービスワークフロー情報を参照することで、TCC(タスクコンピューティングクライアント)119は、リンクされたサービス112を有するサービスワークフローとして、SW-タスクレット502タスク126の当初の設計内容復元することができる。

0088

図6A−Dは本発明の一実施例によるSW−タスクレット502のコンピュータ解釈可能なソースコードを示す。特に、図6A−6Dは「マイファイルを開く(Open My File)」のタスク126を記述するためのOWL−Sファイルであり、そのファイルは「開く(Open)」116a及び「マイファイル(MyFile)」116bのSSD116を介する2つのサービス112で構成される。図6A−6Dでは、SW-タスクレット502は有効なOWL−Sタスク126記述であり、SW-タスクレット502は実行可能である。図6BではSW-タスクレット502(Open My File.owls)に関し、以下のラインがサービスワークフロー情報512になる。

0089

図6Bでは、サービスワークフロー512がサービスID516,518それぞれを介して2つのサービス「開く(オープン)」及び「マイファイル」の2つのサービスを特定する。更に、サービスワークフロー512は、「マイファイル」出力520及び「マイファイル」出力520に合致する「開く」522をサービス122(116)リンケージとして確認する。

0090

図6B−6Cでは、プロセスフローライン514は、OWL−Sの規格の一部であり、次のようにタスク126を実行するのに必要とされる。

0091

サービスワークフロー情報を利用して、タスク126の詳細を容易に共有することができる。しかしながらSW-タスクレット502の考えられる1つの欠点は、TCC199は示される構成サービス全てにその詳細を正確に表示することを要求することである。なぜなら、SW-タスクレット502サービスワークフロー情報はサービスIDのみを与え、サービス名、サービス記述、セマンティック入力/出力のような他の重要な情報をタスク126の個々のSSD116から検索することを当てにしているからである。サービスワークフロー情報と共にSW-タスクレット502は、コンパクトな手法でタスク126の詳細を共用することを可能にするが、サービスワークフロー情報を備えたSW-タスクレット502はタスク126を編集する能力及び移植性(portability)を制限するおそれがある。なぜなら何らかのサービス112が見失ったと思い(例えば、現在の環境で発見されなかったと思い)、実行も編集も失敗するかもしれないからである。従ってタスクレットサービスワークフロー情報を用意することに加えて、本実施例は「タスクパッケージ」を用意する。サービスワークフローに含まれるサービス112がその環境内で発見可能であった場合には、そのサービスワークフローは単体でそのタスク126を復元するのに充分である。

0092

図5Aでは、「タスクパッケージ」500は次のような3つのタイプのファイルを含むパッケージファイルである:SW-タスクレット502、関連するサービス504全体のSSD116及びインデックスファイル506。インデックスファイル506はサービスID(タスクレットのワークフロー情報に記録されている)及び関連するサービス記述5−4間の対応関係(マッピング)を格納する。一形態によれば、例えば、パッケージファイル500はジップ(ZIP)ファイルフォーマットに従ってもよい。図5Bは本発明の一実施例によるジップタスクパッケージのファイルリストである。

0093

図5Aでは、タスクパッケージ500は以下の部分を含むジップファイルである:「サービス」サブフォルダ(タスク126を構成するセマンティック記述116全てを格納する(例えば、オープン116a及びマイファイル116b)、SW-タスクレット502(ワークフロー情報と共にOWL−Sフォーマットでタスク126を記述する)(オープンマイファイルSW-タスクレット502)及びインデックスファイル(services.idx)506(SW-タスクレット502に現れるサービスIDを、「サービス」サブフォルダ中に格納されたタスク126のSSD116に対応付ける。)。図7A−Cは本発明の一実施例による「オープン」サービスに関する意味論的なサービス記述を表すコンピュータ解釈可能なソースコード例を示す。図8Aは「マイファイル(MyFile)」サービスの意味論的サービス記述を表現する本発明の一実施例によるコンピュータ解釈可能なソースコード例を示す。従って図7及び8に示される「オープン」116a及び「マイファイル」116bはタスクパッケージ500の「サービス」サブフォルダ中にある。

0094

従って、タスクパッケージ500のサービスサブフォルダ内に、複数のサービス機能115で構成されたタスク126に含まれる全てのサービス機能115のSSD116が格納されている。SW-タスクレット502はサービスワークフロー情報512も提供する。インデックスファイル「services.idx」506は(SW-タスクレット502で使用される)サービスID及び(サービスサブフォルダに格納される)SSDファイル116の間の対応関係を決める。

0095

TCC119でタスクパッケージ500が開かれると、STEER-WSTCS119aのような第1のSW-タスクレット502が抽出される。SW-タスクレット502が必要とする全てのサービス112が利用可能であるか否か(即ち、TCC119によって既に発見済みであるか否か)をTCC119は検査する。SW-タスクレット502サービス116がTCC119によって既に発見済みであったならば、何らのアクションもなされない。そうでなかった場合、インデックスファイル506から、TCC119は不足しているサービス116全ての記述を見出し、それらをテンポラリサービス発見モジュール428を介して公表する。SW-タスクレット502サービス116はテンポラリサービス発見モジュール428以外の発見手段を介して公表可能であるが、テンポラリサービス発見モジュール428を利用しなかった場合には、発見されたタスクパッケージ500サービス116は現在のタスクパッケージのタスク構成セッションを過ぎても存続可能である。TCC119によって、不足している全てのサービス116が公表され及び発見されると、SW-タスクレット502はTCC119による手順のロードを再開可能である。一形態によれば、TCC119はタスクパケットファイル500を開き、SW-タスクレット502を実行及び/又は編集するために(例えば、編集するために、構成されたタスクダイヤグラムを表示するために)、TCC119はタスクパッケージ500のSSDから、構成済みタスク126の不足している又は必要なSSD116の如何なるものも検索する。TCC119は検索されたSSD116を公表し、テンポラリサービス発見モジュール428を介してSSD116を登録することで、SSD116をTCC119にとって利用可能にする。TCC119はテンポラリサービス発見部428ウェブサービスを呼び出し、タスクパッケージ500からテンポラリサービス発見428ウェブサービスに、検索されたSSD116を提出し、テンポラリサービス発見部428はウェブサービスインターフェースを介したTCC119からの入力SSD116を受け入れる。テンポラリサービス発見部428ウェブサービスは、TCC119による認証用に、受け入れたSSDを発見したサービス116(112)として登録する。一形態によれば、テンポラリサービス発見部428は受け入れたSSDを分析し、TCC110のサービスインスタンス112を作成する。一形態によれば、テンポラリサービス発見部428により公表されたサービスは、例えば、TCC119の実行セッション中に加えてテンポラリサービス発見部428を開始するTCC119でのみ利用可能である。

0096

従ってSW-タスクレット502は実行可能なOWL-S記述であり、その記述は、包含されるサービス112のサービスワークフローに加えて包含されるサービス112のプロセスに基づいて、タスク126の実行計画を規定する。サービスワークフロー情報を有するSW-タスクレット502は或る特定のタグを有し、そのタグは、SW-タスクレット502で記述されるタスク126のサービスワークフローを表現する。タスクレットサービスワークフロー情報と共に、TCC119はSW-タスクレット502を開き、例えば、ユーザインターフェースウインドウ144で、包含されるサービス112及びそれらの関係を表示する。しかしながら、TCC119環境では、SW-タスクレット502の1以上のサービス112が、そのようなサービス112が発見されない又はTCC119に登録されていないことに起因して、不足していると考えられた場合には、開く(オープン)手順は不足情報に起因して失敗するかもしれない。かくて、タスクパッケージ500は包含されるサービス112(又はSSD116)全ての記述及びSW-タスクレット502を含む。TCC119がタスクパッケージ500を開くと、たとえSW-タスクレット502の1以上のサービス112が欠けていても、取り付けられたセマンティックサービス記述116からそのサービス112をロードする選択肢がユーザに与えられる。不足していたサービス112全てがロードされると、完全なタスク126が復元される。要するに、タスクパッケージ500はタスク126を保存する最もロバストな(robust)方法である。サービスワークフローを備えたタスクレット及びタスクパッケージの双方は「タスク編集可能性」をサポートする。

0097

一形態によれば、SW-タスクレット502及びタスクパッケージ500双方がTCC119で作成可能である。例えば、ユーザが一群のサービス112からタスク126を作成した後で、ユーザはそのタスク126を保存するための選択肢を持つことができる。タスク126を保存している間、そのユーザはそのタスク126を、サービスワークフローを有するSW-タスクレット502として又はタスクパッケージ(サービスワークフロー情報を有するタスクレット−プラス−そのタスク126に含まれている個々のサービス112の記述)として保存することを決定できる。一旦ユーザがその決定を行うと、SW-タスクレット/タスクパッケージは生成可能になる。

0098

SW-タスクレットを生成する手順は次のようにすることができる:
1.タスクのOWL-Sを「プロセスモデル」専用タスクレットとして生成する。

0099

2.タスクのサービスワークフロー情報を抽出し、抽出されたサービスワークフロー情報をプロファイル属性としてOWL-Sに加える。一形態によれば、ユーザはTCC119(例えば、STEER-WSTCS119aに関する図1B)内でタスクを生成する場合に、サービスワークフロー情報がSTEER-WSTCS119のエディタから抽出される。一形態によれば、図1Bでは、表示された構成されたタスクダイヤグラムはデータ構造で表現され、或る抽出手順は、編集を含むユーザのタスク構成をタスクデータ構造から分析し、サービスワークフローを算出/決定し、例えば、タスク126を構成するサービス116(112)の数を確認し、どのサービスがタスク126に含まれているかを例えばこれらのサービス112のID(即ち、SSD116のID)で確認し、タスク126を形成するためにどのサービス116(112)が共にリンクされるかを確認する(例えば、サービス1の出力はサービス2の入力に進む、等々)。

0100

3.或るファイルに対するサービスワークフローと共にOWL−SをSW-タスクレット502として格納する。

0101

タスクパッケージの手順は次のようにすることができる:
1.SW-タスクレットを事前に決定したように作成する。

0102

2.含まれているサービス116全ての記述を加える。

0103

3.サービスid及びサービス記述ファイル名の間の対応関係(マッピング)を作り出し、そのマッピングをservices.idxファイルに格納する。図9は本発明の一実施例によるタスクパッケージインデックスファイル例506を示す。

0104

4.コンテンツをジップ化する。

0105

タスクパッケージ500は未改良の方法に比べてかなりの改善効果をもたらし、ユーザは「プロセスモデル」タスクレット及び関連するサービスを手動で梱包し(zip)して他のユーザに送り;それを受けたユーザはそのファイルを開包(unzip)し、不足しているサービスを公表し、「プロセスモデル」専用タスクレットを最終的に開く必要がある。タスクパッケージの利点は明確である。なぜなら、TCC119でタスクパッケージの構築中に、タスクパッケージフォーマットはTCC119が関連するサービス112全てを自動的に検出し、タスクパッケージ中のそれらのサービス記述116をSW-タスクレット及び対応するインデックスファイルと共に梱包することを許容するからである。タスクパッケージがTCC119で動作する又はオープンされる場合に、TCC119は、如何なる不足サービス112をも対象に含み、タスク構成サービスを自動的に決定する。上記の未改良の方法では、受け側のユーザは不足しているサービス112を手で抽出し、それらを手動で公表する必要がある。

0106

ここでは、タスクコンピューティング100環境を複数のコンピュータシステム実行段にセグメント化することによるタスクコンピューティングシステム例が説明され、その実行段は、プレゼンテーションクライアント処理レイヤ、リモートプロシジャ呼出アプリケーションプログラムインターフェース(API)、ミドルウエアサービスプロセッシングレイヤ(プレゼンテーションレイヤがリモートプロシジャ呼出APIを介してリアルタイムでインターフェースをとり、プレゼンテーションレイヤでコンピュータ実行タスクインターフェースを、意味論的に記述されたコンピュータシステムソース機能に対して、コンピュータシステムでのサービスとして動的に生成する);サービスレイヤ及び機能ソース実現レイヤ(意味論的に記述されたコンピュータシステムソース機能を、ミドルウエアプロセシングレイヤがインターフェースをとるコンピュータシステムでのサービスとして与える);及びリアルタイムで動的に構成する実行可能なタスク(コンピュータシステムでの1以上のサービスに対してプレゼンテーションレイヤで生成されたタスクインターフェースに従って、1以上のサービスで構成される)を有する。コンピュータサービスは実行可能なタスクにリアルタイムで動的に構成され、その際に、意味論的に記述されたアプリケーション−、装置−及びサービス−リッチなコンピュータに基づいてコンピュータ上のサービスに対して生成されたインターフェースを用いる。ここで説明された実施形態によれば、ユーザは、実用的に、効果的に、効率的に、動的に、リアルタイムに、柔軟性のある統合されたユーザインターフェース(構成及び実行機能)を当てにし、やり取りを管理し、汎用コンピュータ環境とやり取りする。

0107

装置、方法、コンピュータ読取可能な媒体(そのキャリア信号を含む)は複数のコンピューティング機能ソースを用意し、機能に関するコンピューティングソース各々は、例えばユーザ及び/又はコンピュータにサービスを提供し、装置のコンピュータ環境内に及びその装置とネットワーク通信するコンピュータ環境内に存在する。本装置はセマンティックサービス記述(SSD)をサービスに関連付ける。SSDはサービスの意味論的記述を有し、コンピュータ解釈可能な言語に従うサービスパラメータのセマンティック記述、及びサービスグラウンディングのように、SSDを表現するコンピュータ解釈可能な言語とインターフェースとの間の対応関係(サービスのインターフェースパラメータを含む)を含む。本装置は、SSDを発見するための複数の発見手段を介して1以上のSSDを利用可能なサービスとして動的に発見し、各サービスに関連する各SSD中の意味論的記述に基づいてサービスを動的に選別し、可能なタスクを連続的に示すためにサービスを選択すること及びサービスを選別することに基づいて、タスクを動的に構成するためのユーザインターフェースを生成し、構成されたタスクの構成されたタスク記述として実行可能なセマンティックサービスワークフロー記述を生成する。

0108

実行可能なセマンティックサービスワークフロー記述の生成は、構成されたタスクのSSDに基づいて、構成されたタスク記述のSSDプロセスモデルとして実行プランを、構成されたタスクのSSD全てのサービスグラウンディングのリストを生成すること、及び構成されたタスクのサービスワークフローを、構成されたタスクの記述におけるプロファイル属性として抽出及び追加することを含む。

0109

タスクコンピューティングは或るアプローチであり、そのアプローチは、(a)セマンティックウェブ技術を利用し、より多くの(セマンティック)ウェブリソースがユビキタスコンピューティングアプリケーションに速やかに利用可能になるようにし、(b)リソースの性質には全く関係ないものであり、リソースがどのように発見されるか、どのようにアクセスされるか、どのように接続されるか又はどのように通信するかによらず、抽象化サービス116がタスクコンピューティングシステム100でそれらを利用可能にするようにする。タスクコンピューティングは、全ての機能の普遍的な抽象化として意味論的に記述されたサービス116を当てにし、更に、構築可能なタスク126は多くのサービス112を含んでよいので、タスクコンピューティングは、装置対サービスの相互運用性(interoperability)より大きな範囲を網羅する。例えば典型的なタスクコンピューティング100システムのタスク126はリアルタイムで動的に5−6個のサービス112を利用できる。

0110

本発明の上記の好適実施例は、(既知の如何なるコンピュータ読取可能な媒体に格納されるような)ソフトウエアで及び/又はプログラム可能な装置/コンピューティング装置を制御するプログラム可能なコンピューティング装置/ハードウエア(例えば、データを格納、検索、提示(例えば、表示)及び処理することができるプログラム可能な電子装置)−如何なるタイプのプログラム可能なコンピュータ装置で実現されてもよい。そのようなコンピュータ装置は、限定ではないが例えば、パーソナルコンピュータ、クライアントサーバネットワークアーキテクチャの場合にはサーバ及び/又はクライアントコンピュータ分散ネットワークアーキテクチャにおけるネットワーク化されたコンピュータ、端末装置、パーソナルディジタルアシスタント、モバイル装置等である。

0111

以上本発明に関する多くの特徴及び利点が詳細な説明から明らかになり、かくて添付の特許請求の範囲により、そのような特徴及び利点の全てを本発明の真の精神及び範囲内に網羅することが意図される。更に、多くの修正及び変形が当業者に明白なので、図示及び説明された構成及び動作に厳密に本発明を限定することは望まれず、従って適切な全ての修正及び変形は本発明の範囲内にある。

図面の簡単な説明

0112

本発明の一実施例によるタスクコンピューティング環境のアーキテクチャを示すシステム図である。
本発明の一実施例による、コンピュータで実現されるプレゼンテーションレイヤでのタスクインターフェースとしてコンピュータに表示されたグラフィカルユーザインターフェース画像を示す図である。
本発明の一実施例によるSTEER-WSAPIの定義リスト例を示す図である。
本発明の一実施例によるSTEER-WSAPIを利用するコンピュータソースコードを示す図である。
本発明の一実施例によるSTEER-WSAPIを利用するコンピュータソースコードを示す図である。
本発明の一実施例によるミドルウエアプロセッシングレイヤ108プログラムモジュールの機能ブロック図を示す。
本発明の一実施例によるタスクパッケージファイル構造を示す図である。
本発明の一実施例による開包されたタスクパッケージ中のファイルリストを示す図である。
本発明の一実施例によるサービスワークフローと共にタスクレットのコンピュータ解釈可能なソースコードを示す図である。
本発明の一実施例によるサービスワークフローと共にタスクレットのコンピュータ解釈可能なソースコードを示す図である。
本発明の一実施例によるサービスワークフローと共にタスクレットのコンピュータ解釈可能なソースコードを示す図である。
本発明の一実施例によるサービスワークフローと共にタスクレットのコンピュータ解釈可能なソースコードを示す図である。
本発明の一実施例による「オープン」サービスに関する意味論的なサービス記述を表すコンピュータ解釈可能なソースコードを例示する図である。
本発明の一実施例による「オープン」サービスに関する意味論的なサービス記述を表すコンピュータ解釈可能なソースコードを例示する図である。
本発明の一実施例による「オープン」サービスに関する意味論的なサービス記述を表すコンピュータ解釈可能なソースコードを例示する図である。
「マイファイル(MyFile)」サービスの意味論的サービス記述を表現する本発明の一実施例によるコンピュータ解釈可能なソースコード例を示す図である。
「マイファイル(MyFile)」サービスの意味論的サービス記述を表現する本発明の一実施例によるコンピュータ解釈可能なソースコード例を示す図である。
「マイファイル(MyFile)」サービスの意味論的サービス記述を表現する本発明の一実施例によるコンピュータ解釈可能なソースコード例を示す図である。
本発明の一実施例によるタスクパッケージインデックスファイルを例示する図である。

符号の説明

0113

100タスクコンピューティング環境
104プレゼンテーションプロセシングレイヤ104
106リモートプロシジャコールメカニズムアプリケーションプログラムインターフェース
108ミドルウエアプロセシングレイヤ
110コンピュータシステム
112サービスレイヤ
114 機能ソース実現レイヤ
115サービス機能
116セマンティックサービス記述
126 タスク

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

  • 日本電気株式会社の「 情報処理装置」が 公開されました。( 2019/08/22)

    【課題】制御ノードと計算ノードとを有する情報処理装置において、計算ノードで動作する複数のプロセス間でメモリ共有の可否を制御する方法の実現が望まれていること。【解決手段】情報処理装置は、第1のメモリを有... 詳細

  • 株式会社東芝の「 クラウドシステム、クラウドサーバ、エッジサーバおよびユーザ装置」が 公開されました。( 2019/08/15)

    【課題】 クラウドおよびエッジの連携により提供されるサービスが運用上の環境変化の変化に脆弱であったこと。【解決手段】 実施形態に係わるクラウドシステムは、ネットワークを介して相互に通信可能なクラウ... 詳細

  • 富士通株式会社の「 性能調整プログラム、および性能調整方法」が 公開されました。( 2019/08/15)

    【課題】性能悪化要因の処理を特定できるようにする。【解決手段】管理装置10は、所定の処理性能による調整対象処理の実行機能である1または複数の単位機能5a,5bそれぞれを、1または複数のサーバのいずれか... 詳細

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ