可修改的業(yè)務對象的制作方法【專利摘要】可修改的業(yè)務對象可以包括通用的無內容且無含義的框架業(yè)務對象,其可用于創(chuàng)建新業(yè)務對象而不要求用戶熟悉開發(fā)環(huán)境,比如軟件開發(fā)包(SDK)??梢越浻蓞^(qū)域擴展工具接收將被添加到可修改的業(yè)務對象的首標的第一區(qū)域和將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義,并且術語工具可以通過在元數據儲存庫中存儲關于該業(yè)務對象的術語的元數據來修改所述可修改的業(yè)務對象,以便可以在運行時使用存儲的元數據來提供新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題?!緦@f明】可修改的業(yè)務對象【
技術領域:
】[0001]這里描述的主題涉及可修改的業(yè)務對象?!?br>背景技術:
】[0002]企業(yè)資源規(guī)劃(ERP)或其它業(yè)務軟件體系結構的提供商可以向伙伴和客戶提供擴展或修改該軟件體系結構以適應個體需求的能力。在這個情況下,客戶是業(yè)務軟件體系結構的購買者、被許可方、用戶等等,而伙伴是可以與該業(yè)務軟件體系結構的核心軟件平臺集成以提供附加的特征或增強該核心軟件平臺的現有特征的業(yè)務軟件功能的開發(fā)者或賣方。在一些示例中可以經由區(qū)域擴展(fieldextensibility)提供某種程度的靈活性,所述區(qū)域擴展可以使得能夠向業(yè)務對象(例如,銷售定單)添加擴展區(qū)域(extensionfield)(例如,新區(qū)域“事件(Event)”)??梢允沟脭U展區(qū)域在屏幕上以表單形式,在搜索表單中,在分析報告中,在移植服務中等等可見。也可以向多個業(yè)務對象添加擴展區(qū)域并且在運行時期間啟動擴展區(qū)域內容的傳輸(例如,作為面向過程的區(qū)域擴展的一部分)?!?br/>發(fā)明內容】[0003]與本主題的一個或更多個實施方式一致,新業(yè)務對象(其可以包括用戶接口、打印表單、分析報告等等)的創(chuàng)建可以由用戶經由簡單的修改接口來執(zhí)行,所述簡單的修改接口不要求精通諸如軟件開發(fā)包的開發(fā)環(huán)境??尚薷牡臉I(yè)務對象可以被提供給用戶,作為通用的無內容且無含義的框架業(yè)務對象(skeletonbusinessobject),并且該用戶可以經由區(qū)域擴展接口(fieldextensibilityinterface)提供將被添加到可修改的業(yè)務對象的首標的第一區(qū)域以及將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義??尚薷牡臉I(yè)務對象的術語可以被修改,例如通過在元數據儲存庫中存儲關于該術語(包括所述第一區(qū)域和所述第二區(qū)域)的元數據來進行修改,以便可以在運行時使用存儲的元數據來確定新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題。[0004]本主題的一些實施方式可以包括,但不限于,與這里的描述一致的方法以及包含有形地體現的機器可讀介質的物品,該機器可讀介質可操作以引起一個或多個機器(例如,計算機等)產生實施一個或多個所描述的特征的操作。類似地,還描述了可以包含一個或多個處理器以及耦合到該一個或多個處理器的一個或多個存儲器的計算機系統(tǒng)??梢园嬎銠C可讀存儲介質的存儲器可以包含、編碼、存儲等等引起一個或多個處理器執(zhí)行一個或多個此處描述的操作的一個或多個程序。與本主題的一個或多個實施方式一致的計算機實現的方法可以由駐留在單一的計算機系統(tǒng)或多個計算機系統(tǒng)中的一個或多個數據處理器來實現。這樣的多個計算機系統(tǒng)可以被連接并通過一個或多個連接交換數據和/或命令或其它指令等,所述一個或多個連接包含但不限于通過網絡(例如,因特網、無線廣域網、局域網、廣域網、有線網絡等等)連接、通過多個計算機系統(tǒng)中的一個或多個之間的直接連接等。[0005]在附圖和下面的描述中闡述此處描述的主題的一個或多個變形的細節(jié)。通過該描述、附圖和權利要求,此處描述的主題的其它特征和優(yōu)點將是顯而易見的。盡管為了說明的目的關于企業(yè)資源軟件系統(tǒng)或其它商業(yè)軟件解決方案或體系結構而描述了本公開的主題的某些特征,但是應當容易理解的是,這些特征并不是用于限制的目的。本公開的權利要求書旨在定義要求保護的主題的范圍?!緦@綀D】【附圖說明】[0006]包含在說明書中并構成說明書一部分的附圖,顯示了此處公開的主題的某些方面,并且與說明書一起幫助解釋與公開的實施方式相關聯的一些原理。在附圖中,[0007]圖1到圖5示出說明與本主題的實施方式一致的特征的屏幕視圖;以及[0008]圖6是說明具有與本主題的實施方式一致的一個或更多個特征的方法的方面的過程流程圖;[0009]圖7是說明顯示與本主題的實施方式一致的特征的軟件體系結構的示例的方面的示圖;[0010]圖8是說明顯示與本主題的實施方式一致的特征的軟件體系結構的另一個示例的方面的示圖;[0011]圖9是說明顯示與本主題的實施方式一致的特征的儲存庫的方面的示圖;[0012]實際上,相似的參考標號指示相似的結構、特征或元件?!揪唧w實施方式】[0013]雖然擴展區(qū)域添加方案的靈活性非常強,但是其還是不足以滿足更加復雜的客戶需要,比如,創(chuàng)建具有用戶接口、打印表單、分析報告等等的新業(yè)務對象。這樣的對業(yè)務軟件體系結構的修改在傳統(tǒng)的方法中可能需要使用開發(fā)環(huán)境,例如軟件開發(fā)包(softwaredevelopmentkit,SDK)或其它軟件開發(fā)工具套件,其允許為某個軟件包、軟件框架、硬件平臺、計算機系統(tǒng)、視頻游戲控制臺、操作系統(tǒng)或類似的平臺創(chuàng)建應用。一般的開發(fā)環(huán)境對于一般的業(yè)務用戶來說足夠復雜和不相關,以至于他們的使用可能需要大量的內部培訓和努力和/或與熟悉開發(fā)環(huán)境的工作的外部伙伴(例如,顧問等等)簽約。這樣的活動可能給這樣的增強制造了明顯的障礙,例如,在時間、勞動以及成本方面。[0014]本主題的實施方式可以允許創(chuàng)建新業(yè)務對象而不使用開發(fā)環(huán)境。作為替代,用戶,例如使用該業(yè)務軟件體系結構的客戶組織處的關鍵用戶(keyuser)可以以非常簡單的方式執(zhí)行這樣的任務,所述非常簡單的方式要求非常低的“學習曲線(learningcurve)”,這是因為區(qū)域擴展特征的一些共性很有可能是該用戶熟悉的。這個能力可以經由可修改的業(yè)務對象來提供,所述可修改的業(yè)務對象可以包括無內容(contentfree)且無含義(meaningfree)的框架業(yè)務對象(skeletonbusinessobject)。[0015]與這樣的方法一致,一個或更多個可修改的業(yè)務對象的集合可以被提供,作為安裝包的一部分、添加值的升級等等,或者作為業(yè)務軟件體系結構。這些可修改的業(yè)務對象每個都可以包括〃根〃節(jié)點(其可以包括數據區(qū)域)以及〃項目〃節(jié)點(其可以包括數據區(qū)域)。每個可修改的業(yè)務對象也可以包括一般需要用于充分運用的(fullyoperative)業(yè)務對象的外圍特征和功能,比如,用戶接口(UI)、搜索表單、打印表單、報告、移植服務、網絡服務(例如,用于支持進一步的擴展)、擴展情景(例如,以便支持面向過程的區(qū)域擴展)等等。這些外圍特征和功能中的每一個對于用戶進行實施來說可以非常簡單,因為他們只需要提供一些區(qū)域,比如,首標和項目區(qū)域,等等。與本主題的實施方式一致的可修改的業(yè)務對象也可以支持區(qū)域擴展,以便基于可修改的業(yè)務對象的客戶創(chuàng)建的業(yè)務對象可以使用傳統(tǒng)的區(qū)域擴展機制來擴展。術語修改可以集成到區(qū)域擴展對話中,以使得能夠使用以這種方式從可修改的業(yè)務對象創(chuàng)建的業(yè)務對象。例如,指向其它業(yè)務對象的標識符區(qū)域可以允許創(chuàng)建標準業(yè)務對象和從可修改的業(yè)務對象創(chuàng)建的業(yè)務對象之間以及從可修改的業(yè)務對象創(chuàng)建的兩個業(yè)務對象之間的鏈接。[0016]與本主題的實施方式一致可修改的業(yè)務對象的使用可以相對于以前可用的方法提供一個或更多的優(yōu)點。這些優(yōu)點可以包括,但不限于,假如客戶已經熟悉向業(yè)務對象添加擴展區(qū)域的過程,則該客戶能夠容易地采用此功能而幾乎沒有學習曲線。附加地,許多用例可以僅僅用幾個類型的可修改的業(yè)務對象來覆蓋,例如,其中客戶的主要要求是創(chuàng)建新的業(yè)務對象而其背后沒有復雜的邏輯。在傳統(tǒng)的方法中,客戶可能需要經由開發(fā)環(huán)境,SDK等等來實施這些用例。[0017]如上所述,與本主題的實施方式一致的可修改的業(yè)務對象可以滿足對于標準(例如預先定義的)業(yè)務對象的各種要求,同時也使得客戶側的用戶或關鍵用戶針對期望的最終結果進行的改動非常簡單直接。例如,可修改的業(yè)務對象可以對于每個節(jié)點提供人可讀標識符(其也可以被用作替換關鍵字(alternativekey)),并且可以包含至少一些系統(tǒng)管理數據??尚薷牡臉I(yè)務對象可以包括區(qū)域擴展特征(參見圖2)以在更多的步驟中允許區(qū)域擴展。[0018]作為可修改的業(yè)務對象的一部分提供的用戶接口可以提供與業(yè)務軟件體系結構內可用的公共Π—致的所有功能。例如,工作中心可以被提供給下列各項中的一個或更多個:用于維護業(yè)務對象的數據的對象實例平面圖(objectinstancefloorplan,OIF);包含至少一個查找表單(findform)、結果列表、細節(jié)窗格(detailpane)等等的對象工作列表(objectworklist,OWL);允許以向導方式(wizard-likeway)在多個步驟中創(chuàng)建實例的引導活動平面圖(guidedactivityfloorplan,GAF);用于允許從一個屏幕快速創(chuàng)建實例的快速活動平面圖(quickactivityfloorplan,QAF);用于允許顯示業(yè)務對象的主要數據的情況說明書(factsheet),等等。相應的Π可以比較簡單,比如,在圖1的屏幕視圖100中示出的快速活動平面圖102,并且可以直接構建在可修改的業(yè)務對象上而無需使用控制業(yè)務對象。[0019]為了針對區(qū)域擴展來準備可修改的業(yè)務對象,可修改的業(yè)務對象內包括的用戶接口可以提供Π錨(anchor),以允許在客戶處添加可以在可修改的業(yè)務對象內被解析為一個或更多個相應的底層數據結構的擴展區(qū)域。附加地,Π屏幕的標題可以從配置表格中讀取,這使得能夠用客戶特定的術語來替換通用術語“對象”。[0020]可修改的業(yè)務對象還可以提供具有相應的搜索能力的0WL。換句話說,該軟件體系結構的元數據儲存庫系統(tǒng)中的可修改的業(yè)務對象可以將其節(jié)點和區(qū)域設置為“允許復制”狀態(tài),以使得它們可被搜索,例如使用TREX或一些其它語言。與本主題的實施方式一致的OWL可以可選地使用控制器基礎設施(例如,基于體系結構設計語言或SADL的UI)來構建,從而可以避免構建FSI視圖。簡化的OWL的示例202在圖2的屏幕視圖中示出。[0021]表單消息類型(formsmessagetype)可以被創(chuàng)建為可修改的業(yè)務對象的一部分以顯露業(yè)務對象的數據。此外,如同在報告所創(chuàng)建的業(yè)務對象內存儲的數據時使用的報告格式能夠使用表單編輯器來編輯那樣,具有最小布局的打印表單也可以被提供為能夠使用表單編輯器來編輯。可以為元數據儲存庫系統(tǒng)中的表單消息類型定義服務接口(A2X)和/或參考區(qū)域,用于分析,等等。所定義的服務接口可以可選地提供功能,比如,創(chuàng)建實例、更新實例、讀取實例、查詢實例等等,并且可以有利地使用維護束框架(maintainbundleframework)來實現以允許具有最小性能開銷的最佳擴展技術。服務接口可以被暴露在移植工作臺(migrationworkbench)等中,以確保便利地上傳業(yè)務對象實例。[0022]與本主題的一些實施方式一致,每個可修改的業(yè)務對象可以提供允許從其創(chuàng)建后續(xù)的可修改的BO的動作。這個特征也可以包括提供文檔流??梢詾榉战涌诙x業(yè)務對象對業(yè)務對象通信的參考區(qū)域,例如在MDRS中的元數據儲存庫系統(tǒng)中。[0023]可以與具有與本主題的實施方式一致的一個或更多個特征的可修改的業(yè)務對象相關聯地提供可以由關鍵用戶激活的擴展情景。[0024]在這里討論的主題的某些特征和能力能夠通過參考其中需要新業(yè)務對象來處理(handle)學生描述的示例性實施方式(例如,在學校記錄的管理中使用的業(yè)務軟件體系結構)來更好地理解。為了文檔化(documentation)目的,學生學習的課程被記錄。數據從第三方系統(tǒng)提供并且必須被上傳。[0025]如圖3的屏幕視圖300中所示,基于可修改的業(yè)務對象增加新業(yè)務對象的用戶可以進入可修改的業(yè)務對象的工作中心302。區(qū)域擴展工具304可以在屏幕視圖300上的另外的方框(frame)中啟動。以這種方式,新的區(qū)域可以被添加到可修改的業(yè)務對象的首標和項目節(jié)點,例如經由新區(qū)域對話框306。如圖4的屏幕視圖400中所示,可修改的業(yè)務對象的術語可以被修改,例如使用區(qū)域擴展工具304中的鏈接或其它Π元素404可訪問的術語工具402。定義從可修改的業(yè)務對象創(chuàng)建的新業(yè)務對象的方面的元數據可以存儲在客戶端依賴表格(clientdependenttable)(例如,客戶可訪問的表格)中,并且可以在運行時期間用于為屏幕確定屏幕和部分的標題。[0026]修改的快速活動平面圖(adaptedquickactivityfloorplan)502(例如,如圖5的屏幕視圖500中所示)可以根據客戶的需要基于修改業(yè)務對象來創(chuàng)建。修改的快速活動平面圖502中顯示的擴展區(qū)域也可以在其它屏幕上使用,例如在OWL中。[0027]進一步參考通過圖3、圖4和圖的示例解釋的特征,關鍵用戶可以使擴展區(qū)域在表單、報告、企業(yè)搜索(如果可用的話)、擴展情景等中可用。例如,如果客戶希望能夠打印出學生信息,則可以相應地修改打印表單。擴展區(qū)域也可以以與上述針對QAF502的描述類似的方式被添加到為可修改的業(yè)務對象定義的報告。[0028]新的擴展區(qū)域也可以沿著已經為可修改的業(yè)務對象的定義的情景來添加。例如,關鍵用戶可以在移植工作臺中選擇可修改的業(yè)務對象以進行上傳。當擴展區(qū)域已經添加時,對話可以詢問用戶該擴展區(qū)域是否應當被添加到該移植服務并且由此根據需要使必要的擴展區(qū)域可用于上傳。[0029]客戶處的關鍵用戶或其它用戶可以通過向作為核心軟件平臺的一部分的現有業(yè)務對象添加標識符擴展區(qū)域來將修改的業(yè)務對象集成在本主題的一些實施方式中。這樣做可以自動地為該用戶接口中的這個輸入區(qū)域提供相應的搜索幫助。[0030]圖6示出說明方法特征的過程流程圖600,這些方法特征中的一個或更多個可以包括在本主題的實施方式中。響應于業(yè)務軟件體系結構的用戶對創(chuàng)建新業(yè)務對象的選項的選擇,訪問可修改的業(yè)務對象。可修改的業(yè)務對象可以包括通用的、無內容(content-free)且無含義(meaning-free)的框架業(yè)務對象(skeletonbusinessobject)。在604,經由區(qū)域擴展用戶接口工具從該用戶接收將被添加到可修改的業(yè)務對象的首標的第一區(qū)域和將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義。在606,使用用戶經由區(qū)域擴展用戶接口工具訪問的術語工具修改可修改的業(yè)務對象的術語。所述修改可以包括將關于該術語(包括第一區(qū)域和第二區(qū)域)的元數據存儲在元數據儲存庫中。在610,在運行時使用所存儲的元數據確定新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題。[0031]企業(yè)資源規(guī)劃(ERP)系統(tǒng)的核心軟件平臺、其它業(yè)務軟件體系結構或其它數據庫功能在一些實施方式中可以被提供為在處于該組織的控制下的一個或更多個處理器上運行的獨立的定制的軟件安裝。這個布置對于大型組織非常有效,所述大型組織具有非常精通的內部信息技術(IT)員工,并且對于其定制用于組織特定的業(yè)務過程和功能的商業(yè)可用的業(yè)務軟件解決方案所需的計算硬件和咨詢服務上的大量的資本投資是可行的。圖7示出與這樣實施方式一致的系統(tǒng)的示圖。計算系統(tǒng)702可以包括提供該業(yè)務軟件系統(tǒng)的一個或更多個特征的一個或更多個核心軟件平臺模塊704。在一些實施方式中,計算系統(tǒng)702可以是應用服務器。計算系統(tǒng)702也可以聚集一個或更多個外部服務提供商706提供的功能或者提供經由其用戶可以訪問一個或更多個外部服務提供商706提供的功能的網關。外部服務提供商706的示例可以包括支持數據庫功能或從伙伴或其它第三方軟件開發(fā)者創(chuàng)建或提供的其它軟件功能的一個或更多個計算系統(tǒng)。如果所述一個或更多個外部提供商計算系統(tǒng)與包括一個或更多個核心軟件平臺模塊704的計算系統(tǒng)702分離,則外部服務供應商數據庫功能或其它軟件功能可以通過直接連接或網絡連接來提供??商鎿Q地,外部服務供應商數據庫功能或其它軟件功能可以被托管在包括所述一個或更多個核心軟件平臺模塊704的計算系統(tǒng)702上。[0032]客戶機708可以經由直接連接、本地終端或通過網絡710(例如,局域網、廣域網、無線網絡、因特網等等)訪問該計算系統(tǒng)??尚薷牡臉I(yè)務對象模塊712或多個這樣的模塊可以在該計算系統(tǒng)702、一個或更多個單獨的系統(tǒng)或它們的任何組合上運行,以執(zhí)行在這里的其它部分更詳細討論的一個或更多個可修改的業(yè)務對象管理操作。在本公開的余下部分,可修改的業(yè)務對象模塊712將以單數來討論。然而,容易理解,關于歸屬于單個可修改的業(yè)務對象模塊712的功能的方法、技術、途徑等等的一個或更多個特征可以由多個模塊來執(zhí)行,所述多個模塊可以實現在包括一個或更多個處理器的單個系統(tǒng)內或者可以實現在每個都包括一個或更多個處理器的多個系統(tǒng)上??尚薷牡臉I(yè)務對象模塊712可以訪問可以保留供所述一個或更多個核心軟件平臺模塊704中的至少一個、以及一個或更多個外部服務提供商706提供的數據庫功能或其它軟件功能使用的一個或更多個元數據的一個或更多個元數據儲存庫716(在這里通常以單數形式稱為元數據儲存庫716)。所述一個元數據儲存庫716也可以保留關于分層業(yè)務軟件體系結構(layerbusinesssoftwarearchitecture)的第一(例如,基礎)層中的核心業(yè)務對象模型的元數據以及關于核心業(yè)務對象模型的跨層擴展(cross-layerextensionstothecorebusinessobjectmodel)的兀數據。兀數據儲存庫716也可以存儲對象或其它元素,例如業(yè)務對象,元數據對象等等。這些對象或其它元素可以包括業(yè)務情景、業(yè)務過程以及一個或更多個業(yè)務配置的定義以及關于業(yè)務情景、業(yè)務過程以及一個或更多個業(yè)務配置的定義的數據、元數據、主數據等等,和/或關于業(yè)務情景或業(yè)務過程的特定實例的數據對象(例如,業(yè)務對象)的具體實例。在一些實施方式中,業(yè)務對象或其它元數據對象可以包括標準業(yè)務過程或其它有關功能的模板定義。模板定義可以可選地經由一個或更多個擴展來修改,所述一個或更多個擴展也可以存儲在所述一個或更多個儲存庫716中。所述一個或更多個儲存庫也可以包括用于關于該組織的業(yè)務或其它方面的數據的存儲部分。[0033]較小的組織也可以受益于業(yè)務軟件功能的使用。然而,這樣的組織可能缺乏使用獨立的業(yè)務軟件體系結構產品所必須的必要硬件資源、IT支持和/或咨詢預算,并且在某些情況下能夠由軟件即服務(SaaS)布置來提供更有效的服務,在軟件即服務(SaaS)布置中,業(yè)務軟件體系結構被托管在諸如遠離組織的位置來維護的服務器和數據儲存庫的計算硬件上并且由該組織處的授權用戶經由瘦客戶端(例如,網絡瀏覽器)通過網絡來訪問。[0034]在業(yè)務軟件系統(tǒng)的服務被提供給多個組織的每一個的軟件交付配置(softwaredeliveryconfiguration)中,業(yè)務軟件系統(tǒng)的服務被托管在只有該組織可以訪問的專用系統(tǒng)上,該專用系統(tǒng)上的軟件安裝可以以與上述的在組織硬件上本地運行的獨立的定制的軟件安裝的示例類似的方式來定制和配置。然而,為了更充分地使用SaaS提供商的計算資源并且提供重要的性能冗余和更好的可靠性,將多個租戶托管單個系統(tǒng)上可能是有利的,所述單個系統(tǒng)包括多個服務器并且以安全的方式維護全部多個租戶的數據,同時也提供針對每個租戶的業(yè)務過程量身定制的定制解決方案。[0035]圖8示出軟件交付體系結構800的多租戶實施方式的框圖,軟件交付體系結構800包括應用服務器802,應用服務器802在一些實施方式中可以包括多個服務器系統(tǒng)804,多個服務器系統(tǒng)804可以從單個軟件交付體系結構800支持的多個組織810A-810C(這里被稱為多租戶系統(tǒng)中的〃租戶")中的每一個處的用戶操作的客戶機通過網絡806來訪問。對于其中應用服務器802包括多個服務器系統(tǒng)804的系統(tǒng),該應用服務器可以包括負載均衡器812,用于將來自所述一個或更多個組織810A-810C處的用戶的請求和動作分布到所述一個或更多個服務器系統(tǒng)804。核心軟件平臺704的實例(圖8中未示出)可以以分布方式跨越服務器系統(tǒng)804來運行。用戶可以利用瘦客戶端,例如,網絡瀏覽器等等,或在客戶機上運行的其它門戶軟件,跨越該網絡訪問該軟件交付體系結構。應用服務器802可以訪問能夠使一個或更多個元數據和其它數據可供所述一個或更多個核心軟件平臺模塊704中的至少一個、以及一個或更多個外部服務提供商706提供的數據庫功能或其它軟件功能使用的一個或更多個元數據儲存庫716中存儲的數據和數據對象。應用服務器802也可以用作中間件組件,經由其向由第三方開發(fā)者提供的一個或更多個外部軟件組件706提供訪問。[0036]如圖7的獨立系統(tǒng)700中所示,可修改的業(yè)務對象模塊712或多個這樣的模塊可以在該計算系統(tǒng)702、一個或更多個單獨的系統(tǒng)或它們的任何組合上運行,以按照這里的其它部分討論的那樣執(zhí)行??尚薷牡臉I(yè)務對象模塊712可以訪問元數據儲存庫716,元數據儲存庫716如上所述可以是應用服務器802的一部分或者被可以被應用服務器802直接訪問,或者可替換地或附加地,可以位于遠離應用服務器802的地方,或者可選地分散在一個或更多個物理或虛擬服務器上,例如在云計算布置中那樣。可修改的業(yè)務對象模塊712可以在該應用服務器802、一個或更多個單獨的應用服務器或它們的任何組合上運行,以執(zhí)行上面更詳細地討論的一個或更多個操作。元數據儲存庫716可以存儲類似于上面的參考圖7討論的元數據。[0037]諸如這里描述的多租戶系統(tǒng)可以包括對核心軟件的多個版本的支持、對舊版本的后向兼容性、無狀態(tài)操作中的一個或多個,在無狀態(tài)操作中,沒有用戶數據或業(yè)務數據被保留在瘦客戶端上,并且不需要在中心系統(tǒng)上的租戶配置。如上所述,在一些實施方式中,對多個租戶的支持可以利用包括操控由負載均衡器812分布的處理負載的多個服務器系統(tǒng)804的應用服務器802來提供。這種布置的潛在的益處可以包括但不限于:高度且可靠地連續(xù)的應用服務器可用性以及意外的停機時間的最小化、多個服務器系統(tǒng)804的階段性的更新以允許連續(xù)的可用性(一個服務器系統(tǒng)804可能離線而其它系統(tǒng)繼續(xù)經由負載均衡器812提供服務)、經由負載均衡器812訪問的服務器系統(tǒng)804的添加或去除的擴展、以及使得能夠獨立于個體租戶實現的租戶特定的定制來更新該核心軟件的去耦合的生命周期事件或過程(例如,系統(tǒng)維護、軟件升級等等)。[0038]如圖7中示出的示例,儲存庫716可以存儲表示標準業(yè)務過程的模板定義的業(yè)務對象。每個個體租戶810A-810C可以根據租戶被分配到的組織的業(yè)務特定的個體業(yè)務過程特征來定制標準模板。定制在元數據儲存庫中可以被存儲為擴展(extensions)。[0039]為了提供單個軟件交付體系結構800支持的多個組織中的每一個組織的業(yè)務過程的定制,應用服務器802訪問的元數據儲存庫716和/或其它數據儲存庫中存儲的數據和數據對象可以包括三種類型的內容:如圖9中所示,核心軟件平臺內容902(例如,業(yè)務過程的標準定義)、系統(tǒng)內容904和租戶內容906。核心軟件平臺內容902包括表示核心功能并且租戶不可修改的內容。系統(tǒng)內容904在一些示例中可以通過核心軟件平臺的運行時來創(chuàng)建,并且可以包括核心數據對象,該核心數據對象存儲與給定業(yè)務過程的特定實例相關聯的具體數據并且可以利用每個租戶提供的數據來修改。關于一個或更多個核心軟件平臺內容902、系統(tǒng)內容904和所述一個或更多個外部服務提供商706提供的內容的元數據可以可選地作為從所有其它租戶810A-810N可訪問的系統(tǒng)租戶的一部分。[0040]租戶內容906中保留的數據和/或元數據可以是租戶特定的:例如,每個租戶810A-810N可以存儲關于其自己的庫存、銷售定單等等的信息、以及關于被指定給租戶的組織特定的擴展、過程等等的元數據。因此租戶內容906A-906N可以包括為一個特定的租戶810A-810N定制的數據對象或其它數據對象的擴展,以便反映該特定租戶特定的并且只能由相應租戶處的授權用戶訪問的業(yè)務過程和數據。這樣的數據對象可以包括關鍵字區(qū)域(keyfield)(例如,庫存跟蹤情況中的“客戶端〃)以及一個或更多個主數據、業(yè)務配置信息、事務數據等等。例如,租戶內容906可以反映對業(yè)務過程的標準模板定義的租戶特定的修改或改變以及涉及個體過程步驟的業(yè)務對象的租戶特定的定制(例如,生成的條件表格中的記錄、訪問序列、價格計算結果、其他的租戶特定值等等)。訪問軟件平臺內容902、系統(tǒng)內容904和特定租戶的租戶內容906的組合以便根據該租戶的定制和業(yè)務數據提供業(yè)務過程定義和/或關于該業(yè)務過程的特定實例的狀態(tài)信息,從而為每個租戶提供到定制的解決方案的訪問,所述定制的解決方案的數據只能對于該租戶的用戶可用。[0041]應用服務器702的一個或更多個生命周期事件或過程可以導致緩存中保留的元數據的無效。在這個上下文中的生命周期事件可以指一個或更多個業(yè)務對象或其它數據對象到業(yè)務軟件體系結構的核心軟件平臺模塊704或一個或更多個外部服務提供商706提供的數據庫功能或其他的軟件功能的導入、升級、在線修復(hotfix)等等中的一個或更多個。在諸如上面參考圖8和圖9描述的多租戶方法的示例中,影響一個或更多個核心軟件平臺模塊704的特征或一個或更多個外部服務提供商706提供的數據庫功能或其它軟件功能的特征的生命周期事件可以在該系統(tǒng)租戶中執(zhí)行。類似地,影響多個租戶的其它生命周期事件(例如,在多個租戶中可以是活動的可升級的插件(scalableadd-on)也可以在該系統(tǒng)租戶中執(zhí)行。只影響一個租戶的生命周期事件,例如:僅由業(yè)務軟件體系結構的單個客戶使用的插件(add-on)或其它定制特征的升級、導入、在線修復等等;單個租戶的可升級的插件功能的開啟或關閉;創(chuàng)建或修改對核心軟件平臺內容902、系統(tǒng)內容904或一個或更多個外部服務提供商706提供的數據庫功能或其它軟件功能的擴展;等等,只能在受影響的租戶中實現。[0042]諸如在這里描述的可修改的業(yè)務對象可以提供與生命周期管理事件的良好的兼容性,所述生命周期管理事件例如,升級、在線修復、新開發(fā)產品的發(fā)布、到新系統(tǒng)的過度、等等??蛻魧尚薷牡臉I(yè)務對象的修改通常包括術語修改(terminologyadaptation)和區(qū)域擴展(fieldextension)、所述術語修改可以存儲在客戶端依賴表格中,所述區(qū)域擴展可以作為傳統(tǒng)區(qū)域擴展存儲在該系統(tǒng)中。從而,即使在多租戶系統(tǒng)中,完整的生命周期支持也能夠用于這些對象,所述完整的生命周期支持包括但不限于對于下列各項的充分支持:租戶隔離、將修改的業(yè)務對象從試驗或影子系統(tǒng)(shadowsystem)復制到生產性系統(tǒng)(productivesystem)、即使核心軟件平臺中的可修改的業(yè)務對象的實施方式發(fā)生了改變也保持擴展的生命周期穩(wěn)定性、等等。[0043]此處描述的主題的一個或多個方面或特征可以在數字電子電路、集成電路、專門設計的專用集成電路(ASIC)、現場可編程門陣列(FPGA)計算機硬件、固件、軟件和/或其組合中實現。這些不同的方面或特點可以包括在包含至少一個可編程處理器的可編程系統(tǒng)上可運行和/或可解釋的一個或多個計算機程序中的實現,所述可編程處理器可以是專用的或通用的,耦接到存儲系統(tǒng)、至少一個輸入設備以及至少一個輸出設備以從其接收數據和指令并向其發(fā)送數據和指令??蛻魴C和服務器一般是互相遠離的且通常通過通信網絡進行交互??蛻魴C和服務器之間的關系依靠運行在各個計算機上的并具有客戶機-服務器相互關系的計算機程序產生。[0044]這些計算機程序,也可以被稱為程序、軟件、軟件應用程序、應用、組件、或代碼,它們包括可編程處理器的機器指令,并且可以用高級程序和/或面向對象的編程語言,和/或匯編/機器語言來實現。如此處使用的,術語“機器可讀介質”是指用于向可編程處理器提供機器指令和/或數據的任何計算機程序產品、裝置和/或設備,比如磁盤、光盤、存儲器和/或可編程邏輯器件(PLD),包括作為機器可讀信號的接收機器指令的機器可讀介質。術語“機器可讀信號”是指任何用于提供機器指令和/或數據給可編程處理器的信號。機器可讀介質可以非暫時性地存儲這種機器指令,比如像非暫時性的固態(tài)存儲器或磁硬盤驅動器或任何其它等效的存儲介質那樣。機器可讀介質可以可替換地或附加地以暫時的方式存儲這種機器指令,比如像處理器高速緩存或其它與一個或多個物理處理器內核相關聯的隨機存取存儲器那樣。[0045]為提供與用戶的交互,此處描述的主題的一個或多個方面或特征可以在具有顯示設備以及可以用來向計算機提供輸入的鍵盤和定點設備的計算機上實現,所述顯示設備諸如用于向用戶顯示信息的陰極射線管(CRT)或液晶顯示器(IXD)或發(fā)光二極管(LED)監(jiān)視器,所述定點設備諸如鼠標或軌跡球。其它種類的設備也可以用于提供與用戶的交互。例如,提供給用戶的反饋可以是任何形式的感覺反饋,比如視覺反饋、聽覺反饋或觸覺反饋;并且來自用戶的輸入可以以任何形式接收,包括但不限于,聲音、語音或觸覺輸入。其它可能的輸入設備包括但不限于,觸摸屏或其它諸如單點或多點電阻或電容軌跡板的觸敏設備、語音識別硬件和軟件、光學掃描儀、光學指示器、數字圖像捕獲設備及相關聯的解譯軟件等等。[0046]此處描述的主題可以依賴于期望的配置而實施在系統(tǒng)、裝置、方法和/或物品中。在前面的描述中提出的實施方式不代表與此處描述的主題一致的所有實施方式。更確切地說,它們僅僅是與關于所描述主題的方面一致的一些例子。盡管上面已經詳細描述了一些變化形式,但是可以做出其它的修改或添加。具體來說,除了在此處提出的這些內容之外,還可以提供進一步的特征和/或變化。例如,上述實施方式可以針對所公開的特征的各種組合和子組合和/或上述公開的一些進一步的特征的組合和子組合。另外,附圖中示出的和/或這里描述的邏輯流程不一定要求所顯示的特定次序或順序的次序以獲得期望的結果。其它實施方式也在所附權利要求書的范圍之內?!緳嗬蟆?.一種計算機程序產品,包含存儲指令的機器可讀介質,當至少一個可編程處理器運行所述指令時,導致所述至少一個可編程處理器執(zhí)行以下操作:響應于業(yè)務軟件體系結構的用戶對創(chuàng)建新業(yè)務對象的選項的選擇,訪問可修改的業(yè)務對象,所述可修改的業(yè)務對象包含通用的無內容且無含義的框架業(yè)務對象;經由區(qū)域擴展用戶接口從該用戶接收將被添加到可修改的業(yè)務對象的首標的第一區(qū)域和將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義;使用該用戶經由所述區(qū)域擴展用戶接口工具訪問的術語工具修改所述可修改的業(yè)務對象的術語,所述修改包含將關于包括第一和第二區(qū)域的所述術語的元數據存儲在元數據儲存庫中;以及在運行時使用所存儲的元數據確定新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題。2.如權利要求1所述的計算機程序產品,其中,所述可修改的業(yè)務對象包含外圍特征和外圍功能中的至少一個,用于使新業(yè)務對象在運行時如同其是被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象那樣表現。3.如權利要求2所述的計算機程序產品,其中,所述至少一個外圍特征和外圍功能是從用戶接Π(υι)、搜索表單、打印表單、報告、移植服務、網絡服務和擴展情景中選擇的。4.如權利要求1所述的計算機程序產品,其中,所述可修改的業(yè)務對象包含該用戶可修改的標識符區(qū)域,用于在該新業(yè)務對象與從第二可修改的業(yè)務對象創(chuàng)建的第二新業(yè)務對象和被包括為該業(yè)務軟件體系結構的核心軟件平臺的一部分的標準業(yè)務對象中的至少一個之間創(chuàng)建鏈接。5.如權利要求1所述的計算機程序產品,其中,所述可修改的業(yè)務對象包含區(qū)域擴展能力,以便該新的業(yè)務對象可以通過使用該業(yè)務軟件體系結構為被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象提供的區(qū)域擴展機制來擴展。6.如權利要求1所述的計算機程序產品,其中,所述可修改的業(yè)務對象包含用戶接口,該用戶接口提供用戶接口錨以允許該用戶和業(yè)務軟件體系結構客戶處的另一個用戶添加擴展區(qū)域,該擴展區(qū)域分解為從所述可修改的業(yè)務對象創(chuàng)建的新業(yè)務對象內的相應的底層數據結構。7.—種系統(tǒng),包含:至少一個可編程處理器;以及存儲指令的機器可讀介質,當所述至少一個可編程處理器運行所述指令時,導致所述至少一個可編程處理器執(zhí)行以下操作:響應于業(yè)務軟件體系結構的用戶對創(chuàng)建新業(yè)務對象的選項的選擇,訪問可修改的業(yè)務對象,所述可修改的業(yè)務對象包含通用的無內容且無含義的框架業(yè)務對象;經由區(qū)域擴展用戶接口從該用戶接收將被添加到可修改的業(yè)務對象的首標的第一區(qū)域和將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義;使用該用戶經由所述區(qū)域擴展用戶接口工具訪問的術語工具修改所述可修改的業(yè)務對象的術語,所述修改包含將關于包括第一和第二區(qū)域的所述術語的元數據存儲在元數據儲存庫中;以及在運行時使用所存儲的元數據確定新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題。8.如權利要求7所述的系統(tǒng),其中,所述可修改的業(yè)務對象包含外圍特征和外圍功能中的至少一個,以便使新業(yè)務對象在運行時如同其是被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象那樣表現。9.如權利要求8所述的系統(tǒng),其中,所述至少一個外圍特征和外圍功能是從用戶接口(UI),搜索表單、打印表單、報告、移植服務、網絡服務和擴展情景中選擇的。10.如權利要求7所述的系統(tǒng),其中,所述可修改的業(yè)務對象包含該用戶可修改的標識符區(qū)域,用于在該新業(yè)務對象與從第二可修改的業(yè)務對象創(chuàng)建的第二新業(yè)務對象和被包括為該業(yè)務軟件體系結構的核心軟件平臺的一部分的標準業(yè)務對象中的至少一個之間創(chuàng)建鏈接。11.如權利要求7所述的系統(tǒng),其中,所述可修改的業(yè)務對象包含區(qū)域擴展能力,以便該新的業(yè)務對象可以通過使用該業(yè)務軟件體系結構為被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象提供的區(qū)域擴展機制來擴展。12.如權利要求7所述的系統(tǒng),其中,所述可修改的業(yè)務對象包含用戶接口,該用戶接口提供用戶接口錨以允許該用戶和業(yè)務軟件體系結構客戶處的另一個用戶添加擴展區(qū)域,該擴展區(qū)域分解為從所述可修改的業(yè)務對象創(chuàng)建的新業(yè)務對象內的相應的底層數據結構。13.—種計算機實現的方法,包含:響應于業(yè)務軟件體系結構的用戶對創(chuàng)建新業(yè)務對象的選項的選擇,訪問可修改的業(yè)務對象,所述可修改的業(yè)務對象包含通用的無內容且無含義的框架業(yè)務對象;經由區(qū)域擴展用戶接口從該用戶接收將被添加到可修改的業(yè)務對象的首標的第一區(qū)域和將被添加到可修改的業(yè)務對象的項目節(jié)點的第二區(qū)域的定義;使用該用戶經由所述區(qū)域擴展用戶接口工具訪問的術語工具修改所述可修改的業(yè)務對象的術語,所述修改包含將關于包括第一和第二區(qū)域的所述術語的元數據存儲在元數據儲存庫中;以及在運行時使用所存儲的元數據確定新業(yè)務對象所支持的至少一個用戶接口屏幕的屏幕和部分的標題。14.如權利要求13所述的計算機實現的方法,其中,所述可修改的業(yè)務對象包含外圍特征和外圍功能中的至少一個,以便使新業(yè)務對象在運行時如同其是被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象那樣表現。15.如權利要求14所述的計算機實現方法,其中,所述至少一個外圍特征和外圍功能是從用戶接π(υι)、搜索表單、打印表單、報告、移植服務、網絡服務和擴展情景中選擇的。16.如權利要求13所述的計算機實現方法,其中,所述可修改的業(yè)務對象包含該用戶可修改的標識符區(qū)域,用于在該新業(yè)務對象與從第二可修改的業(yè)務對象創(chuàng)建的第二新業(yè)務對象和被包括為該業(yè)務軟件體系結構的核心軟件平臺的一部分的標準業(yè)務對象中的至少一個之間創(chuàng)建鏈接。17.如權利要求13所述的計算機實現方法,其中,所述可修改的業(yè)務對象包含區(qū)域擴展能力,以便該新的業(yè)務對象可以通過使用該業(yè)務軟件體系結構為被提供該業(yè)務軟件體系結構的核心軟件平臺的標準業(yè)務對象提供的區(qū)域擴展機制來擴展。18.如權利要求13所述的計算機實現方法,其中,所述可修改的業(yè)務對象包含用戶接口,該用戶接口提供用戶接口錨以允許該用戶和業(yè)務軟件體系結構客戶處的另一個用戶添加擴展區(qū)域,該擴展區(qū)域分解為從所述可修改的業(yè)務對象創(chuàng)建的新業(yè)務對象內的相應的底層數據結構。19.如權利要求13所述的計算機實現的方法,其中,所述訪問、接收、修改和確定中的至少一個由包含至少一個可編程處`理器的系統(tǒng)執(zhí)行?!疚臋n編號】G06Q10/06GK103593174SQ201210587653【公開日】2014年2月19日申請日期:2012年12月28日優(yōu)先權日:2012年8月13日【發(fā)明者】S.貝尤勒,U.施拉布申請人:Sap股份公司