構建SOA組合商務服務,第1部分: 開發SOA組合應用程式來支援商務服務

來源:互聯網
上載者:User

引言

組合應用程式提供了整合現有服務導向架構(Service-Oriented-Architecture, SOA)服務和/或建立能夠以不同方式進行組合的新服務的能力。組合應用程式的關鍵是使用 SCA 將可重用軟體資產作為 SOA 服務實現建立。我們使用 WebSphere Process Server、 WebSphere Portal、WebSphere Service Registry and Repository、WebSphere Enterprise Bus、WebSphere Portlet Factory 和 WebSphere Application Server 及其相應的開發工具 開發了一個金融領域的樣本組合應用程式。所選擇的情境提供了一些樣本,這些樣本說明了 開發高效組合應用程式所需的不同特性的實現。我們將首先通過這些樣本情境來說明組合應 用程式的好處和挑戰。最後,我們將分析 IBM 產品中的技術特性以及可以如何將其用於開發 組合應用程式。

在本文中,我們首先定義了組合應用程式、變化點、角色、用例、運行時環境,並給出了 一個業務意圖列表,為了建立支援商務服務的組合應用程式,需要實現這些業務意圖。

本系列的後續文章將更為詳細地對幾個相關問題進行分析,包括多重租賃 (Multi- tenancy) 設計模式、應用選取器和商務規則來實現動態性、發布服務、自助模式和資產、使 用動態設定檔的可配置使用者介面、自動構建和部署、使用 CEI 開發可度量應用程式以及其 他類似的主題。

什麼是組合應用程式?

SOA 組合應用程式定義為“一組解決特定業務問題或任務的動態服務元件。組合應用程式 經常提供一組服務,而這些服務又可能屬於其他組合應用程式。”商務服務 是業務單位選擇 在其邊界公開的服務,通過介面與其客戶、夥伴或其他業務單位串連。商務服務實現有 意義的商務程序或任務。組合應用程式 由一個或多個組件或組件彙總組成,而其中每個組件 或組件彙總會公開一個服務介面。組合應用程式為商務服務提供支援。

圖 1. 用於進行零售銀行貸款發放的組合應用程式

正如圖 1 中所示,組合應用程式對一系列可佈建服務進行編排。例如,在此樣本中矩形 與公開商務服務的業務組件對應,如 Validate。紅線指示組合應用程式的特定用例所遵循的 調用序列。沿著紅線,將依次接受貸款申請,產生信用記錄,然後驗證、分析和提供貸款。 批准貸款後,必須對其進行初始化、配置、結算並記錄。最後,將發起對話,以與客戶進行 溝通。

在此上下文中,服務元件體繫結構(Service Component Architecture,SCA)是面向服 務的組件模型。它提供涵蓋無狀態會話 EJB、Web 服務、傳統 Java 對象(Plain Old Java Object,POJO)、Web 服務商務程序執行語言(WS-Business Process Execution Language ,WS-BPEL)流程、資料庫訪問、公司資訊系統(Enterprise Information System,EIS)訪 問和其他服務實現的抽象,如下面的圖 2 中所示。SCA 將商務邏輯與基礎設施邏輯分離開來 ,因此程式員能夠集中精力處理業務問題。

圖 2. SCA 實作類別型

變化點

變化點是確定可能發生更改而應該外部化的位置。具有內建變化點的服務元件允許使用者通 過對這些服務進行配置來滿足不同的需求。可以將可擴充性機制加入到 UI、服務元件介面、 服務元件本身以及資料模型中,從而實現可配置應用程式。

非常有必要對可配置性 和自訂 進行一下對比。可配置性為我們提供在不更改程式碼程式庫( 編寫代碼)的情況下使組件適應不同需求的能力。可配置性構建到服務(Switch、Dial 和 Lever)中,可以由應用程式的使用者進行調用。相反,自訂要求開發額外的代碼(使用編程 語言)來擴充和更改軟體組件,以支援特定的“自訂”行為。

我們可以將這些變化點歸為三大類:使用者介面、商務邏輯和持久性。

使用者介面 (UI)

使用者介面中的變化點允許使用者通過配置更改 UI 的外觀以及其語義內容(資料欄位)。用 戶介面中的配置變化點的樣本有:

使用客戶特定的徽標和標識重塑網站的品牌。例如,假定有兩家銀行 Bank A 和 Bank B 。這兩家都具有自己的徽標或品牌,並希望網站能夠反映這一點。

更改在使用者介面顯示的標籤和文本,以使其對使用它的員工和客戶恰當,且為他們所熟悉 。例如,一家銀行可以使用術語 Preferred Account 作為輸入欄位的標籤,而另一家銀行則 可以使用術語 Advantage Account。

更改向使用者公開的輸入欄位。一家銀行可以允許使用者輸入備用手機號碼,而另一家銀行則 可以不允許提供此資訊。

更改使用者調用的 SOA 服務的端點。可能會根據在國內的地區不同而使用不同的信用檢查 服務,因此可通過外部化端點來允許對其進行配置。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.