IBM(R) WebSphere(R) Business Integration Collaborations for Telecommunications 提供一種端對端的觀點, 指出如何使用 WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫中所附之成品, 來實作商業整合專案。本文件說明您應該用來實作 WebSphere Business Integration Collaborations for Telecommunications 解決方案的開發程序及方法論。
實作 WebSphere Business Integration Collaborations for Telecommunications 解決方案包含下列開發階段:
下列幾節將說明這些開發階段。
分析需求的首要步驟就是找出需要解決的商業問題。 您可能在現有的營運內找出問題,或可能在組織打算擴展其營運之區域內找出問題。 藉由找出問題,您可以為後續打算解決問題的工作提供清楚的目標。 同時您也具有一個基礎,來評估各種提出之解決方案的相對優點。
分析需求的第二個步驟就是以管理部門及使用者都可以瞭解的方式構想出問題的解決方案。 若要這樣做,您必須建立一個邏輯模型,說明所有構成解決方案的組件、 目的、這些組件的功能及互連方式,以及使用者將能夠利用每一個組件執行的動作範圍。
您的邏輯模型也應該定義解決方案的範圍。WebSphere Business Integration Collaborations for Telecommunications 解決方案的範圍可以包含商業程序整合或應用程式整合。
具有商業程序整合範圍的整合專案可以使用完整的 WebSphere Business Integration Collaborations for Telecommunications 商業程序範本集,或它可以整合商業程序範本子集與現有的程序。
具有應用程式整合範圍的整合專案可以利用協同作業範本。
一旦定義完解決方案的需求及邏輯模型後,您就可以開始定義系統設計。在開發程序的這個階段中,您可以將真實世界裡的技術限制套用至邏輯模型, 包括實作方式及效能考量。系統設計定義可以處理下列問題:
商業程序編排代表商業活動的動態行為,取決於商業的運作方式而定。
WebSphere Business Integration Collaborations for Telecommunications 含有一個產業解決方案程式庫,這個程式庫具有若干成品,支援各種商業程序使用實例的商業程序編排。 這些使用實例架構在 TeleManagement Forum 所定義的 eTOM 商業程序組織架構。在這個開發階段中,您將根據您在前一個階段中定義的系統設計, 檢查產業解決方案程式庫中含有的成品,以便判定它們是否適合您的整合專案。
下列幾節說明評估每一種成品的程序。
概觀與使用實例文件中提供有每一個協同作業的詳細說明。 領域分析師會使用概觀與使用實例,來判定 WebSphere Business Integration Collaborations for Telecommunications 商業程序是否足以符合組織所定義的需求。
WebSphere Business Integration Collaborations for Telecommunications 提供下列協同作業的概觀及使用實例文件:
如果概觀與使用實例指出協同作業足以符合需求,則下一個步驟就是更詳細地檢查商業程序,以判定是否需要任何自訂作業。
對於「服務使用」外的每一個使用實例,商業程序範本都會提供一個實作方式給可以當作 WebSphere MQ Workflow 程序執行的商業程序編排。WebSphere Business Integration Collaborations for Telecommunications 可讓您彈性地使用 WebSphere MQ Workflow Buildtime 工具, 來重新排列工作流程範本中程序節點的順序。
WebSphere Business Integration Collaborations for Telecommunications 提供下列文件給商業程序範本:
這些商業程序範本說明每一個商業程序內含的活動,以及說明程序所使用的商業物件、 資料結構及協同作業範本。
The WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫提供一組專門針對電信程序的 IBM WebSphere Business Integration Collaboration 範本。這些協同作業範本是應用程式與資料層次中的整合器, 不同於先前說明的協同作業。
正如同您檢查每一個商業程序範本以判定它是否足以符合您的需求一般, 您應該對您將在整合專案中使用的每一個協同作業範本做相同的動作。 每一個商業程序範本都會使用一或多個協同作業範本。如果沒有協同作業範本符合您定義的需求, 您必須開發新的協同作業範本。
WebSphere Business Integration Collaborations for Telecommunications 提供下列文件給產業解決方案程式庫中所附的協同作業範本:
您也應該檢查商業程序中使用的通用商業物件,以便評估它們是否足以符合您的需求。 如果現有的通用商業物件不符合您定義的需求,您必須開發新的通用商業物件範本。
WebSphere Business Integration Collaborations for Telecommunications 提供下列文件給產業解決方案程式庫中所附的最上層通用商業物件範本。 這些文件提供子項通用商業物件的鏈結:
如需這些最上層通用商業物件之間關係的圖形觀點, 請參閱通用商業物件。
在您可以自訂 WebSphere Business Integration Collaborations for Telecommunications 範本之前,您需要安裝 WebSphere MQ Workflow Buildtime 和 IBM WebSphere InterChange Server。您可以選擇性地為「錯誤解決」實務安裝 IBM WebSphere Business Integration Modeler (先前稱為 Holosofx BPM Workbench)。 若要安裝這些產品,請參閱每一項產品的安裝手冊。
WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫中所附的成品都具有底下指出的格式。 若要能夠自訂這些成品以適合特定的整合專案,您必須將成品匯入開發環境。
您可以使用 "repos_copy" 指令來匯入所有 TXT 檔案。 所有 WebSphere MQ Workflow FDL 檔案都可以使用 WebSphere MQ Workflow 使用者介面, 匯入至 WebSphere MQ Workflow Buildtime。IBM WebSphere Business Integration Modeler 組織檔案可以使用它的使用者介面, 匯入至 IBM WebSphere Business Integration Modeler。
如需完整安裝指示,請參閱 WebSphere Business Integration Collaborations for Telecommunications 安裝手冊。
這個開發階段包含比先前階段更精細的設計及實作工作, 主要在於處理如何處理異常狀況及如何呼叫其他程序之類的問題。 這個開發階段的另一個重要部份就是從 WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫自訂範本。
如何處理特定設計及實作問題的相關資訊,包括錯誤處理作業, 是在本文件的解決方案整合一節中提供。
WebSphere Business Integration Collaborations for Telecommunications 解決方案提供數個整合型樣,供 IT 程式設計師或管理者自訂適合特定整合專案的成品。
底下的圖解顯示 WebSphere MQ Workflow 與 IBM WebSphere InterChange Server 之間整合方法的概觀。 下列幾節也提供關於如何使用、自訂及部署這些型樣的詳細資訊。
WebSphere Business Integration Collaborations for Telecommunications
商業程序模型被描述成工作流程範本。工作流程是以「流程定義語言 (FDL)」定義的。
在大部分狀況下,為了能夠反映您時常變更的商業策略,這些範本需要定期修改。
使用 WebSphere MQ Workflow Buildtime,您可以輕易地修改這些範本以符合您的需求。
然後,您可以直接將修改過的範本匯入至 WebSphere MQ Workflow 伺服器。請參閱 Business Process
Modeling with WebSphere MQ Workflow
(http://www-4.ibm.com/software/ts/mqseries/txppacs/wd01.html)
,以取得關於使用 WebSphere MQ Workflow 開發商業程序的詳細資訊。
本文件提供逐步概觀,告訴您如何使用 WebSphere MQ Workflow 實作簡單程序,
同時也涵蓋其他進階的程序模型。它的主要對象是對 WebSphere MQ Workflow 有基本瞭解的業務分析師及程序塑造者。
協同作業範本會與應用程式連接,以便提供聚集功能給商業程序。 協同作業範本不是針對自訂作業而設計的;然而,協同作業範本會在部署時提供許多彈性做法。 例如,您可以使用協同作業範本來建立一個協同作業物件,連接至某組應用程式, 然後使用相同的範本來建立另一個協同作業物件,連接至不同組的應用程式。 如果沒有協同作業範本符合您的需求,您可以開發新的協同作業範本, 來擴充現有的協同作業範本。如需開發協同作業範本的詳細資訊, 請參閱 系統實作手冊。
WebSphere Business Integration Collaborations for Telecommunications 同時也提供許多有助於電信產業的通用商業物件。 您可以使用這些通用商業物件,來使用您針對整合應用程式開發的新協同作業範本。 如果您的現有應用程式具有通用商業物件沒有涵蓋的元素, 您可以根據需求來自訂適當的通用商業物件範本。 若要建立通用商業物件,您可以使用「商業物件設計程式」。如需開發通用商業物件範本的詳細資訊, 請參閱 系統實作手冊。
當連接商業整合專案的應用程式時,您通常需要設計及實作一組應用程式特有的商業物件 (ASBO),以及連接的應用程式的對映。如需使用 IBM WebSphere InterChange Server 工具, 來設計及實作應用程式特有的商業物件及對映的相關資訊, 請參閱系統實作手冊。
測試與問題偵測是整合專案的重要程序。 WebSphere MQ Workflow 與 IBM WebSphere InterChange Server 每一個都會執行測試與問題偵測。 商業程序範本是由 WebSphere MQ Workflow 伺服器執行, 而協同作業範本及通用商業物件則是由 IBM WebSphere InterChange Server 執行。
下列幾節說明您可以用來測試及偵測問題的程序。
WebSphere Business Integration Collaborations for Telecommunications 商業程序範本是以 WebSphere MQ Workflow 範本的方式遞送。若要測試這些範本, 您需要在 WebSphere MQ Workflow Server 中執行它們。 有兩種類型的測試可以在 WebSphere MQ Workflow 執行:單位測試或快速原型化, 以及開發驗證測試。
若要執行單元測試,您可以使用 WebSphere MQ Workflow 提供的 fmcnshow.exe 程式。 這個程式位在 WebSphere MQ Workflow 安裝目錄下的 bin 子目錄中。 這個程式提供的功能可以讀取「工作流程伺服器」的 fnput 儲存區、 顯示儲存區的現行值,以及容許變更及設定輸出儲存區。
您可以使用「Java 通用 API」測試及原型化工具 (JGATT), 來執行開發驗證測試。JGATT 可在 SupportPac WA04 中取得。
JGATT 元件提供執行 WebSphere MQ Workflow API 定義測試所需的功能, 與將實作它們的平台無關。它們同時也容許您執行其他作業,包括下列功能:
若要利用 JGATT 執行 Test Case,您可以建立一個使用「Java/C API 工具語法」的檔案 (如 <testcase>.dat)、 呼叫工具,然後在日誌檔 (如 <testcase>.log) 中檢查執行結果。
如需開發驗證測試的詳細資訊,請參閱 WA04: WebSphere MQ Workflow - Java Generic API test and prototyping tool。
若要測試協同作業範本,您需要在 IBM WebSphere InterChange Server 系統上執行它們。 IBM WebSphere InterChange Server 提供各種用於測試的工具。 如需詳細資訊,請參閱系統實作手冊。
WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫的所有軟體成品都可以從建置時期或設計者環境匯出。 一旦完成自訂及開發階段,您將產生了下列成品:
您可以使用 "repos_copy" 指令來匯入所有 TXT 檔案。 所有 WebSphere MQ Workflow FDL 檔案都可以使用指令行介面與如下指令搭配, 匯入至 WebSphere MQ Workflow Buildtime。
fmcibie /i=<filename>.fdl
下列幾節提供當整合電信解決方案時,您可能遇到之問題的詳細資訊。
WebSphere Business Integration Collaborations for Telecommunications 使用 WebSphere MQ Workflow 來管理商業程序,而且它同時也會使用 WebSphere MQ Workflow 來提供異常狀況處理。WebSphere MQ Workflow 容納「工作流程」系統中異常狀況的能力對於 WebSphere Business Integration Collaborations for Telecommunications 整合專案是很重要的。WebSphere Business Integration Collaborations for Telecommunications 可以從程序範本消除有問題的分支, 並假設程序範本的所有自訂作業都會套用逐個實例原則來處理異常狀況。 本節提供錯誤處理作業的一般概念,以及提供如何套用錯誤處理作業至工作流程程序範本的實際範例。
從動作的觀點來看,異常狀況處理期間對解決方案使用不同策略是有可能, 包括透過管理動作來管理錯誤,或修改及發展工作流程圖形。
當執行程序時,可能會發生錯誤。例如,活動實作方式可能在輸出儲存區中傳回不正確的資料、 找不到活動的實作方式,或使用者可能嘗試執行沒有授權的活動。
工作流程管理系統使用一組預設動作,來處理這些狀況, 如將活動狀況設為 "inError",以及通知適當的角色, 如管理者,以便可以採取更正動作。 在這個範例中,管理者可以使用 WebSphere MQ Workflow 用戶端主控台來發出 "force restart" 指令,重複現行作業, 或發出 "force finish" 指令來跳過現行作業。
若要讓管理角色中的人員能夠有效地管理錯誤, 他或她必須完整瞭解程序的語意。
處理異常狀況的交談式方法需要手動工作。 更徹底的方法是製作一或多個在執行時期流動的變更。 這種方法主要在於避免異常狀況或後續的自動異常狀況處理。 您可以套用許多原則,來解決異常狀況,包括下列原則:
下節說明將以範例的方式說明 "重複執行" 及 "正向回復" 解決方字型樣。
即使系統執行語法或資料驗證檢查,人類的手動作業還是容易出錯。 一系列依賴人類輸入的手動及應用程式應用可能需要重複執行, 如果輸入不符合應用程式所指定的限制或需求的話。
您可以實作重複執行,方法為從圖形取出這個型樣 (顯示在底下的第一個圖解) , 然後將它換成含有原始取出順序及連續分支決策活動的子流程 (顯示在第二個圖解)。
活動集合可能含有具有交易式實作方式的活動,以及具有非交易式實作方式的活動。 如果這個群組內的其中一個活動執行不正確,因此必須加以修復, 則其他所有已執行的工作片段也須一併修復。 這種類型的工作單元可以加入底下圖解中顯示的工作流程圖形中。 正向回復包括將值重設為它們的原始狀態。果這個 "復原" 作業可以自動執行, 則在相關應用程式間散佈整個回復子作業的協同作業物件就可以實作它。
使用者交談容許人類參與商業程序管理系統的交談。 WebSphere Business Integration Collaborations for Telecommunications 解決方案支援人機交談,但不在產業解決方案程式庫中提供 Web 用戶端實作方式。本節說明使用者與 WebSphere MQ Workflow 交談的兩種典型實作方式。 第一種交談是簡單的實例,第二種交談則是透過多個畫面的一系列導覽。
在這個範例中,使用者透過 Web 用戶端來存取 WebSphere MQ Workflow 程序。 Web 用戶端是提供 Web 介面的 Java Servlet。Web 用戶端可讓您執行數種作業,如建立工作清單、啟動及停止程序實例、 啟動及停止活動,以及監視程序。這種功能僅存在於 WebSphere MQ Workflow V3.3 及後續的版次。這個範例顯示在下列圖解中。
WebSphere Business Integration Collaborations for Telecommunications 實務中這種簡式類型的使用者交談最常用在啟動程序實例,以及移出及移入工作項目,以便執行手動活動。
當用戶端呼叫移出且程序順利完成時,Web 用戶端即會自動傳送一個「Java 伺服器頁面 (JSP)」至 Web 瀏覽器。 傳送的 JSP 含有一個具有輸入儲存區資料的表單。當這個表單送出時, Web 用戶端的 Servlet 就會將表單欄位對映至輸出儲存區元素, 然後移入工作項目。在這一系列交談期間, Web 用戶端會維護瀏覽器與 WebSphere MQ Workflow 程序之間的通訊階段作業。
如果 JSP 提供的預設 GUI 符合您的需求,使用者交談的實作方式不需費力, 就能安裝及配置。您也可以自訂 JSP 佈置。如需詳細資訊,請參閱 WebSphere MQ Workflow 的產品文件。
在 WebSphere Business Integration Collaborations for Telecommunications 解決方案中,Web 用戶端是部份交談式活動的預設實作方式, 如客戶服務代表 (CSR) 驗證客戶資料,或 CSR 收集及登錄資料。
SupportPac WA83:快速部署精靈
(http://www-4.ibm.com/software/ts/mqseries/txppacs/wa83.html)
是一種您可以為 WebSphere MQ Workflow Web 用戶端迅速地且輕易地設計 JSP 檔案的工具。
WebSphere MQ Workflow Web 用戶端支援單一手動活動的單一 JSP。 如果您想要開發一系列對應單一交談式商業程序活動的 JSP 畫面導覽, SupportPac WA84 支援這些需求。
WebSphere MQ Workflow SupportPac WA84 - Web 用戶端延伸 V1.0 提供一組元件, 供您開發以 WebSphere MQ Workflow Web 用戶端為基礎的應用程式。 使用這些功能,您可以利用專業、有吸引力且複雜的 Web 型使用者介面, 來開發「工作流程」應用程式。延伸的元件完全與 Web 用戶端所提供的其他功能相容。
這種延伸可讓工作流程程序活動透過多個 JSP 來導覽,並回到活動。 如需詳細資訊,請參閱 http://www-4.ibm.com/software/ts/mqseries/txppacs/wa84.html。
這種延伸包括一個使用者跳出程式組織架構,它提供在某個 JSP 與另一個 JSP 間轉送時, 外掛至使用者應用程式的功能。 不是呼叫工作流程程序,而是您可以在使用者跳出程式中呼叫協同作業物件。 例如,您可能想要使用以 ReturnTelcoProducts 協同作業範本 (在 WebSphere Business Integration Collaborations for Telecommunications 解決方案產業程式庫中提供) 為基礎的協同作業範本,從應用程式擷取資料清單。 Server Access Interface Development Guide 中有如何呼叫協同作業物件的說明。
在 WebSphere Business Integration Collaborations for Telecommunications 解決方案中,協同作業物件是用來支援商業程序活動。 就 WebSphere MQ Workflow 而論,協同作業物件流程可以是工作流程程序中的程式活動。 您可以從程序內使用 IBM WebSphere Business Integration Adapter for MQ Workflow 來呼叫協同作業物件。
您可以配置 WebSphere MQ Workflow activity,透過使用者定義的「程式執行伺服器 (UPES)」, 來發出外部函數的要求。若要能夠使用 IBM WebSphere Business Integration Adapter for MQ Workflow 作為 UPES, 您需要在工作流程程序內設定程式活動的執行單元參數。 您可以在程式活動節點的內容對話框的執行標籤上,指定這個參數。 在程式執行伺服器區域中,選取伺服器按鈕, 然後在 IBM WebSphere Business Integration Adapter for MQWorkflow 的管理者名稱中, 輸入適當 UPES 名稱。您應該先前已在網路檢視畫面中定義了這個 UPES 名稱。
對應於這個活動節點的程式定義必須具有格式如下的參數: verb="verb_name" ,如底下圖解中所顯示一般。您不需要指定一個協同作業物件名稱。
如需關於配置的詳細資訊,請參閱 Adapter for WebSphere MQ Workflow User Guide。
IBM WebSphere Business Integration Adapter for WebSphere MQ Workflow 鏈結 IBM WebSphere Business Integration Collaborations 與 WebSphere MQ Workflow 程序。本節含有使用 Adapter for WebSphere MQ Workflow 與 WebSphere Collaborations for Telecommunications 解決方案搭配專用的資訊。如需配接器的詳細資訊, 請參閱 Adapter for WebSphere MQ Workflow User Guide。
WebSphere Business Integration Collaborations for Telecommunications 使用實例假設下列通訊型樣:
儲存區商業物件含有下列結構。
商業物件層次應用程式特有資訊:
cw_mo_wfcontainer=ContainerInfo cw_mo_wfactivityrequest=ActivityRequestMO
元素名稱 | 元素類型 | 說明 |
---|---|---|
Input_name | 由 FDLBOGen 產生 | 這個商業物件對應於 WebSphere MQ Workflow 輸入儲存區。 |
ContainerInfo | MO_WebSphere MQ Workflow_ ContainerInfo |
這個「Meta 物件」僅供參考而已。 如需詳細資訊,請參閱 Adapter for WebSphere MQ Workflow User Guide。 |
ActivityRequestMO | MO_WebSphere MQ Workflow_ ActivityRequest |
這個「Meta 物件」代表要求與回應間的相互關係資訊。 元素 ExternalProcessContext 會基於從 WebSphere MQ Workflow 外的追蹤系統追蹤之目的而顯現。 下表提供有這個「Meta 物件」的詳細資料 |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
ActImplCorrelID | 字串 |
Starter | 字串 |
ProcTempID | 字串 |
ProgramName | 字串 |
ResponseRequired | 字串 |
ExternalProcessContext | 字串 |
ObjectEventID | 字串 |
商業物件層次應用程式特有資訊:
cw_mo_wfactivityresponse=ActivityResponseMO
元素名稱 | 元素類型 | 說明 |
---|---|---|
ActivityResponseMO | MO_WebSphere MQ Workflow_ ActivityResponse |
這個「Meta 物件」含有要求與回應間的相互關係資訊。 下表提供有這個「Meta 物件」的詳細資料。 |
Output_name | 由 FDLBOGen 產生 | 這個商業物件對應於 WebSphere MQ Workflow 輸出儲存區。 |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
ActImplCorrelID | 字串 |
Starter | 字串 |
ReturnCode | 字串 |
ObjectEventId | 字串 |
這個範例中使用的最上層應用程式特有商業物件含有呼叫要求結構及回應結構。
商業物件層次應用程式特有資訊:
cw_mo_wfptcfg=MO_Config; cw_mo_wfpid=ProcessInstance
元素名稱 | 元素類型 | 說明 |
---|---|---|
Input_name | 由 FDLBOGen 產生 | 這個商業物件對應於程序實例的 WebSphere MQ Workflow 輸入儲存區。 |
MO_Config | MO_WebSphere MQ Workflow_ ProcessTemplateConfig |
這個結構代表您想要呼叫的工作流程程序範本。 它是用於呼叫要求。下表提供有這個「Meta 物件」的詳細資料。 |
ProcessInstance | MO_WebSphere MQ Workflow_ ProcessInstance |
這個結構代表您已呼叫的工作流程程序。 它是用於來自「工作流程」伺服器作為程序呼叫結果的回覆訊息。 下列這個表提供有這個「Meta 物件」的詳細資料。 |
ObjectEventId | 字串 |
元素名稱 | 元素類型 | 說明 |
---|---|---|
ProcessTemplateName | 字串 | |
ProcessInstanceName | 字串 | |
KeepName | 字串 | |
UserId | 字串 | |
ExecutionMode | 字串 | 若是 ProcessTemplateCreateAnd StartInstance 執行,請指定 asynchronous。 若是 ProcessTemplateExecute 執行,請指定 synchronous。 |
ResponseTimeout | 字串 | 如果值設為負數,將不容許任何回覆 |
TimeoutFatal | 字串 | |
ExternalProcessContext | 字串 | |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
ProcInstID | 字串 |
ProcInstName | 字串 |
ProcInstParentName | 字串 |
ProcInstTopLevelName | 字串 |
ProcInstDescription | 字串 |
ProcInstState | 字串 |
LastStateChangeTime | 字串 |
LastModificationTime | 字串 |
ProcTempID | 字串 |
ProcTempName | 字串 |
Icon | 字串 |
Category | 字串 |
ExternalProcessContext | 字串 |
ObjectEventId | 字串 |
連接器可以啟用協同作業物件,使用上面說明的 MO_WebSphere MQ Workflow_ProcessInstance 物件, 來監視及控制 WebSphere MQ Workflow 程序的狀態。若要這樣做, 連接器會在連接器與 WebSphere MQ Workflow 伺服器間使用 Java API。
「程序呼叫」、「活動實作要求」及「活動實作回應」會使用 XML API, 來與「工作流程」處理通訊。連接器會忽略從協同作業物件傳送至「工作流程」之應用程式特有商業物件的動詞。
連接器同時也支援使用 Java API 與 ProcessInstance 商業物件的下列動詞搭配。
在目前的版本中,WebSphere Business Integration Collaborations for Telecommunications 解決方案並沒有提供任何實作這些用法的協同作業。 然而,您可以利用 ProcessInstance 商業物件來實作這些用法。 如需詳細資訊,請參閱 Adapter for WebSphere MQ workflow。
上面提到的三種型樣都使用 XML API,與「工作流程」伺服器通訊。 連接器處理 WfMessage 與應用程式特有商業物件間的動詞,如下所示:
WebSphere MQ Workflow 應用程式特有商業物件中的動詞與通用商業物件間的對映是由「對映」元件指定的。
下列一系列動作說明商業事件如何觸發工作流程程序:
您可以配置協同作業物件,以便協同作業物件送出一個工作流程呼叫並等到完成。 在設定這種類型的實作方式之前,您必須確定工作流程程序可以立即傳回回應。
下列一系列動作說明工作流程呼叫同步商業函數的詳細資料:
非同步商業函數呼叫類似於前一節中說明的同步商業函數呼叫。 既然活動預期一個長時間執行的程序,那麼移出要求資料的協同作業物件及移入回覆資料的協同作業物件是不同的協同作業物件。
當多個應用程式一起工作時,若要支援通常在多重執行緒環境中執行的應用程式, 非常需要程序環境定義延伸及解析。本節提供這種整合型樣的一般概念。
下列圖解顯示活動相互關係 ID 如何解析同步活動中活動實作要求與回應流程間的關係。 WebSphere Business Integration Collaborations for Telecommunications 提供的協同作業範本都會保留, 並傳回唯一的相互關係 ID。
下一個圖解顯示非同步活動的範例。這個範例假設連接器管理長時間執行之程序的要求與回應間的關係。 這種模型依賴應用程式及對應連接器來保留相互關係 ID。
下一個圖解顯示非同步活動的彈性範例。在這個範例中, IBM WebSphere InterChange Server 會解析協同作業物件的廣域程序環境定義中每一個 ID 的關係。 若要實作這個型樣,您需要開發一個對映與關係。 如需開發對映與關係的詳細資訊, 請參閱 Map Development Guide。
除了上面提到的對映與關係外,「WebSphere MQ Workflow 非同步回應」必須在 ActivityResponseMO 中設定 ActImplCorrelID 的值。
對於 WebSphere Business Integration Collaborations for Telecommunications 解決方案,若要進行安全配置,必須考慮下列三個安全領域:
WebSphere MQ Workflow 連接器使用 CORBA/IIOP,與 IBM WebSphere InterChange Server 通訊。在現行版本中,IBM WebSphere InterChange Server 沒有 CORBA/IIOP 通訊的配置點。
「MQ 佇列管理程式」安全領域將使用者鑑別功能委派給作業系統 (例如,Windows NT 或 AIX)。換言之,您需要在作業系統中登錄使用者 ID, 使用者才能使用 MQ 佇列。基於這個原因,如果開啟了安全,每一個佇列訊息都需要傳遞使用者 ID、 密碼或認證,才能夠使用佇列。 WebSphere Business Integration Adapter for MQ Workflow 會為它的要求與回應通訊機制使用 MQ 佇列, 因此需要在它的訊息標頭中傳遞使用者 ID 及密碼或認證。
WebSphere MQ Workflow 具有它自己的鑑別機制 (使用角色型系統)。 每一個使用者必須登錄在使用者登錄,才能取得存取權限。 如果開啟了安全,任何由使用者定義的「程式執行伺服器 (UPES)」執行的程式活動都應該接受鑑別。 換言之,WebSphere MQ Workflow 用戶端具有鑑別功能。
當您想要協同作業物件控制 WebSphere MQ Workflow 程序實例時, 有兩種可能完成這種動作的方法。方法一就是呼叫工作流程 Java API, 暫停、回復、刪除及擷取作業。 若是啟動作業,您需要使用 XML API。
WebSphere MQ Workflow 連接器具有可以用於 Java API 鑑別的使用者 ID 及密碼內容。 這些內容僅用於暫停、回復、刪除及擷取作業,而且這是唯一配置 Java API 安全的方法。 您無法動態變更安全主題及認證。
若要啟動程序實例,WebSphere MQ Workflow 連接器可以使用 WebSphere MQ Workflow XML 指令 API。XML 訊息必須含有已登錄的 WebSphere MQ Workflow 使用者名稱。呼叫程序的協同作業物件必須將具體值設為 MO_WebSphere MQ Workflow_ProcessTempleteConfig.userid。
下列幾節提供專門套用至 WebSphere Business Integration Collaborations for Telecommunications 解決方案的環境定義內協同作業物件開發的資訊。如需開發協同作業物件的完整相關資訊, 請參閱 Collaboration Development Guide。
WebSphere Business Integration Collaborations for Telecommunications 架構會在 WebSphere MQ Workflow 伺服器與 IBM WebSphere InterChange Server 之間套用下列四種型樣的通訊型樣:
這種類型的協同作業範本僅有位於最上層的「主要」實務。 在流程中,工作流程程序是在「傳送動詞」子實務中呼叫。 下列圖解顯示「主要」實務的邏輯流程的範例。
這種類型的協同作業範本有「主要」及「擷取」最上層實務。 如果觸發商業物件的動詞是 retrieve,將呼叫「擷取」實務。 「主要」實務是針對其他動詞而呼叫,如 create、delete 及 update。
這種類型的協同作業範本是設計來支援與 WebSphere MQ Workflow 伺服器的同步通訊。 如果呼叫的活動需要傳回輸出商業物件,「主要」與「擷取」實務兩者都會提供「回覆」程序。
下列圖解顯示這種類型之「主要」實務的邏輯流程。
下列圖解顯示「擷取」實務的邏輯流程。
這種類型的協同作業範本有「設定」及 ReturnSetupResult 最上層實務。 這種類型的協同作業範本是用於雙向非同步通訊。 這兩種協同作業物件通常是從相同範本建立的。 第一個協同作業物件從 WebSphere MQ Workflow 發出要求, 其他則接收 WebSphere MQ Workflow 的回應。 「設定」實務是用在要求協同作業物件中,而 ReturnSetupResult 實務則用在回應協同作業物件中。
下列圖解顯示「設定」程序的邏輯流程。
下列圖解顯示 ReturnSetupResult 程序的邏輯流程。
這種類型的協同作業範本僅有「擷取」最上層實務。 這種類型的協同作業範本支援使用者交談商業活動。 「擷取」實務具有與同步活動實作方式中「擷取」實務相同的邏輯程序流程。 下列圖解顯示這個邏輯流程。
如果商業物件具有另一個商業物件作為金鑰參照, 則母項商業物件有時需要參照商業物件的完整內容。 WebSphere Business Integration Collaborations for Telecommunications 協同作業範本提供一個支援這種實例的實務。 所有協同作業範本都具有 SYNC_FROM_SOURCE 子實務, 但那些具有 "擷取清單" 型樣的協同作業範本除外。
下列圖解顯示 SYNC_FROM_SOURCE 程序的邏輯流程。 如果協同作業物件的 SYNC_FROM_SOURCE 內容值設為 "true",就會呼叫這個流程。
協同作業物件通常是用來完成資料同步處理。 開發人員應該小心地維護協同作業物件間的資料一致性。 如果訂閱相同商業物件的多個協同作業物件每一個都具有交易式行為, 開發人員應該使用 InterChange Server 外的交易式圖形, 來管理資料一致性及資料狀態轉換,以及避免建立處理程序迴圈。 這些需求是非常非常地複雜,而且難以符合。
WebSphere Business Integration Collaborations for Telecommunications 架構遵循僅一個管理程式協同作業物件可以管理特殊實體的原則。 這種原則稱為實體管理模型。
非同步處理程序的型樣會在訊息傳遞模型中使用協同作業物件。 這種模型不同於實體管理模型,因為它假設可以使用多個協同作業物件。 在非同步型樣中通常需要至少兩個協同作業物件。
下列幾節總結協同作業範本所使用之每一個通訊型樣的一般部署資訊。
當協同作業物件呼叫工作流程程序來進行通訊時, SourceApp 埠可以連接至實體來源應用程式連接器或埠連接器。 「目標」埠可以連接至 WebSphere MQ Workflow。這種類型的協同作業物件可使用 SYNC_FROM_SOURCE 參數來配置。如果這個參數值設為 "true", 協同作業物件會將來自已連接至 SourceApp 埠之來源應用程式的資料同步。
當協同作業物件實作同步活動來進行通訊時, SourceApp 埠可以連接至實體來源應用程式連接器或埠連接器。 這種類型的協同作業物件可使用 SYNC_FROM_SOURCE 參數來配置。如果這個參數值設為 "true", 協同作業物件會將來自已連接至 SourceApp 埠之來源應用程式的資料同步。
DestinationAppRetrieve port 埠可以連接至實體目標應用程式連接器或埠連接器。 這種類型的協同作業物件可使用 USE_RETRIEVE 參數來配置。
這種類型的協同作業物件可以具有多個以參與這個同步程序之應用程式為基礎的「目標」埠。
如果有兩個「目標」埠,它們將分別名為 ToMain 與 ToSub。 同步程序會以下列順序執行這兩個埠:先執行 ToMain 再執行 ToSub。
如果有兩個以上「目標」埠,它們將分別名為 ToMain、ToSub1、ToSub2 等等。 同步程序會以下列順序執行這些埠:先執行 ToMain、再執行 ToSub1、ToSub2,依此類推。
如果與「目標」埠相關聯的商業物件不同於觸發商業物件,埠的名稱將為 To<BusinessObjectName>。
當協同作業物件實作非同步活動來進行通訊時, SourceApp 埠可以連接至實體來源應用程式連接器或埠連接器。 這種類型的協同作業物件可使用 SYNC_FROM_SOURCE 參數來配置。如果這個參數值設為 "true", 協同作業物件會將來自已連接至 SourceApp 埠之來源應用程式的資料同步。
DestinationAppRetrieve port 埠可以連接至實體目標應用程式連接器或埠連接器。 這種類型的協同作業物件可使用 USE_RETRIEVE 參數來配置。
若是傳送要求的協同作業物件,「來源」可以連接至工作流程要求, 而「目標」埠則可以連接至長時間執行之應用程式。 若是接收回應的協同作業物件,連線將反轉:「目標」埠將連接至長時間執行之應用程式, 而「來源」埠則連接至工作流程回應。
當協同作業物件擷取清單來進行通訊時, DestinationAppRetrieve 埠可以連接至實體目標應用程式連接器或埠連接器。 這種類型的協同作業物件可使用 USE_RETRIEVE 參數來配置。 這種類型的協同作業物件是設計來支援要求/回應呼叫,以及工作流程活動實作方式。
如果協同作業物件主要用於支援商業程序活動,請將「來源」埠設為 WebSphere MQ Workflow 連接器、同時也將「回覆」埠設為 WebSphere MQ Workflow 連接器,以及將 USE_RETURN 內容設為 "true"。
WebSphere Business Integration Collaborations for Telecommunications 架構假設這種類型的協同作業物件是用在一個使用伺服器存取介面的 JSP 順序。 對於這種用法,請將「來源」埠配置為外部類型、將「回覆」埠連接至「埠連接器」, 以及將 USE_RETURN 內容設為 "false"。
Map Development Guide 中將詳細說明開發對映的程序。 本節提供部署 WebSphere Business Integration Collaborations for Telecommunications 對映的需求。
WebSphere Business Integration Collaborations for Telecommunications 解決方案提供類似的資料模型給通用商業物件及 WebSphere MQ Workflow 資料結構。 然而,由「FDLBOGen 工具」建立的應用程式特有商業物件不同於通用商業物件。
下列範例顯示這些商業物件彼此如何不同。 這個範例使用下列 FDL 資料結構。
STRUCTURE Record 'ItemA': 'Item'; 'ItemB': 'Item' (2); END Record STRUCTURE Item 'Name': 'String'; 'Type': 'String'; END Item
如果您使用 FDLBOGen,對「記錄」建立應用程式特有商業物件, 並使用 WebSphere MQ Workflow_Struct_ 作為指定的字首, 則將產生下列三個應用程式特有商業物件:
元素名稱 | 元素類型 |
---|---|
ItemA | WebSphere MQ Workflow_Struct_Record_ItemA |
ItemB | WebSphere MQ Workflow_Struct_Record_ItemB (基數 n) |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
名稱 | 字串 |
類型 | 字串 |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
名稱 | 字串 |
類型 | 字串 |
ObjectEventId | 字串 |
在 WebSphere Business Integration Collaborations for Telecommunications 解決方案中,GBO 將以下列方式提供:
元素名稱 | 元素類型 |
---|---|
ItemA | 項目 |
ItemB | 項目 (基數 n) |
ObjectEventId | 字串 |
元素名稱 | 元素類型 |
---|---|
ObjectId | 字串 (金鑰) |
類型 | 字串 |
ObjectEventId | 字串 |
下列幾點將適用於利用 WebSphere Business Integration Collaborations for Telecommunications 解決方案的開發:
在現行版本中沒有任何整合系統管理功能。 管理者可以使用 WebSphere MQ Workflow 及 IBM WebSphere InterChange Server 提供的下列系統管理工具:
如需詳細資訊,請參閱 WebSphere MQ Workflow and IBM WebSphere InterChange Server 的文件。
WebSphere MQ Workflow 及 IBM WebSphere InterChange Server 都具有 DBCS 能力, 而且它們的基礎結構也支援區域化。現行版本的 IBM WebSphere Business Integration Collaborations for Telecommunications 的成品具有 DBCS 能力,但沒有翻譯。
如需實作區域化及全球化的詳細資訊,請參閱 BaseCollaboration 類別的啟用區域化 API。
若要取得商業程序的端對端觀點,您需要一起整合個別的商業程序。 下列圖解顯示 WebSphere Business Integration Collaborations for Telecommunications 所提供的商業程序間的關係。錯誤解決及「服務使用」不會出現在下列圖解, 因為它們沒有與其他商業程序相關的已定義關係。
WebSphere Business Integration Collaborations for Telecommunications 對於多個商業程序間的關係具有下列兩種型樣:
包含關係表示程序是母項程序的子項程序。 在上面的圖解中這種關係是以 <<contains>> stereotype 顯示。
觸發條件關係表示完成前一個程序即會呼叫現行程序。
達到由 WebSphere MQ Workflow 系統處理這些程序的程度時, 程序系列的擁有者就可以監視它們的進度。
如果您的商業程序整合的範圍沒有完全實作 WebSphere Business Integration Collaborations for Telecommunications 產業解決方案程式庫所提供的範本, 您可以將所提供的範本換成您在端對端實務中擁有的程序。
若要置換包含關係中的子項程序,您需要利用自己的程序追蹤系統來追蹤您的程序。 這樣做了之後,您可能會失去商業程序管理的集中功能。 在這種情況下,您可以將您現有的程序視為 WebSphere Business Integration Collaborations for Telecommunications 母項程序中的非同步活動。若要完成這種類型的實作方式,您必須開發至少兩種協同作業物件: 一個用於呼叫您的程序,另一個用於在程序執行完畢時通知 WebSphere MQ Workflow。
下表總結所有可能的程序置換。
關係 | 置換目標 | 必要的協同作業物件 | 說明 |
---|---|---|---|
包含 | 母項程序 | 2 | 一個協同作業物件呼叫程序, 另一個則在程序完成時提供通知 |
子項程序 | 2 | 一個協同作業物件呼叫程序, 另一個則在程序完成時提供通知 | |
觸發條件 | 前一個程序 | 0 | 變更觸發埠的連接器 |
連續程序 | 1 | 呼叫您的程序 |
這一版本的 Solution Studio 並沒有提供整合的監視及追蹤檢視畫面。 如果您需要這種功能,您可以使用其他工具 (如 WebSphere Portal Server) 來開發聚集檢視畫面。
對於 WebSphere Business Integration Collaborations for Telecommunications 解決方案,有三個基於安全配置將考量的安全領域:
基本上,IBM WebSphere InterChange Server 沒有它自己的安全領域。 它依賴於 MQ 佇列管理程式安全領域。MQ 佇列管理程式安全領域會將它的安全鑑別委派給作業系統, 或目錄安全服務:如 LDAP。WebSphere MQ Workflow 具有它自己的安全領域, 但不能外部化。因此,沒有一個整合點,可將目錄安全服務集中。
如果您想要在所有領域中啟動安全,您需要同時將使用者 ID 登錄在「MQ 佇列管理程式」安全登錄及 WebSphere MQ Workflow 登錄。 另外,應用程式層次的安全可能是最佳選擇。 應用程式層次的安全表示與使用者交談的應用程式提供自己的鑑別機制。 整體安全機制依賴於應用程式安全檢查。
WebSphere Business Integration Collaborations for Telecommunications 所提供的完整商業服務集列示於下,按商業程序使用實例來分組。
下列商業服務是針對產品開發與淘汰使用實例而提供的。
下列商業服務是針對客戶訂單處理使用實例而提供的。
下列商業服務是針對服務配置及啟動 (DSL) 使用實例而提供的。
下列商業服務是針對服務配置及啟動 (IDC) 使用實例而提供的。
下列商業服務是針對服務配置及啟動 (無線) 使用實例而提供的。
下列商業服務是針對客戶資源供應使用實例而提供的。
下列商業服務是針對客戶問題處理使用實例而提供的。
下列商業服務是針對錯誤解決使用實例而提供的。