(57)【特許請求の範囲】
【請求項１】
複数のアプリケーション・サービスにおいて複数の関連したサービス・エンティティから導き出されるコンテキスト・エンティティに関連して、実施すべき複数のアクションが使用可能であるかどうかを決定する方法であって、
第１のサービス・エンティティおよび第２のサービス・エンティティに関連付けられているアクションを、その使用可能性に従って分類するステップであって、前記第１のサービス・エンティティは第１のアプリケーション・サービスに関連付けられ、前記第２のサービス・エンティティは前記第１のアプリケーション・サービスとは異なる第２のアプリケーション・サービスに関連付けられ、前記第１のサービス・エンティティと前記第２のサービス・エンティティは、異なるフォーマットによって定義される同一のサービス・エンティティを含み、前記第１のアプリケーション・サービスは前記第１のサービス・エンティティに対応する第１のメタデータを有し、前記第２のアプリケーション・サービスは前記第２のサービス・エンティティに対応する第２のメタデータを有し、各メタデータは、対応するサービス・エンティティの属性を含み、当該対応するサービス・エンティティのデータのフォーマット、対応するサービス・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述し、前記使用可能性の分類には、アクションを使用可能にするための所定の規則のうち一部を満たすことによって使用可能、アクションを使用可能にするための所定の規則のすべてを満たすことによって使用可能、またはいつでも使用可能が含まれる、ステップと、
前記第１のメタデータに含まれる第１のサービス・エンティティの属性と前記第２のメタデータに含まれる第２のサービス・エンティティの属性を相互参照することによって、前記第１のサービス・エンティティと前記第２のサービス・エンティティをマッチングさせるステップと、
前記マッチングする第１のサービス・エンティティと第２のサービス・エンティティを単一のコンテキスト・エンティティに統合し、前記第１のメタデータと前記第２のメタデータを単一のコンテキスト・メタデータに統合するステップであって、前記統合されたコンテキスト・メタデータは、前記統合されたコンテキスト・エンティティのデータのフォーマット、前記統合されたコンテキスト・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述する、ステップと、
前記統合されたコンテキスト・メタデータに関連して、前記アクションの前記使用可能性の対応する分類に基づいて、前記マッチングする第１のサービス・エンティティと第２のサービス・エンティティごとに、実施すべきアクションが使用可能であるかどうか決定するステップと、
実施すべき使用可能なアクションを表示するステップと
を備えることを特徴とする方法。
【請求項２】
アクションが使用可能であるかどうかを決定するステップは、前記アクションの実施が競合をもたらすかどうかを決定することを備えることを特徴とする請求項１に記載の方法。
【請求項３】
アプリケーション・エンティティを前記コンテキスト・エンティティにマッチングさせることをさらに備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記アプリケーション・サービスにおいて前記マッチングする各サービス・エンティティに関して実施すべき使用可能な前記アクションについて、アプリケーションにおけるビューを提供することをさらに備えることを特徴とする請求項３に記載の方法。
【請求項５】
第１のアプリケーション・サービスにおいて第１のサービス・エンティティに関して実施すべき使用可能なアクションをアプリケーションに提供するための方法であって、
第２のサービス・エンティティを前記第１のサービス・エンティティから導き出される関連付けられるコンテキスト・エンティティにマッチングさせるステップであって、前記第１のサービス・エンティティは第１のアプリケーション・サービスに関連付けられ、前記第２のサービス・エンティティは前記第１のアプリケーション・サービスとは異なる第２のアプリケーション・サービスに関連付けられ、前記第１のサービス・エンティティと前記第２のサービス・エンティティは、異なるフォーマットによって定義される同一のサービス・エンティティを含み、前記第１のアプリケーション・サービスは前記第１のサービス・エンティティに対応する第１のメタデータを有し、前記第２のアプリケーション・サービスは前記第２のサービス・エンティティに対応する第２のメタデータを有し、各メタデータは、対応するサービス・エンティティの属性を含み、当該対応するサービス・エンティティのデータのフォーマット、対応するサービス・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述し、前記使用可能性の分類には、アクションを使用可能にするための所定の規則のうち一部を満たすことによって使用可能、アクションを使用可能にするための所定の規則のすべてを満たすことによって使用可能、またはいつでも使用可能が含まれ、前記第１のメタデータに含まれる第１のサービス・エンティティの属性と前記第２のメタデータに含まれる第２のサービス・エンティティの属性を相互参照することによって、前記第１のサービス・エンティティと前記第２のサービス・エンティティをマッチングさせる、ステップと、
前記マッチングする第１のサービス・エンティティと第２のサービス・エンティティを単一のコンテキスト・エンティティに統合し、前記第１のメタデータと前記第２のメタデータを単一のコンテキスト・メタデータに統合するステップであって、前記統合されたコンテキスト・メタデータは、前記統合されたコンテキスト・エンティティのデータのフォーマット、前記統合されたコンテキスト・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述する、ステップと、
前記関連付けられるコンテキスト・エンティティが前記第１のサービス・エンティティから導き出されることを識別するステップと、
前記統合されたコンテキスト・メタデータに関連して、その使用可能性による前記アクションの分類に基づいて、前記第１のアプリケーション・サービスにおいて前記第１のサービス・エンティティに関して実施すべきアクションが使用可能であるかどうかを決定するステップと、
前記アクションが使用可能である場合には、前記アクションを前記アプリケーションに提供すること
を備えることを特徴とする方法。
【請求項６】
前記関連付けられるコンテキスト・エンティティは、前記第２のアプリケーション・サービスにおいて前記第１のサービス・エンティティおよび前記第２のサービス・エンティティから導き出され、前記第１のサービス・エンティティは前記第２のサービス・エンティティに関連していることを識別することを備えることを特徴とする請求項５に記載の方法。
【請求項７】
前記第１のサービス・エンティティに関して実施すべき前記アクションが使用可能であるかどうかを決定するステップは、前記第１のサービス・エンティティに関して前記アクションの実施が競合をもたらすことになるかどうかを決定することを備えることを特徴とする請求項５に記載の方法。
【請求項８】
前記アプリケーションにおいて前記アクションのビューを生成することをさらに備えることを特徴とする請求項５に記載の方法。
【請求項９】
第１のアプリケーション・サービスにおける第１のサービス・エンティティと第２のアプリケーション・サービスにおける第２のサービス・エンティティとから導き出されるコンテキスト・エンティティに関連して、実施すべき第１のアクションおよび第２のアクションが使用可能であるかどうかを決定するためのシステムであって、前記第１のサービス・エンティティが前記第２のサービス・エンティティに関連しており、前記第１のサービス・エンティティと前記第２のサービス・エンティティは、異なるフォーマットによって定義される同一のサービス・エンティティを含み、前記第１のアプリケーション・サービスは前記第１のサービス・エンティティに対応する第１のメタデータを有し、前記第２のアプリケーション・サービスは前記第２のサービス・エンティティに対応する第２のメタデータを有し、各メタデータは、対応するサービス・エンティティの属性を含み、当該対応するサービス・エンティティのデータのフォーマット、対応するサービス・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述し、前記使用可能性の分類には、アクションを使用可能にするための所定の規則のうち一部を満たすことによって使用可能、アクションを使用可能にするための所定の規則のすべてを満たすことによって使用可能、またはいつでも使用可能が含まれ、前記システムは、
前記第１のサービス・エンティティに関して実施すべきその使用可能性に従って前記第１のアクションを分類し、前記第１のアクションの前記分類をアクション・サービスに対して提供する前記第１のアプリケーション・サービスと、
前記第２のサービス・エンティティに関して実施すべきその使用可能性に従って分類される前記第２のアクションを分類し、前記第２のアクションの前記分類をアクション・サービスに対して提供する前記第２のアプリケーション・サービスと、
前記第１のアクションの前記分類および前記第２のアクションの前記分類に基づいて前記第１のアクションおよび前記第２のアクションが使用可能であるかどうかを決定する前記アクション・サービスと、
前記第１のメタデータに含まれる第１のサービス・エンティティの属性と前記第２のメタデータに含まれる第２のサービス・エンティティの属性を相互参照することによって、前記第１および前記第２のサービス・エンティティをマッチングさせ、前記マッチングする第１および前記第２のサービス・エンティティを単一のコンテキスト・エンティティに統合し、前記第１のメタデータと前記第２のメタデータを単一のコンテキスト・メタデータに統合し、前記マッチングする第１のサービス・エンティティと第２のサービス・エンティティごとに、前記アクション・サービスに照会して前記第１のアクションが使用可能であるかどうか、および前記第２のアクションが使用可能であるかどうかを決定するコンテキスト・サービスであって、前記統合されたコンテキスト・メタデータは、前記統合されたコンテキスト・エンティティのデータのフォーマット、前記統合されたコンテキスト・エンティティに関して実施すべき使用可能なアクション、および当該アクションの使用可能性の分類を記述する、コンテキスト・サービスと
を備え、前記アクション・サービスは、前記統合されたコンテキスト・メタデータに関連して、前記第１のアクションおよび前記第２のアクションが使用可能であるかどうかを決定することを特徴とするシステム。
【請求項１０】
前記アクション・サービスは、前記第１および前記第２のアクションの実施が競合をもたらすことになるかどうかを決定する競合保護メカニズムを備えることを特徴とする請求項９に記載のシステム。
【請求項１１】
前記アクション・サービスは、前記第１および前記第２のアクションの実施を追跡する追跡メカニズムを備えることを特徴とする請求項９に記載のシステム。
【請求項１２】
前記コンテキスト・エンティティにマッチングさせられるアプリケーション・エンティティを管理するアプリケーションをさらに備えることを特徴とする請求項９に記載のシステム。
【請求項１３】
前記アプリケーションは、前記第１および前記第２のアクションのビューを表示するための状態および関係のビュー・メカニズムを備えることを特徴とする請求項１２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リソース管理の分野に関し、より詳細にはアプリケーション・サービスとアプリケーションの間のリソース管理を統合することに関する。
【背景技術】
【０００２】
従来技術によるリソース管理システムにおいては、アプリケーション・サービスは、一般にアプリケーションに関連して機能する。かかるアプリケーション・サービスは、それぞれリソースの個々のコンポーネントを管理することができる。例えば、２つのアプリケーション・サービスが、貸付承認プロセスの異なるコンポーネントを管理することができる。詳細には、第１のアプリケーション・サービスは、貸付承認プロセスのクレジット・ヒストリ（顧客の信用利用の歴史）・コンポーネントを管理することができ、第２のアプリケーション・サービスは、この貸付承認プロセスの頭金（down payment）コンポーネントを管理することができる。各アプリケーション・サービスは、この貸付承認プロセスに関連付けられた関連したサービス・エンティティを管理することができる。例えば、第１のアプリケーション・サービスは、「申請者」サービス・エンティティを管理することができ、第２のアプリケーション・サービスは、関連した「貸付け」サービス・エンティティを管理することができる。
【０００３】
これらアプリケーション・サービスに関連して機能するアプリケーションは、例えば、ドキュメントの生成を可能にする電子メール・アプリケーション、ワード・プロセッシング・アプリケーション、またはスプレッド・シート・アプリケーションであってもよい。かかるドキュメントは、しばしばサービス・エンティティに関連する可能性があり、これらアプリケーション・サービスにおけるサービス・エンティティの管理に影響を及ぼす可能性がある。例えば、ドキュメントは、テキスト「ジョン・スミスは、クレジット・カードの支払いをしていない」を含むこともある。「ジョン・スミス」は、第１のアプリケーション・サービスが管理するその申請者エンティティと、第２のアプリケーション・サービスが管理するその貸付けエンティティの両方のインスタンスとなり得る。したがって、このドキュメントは、申請者エンティティ「ジョン・スミス」および貸付けエンティティ「ジョン・スミス」の管理に影響を及ぼす可能性がある。特に、このドキュメントは、第１のアプリケーション・サービスにおける申請者エンティティ「ジョン・スミス」の状態を「貸付拒否」状態へと変更するようにユーザに影響を及ぼす可能性がある。このドキュメントはまた、第２のアプリケーション・サービスにおける貸付けエンティティ「ジョン・スミス」の状態を「頭金払い戻し」状態へと変更させることもある。
【０００４】
ドキュメントはしばしば、アプリケーション・サービスにおけるサービス・エンティティの管理に影響を及ぼすこともあるが、アプリケーション内からサービス・エンティティにアクセスし、それを照会し、管理する機能は一般に限られている。例えば、ドキュメントが、第１のプリケーション・サービスにおけるアプリケーション・エンティティ「ジョン・スミス」の状態を変更するようにユーザに影響を及ぼす場合には、この状態を変更するためにそのユーザは、第１のアプリケーション・サービスにアクセスし、第１のアプリケーション・サービスにおける申請者サービス・エンティティを識別する必要がある。しかし、ドキュメントは、しばしばサービス・エンティティを定義する属性についての十分なセマンティックスを提供しないので、アプリケーション・サービスにおけるサービス・エンティティを識別することが難しいこともある。例えば、このドキュメントは、この貸付申請者「ジョン・スミス」を彼のフル・ネームで言及しているが、第１のアプリケーション・サービスは、この申請者サービス・エンティティを別々の「ファースト・ネーム」属性および「ラスト・ネーム」属性によって定義することもできる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
アプリケーション内から、サービス・エンティティにアクセスし、それを照会し管理する機能が限られていることは、異なるアプリケーション・サービスからの関連したエンティティの管理にドキュメントが影響を及ぼすときには特にやっかいである。例えば、このドキュメントによってユーザが、第１のアプリケーション・サービスにおける申請者エンティティ「ジョン・スミス」の状態を変更し、第２のアプリケーション・サービスにおける貸付けエンティティ「ジョン・スミス」の状態を変更する場合には、ユーザは、各アプリケーション・サービスに別々にアクセスし、各アプリケーション・サービスにおいて各サービス・エンティティを別々に識別する必要がある。異なるアプリケーション・サービスにおいてサービス・エンティティを別々に識別することは、例えこれらの異なるサービス・エンティティが関連したものであっても、サービス・エンティティを各アプリケーション・サービスにおいて異なる属性の組によって定義する可能性があるのでやっかいである。例えば、第１のアプリケーション・サービスは、別々の「ファースト・ネーム」属性および「ラスト・ネーム」属性によってこの申請者サービス・エンティティを定義する可能性があり、第２のアプリケーション・サービスは、この貸付けエンティティを名前属性ではなく「申請者」属性によって定義する可能性がある。
【０００６】
従来技術のリソース管理システムにおけるサービス・エンティティの管理に関連した別の困難な点は、アプリケーションは一般に、そのアプリケーション・サービスにおけるサービス・エンティティに関して実施できるアクションの使用可能性について限られた情報しか提供しないことである。特に、各アプリケーション・サービスが、サービス・エンティティに関してアクションの実施に関連した特定の規則および条件を有する可能性がある。例えば、かかる規則および条件には、アクションを実施することができる最大回数、アクションを実施する必要がある期間、アクションを実施できる限定されたユーザまたはユーザ・クラス、またはアクションの実施の以前または以後に行う必要がある条件が含まれる可能性がある。アプリケーションは一般に、かかる規則および条件が何であるか、それらが満たされるかどうか、を決定できない。したがって、ユーザが、各コンポーネント・プロセスにアクセスしてアクションがこのプロセス内で使用可能かどうかを決定する必要がある。
【０００７】
さらに、アプリケーションでは、一般にかかる規則および条件に従って複数のユーザ間でリソースの管理を調整（coordinate）する機能が限られている。特に、アプリケーションでは、アクションの実施を追跡し、無効なアクションまたは競合（conflicts）を引き起こす可能性があるアクションの実施に対して防止したり、または助言したりする機能が限られている。さらに、アプリケーションでは、一般に異なるアプリケーション・サービスが管理するエンティティとプロセスの間の関係についての情報、ならびに他のユーザによるかかる関連したエンティティに対するアクションの実施についての情報をユーザに提供する機能が限られている。かかる情報は、アクションの使用可能性を決定すること、およびこれらアクションの実施に関連した競合に対して保護を行うこと、に使用することができる。
【０００８】
したがって、当技術分野において、アプリケーション・サービスとアプリケーションの間のリソース管理を統合するためのシステムおよび方法が必要になっている。かかるシステムおよび方法は、例えば、異なるアプリケーション・サービスからの関連したサービス・エンティティのマッチング、サービス・エンティティのドキュメントへの関連付け、およびアプリケーション内からのサービス・エンティティの管理を可能にすることが望ましい。
【課題を解決するための手段】
【０００９】
アプリケーション・サービスは、サービス・エンティティに対応するサービス・メタデータを保持（maintain）する。このアプリケーション・サービスは、かかるサービス・メタデータをコンテキスト・サービスおよびアクション・サービスに対して提供することができる。このコンテキスト・サービスは、このサービス・メタデータに基づいて関連したサービス・エンティティをマッチングさせることができる。このコンテキスト・サービスは、かかる関連したサービス・エンティティをコンテキスト・エンティティに統合することができる。このコンテキスト・サービスは、かかる関連したサービス・エンティティに対応するサービス・メタデータをコンテキスト・メタデータに統合することができる。
【００１０】
アプリケーションは、アプリケーション・エンティティに対応するアプリケーション・メタデータを保持する。アプリケーション・エンティティがそのアプリケーションにおいて選択されるとき、実行サービスは、この選択されたアプリケーション・エンティティに対応するアプリケーション・メタデータを取り出し、かかるアプリケーション・メタデータをこのコンテキスト・サービスに対して提供することができる。
【００１１】
このコンテキスト・サービスは、アプリケーション・メタデータおよびコンテキスト・メタデータに基づいてこの選択されたアプリケーション・エンティティを関連付けられるコンテキスト・エンティティにマッチングさせることができる。このコンテキスト・サービスは、この関連付けられるコンテキスト・エンティティが導き出される、関連付けられるサービス・エンティティを識別することができる。このコンテキスト・サービスは、この関連付けられるサービス・エンティティに対応するサービス・メタデータをその実行サービスに提供することができる。この実行サービスは、提供されたサービス・メタデータの表示（display）を生成することができ、これを使用してこのアプリケーションにおける関連付けられるサービス・エンティティを管理することができる。
【００１２】
本発明の一実施形態では、アプリケーション・サービスにおけるサービス・エンティティに関して実施すべきアクションの使用可能性を分類することができる。これらのアクションを、楽観的に使用可能、規則に従って使用可能、または全般的に使用可能、として分類することができる。この分類は、アクション・サービスに対して提供することができ、このアクション・サービスは、この分類を使用して関連付けられるサービス・エンティティに関してアクションの使用可能性を決定することができる。このアクション・サービスは、アクションの実施を追跡する追跡メカニズムを含むこともある。このアクション・サービスはまた、競合保護メカニズムを含むこともでき、この競合保護メカニズムは、その分類と組み合わせて追跡サービスからのデータを使用してそのアクションの実施が競合をもたらすかどうかを決定する。関連付けられるサービス・エンティティに関して実施することが可能なアクションをそのアプリケーションに対して提供することができ、このアクションのビューをそのアプリケーションにおいて生成することができる。
【００１３】
本発明の追加の特徴および利点は、添付図面を参照して進める例示の実施形態の以下の詳細な説明から明らかとなろう。
【００１４】
これらの例示の実施形態は、添付図面を参照して以下の詳細な説明を読んだ後により良く理解することができよう。
【発明を実施するための最良の形態】
【００１５】
Ｉ  例示のコンピュータ環境
図１および以下の説明では、本発明および／またはその一部分を実装することができる適切なコンピューティング環境の簡潔な一般的な説明を提供することを意図している。必ずしも必要ではないが、本発明は、クライアント・ワークステーションなどのコンピュータによって実行されるプログラム・モジュールやアプリケーション・サービスなどコンピュータ実行可能命令の一般的なコンテキストで説明される。一般的に、プログラム・モジュールには、特定のタスクを実施し、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。さらに、本発明および／またはその部分は、ハンドヘルド・デバイス、マルチ・プロセッサ・システム、マイクロ・プロセッサ・ベースのまたはプログラム可能な大衆消費電子製品、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータなどを含めて他のコンピュータ・システム構成を用いて実施することができることを理解されたい。本発明はまた、分散コンピューティング環境でも実施することができ、この場合、タスクは通信ネットワークを介してリンクされるリモート処理デバイスによって実施される。分散コンピューティング環境においては、プログラム・モジュールは、ローカル・メモリ記憶デバイスにもリモート・メモリ記憶デバイスにも配置することができる。
【００１６】
図１に示すように、汎用コンピューティング・システムの一例は、処理装置１２１、システム・メモリ１２２、およびシステム・メモリを含めて様々なシステム・コンポーネントをこの処理装置１２１に対して結合するシステム・バス１２３を含めて従来のパーソナル・コンピュータ１２０などを含んでいる。このシステム・バス１２３は、メモリ・バスまたはメモリ・コントローラ、周辺バス、および様々なバス・アーキテクチャのうちのどれかを使用するローカル・バスを含めていくつかのタイプのバス構造のうちのどれであってもよい。このシステム・メモリは、ＲＯＭ（read-only memory：読取り専用メモリ）１２４およびＲＡＭ（random access memory：ランダム・アクセス・メモリ）１２５を含んでいる。起動時などパーソナル・コンピュータ１２０内の要素間で情報を転送するのを助ける基本ルーチンを含むＢＩＯＳ（basic input/output system：基本入出力システム）１２６は、ＲＯＭ１２４に記憶される。
【００１７】
このパーソナル・コンピュータ１２０はさらに、ハードディスク（図示せず）から情報を読み取りそれに情報を書き込むハードディスク・ドライブ１２７、着脱可能な磁気ディスク１２９から情報を読み取りそれに情報を書き込む磁気ディスク・ドライブ１２８、ＣＤ−ＲＯＭや他の光媒体など着脱可能な光ディスク１３１から情報を読み取りそれに情報を書き込む光ディスク・ドライブ１３０を含んでいる。このハードディスク・ドライブ１２７、磁気ディスク・ドライブ１２８、および光ディスク・ドライブ１３０は、それぞれハードディスク・ドライブ・インターフェース１３２、磁気ディスク・ドライブ・インターフェース１３３、および光ドライブ・インターフェース１３４によってシステム・バス１２３に接続される。これらのドライブおよびこれらに関連付けられたコンピュータ読取り可能媒体は、パーソナル・コンピュータ１２０のためのコンピュータ読取り可能命令、データ構造、プログラム・モジュールおよび他のデータの不揮発性記憶域を提供する。
【００１８】
本明細書中で説明される環境の一例では、ハードディスク、着脱可能な磁気ディスク１２９、および着脱可能な光ディスク１３１が使用されているが、コンピュータがアクセス可能なデータを記憶することができる他のタイプのコンピュータ読取り可能媒体も例示の動作環境中で使用することができることを理解されたい。かかる他のタイプの媒体には、磁気カセット、フラッシュ・メモリ・カード、デジタル・ビデオ・ディスク、ベルヌーイ・カートリッジ、ランダム・アクセス・メモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）などが含まれる。
【００１９】
オペレーティング・システム１３５、１つまたは複数のアプリケーション・プログラム１３６、他のプログラム・モジュール１３７、およびプログラム・データ１３８を含めていくつかのプログラム・モジュールは、ハードディスク、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４またはＲＡＭ１２５に記憶することができる。ユーザは、キーボード１４０や、マウスなどのポインティング・デバイス１４２などの入力デバイスを介してコマンドおよび情報をこのパーソナル・コンピュータ１２０に入力することができる。他の入力デバイス（図示せず）には、マイクロホン、ジョイスティック、ゲーム・パッド、サテライト・ディスク、スキャナなどが含まれ得る。これらおよび他の入力デバイスはしばしば、このシステム・バスに結合されるシリアル・ポート・インターフェース１４６を介して処理装置１２１に接続されるが、パラレル・ポート、ゲーム・ポート、ＵＳＢ（ユニバーサル・シリアル・バス）などの他のインターフェースによって接続することもできる。モニタ１４７または他のタイプのディスプレイ・デバイスもまた、ビデオ・アダプタ１４８などのインターフェースを介してシステム・バス１２３に接続される。モニタ１４７に加えて、パーソナル・コンピュータは、一般にスピーカやプリンタなど他の周辺出力デバイス（図示せず）を含んでいる。図１の例示のシステムはまた、ホスト・アダプタ１５５、ＳＣＳＩ（Small Computer System Interface：小型コンピュータ・システム・インターフェース）バス１５６、およびこのＳＣＳＩバス１５６に接続された外部記憶デバイス１６２も含んでいる。
【００２０】
このパーソナル・コンピュータ１２０は、リモート・コンピュータ１４９など１つまたは複数のリモート・コンピュータに対する論理接続を使用してネットワーク環境中で動作することができる。このリモート・コンピュータ１４９は、別のパーソナル・コンピュータ、アプリケーション・サービス、ルータ、ネットワークＰＣ、ピア・デバイスまたは他の共通ネットワーク・ノードでもよく、一般にパーソナル・コンピュータ１２０に関連した前述の要素の多くまたは全部を含んでいるが、図１にはメモリ記憶デバイス１５０だけを示している。図１に示す論理接続は、ＬＡＮ（local area network：ローカル・エリア・ネットワーク）１５１およびＷＡＮ（wide area network：ワイド・エリア・ネットワーク）１５２を含んでいる。かかるネットワーク環境は、オフィス、企業規模コンピュータ・ネットワーク、イントラネット、およびインターネットにおいて一般的なものになっている。
【００２１】
ＬＡＮネットワーク環境中で使用するとき、パーソナル・コンピュータ１２０は、ネットワーク・インターフェースすなわちアダプタ１５３を介してＬＡＮ１５１に接続される。ＷＡＮネットワーク環境中で使用するとき、パーソナル・コンピュータ１２０は、一般にインターネットなどのワイド・エリア・ネットワーク１５２上で通信を確立するためのモデム１５４または他の手段を含んでいる。モデム１５４は、内蔵でも外付けでもよいが、シリアル・ポート・インターフェース１４６を介してシステム・バス１２３に接続される。ネットワーク化環境中では、このパーソナル・コンピュータ１２０に関連して示したプログラム・モジュールまたはその一部分は、リモート・メモリ記憶デバイスに記憶することができる。図に示したネットワーク接続は例示的なものであり、コンピュータ間で通信リンクを確立する他の手段も使用することができることが理解されよう。
【００２２】
ＩＩ  例示のリソース管理環境
従来技術の例示のリソース管理システム２００を図２に示す。システム２００は、クライアント２３０上のアプリケーション２３２に関連して機能するアプリケーション・サービス２１０ａおよび２１０ｂを含んでいる。一般にアプリケーション・サービス２１０はリソースを管理するが、アプリケーション２３２は、かかるリソースについての情報を提示し交換する。
【００２３】
アプリケーション・サービス２１０は、例えば、ＬＯＢ（line of business：業務）アプリケーション・サービス、データベース・アプリケーション・サービス、ネットワーク・アプリケーション・サービス、印刷アプリケーション・サービス、ファイルア・プリケーション・サービスなどのアプリケーション・サービスでもよい。特に、アプリケーション・サービス２１０ａは、貸付承認プロセスのクレジット・ヒストリ・コンポーネントを管理するＬＯＢアプリケーション・サービスであり、一方、アプリケーション・サービス２１０ｂは、貸付承認プロセスの頭金コンポーネントを管理するＬＯＢアプリケーション・サービスとすることができる。
【００２４】
図３ａに、アプリケーション・サービス２１０ａが管理する例示のクレジット・ヒストリ・コンポーネント・プロセス３００ａを示す。状態３０２ａで、貸付けアプリケーションを受け取る。状態３０４ａで、クレジット・ヒストリを受け取る。状態３０６ａにおいて、このクレジット・ヒストリが満足すべきものであるかどうかを決定する。このクレジット・ヒストリが満足すべきものである場合には、状態３０８ａで、この貸付けを承認する。このクレジット・ヒストリが満足すべきものでない場合には、状態３１０ａにおいて、この貸付けを拒否する。
【００２５】
図３ｂに、アプリケーション・サービス２１０ｂが管理する例示の頭金コンポーネント・プロセス３００ｂを示す。状態３０２ｂで、貸付けアプリケーションを受け取る。状態３０４ｂで、頭金を要求する。状態３０６ｂにおいて、この貸付けを承認するかどうかを決定する。この貸付けを承認する場合には、状態３０８ｂで、最初の月払いを要求する。この貸付けを承認しない場合には、状態３１０ｂで、頭金を払い戻す。
【００２６】
アプリケーション・サービス２１０は、コンポーネント・プロセス３００に関連付けられるサービス・エンティティ２１５を管理する。アプリケーション・サービス２１０ａは、サービス・エンティティ２１５ａおよび２１５ａ’を管理するが、アプリケーション・サービス２１０ｂは、サービス・エンティティ２１５ｂおよび２１５ｂ’を管理する。特に、サービス・エンティティ２１５ａは、クレジット・ヒストリ・コンポーネント・プロセス３００ａに関連付けられた「申請者」エンティティとすることができ、サービス・エンティティ２１５ｂは、貸付承認プロセス３００ｂに関連付けられた関連する「貸付け」エンティティ２１５ｂとすることができる。サービス・エンティティ２１５ａ’および２１５ｂ’は、それぞれ各コンポーネント・プロセス３００ａおよび３００ｂに特有の関連のないサービス・エンティティとすることができる。
【００２７】
アプリケーション・サービス２１０は、かかるサービス・エンティティ２１５に対応するサービス・メタデータ２０５を保持することができる。サービス・メタデータ２０５は、例えばＸＭＬ（extensible markup language：拡張マークアップ言語）などの言語で定義することができる。サービス・メタデータ２０５は、サービス・エンティティ２１５の属性を含むことができ、サービス・エンティティ２１５の一意的なキーを含むこともできる。申請者エンティティ２１５ａおよび貸付けエンティティ２１５ｂの属性の例を以下に示す。  
例示の申請者エンティティ２１５ａ  
<applicant>  
<ID> 1 </ID>  
<first name> John </first name>  
<last name> Smith </last name>  
</applicant>  
例示の貸付けエンティティ２１５ｂ  
<loan>  
<ID> 10 </ID>  
<applicant>  
<name> John Smith </name>  
</applicant>  
</loan>
【００２８】
サービス・メタデータ２０５はまた、サービス・エンティティ２１５に関して使用可能なアクションを含むこともある。かかるアクションは、サービス・エンティティ２１５のプロセス状態にかかわらず使用可能な静的アクション、またはサービス・エンティティ２１５のプロセス状態に依存する動的アクションでもよい。
【００２９】
静的アクションは、例えば、サービス・エンティティ２１５の属性を閲覧（viewing）して変更するアクション、関係をたどりまたはドリル・ダウンして関連したインスタンスを見るためのアクション、プロセス状態を変更するための常に使用可能なアクション、などのアクションとすることができる。属性を閲覧し変更するメタデータは、例えば対話を開始するなどのビューをレンダリングするメカニズムを含むこともある。
【００３０】
動的アクションのためのメタデータは、プロセス状態を変更するためのメソッド、かかるメソッドが使用可能なプロセス状態のファンクション、および同じまたは異なるユーザがかかるメソッドの複数回の使用、または競合使用からプロセスを保護することに対する制約、を含むこともある。
【００３１】
サービス・メタデータ２０５は、サービス・エンティティ２１５へのアクセスについての情報を含むこともある。かかるメタデータは、例えば、サービス・エンティティ２１５のインスタンスまたはクラス、静的アクション、または関係に対する、特定のユーザまたはユーザ・グループについてのアクセス制限または制約を含むこともある。例えば有効なパスワードまたは識別子などの認証が、エンティティのかかる各インスタンスまたはクラス、静的アクション、または関係のへのアクセス権を獲得するために必要なこともある。
【００３２】
サービス・メタデータ２０５は、エンティティ・インスタンスについての情報を得るためのメソッドの記述を含むこともある。かかるメタデータは、エンティティ・インスタンス、ビューおよび静的アクションの間の実際の関係または可能な関係を導き出すメソッドの記述を含むこともある。
【００３３】
アプリケーション・サービス２１０は、ネットワーク２２０を介してクライアント２３０と情報をやりとりする。ネットワーク２２０は、ローカル・エリア・ネットワーク（ＬＡＮ）または、例えばインターネットなどワイド・エリア・ネットワーク（ＷＡＮ）でもよい。クライアント２３０は、図１のコンピューティング・デバイス１２０などのコンピューティング・デバイスでもよい。クライアント２３０には、ウェブ・ブラウザまたは他のフロントエンド・アプリケーションが設けられて、アプリケーション・サービス２１０にアクセスすることができる。アプリケーション２３２は、クライアント２３０において実行され、例えばワード・プロセッサ、スプレッド・シート、電子メール・システムなどのアプリケーションとすることができる。アプリケーション２３２によって、ドキュメント２３４が作成されたり、提示されたり、ユーザ間で交換したりすることが可能になる。
【００３４】
ドキュメント２３４は、サービス・エンティティの管理について言及し、これに影響を及ぼすことができる。次に図４を参照すると、ドキュメント２３４は、テキスト「ジョン・スミスは、クレジット・カードの支払いをしていない」を含んでいる。したがって、ドキュメント２３４は、申請者サービス・エンティティ２１５ａと貸付けサービス・エンティティ２１５ｂの両方に関連している。ドキュメント２３４は、かかる関連したサービス・エンティティ２１５ａおよび２１５ｂの管理に影響を及ぼすことができる。例えば、ドキュメント２３４は、ユーザを促して、申請者サービス・エンティティ「ジョン・スミス」２１５ａの状態を状態３０６ａから状態３１０ａへと変更させる。ドキュメント２３４はまた、ユーザを促して、貸付けサービス・エンティティ「ジョン・スミス」２１５ｂの状態を状態３０６ｂから状態３１０ｂへと変更させる。
【００３５】
重要なことには、図２に示す従来技術のシステム２００では、ユーザが、アプリケーション２３２内からサービス・エンティティ２１５を管理することができない。したがって、申請者サービス・エンティティ２１５ａの状態を変更するためには、ユーザは、アプリケーション・サービス２１０ａに単独にアクセスし、アプリケーション・サービス２１０ａ内の申請者サービス・エンティティ２１５ａを識別する必要がある。さらに、貸付けサービス・エンティティ２１５ｂの状態を変更するためには、ユーザは、アプリケーション・サービス２１０ｂに単独にアクセスし、アプリケーション・サービス２１０ｂ内の貸付けサービス・エンティティ２１５ｂを識別する必要がある。
【００３６】
ＩＩＩ  本発明の例示のシステムおよび方法
図２の従来技術のシステム２００と違って、本発明では、アプリケーション・エンティティをユーザが作成し定義することが可能になる。本発明ではまた、関連したサービス・エンティティをマッチングさせて統合することが可能になる。各アプリケーション・エンティティは、１つまたは複数の関連したサービス・エンティティに関連付けることができる。関連付けられたサービス・エンティティに対応するメタデータをアプリケーションに提供することができる。かかるメタデータにより、関連付けられたサービス・エンティティをアプリケーション内から管理できるようにすることができる。
【００３７】
本発明による例示のリソース管理システム５００を図５に示す。一般に、アプリケーション・サービス２１０は、サービス・エンティティ２１５に対応するサービス・メタデータ５０５を、コンテキスト・サービス５１０およびアクション・サービス５２０に対して公開する。コンテキスト・サービス５１０は、サービス・メタデータ５０５に基づいてサービス・エンティティ２１５をコンテキスト・エンティティ５１５に統合する。コンテキスト・サービス５１０はまた、サービス・メタデータ５０５をコンテキスト・メタデータ５２５に統合する。アクション・サービス５２０は、サービス・エンティティ２１５に関して使用可能な動的なアクションを決定する。アプリケーション５３２は、アプリケーション・エンティティ５３５に対応するアプリケーション・メタデータ５４５を保持（maintain）する。
【００３８】
アプリケーション・サービス２１０は、ネットワーク２２０を介してサービス・メタデータ５０５をコンテキスト・サービス５１０に公開する。図２の従来技術のサービス・メタデータ２０５と違って、本発明によるサービス・メタデータ５０５は、サービス・エンティティ２１５に関連して実施すべきアクションの使用可能性の分類を含むことができる。特に、アプリケーション・サービス２１０では、アクションを、全般的に使用可能、楽観的に使用可能、または規則に従って使用可能なものに分類することができる。
【００３９】
全般的に使用可能なアクションは、いつでも実施できるアクションである。かかるアクションは、どのような規則にも条件にも従わない。
【００４０】
楽観的に使用可能なアクションは、指定された規則および条件に従って使用可能となる。例えば、かかる規則は、アクションを実施できる最大回数、アクションを実施する必要がある期間、アクションを実施する必要があるユーザまたはユーザ・クラス、アクションを実施する前に生起する必要がある条件、アクションを実施した後に生起する必要がある条件を含むことができる。アクションを楽観的に使用可能であるとして分類することにより、アプリケーション・サービス２１０では、その規則を使用可能にするために満たす必要がある、すべての可能性のある規則および条件を指定せずにアクションを使用可能にすることができる。
【００４１】
規則に従って使用可能となるアクションは、指定された規則および条件に従う場合しか使用可能ではない。アクションを規則に従って使用可能であると分類することにより、アプリケーション・サービス２１０では、指定された規則および条件が満たされない限り、アクションの使用可能性を拒否することができるようになる。
【００４２】
コンテキスト・サービス５１０は、例えば図１のコンピューティング・デバイス１２０などのコンピューティング・デバイス上で実行されるアプリケーションとすることもできる。コンテキスト・サービス５１０は、サービス・メタデータ５０５を解析してサービス・エンティティ２１５およびサービス・エンティティに関して使用可能な対応する静的アクションを識別することができる。コンテキスト・サービス５１０では、例えばアプリケーション・サービス２１０に対する識別されたサービス・エンティティについてのダミー・コールを行うことによってサービス・メタデータ５０５を検証することができる。
【００４３】
コンテキスト・サービス５１０は、サービス・エンティティ２１５をコンテキスト・エンティティ５１５に統合する。サービス・エンティティ２１５を統合するためには、コンテキスト・サービスは、関連したサービス・エンティティ２１５をマッチングさせ、かかる関連したサービス・エンティティ２１５を１つのコンテキスト・エンティティ５１５に統合する。例えば、コンテキスト・サービス５１０は関連したサービス・エンティティ２１５ａと２１５ｂをマッチングさせ、それらをコンテキスト・エンティティ５１５ａに統合することができる。コンテキスト・サービス５１０はまた、サービス・エンティティ２１０ａ’と２１０ｂ’が関連していないことを決定し、それによってサービス・エンティティ２１０ａ’および２１０ｂ’のそれぞれをそれぞれ別のコンテキスト・エンティティ５１５ｂおよび５１５ｃに統合することができる。
【００４４】
コンテキスト・サービス５１０は、サービス・メタデータ５０５に基づいて関連したサービス・エンティティ２１５をマッチングさせる。特に、コンテキスト・サービス５１０は、サービス・エンティティ２１５の属性を相互参照して実際のまた可能性のある関係を識別する。コンテキスト・サービス５１０は、属性の命名法（nomenclature）に基づいてかかる関係を識別することができる。例えば、コンテキスト・サービス５１０は、貸付けサービス・エンティティ２１５ｂが「申請者」属性を含んでいるので申請者サービス・エンティティ２１５ａを貸付けサービス・エンティティ２１５ｂにマッチングさせることができる。コンテキスト・サービス５１０は、属性を断片化して構成することができる。さらに、コンテキスト・サービス５１０は、属性に関して変換を実施することができる。例えば、コンテキスト・サービス５１０は、申請者サービス・エンティティ２１５ａの「ファースト・ネーム」属性および「ラスト・ネーム」属性を貸付けサービス・エンティティ２１５ｂの「名前」属性にマッチングさせる変換を実施することができる。
【００４５】
サービス・エンティティ２１５をコンテキスト・エンティティ５１５に統合するのに加えて、コンテキスト・サービス５１０は、サービス・メタデータ５０５をコンテキスト・メタデータ５２５に統合する。特に、サービス・エンティティ２１５の属性を統合するのに加えて、コンテキスト・サービス５１０は、サービス・エンティティ２１５に関して使用可能な動的アクションを統合する。例えば、コンテキスト・サービス５１０は、サービス・エンティティ２１５に関して使用可能な静的アクションを断片化して構成することができる。さらに、コンテキスト・サービス５１０は、サービス・エンティティ２１５の静的アクションに関して変換を実施することができる。
【００４６】
コンテキスト・サービス５１０はまた、サービス・エンティティ２１５へのアクセスについてのサービス・メタデータ５０５を統合することもできる。例えば、コンテキスト・サービス５１０は、ユーザの特定のクラスはコンテキスト・エンティティ２１５ａに対するアクセス権をもつがコンテキスト・エンティティ２１５ｂに対するアクセス権はもたない、ことをコンテキスト・メタデータ５２５が指定するようにさせることができる。
【００４７】
コンテキスト・サービス５１０はまた、エンティティのインスタンスについてのメタデータ、ならびにかかるインスタンスとビューと静的アクションとの間の実際の、または可能性のある、関係の導出についてのメタデータ、を統合することもできる。コンテキスト・サービス５１０はまた、サービス・メタデータ５０５についてのレンダリング情報を保持することもできる。コンテキスト・サービス５１０はまた、アプリケーション・サービス２１０からサービス・メタデータ５０５をプリフェッチしてサービス・メタデータ５０５の使用可能性を高めることもできる。コンテキスト・サービス５１０はまた、アプリケーション・サービス２１０が、例えば電源故障の場合などでオフラインになるときにサービス・メタデータ５０５を復元するためのプロシージャを格納することもできる。
【００４８】
アクション・サービス５２０は、例えば図１のコンピューティング・デバイス１２０などのコンピューティング・デバイス上で実行されるアプリケーションとすることもできる。一般に、アクション・サービス５２０は、サービス・エンティティ２１５に関して使用可能な動的アクションを決定する。アクション・サービス５２０は、コンテキスト・サービス５１０に照会してアプリケーション・サービス２１０のうちのどちらがサービス・エンティティ２１５に関して使用可能な動的アクションを有するかを識別することができる。次いで、アクション・サービス５２０は、識別されたアプリケーション・サービス２１０に照会してサービス・エンティティ２１５についての使用可能な動的アクションを取得することができる。
【００４９】
あるいは、アクション・サービス５２０は、識別されたアプリケーション・サービス２１０に照会してエンティティについてのステータス情報を取得することができる。次いで、アクション・サービス５２０は、そのエンティティに対応するサービス・メタデータ５０５を取り出してサービス・エンティティ２１５についての使用可能なアクションを決定することができる。
【００５０】
アクション・サービス５２０は、追跡メカニズム５２２を含んでおり、これはアプリケーション・サービス２１０におけるサービス・エンティティ２１５に関してアクションの実施を追跡する。追跡メカニズム５２２は、ユーザがいつプロセス上の状態変更メソッドを呼び出すかを決定し、このメソッドの成功、失敗、または完了の保留（pending completion）を追跡する。
【００５１】
アクション・サービス５２０はまた、競合保護（conflict protection）メカニズム５２４を含んでおり、これは、無効な、または競合を引き起こす可能性のある、アプリケーション・サービス２１０における動的アクションの実施に対して、防止し、助言を行う。競合保護メカニズム５２４は、サービス・エンティティ２１５に関して実施すべきアクションの使用可能性の分類の査定を行う。詳細には、前述のように、かかるアクションは、全般的に使用可能、楽観的に使用可能、または規則に従って使用可能であるとして分類することができる。競合保護メカニズム５２４は、追跡メカニズム５２２が追跡するアクションと共に、かかる分類を使用し解釈してアクションが使用可能かどうかを決定し、実際のまた可能性のある競合を引き起こし得る動的アクションを検出する。
【００５２】
アプリケーション５３２は、ドキュメント５３４の作成、生成、および交換を可能とする、例えば、ワード・プロセッサ、スプレッド・シート、または電子メール・システムなどのアプリケーションとすることができる。一般に、図２の従来技術のアプリケーション２３２と違って、アプリケーション５３２により、アプリケーション・エンティティ５３５ａおよび５３５ｂを作成し定義することが可能になる。アプリケーション５３２は、かかるアプリケーション・エンティティ５３５に対応するアプリケーション・メタデータ５４５を保持することができる。かかるアプリケーション・メタデータ５４５は、例えば、その対応するアプリケーション・エンティティ５３５の属性を含むことができる。
【００５３】
ユーザは、例えば、ドキュメント５３４のテキスト中のインスタンスの名前をタイプし、接続されたマウス、キーボードなどを使用してこの名前を強調表示し、アプリケーション・メニューから「インスタンス定義」オプションを選択することにより、アプリケーション・エンティティ５３５のインスタンスを定義することができる。次いでユーザは、例えばあらかじめ定義されたアプリケーション・エンティティ５３５のリストからアプリケーション・エンティティ５３５を選択することができ、また「新しい」アプリケーション・エンティティ５３５のインスタンスを作成することもできる。ユーザが、あらかじめ定義されたアプリケーション・エンティティ５３５を選択する場合には、あらかじめ定義されたアプリケーション・エンティティ５３５の属性のビューを表示することができ、ユーザはそのインスタンスについての属性を定義することができる。ユーザが、新しいアプリケーション・エンティティ５３５を作成する場合には、ユーザは、アプリケーション・エンティティ５３５についての１組の属性を作成することができ、またそのインスタンスについての１組の属性を定義することができる。
【００５４】
このアプリケーション・エンティティ５３５のインスタンスが定義されると、例えば下線が引かれ特別に色付けされたテキストで示されるリンクとして、このドキュメントのテキスト中にこのインスタンスを表示することができる。次いで、ユーザは、例えば接続されたマウスを使用してこのリンクをクリックすることによって、このインスタンスを選択することができる。このインスタンスを選択することによりこのインスタンスの属性のビューを表示することができる。
【００５５】
次に図６を参照すると、例示のアプリケーション・ユーザ・インターフェース６０５が示されている。ユーザ・インターフェース６０５は、クライアント２３０に接続されたモニタなどのディスプレイ・デバイス上に表示することができる。ユーザ・インターフェース６０５は、ドキュメント・ウィンドウ６１０を含み、これがドキュメント５３４を表示する。ドキュメント５３４は、テキスト「ジョン・スミスはクレジット・カードの支払いをしていない」を含んでいる。「ジョン・スミス」は、リンク６１２が示すように、申請者アプリケーション・エンティティ５３５ａのインスタンスとして定義されている。
【００５６】
アプリケーション・ユーザ・インターフェース６０５はまた、アプリケーション・メタデータ・ウィンドウ６２０を含んでいる。アプリケーション・メタデータ・ウィンドウ６２０は、リンク６１２をクリックすることによってオープンすることができる。エンティティ・ウィンドウ６２０は、アプリケーション・メタデータ５４５ａを表示し、このメタデータは申請者アプリケーション・エンティティ５３５ａの属性を含んでいる。代替実施形態においては、アプリケーション・メタデータ５４５ａをドキュメント５３４内のダイアログ・ボックス中に表示することができる。
【００５７】
アプリケーション５３２における実行サービス５３６については、以下で図７ａおよび図７ｂを参照して詳細に説明している。一般に実行サービス５３６は、選択されたアプリケーション・メタデータ５４５をコンテキスト・サービス５１０に提供する。実行サービス５３６はまた、関連したサービス・エンティティ２１５のビューを提供するための状態および関係（state and relationship）のビュー・メカニズム５３８を含んでいる。
【００５８】
本発明による、アプリケーション５３２内からサービス・エンティティ２１５を管理する方法の一例の流れ図を図７ａおよび図７ｂに示す。一般に選択されたアプリケーション・エンティティ５３５は、サービス・エンティティ２１５に関連付けられ、この関連付けられるサービス・エンティティ２１５についてのサービス・メタデータ５０５が、アプリケーション５３２に提供される。この提供されたサービス・メタデータ５０５によって、この関連付けられるサービス・エンティティ２１５をアプリケーション５３２内から管理することが可能になる。
【００５９】
ステップ７１０で、アプリケーション・エンティティ５３５を、アプリケーション５３２において選択する。例えば、申請者アプリケーション・エンティティ５３５ａは、接続されたマウスを使用してリンク６１２をクリックすることによってアプリケーション５３２において選択することができる。
【００６０】
ステップ７１２で、クライアント２３０上の実行サービス５３６は、選択されたアプリケーション・エンティティ５３５に対応するアプリケーション・メタデータ５４５をアプリケーション５３２から取り出す。例えば、申請者アプリケーション・エンティティ５３５ａを選択すると、実行サービス５３６は、対応するアプリケーション・メタデータ５４５ａを取り出すことができる。ステップ７１４において、実行サービス５３６は、取り出したアプリケーション・メタデータ５４５ａをコンテキスト・サービス５１０に渡す。
【００６１】
ステップ７１６で、コンテキスト・サービス５１０は、選択されたアプリケーション・エンティティ５３５を関連付けられるコンテキスト・エンティティ５１５にマッチングさせる。エンティティのマッチングについては、図５を参照して以上において詳細に説明しており、例えば、アプリケーション・メタデータ５４５およびコンテキスト・メタデータ５２５に含まれるエンティティの属性を相互参照することによってこのマッチングを実施することができる。例えば、コンテキスト・サービス５１０は、共通の属性に基づいて申請者アプリケーション・エンティティ５３５ａをコンテキスト・エンティティ５１５ａにマッチングさせることができる。
【００６２】
ステップ７１８で、コンテキスト・サービス５１０は、関連付けられるサービス・エンティティ２１５を識別し、これから、関連付けられるコンテキスト・エンティティ５１５が導き出される。例えば、コンテキスト・サービス５１０は、コンテキスト・エンティティ５１５ａが申請者サービス・エンティティ２１５ａおよび貸付けサービス・エンティティ２１５ｂから導き出される、ことを識別する。
【００６３】
ステップ７２０で、コンテキスト・サービス５１０は、コンテキスト・メタデータ５２５を検査して、関連付けられたサービス・エンティティ２１５に関して使用可能な静的アクションを決定する。コンテキスト・サービス５１０は、関連付けられたサービス・エンティティ２１５のグラフ、これらのエンティティに対する関係、およびこれらのエンティティおよび関係に関して使用可能な静的アクションを生成することができる。
【００６４】
ステップ７２２において、コンテキスト・サービス５１０は、アクション・サービス５２０に照会して関連付けられたサービス・エンティティ２１５に関して使用可能な動的アクションを決定する。アクション・サービス５２０は、サービス・エンティティ２１５に関して使用可能なアクション、ならびに競合をもたらし得る任意のアクションを提供する。アクション・サービス５２０はまた、同じプロセスからの同じまたは複数の動的アクションを複数回使用することについての制限を提供する。
【００６５】
ステップ７２４で、コンテキスト・サービス５１０は、使用可能なアクションを実行サービス５３６に提供する。コンテキスト・サービス５１０は、関連付けられたサービス・エンティティ２１５についての他のサービス・メタデータ５０５を提供することもできる。関連付けられたサービス・エンティティ２１５のうちの１つに対するアクセスが制限される場合には、ユーザは、そのエンティティについてのメタデータを受け取るための認証を提供する必要があることもある。例えば、ユーザは、識別子またはパスワードを用いてログインする必要があることもある。
【００６６】
ステップ７２６で、実行サービス５３６は、関連付けられたサービス・エンティティ２１５に関して使用可能なアクションの表示（display）を生成する。実行サービス５３６は、関連したサービス・エンティティ２１５間の関係のビューを提供する、状態および関係のビュー・メカニズム５３８を含んでいる。かかる関係にフィルタをかけて、競合保護に関与する状態のファンクションを決定するのに適切な関係だけを提供することができる。状態および関係のビュー・メカニズム５３８は、関連したサービス・エンティティ２１５についての状態変更メソッドの獲得、成功、失敗、および現在ステータスの状態についての情報を提供することができる。
【００６７】
次に図８を参照すると、ディスプレイ８１５は、関連付けられたサービス・エンティティ２１５に関して使用可能なアクションを示している。このディスプレイ８１５は、アプリケーション・サービス・アクション・ウィンドウ６３０中に示されている。ディスプレイ８１５は、関連付けられたサービス・エンティティ２１５ａおよび２１５ｂについての使用可能な静的アクションおよび動的アクションを示す第１のディスプレイ部分８１５ａを含んでいる。このディスプレイ８１５はまた、アプリケーション・サービス２１０におけるアクションの使用可能性についての情報を示す第２のディスプレイ部分８１５ｂも含んでいる。第２のディスプレイ部分８１５ｂは、それぞれコンポーネント・プロセス３００ａと３００ｂの間の関係と、各コンポーネント・プロセス３００ａおよび３００ｂの状態と、各プロセス３００ａおよび３００ｂ内の申請者サービス・エンティティ２１５ａおよび貸付けサービス・エンティティ２１５ｂに関するアクションの使用可能性と、を示している。プロセス３００ａおよび３００ｂ内の成功、失敗、および保留アクションのステータスについての情報は、例えば、接続されたマウスを使用してディスプレイ８１５中でそのプロセスをクリックすることによって表示することができる。
【００６８】
あるいは、これらの使用可能なアクションは、カスケード・メニューの組として、または複数組の分類されたアクションおよびオプションとして、表示することができる。さらに、これらの使用可能なアクションは、ドキュメント・ウィンドウ６１０内のダイアログ・ボックス中に表示することができる。実行サービス５３６はまた、コンテキスト・サービス５１０が指定する対話メカニズムおよびレンダリング・メカニズムを呼び出すこともできる。
【００６９】
ステップ７２８において、ディスプレイ８１５からアクションを要求することもできる。ユーザは、例えば接続されたマウスを用いてそのアクションをクリックすることによってそのアクションを要求することができる。例えば、ユーザが「属性閲覧（View Attributes）」または「属性変更（Change Attributes）」を選択すると、関連付けられたサービス・エンティティ２１５ａおよび２１５ｂの属性が、ユーザ・インターフェース８０５内の新しいウィンドウまたはダイアログ・ボックス中に出現することになる。次いで、ユーザはこれらの属性を閲覧し変更することができる。
【００７０】
代替実施形態においては、実行サービス５３６は、かかるアクションをユーザに対して表示せずに使用可能なアクションを自動的に実施することができる。
【００７１】
ステップ７３０で、要求されたアクションを適切なアプリケーション・サービス２１０へと転送する。この要求されたアクションが静的アクションである場合、コンテキスト・サービス５１０を介して適切なアプリケーション・サービス２１０へとこれを転送することができる。この要求されたアクションが動的アクションである場合には、アクション・サービス５２０を介して適切なアプリケーション・サービス２１０へとこれを転送することができる。
【００７２】
ステップ７３２で、適切なアプリケーション・サービス２１０においてこのアクションを実施することができる。このアクションの実施は、追跡メカニズム５２２によって記録することができる。
【００７３】
本発明を様々な図による好ましい実施形態に関連して説明してきたが、他の同様な実施形態も使用することができること、または本発明を逸脱することなく本発明の同じファンクションを実施するための説明済みの実施形態に変更および追加を行うこともできることを理解されたい。したがって、本発明は、どの１つの実施形態にも限定すべきものではなく、正しくは添付特許請求の範囲による広さおよび範囲において解釈すべきものである。
【図面の簡単な説明】
【００７４】
【図１】本発明の態様および／またはその一部分を組み込むことができる汎用コンピュータ・システムを示すブロック図である。
【図２】従来技術のリソース管理システムの一例を示すブロック図である。
【図３ａ】例示のビジネス・プロセスのうちの１つの流れ図である。
【図３ｂ】例示のビジネス・プロセスのうちの１つの流れ図である。
【図４】ドキュメントの一例を示す図である。
【図５】本発明によるリソース管理システムの一例のブロック図である。
【図６】本発明によるアプリケーション・ユーザ・インターフェースの一例を示す図である。
【図７ａ】本発明による、アプリケーション内からサービス・エンティティを管理する方法の一例の流れ図である。
【図７ｂ】本発明による、アプリケーション内からサービス・エンティティを管理する方法の一例の流れ図である。
【図８】本発明による、使用可能なアクションを含むアプリケーション・ユーザ・インターフェースの一例を示す図である。
【符号の説明】
【００７５】
１２０  コンピュータ
１２１  処理装置
１２２  システム・メモリ
１２３  システム・バス
１２７  ハード・ドライブ
１２８  フロッピー（登録商標）ドライブ
１２９  ストレージ
１３０  光ドライブ
１３１  ストレージ
１３２  ハードディスク・ドライブ・インターフェース
１３３  磁気ディスク・ドライブ・インターフェース
１３４  光ドライブ・インターフェース
１３６  アプリケーション・プログラム
１３７  他のプログラム
１３８  プログラム・データ
１４０  キーボード
１４２  マウス
１４６  シリアル・ポート・インターフェース
１４７  モニタ
１４８  ビデオ・アダプタ
１４９  リモート・コンピュータ
１５０  メモリ
１５３  ネットワーク・インターフェース
１５４  モデム
１５５  ホスト・アダプタ
１５６  ＳＣＳＩバス
１６２  記憶デバイス
２０５ａ、２０５ｂ  サービス・メタデータ
２１０ａ、２１０ｂ  アプリケーション・サービス
２１５ａ、２１５ａ’、２１５ｂ、２１５ｂ’  サービス・エンティティ
２２０  ネットワーク
２３０  クライアント
２３２  アプリケーション
２３４  ドキュメント
２３４  ジョン・スミスはクレジット・カードの支払いをしていない
３００ａ  クレジット・ヒストリ
３００ｂ  頭金
３０６ａ  クレジット・ヒストリは満足すべきものか
３０６ｂ  貸付けは承認されるか
５０５ａ、５０５ｂ  サービス・メタデータ
５１０  コンテキスト・サービス
５１５ａ、５１５ｂ、５１５ｃ  コンテキスト・エンティティ
５２０  アクション・サービス
５２２  追跡メカニズム
５２４  競合保護メカニズム
５２５  コンテキスト・メタデータ
５３２  アプリケーション
５３４  ドキュメント
５３５ａ、５３５ｂ  アプリケーション・エンティティ
５３６  実行サービス
５３８  状態および関係のビュー・メカニズム
５４５  アプリケーション・メタデータ
５３４  ジョン・スミスはクレジット・カードの支払いをしていない
５３５ａ  申請者エンティティ
６１０  ドキュメント・ウィンドウ
６２０  アプリケーション・メタデータ・ウィンドウ
６１０  ドキュメント・ウィンドウ
６２０  アプリケーション・メタデータ・ウィンドウ
６３０  アプリケーション・サービス・アクション・ウィンドウ
８１５ａ  使用可能なアクション
８１５ｂ  プロセス状態変更情報
【図１】
0004676170.tif 000002
【図２】
0004676170.tif 000003
【図３ａ】
0004676170.tif 000004
【図３ｂ】
0004676170.tif 000005
【図４】
0004676170.tif 000006
【図５】
0004676170.tif 000007
【図６】
0004676170.tif 000008
【図７ａ】
0004676170.tif 000009
【図７ｂ】
0004676170.tif 000010
【図８】
0004676170.tif 000011