專利名稱:整合應用服務和應用程序之間的資源管理的系統(tǒng)和方法
技術領域:
本發(fā)明涉及資源管理領域,特別是整合應用服務和應用程序之間的資源管理。
(2)背景技術在傳統(tǒng)的資源管理系統(tǒng)中,應用服務通常和應用程序一起作用。這些應用服務中的每一個都可管理資源的不同組件。例如兩個應用服務可管理貸款批準過程的不同組件。具體來說,第一應用服務可以管理貸款批準過程的信用歷史組件,而第二應用程序可管理貸款批準過程的預付定金組件。第一個應用服務都可管理與貸款批準過程相關聯(lián)的相關服務實體。例如每一應用程序可管理“申請人”服務實體,而第二應用服務可管理相關的“貸款”服務實體。
和應用服務一起作用的應用程序可以是,例如使能產生文檔的電子郵件應用程序、文字處理應用程序、或電子表格應用程序。這些文檔可經常引用服務實體并影響在應用服務處的服務實體的管理。例如文檔可包括文本,“John Smith沒有支付信用卡費”?!癑ohn Smith”可以是由第一應用服務管理的申請人實體和由第二應用服務管理的貸款實體。因此,文檔可影響應用實體“John Smith”和貸款實體“John Smith”。具體來說,文檔可影響用戶將在第一應用服務的應用實體“John Smith”的狀態(tài)變成“拒絕貸款”狀態(tài)。文檔還可引起在第二應用服務的貸款實體“John Smith”變?yōu)椤巴诉€預付定金”狀態(tài)。
盡管文檔可經常影響在應用服務的服務實體的管理,但訪問、查詢及從應用程序中管理服務實體的能力通常是有限的。例如如果文檔影響用戶改變在第一應用服務的申請人實體“John Smith”的狀態(tài),然后改變該狀態(tài),用戶必須訪問第一應用服務并在第一應用服務處識別該申請人服務實體。然而在應用服務識別服務實體通常很困難,因為文檔通常不提供足夠的有關定義服務實體的屬性的語義。例如當文檔用其全名引用貸款申請人“John Smith”,第一應用服務可用分開的“名”和“姓”屬性定義該申請人服務實體。
從應用程序訪問、查詢及中管理服務實體的有限能力,在一文檔影響來自不同應用服務的相關實體的管理時,變得非常麻煩。例如如果該文檔引起用戶改變在第一應用服務的申請人實體“John Smith”的狀態(tài)并改變在第二應用服務的貸款實體“John Smith”的狀態(tài),則用戶必須分開訪問每個應用服務并分別識別在每個應用服務的每個服務實體。分開識別在不同應用服務的服務實體是非常麻煩的,因為即使不同的服務實體是相關的,也可以在每個應用服務處,用不同屬性組定義服務實體。例如在第一應用服務可用分開的“名”和“姓”屬性定義該申請人服務實體時,第二應用服務可用“申請人”屬性而不是用名字屬性來定義貸款實體。
和在傳統(tǒng)資源管理系統(tǒng)中服務實體管理有關的另一個困難是應用程序通常提供有限的有關在應用服務處的服務實體上執(zhí)行的動作的可用性的信息。具體來說,每個應用服務都可以有與對服務實體的動作執(zhí)行有關的特定的規(guī)則和條件。例如這些規(guī)則和條件可包括動作可執(zhí)行的最多次數(shù),必須執(zhí)行動作的時間段,可執(zhí)行動作的有限用戶或用戶類,或必須在動作執(zhí)行之前或之后發(fā)生的條件。應用程序通常不確定這些規(guī)則和條件是什么,及它們是否滿足。因此,用戶必須訪問每個組件過程以確定動作在過程中是否可用。
另外,應用程序根據(jù)這些規(guī)則和條件協(xié)調多個用戶之間資源的管理的能力通常是有限的。具體來說,應用程序跟蹤動作的執(zhí)行和防止或勸阻執(zhí)行無效動作或容易產生沖突的動作的能力是有限的。另外,應用程序向用戶提供有關由不同應用服務管理的實體和過程,同由其它用戶對這些相關實體上執(zhí)行動作之間的關系的信息的能力通常是有限的。這些信息可用于確定動作的可用性并防止和動作執(zhí)行有關的沖突。
因此,本領域需要整合應用服務和應用程序之間的資源管理的系統(tǒng)和方法。理想的是這些系統(tǒng)和方法使能,例如匹配來自不同應用服務的相關服務實體,與文檔相關聯(lián)的服務實體,和從應用程序中管理服務實體。
(3)發(fā)明內容應用服務維持與服務實體相對應的服務元數(shù)據(jù)。應用服務可將這個服務元數(shù)據(jù)提供給上下文服務和動作服務。上下文服務可基于服務元數(shù)據(jù)匹配相關的服務實體。上下文服務可將這些相關的服務實體合并到上下文實體。上下文服務可將與這些相關服務實體相對應的服務元數(shù)據(jù)合并成上下文元數(shù)據(jù)。
應用服務維持與應用實體相對應的應用程序元數(shù)據(jù)。當在應用程序中選擇一個應用實體時,執(zhí)行服務可對與選擇的應用實體相對應的應用元數(shù)據(jù)進行檢索,并將這個應用元數(shù)據(jù)提供給上下文服務。
上下文服務可根據(jù)應用程序元數(shù)據(jù)和文本元數(shù)據(jù)將選擇的應用實體與相關聯(lián)的上下文實體相匹配。上下文服務可識別從中導出相關聯(lián)的上下文實體的服務實體。上下文實體可為執(zhí)行服務提供與相關聯(lián)的服務實體對應的服務元數(shù)據(jù)。執(zhí)行服務可生成可用于在應用程序處管理相關聯(lián)的服務實體所提供的服務元數(shù)據(jù)的顯示。
在本發(fā)明的一個實施例中,應用服務可將要在應用服務的服務實體上執(zhí)行的動作的可用性進行分類??梢詫⑦@些動作分成樂觀地可用、根據(jù)規(guī)則可用、或普遍可用??蓪⒎诸愄峁┙o動作服務,且動作服務可用該分類確定在相關聯(lián)的服務實體上的動作的可用性。動作服務可包括一個跟蹤動作的執(zhí)行的跟蹤機構。動作服務還可包括使用來自跟蹤服務的數(shù)據(jù)及結合分類來確定動作的執(zhí)行是否會導致沖突的沖突保護機構??梢詫⒖捎糜谠谙嚓P聯(lián)的服務實體上執(zhí)行的動作提供給應用程序,在應用程序上生成一個該動作的視圖。
通過以下參考附圖對示例性實施例的詳細描述,將使本發(fā)明的附加特征的優(yōu)點變得很明顯。
(4)
在參附圖閱讀了以下的詳細說明后,將會更好地理解這些示例性的實施例。
圖1為表示可以加入本發(fā)明的各個方面和/或其各部分的通用計算機系統(tǒng)的方框圖;圖2為示例已有技術的資源管理系統(tǒng)的方框圖;圖3a和3b為示例商業(yè)過程的流程圖;圖4示出一示例文檔;圖5為根據(jù)本發(fā)明的示例資源管理系統(tǒng)的方框圖;圖6示出根據(jù)本發(fā)明的示例應用程序用戶界面;圖7a和7b為根據(jù)本發(fā)明用于從應用程序中管理服務實體的示例方法的流程圖;和圖8示出根據(jù)本發(fā)明的包括可用動作的示例應用程序用戶界面。
(5)
具體實施例方式
I示例計算機環(huán)境圖1及以下討論旨在提供一個可實施本發(fā)明和/或其各部分的合適計算機環(huán)境的簡要說明。盡管沒有要求,將在計算機可執(zhí)行指令(例如由個人電腦和/或計算機裝置執(zhí)行的程序模塊)的總的背景下對本發(fā)明進行描述。程序模塊通常包括例執(zhí)行特定任務或實施特定抽象數(shù)據(jù)類型的例行程序、程序、對象、組件、數(shù)據(jù)結構等等。另外,應理解,可用其它計算機系統(tǒng)配置實施本發(fā)明和/或其各部分,包括手提裝置、多處理器系統(tǒng)、基于微處理器的或可編程的消費電子產品、網絡PC機、小型計算機、大型計算機等等。本發(fā)明還可以在分布式計算機環(huán)境中實施,其中任務是由通過通信網絡鏈接的遠程處理裝置執(zhí)行的。在分布式的計算機環(huán)境中,程序模塊可位于本地及遠程的存儲器裝置。
如圖1所示,示例的通用計算機系統(tǒng)包括一個常規(guī)的個人電腦120等等,包括處理單元121、系統(tǒng)存儲器122、和將包括系統(tǒng)存儲器在內的各種系統(tǒng)組件耦合到處理單元121的系統(tǒng)總線123。系統(tǒng)總線可以是在包括使用多種總線結構中任一種的系統(tǒng)總線或存儲器控制器、外圍總線、和的本地總線在內的幾種總線結構中的任何一個。系統(tǒng)存儲器包括只讀存儲器(ROM)124和隨機存取存儲器(RAM)125。包括例如在啟動期間幫助在個人電腦120的元件之間傳送信息的基本例行程序的基本輸入/輸出系統(tǒng)126(BIOS)存儲在ROM124中。
個人電腦120還可包括用于用于從硬盤讀取(未示出),和寫入硬盤的硬盤驅動器127,用于從可移動磁盤129讀取和寫入可移動磁盤129的磁盤驅動器128,用于從諸如CD-ROM或其它光媒體之類的可移動光盤131讀取和寫入可移動光盤131的光盤驅動器130。硬盤驅動器127、磁盤驅動器128和光盤驅動器130分別通過硬盤驅動器接口132、磁盤驅動器接口133和光盤驅動器接口134連接至系統(tǒng)總線123。這些驅動器及與它們相關聯(lián)的計算機可讀媒體提供計算機可讀指令、數(shù)據(jù)結構、程序模塊和用于個人電腦120的其它數(shù)據(jù)的非易失性存儲器。
雖然這里所述的示例環(huán)境使用磁盤、或移動磁盤129和可移動光盤131,應理解也可以其它類型的能存儲可由計算機訪問的數(shù)據(jù)的計算機可讀媒體用于示例的操作環(huán)境。這些其它類型的媒體包括磁帶盒、閃存卡、數(shù)字視頻盤、柏努利盒式磁帶、隨機存取存儲器(RAM)、只讀存儲器(ROM)等等。
可以將一定數(shù)量的程序模塊存儲在硬盤、磁盤129、光盤131、ROM124或RAM125,程序模塊包括操作系統(tǒng)135、一個或多個應用程序212、程序136、其它程序模塊137和程序數(shù)據(jù)138。用戶可以通過諸如鍵盤140之類的輸入裝置和諸如鼠標之類的指點裝置142將命令和信息輸入到個人電腦120。其它輸入裝置(未示出)可包括麥克風、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等等。這些和其它輸入裝置通常通過耦合到系統(tǒng)總線的串行接口146連接到處理單元121,但也可以由諸如并行接口、游戲接口或通用串行總線(USB)之類的其它接口連接。監(jiān)視器147或其它類型的顯示裝置也通過一個諸如視頻適配器之類的接口連接到系統(tǒng)總線123。除了監(jiān)視器147之外,個人電腦通常包括諸如揚聲器和打印機之類的其它外圍輸出裝置(未示出)。圖1的示例系統(tǒng)還包括主機適配器155、小型計算機系統(tǒng)接口(SCSI)總線156、及與SCSI總線156相連的外部存儲器裝置162。
計算機120可在一個使用到對一個或多個諸如遠程計算機149的遠程計算機邏輯連接的聯(lián)網環(huán)境中操作。雖然圖1中僅僅示出了存儲器裝置150,遠程計算機149可以是另一臺個人電腦、應用服務、路由器、PC網絡、對等設備或其它公共網絡節(jié)點,并通常包含許多或所有上述與個人電腦120有關的元件。圖1所示的邏輯連接包含局域網(LAN)151和廣域網(WAN)152。這些網絡環(huán)境在辦公室、企業(yè)范圍網、企業(yè)內部互聯(lián)網和互聯(lián)網中是常見的。
在用于局域網網絡環(huán)境時,個人電腦120通過網絡接口或適配器153連接至局域網151。在用于廣域網網絡環(huán)境時,個人電腦120通常包含調制解調器154或用于在諸如因特網之類的廣域網152上建立通信的其它裝置。調制解調器154可以是內置式的或外接的,可以通過串行端口接口146與系統(tǒng)總線123相連。在聯(lián)網環(huán)境中,以上描述的與個人電腦120相關的程序模塊或其一部分可以存儲在遠程存儲器裝置。將會理解圖示的網絡連接是示例性的,還可以使用在計算機之間建立通信鏈接的其它手段。
II示例的資源管理環(huán)境圖2中示出一個示例的傳統(tǒng)資源管理系統(tǒng)200。系統(tǒng)200包括與在客戶機230上的應用程序232一起作用的應用服務210a和210b。應用服務210通常管理資源,而應用程序232呈現(xiàn)并交換有關這些資源的信息。
應用服務210可以是諸如商業(yè)(LOB)應用服務、數(shù)據(jù)庫應用服務、網絡應用服務、打印應用服務、及文檔應用服務之類的應用服務。具體來說,應用服務210a可以是管理貸款批準過程的信用歷史組件的LOB應用服務,而應用服務210b可以是管理貸款批準過程的預付定金組件的LOB應用服務。
圖3a示出由應用服務210a管理的示例信用歷史組件過程300a。在狀態(tài)302a,接收一個貸款申請。在狀態(tài)304a,接收一個信用歷史。在狀態(tài)306a,確定信用歷史是否滿意。如果信用歷史滿意,則在狀態(tài)308a,批準該貸款。如果信用歷史不滿意,則在狀態(tài)310a,拒絕該貸款。
圖3b示出由應用服務210b管理的示例預付定金組件過程300b。在狀態(tài)302b,接收一個貸款申請。在狀態(tài)304b,接收一個預付定金。在狀態(tài)308a,確定貸款是否被批準。如果貸款被批準,則在狀態(tài)308b,請求首月的支付。如果貸款沒有被批準,則在狀態(tài)310b,退還預付定金。
應用服務210管理與組件過程300相關聯(lián)的服務實體215。應用服務210a管理服務實體215a和215a’,應用服務210b管理服務實體215b和215b’。具體來說,服務實體215a可以是與信用歷史組件過程300a相關聯(lián)的“申請人”實體,而服務實體215b可以是與信用歷史組件過程300b相關聯(lián)的“貸款”實體215b。服務實體215a’和215b’可以是分別專用于每個組件過程300a和300b的不相關的服務實體。
應用服務210可以維持對這些服務實體215相對應的服務元數(shù)據(jù)205??梢杂弥T如可擴展標記語言(XML)之類的語言定義服務元數(shù)據(jù)205。服務元數(shù)據(jù)205可包括服務實體215的屬性,并且還包括服務實體215的唯一密鑰。以下示出申請人實體215a和貸款實體215b的示例屬性示例申請人實體215a<applicant>
<ID>1</ID>
<first name>John</first name>
<last name>Smith</last name>
</applicant>
示例貸款實體215b
<loan>
<ID>10</ID>
<applicant>
<name>John Smith</name>
<applicant>
</loan>
服務元數(shù)據(jù)205還可包括在服務實體215上可供使用的動作。這些動作可以是不依賴于服務實體215的過程狀態(tài)的靜態(tài)動作或依賴于服務實體215的過程狀態(tài)的動態(tài)動作。
靜態(tài)動作可以是諸如觀看和改變服務實體215的屬性的動作,用于沿著關系或擴展關系來看到相關的實例的動作,和用于改變過程狀態(tài)的一直可用的動作。觀看和改變屬性的元數(shù)據(jù)可包括例如,給出諸如啟動一個對話的展現(xiàn)視圖的機構。
用于動態(tài)動作的元數(shù)據(jù)可包括用于改變過程狀態(tài)的方法、可用這些方法的過程狀態(tài)函數(shù)、和由同一或不同用戶作出的有關防止過程使用多個這些方法或沖突地使用這些方法的限制。
服務元數(shù)據(jù)205還可包括有關訪問服務實體215的信息。這些元數(shù)據(jù)可包括例如,對于特定用戶或用戶組對服務實體215的一個實體或一類、靜態(tài)動作或關系的訪問局限或限制。需要諸如有效密碼或標識符之類的授權來獲取對實體的每個這種實例或類、靜態(tài)動作或關系的訪問權。
服務元數(shù)據(jù)205也可以包括獲得有關實體實例的信息的方法的說明。這些元數(shù)據(jù)也可以包括得到實體實例、視圖和靜態(tài)動作之間的實際或可能關系的方法的說明。
應用服務210通過網絡220與客戶機230通信。網絡220可以是局域網(LAN)或廣域網(WAN),例如因特網??蛻魴C230可以是諸如圖1的計算裝置120之類的計算裝置。可以在客戶機230上配備一個Web瀏覽器或另一個前端應用程序來得到對應用服務210的訪問權。應用程序232在客戶機上運行,且可以是諸如文字處理器、電子表格、或電子郵件系統(tǒng)之類的應用程序。應用程序232可以使文檔234能被建立、呈現(xiàn)和在用戶之間交換。
文檔234可以引用并影響服務實體的管理。見圖4,文檔234包括文本,“JohnSmith沒有支付信用卡費”。因此,文檔234引用應用實體215a和貸款服務實體215b。文檔234可影響這些所引用的服務實體215a和215b的管理。例如文檔234可影響用戶將申請人服務實體“John Smith”215a的狀態(tài)從狀態(tài)306a變?yōu)?10a。文檔234還可影響用戶將貸款服務實體“John Smith”215b的狀態(tài)從狀態(tài)306b變?yōu)闋顟B(tài)310b。
重要的是,在如圖2所示的常規(guī)系統(tǒng)200中,用戶不能從應用程序232中管理服務實體215。因此,為了改變申請人服務實體215a的狀態(tài),用戶必須分開訪問應用服務210a和在應用服務210a中識別申請人服務實體215a。另外,為了改變貸款服務實體215b的狀態(tài),用戶必須分開訪問應用服務210b并在應用服務210b中識別申請人服務實體215b。
III本發(fā)明的示例系統(tǒng)和方法不象圖2的傳統(tǒng)系統(tǒng)200,本發(fā)明使用戶能建立和定義應用實體。本發(fā)明還使相關的服務實體能被匹配和合并。每個應用實體可與一個或多個相關的服務實體相關聯(lián)??梢詫⑴c相關聯(lián)的服務實體相對應的元數(shù)據(jù)提供給應用程序。此元數(shù)據(jù)使能從應用程序中管理相關聯(lián)的服務實體。
圖5示出根據(jù)本發(fā)明的示例資源管理系統(tǒng)500。應用服務210一般向上下文服務510和動作服務520揭示與服務實體215相對應的服務元數(shù)據(jù)505。上下文服務510根據(jù)服務元數(shù)據(jù)505將服務實體215合并到上下文實體515。上下文服務510還將服務元數(shù)據(jù)505合并到文本元數(shù)據(jù)525。動作服務520確定可用在服務實體215上的動態(tài)動作。應用程序532維持與應用實體535相對應的應用程序元數(shù)據(jù)545。
應用服務210通過網絡220將服務元數(shù)據(jù)505揭示給上下文服務510。不同于圖2的傳統(tǒng)的服務元數(shù)據(jù)205,根據(jù)本發(fā)明的服務元數(shù)據(jù)505可包括可與服務實體215一起執(zhí)行的動作的可用性的分類。具體來說,應用服務210可將動作分類成普遍可用、樂觀地可用、或根據(jù)規(guī)則可用。
普遍可用的動作是一直都可以被執(zhí)行的動作。這些動作不受任何規(guī)則或條件的約束。
樂觀地可用的動作是以特定的規(guī)則和條件為條件的動作。例如這些規(guī)則可包括動作可以被執(zhí)行的最多次數(shù),必須執(zhí)行動作的時間段,必須執(zhí)行動作的用戶或用戶類別,必須在動作執(zhí)行之前發(fā)生的條件,,必須在動作執(zhí)行之后發(fā)生的條件。將動作分類成樂觀地可用使應用服務210能不必說明必須滿足可用規(guī)則的所有可能規(guī)則和條件使動作可用。
根據(jù)規(guī)則可用的動作僅在與特定規(guī)則和條件相符時才可用。將動作分類成根據(jù)規(guī)則可用能使應用服務210否定動作的可用性,除非滿足了特定的規(guī)則和條件。
上下文服務510可以是在諸如圖1的計算裝置120之類的計算裝置上運行的應用程序。上下文服務510可以分析服務元數(shù)據(jù)510來識別服務實體215和在服務實體上可用的相應靜態(tài)動作。上下文服務510可通過,例如向應用服務210作一個啞元呼叫,要求識別的服務實體。
上下文服務510將服務實體215合并到上下文實體515。為了合并服務實體215,上下文服務與相關的服務實體215相匹配,并將這些相關的服務實體215合并到一個單個的上下文實體515。例如上下文服務510可匹配相關的服務實體215a和215b,并將它們合并成上下文實體515a。上下文服務510還可確定服務實體210a’和210b’不相關,并從而可以將每個服務實體210a’和210b’分別合并成一個分開的上下文實體515b和515c。
上下文服務510根據(jù)服務元數(shù)據(jù)505匹配相關的服務實體215。具體來說,上下文服務510交叉引用服務實體215的屬性來識別實際的和潛在的關系。上下文服務510可根據(jù)屬性的術語識別這些關系。例如上下文服務510可將應用服務實體215a和貸款服務實體215b相匹配,因為貸款服務實體215b包括一個“申請人”屬性。上下文服務510可分割和組合屬性。另外,上下文服務510可對屬性執(zhí)行轉變。例如上下文服務510可執(zhí)行一個轉變使申請人服務實體215a的“名”和“姓”屬性與貸款服務實體215b的“名字”屬性相匹配。
除了將服務實體215合并到上下文實體515之外,上下文服務510將服務元數(shù)據(jù)505合并到文本元數(shù)據(jù)525。具體來說,除了合并服務實體215的屬性以外,上下文服務510還合并在服務實體215上的動態(tài)動作。例如上下文服務510可分割和組合可用在服務實體215上的靜態(tài)動作。另外,上下文服務510可對服務實體215的靜態(tài)動作執(zhí)行轉變。
上下文服務510還可以合并有關訪問服務實體215的服務元數(shù)據(jù)505。例如上下文服務510可堅持規(guī)定用戶的特定類別有權訪問上下文實體215a,但無權訪問上下文實體215b的文本元數(shù)據(jù)525。
上下文服務510還可以合并有關實體實例和這些實例、視圖和靜態(tài)動作之間的實際的或可能的關系的導出。上下文服務510還可以維持再現(xiàn)用于服務元數(shù)據(jù)505的信息。上下文服務510還可以從應用服務210預取服務元數(shù)據(jù)505,以增加服務元數(shù)據(jù)505的可用性。上下文服務510還可存儲用于在應用服務210脫機時(例如在斷電時)恢復服務元數(shù)據(jù)505的過程。
動作服務520可以是在諸如圖1的計算裝置120之類的計算裝置上運行的應用程序。動作服務520通常確定在服務實體215上可用的動態(tài)動作。動作服務520可查詢上下文服務510,以識別應用服務210中的哪些具有在服務實體215上可用的動態(tài)動作。然后,動作服務520可查詢識別的應用服務210,以獲取用于服務實體215的可用動態(tài)動作。
另選地,動作服務520可查詢識別的應用服務210,以得到實體的狀態(tài)信息。然后,動作服務520可檢索與該實體相對應的服務元數(shù)據(jù)505,以確定用于服務實體215的可用動作。
動作服務520包括跟蹤機構522,它跟蹤在應用服務210的服務實體215上的動作的執(zhí)行。跟蹤機構522確定用戶在過程的何時調用狀態(tài)改變方法并跟蹤方法的成功、失敗或未完成。
動作服務520還包括沖突保護機構524,它防止并勸阻在無效或有可能產生沖突的應用服務210上執(zhí)行動態(tài)動作。沖突保護機構524評估要在服務實體215上執(zhí)行的動作的可用性的分類。具體來說,如上所述,可以將這些動作分類成普通可用、樂觀地可用或根據(jù)規(guī)則可用。沖突保護機構524使用并翻譯這些分類以及通過跟蹤機構522跟蹤到的動作來確定動作是否可用,并檢測可引起實際或潛在沖突的動態(tài)動作。
應用程序532可以是諸如文字處理器、電子表格、或使能建立、生產和文檔534的交換的電子郵件系統(tǒng)之類的應用程序。一般來說,不同于圖2的傳統(tǒng)的應用程序232,應用程序532使應用實體535a和535b能被建立和定義。應用程序532可維持與這些應用實體535相對應的應用程序元數(shù)據(jù)545。這些應用程序元數(shù)據(jù)545可包括,例如相應的應用實體535的屬性。
用戶可通過,例如在文檔534的文本中鍵入該實體的一個名字,用所附的鼠標鍵盤加亮該名字等,并從應用程序菜單選擇“定義實例”選項來定義應用實體535的實例。接著,用戶可以,例如從預定義應用實體535的列表選擇一個應用實體535,或建立一個“新”應用實體535的實例。如果用戶選擇預定義應用實體535,則可以顯示一個該預定義的應用實體535的屬性的視圖,以及用戶可定義用于實例的屬性。如果用戶建立一個新的應用實體535,則用戶可建立一組應用實體535的屬性,并可定義該實例的屬性組。
一旦定義了應用實體535的實例,它可作為由例如下劃線的和特別上色的文本示出的鏈接在文檔的文本中出現(xiàn)。接著,用戶可以通過用附加的鼠標點擊該鏈接來選擇該實例。選擇該實例可導致顯示該實例的屬性的視圖。
現(xiàn)見圖6,示出示例的應用程序用戶界面605。用戶界面605可以在諸如附加在客戶機230上的監(jiān)視器之類的顯示裝置上顯示。用戶界面605包括顯示文檔534的文檔窗口610。文檔534包括文本,“John Smith沒有支付信用卡費”。鏈接612所示,“John Smith”被定義成申請人應用實體535的一個實例。
應用程序用戶界面605還包括應用程序元數(shù)據(jù)窗口620。應用程序元數(shù)據(jù)窗口620可以通過點擊鏈接612打開。實體窗口620顯示應用程序元數(shù)據(jù)545a,它包括申請人應用實體535a的屬性。在另選的實施例中,應用程序元數(shù)據(jù)545a可以在文檔534的對話框中出現(xiàn)。
以下參照圖7a和7b詳細討論在應用程序532中的執(zhí)行服務536。通常,執(zhí)行服務536向上下文服務510提供選擇的應用程序元數(shù)據(jù)545。執(zhí)行服務536還包括狀態(tài)和用于提供相關的服務實體215的視圖的關系視圖機構538。
圖7a和7b示出根據(jù)本發(fā)明用于從應用程序532中管理服務實體215的示例方法的流程圖。通常,選擇的應用實體535與服務實體215相關聯(lián),且用于相關聯(lián)的服務實體215的服務元數(shù)據(jù)505被提供給應用程序532。提供的服務元數(shù)據(jù)505使得相關聯(lián)的服務實體215能從應用程序532中管理。
在步驟710,在應用程序532選擇應用實體535。例如可以通過用附加的鼠標單擊應用程序532來選擇申請人應用實體535a。
在步驟712,執(zhí)行服務536在客戶機230上從應用程序532檢索與選擇的應用實體535相對應的應用程序元數(shù)據(jù)545。例如如果選擇了申請人應用實體535a,則執(zhí)行服務536可以檢索相應的應用程序元數(shù)據(jù)545a。在步驟714,執(zhí)行服務536將檢索到的應用程序元數(shù)據(jù)545a傳遞給上下文服務510。
在步驟716,上下文服務510將選擇的應用實體535與關聯(lián)的上下文實體515相匹配。以上參照圖5詳細討論了實體的匹配,且可通過交叉引用應用程序元數(shù)據(jù)545和文本元數(shù)據(jù)525中包含的實體的屬性來執(zhí)行該匹配。例如上下文服務510可根據(jù)共同屬性將申請人應用實體535a與上下文實體515a相匹配。
在步驟718,上下文服務510識別從中導出相關聯(lián)的上下文實體515的相關聯(lián)的服務實體215。例如上下文服務510可識別上下文實體515a進從申請人服務實體215a和貸款服務實體215b導出的。
在步驟720,上下文服務510檢查文本元數(shù)據(jù)525以確定可用在相關聯(lián)的服務實體215上的靜態(tài)動作。上下文服務510可生成一個相關聯(lián)的服務實體215的圖表,對那些實體的關系,及可用在那些實體和關系上的靜態(tài)動作。
在步驟722,上下文服務510查詢動作服務520,以確定可用在相關聯(lián)的服務實體215上的動態(tài)動作。動作服務520可提供可用在服務實體215上的動作,以及可導致沖突的任何動作。動作服務520還可以限制從同一過程多次使用同一或多個動態(tài)動作。
在步驟724,上下文服務510提供可用于執(zhí)行服務536的動作。上下文服務510還可提供用于相關聯(lián)的服務實體215的其它服務元數(shù)據(jù)505。如果限制對相關聯(lián)的服務實體215中的一個進行訪問,則可能要求用戶提供授權以接收用于該實體的元數(shù)據(jù)。例如可能要求用戶用標識符或密碼來進入系統(tǒng)。
在步驟726,執(zhí)行服務536生成可用在相關聯(lián)的服務實體215上的動作的顯示。執(zhí)行服務536包括狀態(tài)和關系視圖機構538,以提供相關服務實體215之間關系的視圖。可以對這些關系進行過濾,以僅提供那些與確定涉及沖突保護的狀態(tài)的函數(shù)相關的關系。狀態(tài)和關系視圖機構512可提供有關取得、成功、失敗的狀態(tài)和用于相關服務實體215的狀態(tài)改變方法的當前狀態(tài)的信息。
見圖8,顯示815示出可用在相關聯(lián)的服務實體215上的動作。顯示器815在應用程序服務動作窗口630中示出。顯示815包括示出可用于相關聯(lián)的服務實體215a和215b的靜態(tài)和動態(tài)動作的第一顯示部分815b。顯示815還包括示出有關應用服務210上的動作的可用性的信息的第二顯示部分815b。第二顯示部分815b示出組件過程300a和300b之間的關系,每個組件過程300a和300b的狀態(tài),及分別在每個過程300a和300b中在申請人服務實體215a和貸款服務實體215b上的動作的可用性。有關成功、失敗和過程300a和300b中未決動作的狀態(tài)的信息可通過,例如所附鼠標單擊顯示815中的過程而被顯示。
另選地,可用動作可以作為級聯(lián)菜單設置或作為分類的動作和選項的設置顯示。另外,可以在文檔窗口610中的對話框中顯示可用動作。執(zhí)行服務536還可以調用對話并給予由上下文服務510指定的呈現(xiàn)機構。
在步驟728,用戶可以從顯示815請求一個動作。該用戶可以通過,例如用所附鼠標單擊該動作來請求該動作。如果,例如用戶選擇“視圖屬性”或“改變屬性”,則相關聯(lián)的服務實體215a和215b的屬性可以顯示在用戶界面805中的一個新的窗口或對話框中。這樣用戶就可以看和改變屬性了。
在一個另選的實施例中,執(zhí)行服務536可以不必將這些動作顯示給用戶,自動執(zhí)行可用動作。
在步驟730,將請求的動作發(fā)送給適合的應用服務210。如果請求的動作為靜態(tài)動作,則可通過上下文服務510將它傳送給適合的應用服務210。如果該請求的動作為動態(tài)動作,則可通過動作服務520將它傳送給適合的應用服務210。
在步驟732,可以在適合的應用服務210執(zhí)行動作。可以由跟蹤機構522記錄該動作的執(zhí)行。
雖然,本發(fā)明是結合各個附圖的較佳實施例進行描述的,應理解可以用其它類似的實施例或對所述實施例進行修改和增加來在不偏離本發(fā)明的基礎上執(zhí)行與本發(fā)明同樣的功能。因此,不應將本發(fā)明局限于任何單個的實施例,而應根據(jù)所附理解本發(fā)明的寬度和范圍。
權利要求
1.用于將由應用程序管理的應用實體與由多個應用服務管理的相關服務實體相關聯(lián)的方法,所述應用程序維持與應用實體相應的應用程序元數(shù)據(jù),所述應用服務維持與相關服務實體相應的服務元數(shù)據(jù),其特征在于,該方法包括根據(jù)服務元數(shù)據(jù)匹配相關的服務實體;將相關服務實體合并到上下文實體;將與上下文實體相對應的服務元數(shù)據(jù)合并到上下文元數(shù)據(jù);和根據(jù)應用程序元數(shù)據(jù)和上下文元數(shù)據(jù)將應用實體與上下文實體相匹配。
2.如權利要求1所述的方法,其特征在于,所述匹配相關的服務實體包括基于相關服務實體的屬性匹配相關的服務實體。
3.如權利要求1所述的方法,其特征在于,所述將應用實體與上下文實體相匹配包括基于應用實體的屬性和上下文實體的屬性將應用實體與上下文實體相匹配。
4.如權利要求1所述的方法,其特征在于,還包括取得與相關的服務實體相應的服務元數(shù)據(jù)。
5.如權利要求4所述的方法,其特征在于,所述為應用程序取得與相關的服務實體相應的服務元數(shù)據(jù)包括確定一個在相關服務實體上可用的上下文服務靜態(tài)動作;和查詢動作服務,以確定在相關服務實體上可用的動態(tài)動作。
6.如權利要求4所述的方法,其特征在于,還包括向應用程序提供與相關服務實體相應的服務元數(shù)據(jù)。
7.如權利要求6所述的方法,其特征在于,所述向應用程序提供與相關服務實體相應的服務元數(shù)據(jù)包括向應用程序提供在相關服務實體上可用的靜態(tài)的和動態(tài)的動作。
8.用于在應用程序中管理在第一應用服務中的第一服務實體的方法,其特征在于,該方法包括基于應用程序元數(shù)據(jù)和上下文元數(shù)據(jù)將應用實體與相關聯(lián)的上下文實體相匹配;識別相關聯(lián)的上下文實體是從第一服務實體導出的;向應用提供相應于第一服務實體的服務元數(shù)據(jù);以及用提供的服務元數(shù)據(jù)在應用程序中管理的第一服務實體。
9.如權利要求8所述的方法,其特征在于包括基于應用實體的屬性和相關聯(lián)的上下文實體的屬性將應用實體與相關聯(lián)的上下文實體相匹配。
10.如權利要求8所述的方法,其特征在于包括識別相關聯(lián)的上下文實體是從第一服務實體和在第二應用服務的第二服務實體導出的,所述第一服務實體與第二服務實體相關。
11.如權利要求8所述的方法,其特征在于,還包括取得與第一服務實體相應的服務元數(shù)據(jù)。
12.如權利要求11所述的方法,其特征在于,所述取得與第一服務實體相應的服務元數(shù)據(jù)包括在上下文服務中確定可在第一服務實體上使用的靜態(tài)動作;和查詢一動作服務,以確定在第一服務實體上可用的動態(tài)動作。
13.如權利要求12所述的方法,其特征在于,提供與第一服務實體相應的所述服務元數(shù)據(jù)包括向應用程序提供在第一服務實體上可用的靜態(tài)和動態(tài)動作。
14.如權利要求13所述的方法,其特征在于,所述用提供的服務數(shù)據(jù)元管理在應用程序中的第一服務包括在應用程序生成在第一服務實體上可用的靜態(tài)和動態(tài)動作的顯示;和從在應用程序的顯示中選擇一個在第一應用服務的第一服務上執(zhí)行的動作。
15.如權利要求14所述的方法,其特征在于,還包括向第一應用服務傳送選擇的動作;和在第一應用服務處執(zhí)行選擇的動作。
16.在應用程序中用于管理在第一應用服務的第一服務實體的系統(tǒng),其特征在于,該系統(tǒng)包括第一應用服務,所述第一應用服務維持與第一服務實體相應的第一服務元數(shù)據(jù)并向上下文服務提供第一服務元數(shù)據(jù);應用程序,所述應用程序維持與應用實體相應的應用程序元數(shù)據(jù)并為上下文服務提供應用程序元數(shù)據(jù);上下文服務,所述上下文服務維持從第一服務實體導出的上下文實體,將應用實體與上下文實體相匹配,并向所述應用程序提供第一服務元數(shù)據(jù),第一服務元數(shù)據(jù)使第一服務實體能在所述應用程序中被管理。
17.如權利要求16所述的系統(tǒng),其特征在于,還包括第二應用服務,所述第二應用服務維持與第二服務實體相應的第二服務元數(shù)據(jù)并將所述第二服務元數(shù)據(jù)提供給所述上下文服務,第二服務實體與第一服務實體相關。
18.如權利要求17所述的系統(tǒng),其特征在于,所述上下文服務基于第一服務元數(shù)據(jù)和第二服務元數(shù)據(jù)而匹配第一服務實體和第二服務實體。
19.如權利要求17所述的系統(tǒng),其特征在于,所述上下文實體是從第一服務實體和第二服務實體導出的。
20.如權利要求17所述的系統(tǒng),其特征在于,所述上下文服務向所述應用程序提供第一服務元數(shù)據(jù)和第二服務元數(shù)據(jù),第一服務元數(shù)據(jù)使第一服務實體能在所述應用程序中被管理,第二服務元數(shù)據(jù)使第二服務實體能在所述應用程序中被管理。
21.如權利要求16所述的系統(tǒng),其特征在于,還包括用于確定在所述應用服務中在所述第一服務實體上可用的動態(tài)動作。
22.如權利要求21所述的系統(tǒng),其特征在于,所述上下文服務查詢所述動作服務,以確定在第一服務實體上可用的動態(tài)動作,并為所述應用程序提供在第一服務實體上可用的動態(tài)動作。
23.如權利要求16所述的系統(tǒng),其特征在于,還包括用于向所述上下文服務提供應用程序元數(shù)據(jù)的執(zhí)行服務。
24.如權利要求23所述的系統(tǒng),其特征在于,所述執(zhí)行服務生成一個第一服務元數(shù)據(jù)的顯示。
全文摘要
一種可由用戶在應用程序中建立和定義的應用實體。可以匹配和合并由不同服務應用程序管理的相關服務實體??梢詫脤嶓w與一個或多個相關的服務實體相關聯(lián)??梢詫⑴c相關聯(lián)的服務實體對應的元數(shù)據(jù)提供給應用程序。這些元數(shù)據(jù)可使相關聯(lián)的服務實體能從應用程序中被管理。
文檔編號G06FGK1591444SQ20041005896
公開日2005年3月9日 申請日期2004年7月23日 優(yōu)先權日2003年8月25日
發(fā)明者V·米特爾, M·馬倫德, U·霍曼, S·伊薩克斯 申請人:微軟公司