王帥
摘 要 本文在軟件體系結(jié)構范圍內(nèi)做了相關研究,從而提出了面向服務的軟件體系架構(SOA),并對該體系和SOA架構技術架構總體設計做了相關介紹。在SOA體系結(jié)構中,其功能全部定成獨立的服務,且都帶有的可調(diào)用接口都帶有明確的定義,調(diào)用這些服務即可選用事先定義好的順序來形成業(yè)務流程。最后,針對面向服務體系架構平臺,對其應用進行了研究。
【關鍵詞】軟件體系結(jié)構 面向服務體系架構 應用
1 面向服務軟件體系架構的基礎理論
1.1 面向服務體系架構的相關介紹
SOA即服務體系架構,到目前為止都沒有一個能被公認的定義來表述它。不少組織都曾從不同側(cè)面和角度來對SOA進行描述,比較典型的是W3C把SOA定義成一種應用程序體系結(jié)構,凡是該體系結(jié)構中的功能都可定義成獨立的服務,對服務之間的交互進行分析,在SOA的幫助下,企業(yè)可以明白業(yè)務邏輯執(zhí)行的原因,有利于分析師、管理員在業(yè)務流程上進行針對性優(yōu)化。由此可見,經(jīng)過使用SOA可有效減少開發(fā)的成本;經(jīng)過松耦合以及粗粒度在很大程度上能夠?qū)碗s業(yè)務邏輯進行屏蔽,極大的減小了復雜度;經(jīng)過專業(yè)的組織和分工,可形成大規(guī)?;拈_發(fā)軟件。所以,在軟件大規(guī)模生產(chǎn)和解決軟件危機上,SOA架構是具有相應優(yōu)勢的。
1.2 架構設計原則需面向服務體系
SOA單以概念而論,主要有三個抽象的級別,即業(yè)務流程、操作和服務。而操作在其中處于抽象的最低層,代表單個邏輯工作單元事務,操作在執(zhí)行的過程中容易出現(xiàn)讀、寫甚至修改多個或一個持久性數(shù)據(jù)的情況。而服務處于第二層,主要代表操作邏輯分組,業(yè)務流程作為最高層主要是給特定目標的實現(xiàn)而進行的長期活動。
1.3 面向服務體系架構的實現(xiàn)技術
其實,SOA并不是最新衍生出來的事物,它的應用經(jīng)歷了多年的發(fā)展,它的發(fā)展史比XML和Web服務要長得多。Web服務是最近幾年軟件架構行業(yè)提出的面向服務的體系結(jié)構,在Web服務實現(xiàn)后,大家對面向服務體系結(jié)構的價值有了更深層次的認識。Web服務的成功充分說明了該體系架構可以實現(xiàn)。但是,需要說明的一點是,面向服務的體系架構跟Web服務不完全是一個概念。
2 SOA架構技術架構總體設計
系統(tǒng)是以SOA為基礎的解決方案,整個系統(tǒng)的組成部分包括若干服務和服務??傮w技術實現(xiàn)架構圖如圖1所示。
2.1 表示層設計
表示層設計的目的是為了使用戶使用界面更加友好。作為以企業(yè)環(huán)境為研究對象的軟件開發(fā)人員,對于怎樣選取客戶端應用程序模型和對應客戶端之間的取舍,困難較多??紤]到系統(tǒng)規(guī)模較大、維護資金較多,所以可采用AS.PNET技術。
2.2 業(yè)務外觀層設計
業(yè)務外觀層設計的目的是隔離系統(tǒng)功能的提供者和使用者。面對任何問題,可使用中間層進行簡單化處理。通過使用中間層,不但可以降低表示層處理對象的數(shù)目的總數(shù)量,還能使業(yè)務邏輯組建更方便使用,中間層的引入還可方便項目團隊的分工和協(xié)同。業(yè)務外觀層將業(yè)務層提供的商業(yè)功能顯露為服務,從而為客戶端提供一個統(tǒng)一的商業(yè)邏輯視圖。
2.3 業(yè)務層設計
業(yè)務層設計是應用軟件系統(tǒng)的關鍵部分,這是因為業(yè)務層設計良好,那么軟件系統(tǒng)的靈活性和可維護性更強。對于怎樣組建一個優(yōu)秀的架構業(yè)務層,這是軟件架構工程師需要妥善處理的問題。
2.4 數(shù)據(jù)層設計
數(shù)據(jù)層可完成系統(tǒng)中的數(shù)據(jù)管理。其設計的內(nèi)容一般包括了數(shù)據(jù)服務層的設計以及數(shù)據(jù)庫設計等。在對數(shù)據(jù)庫進行設計時,務必使系統(tǒng)所有訪問操作能使用存儲過程。這是因為如果可使用存儲過程,數(shù)據(jù)庫操作封裝在單命令中,安全性更強一些。
3 面向服務體系架構軟件平臺應用情況
到目前為止,面向服務體系架構軟件平臺已經(jīng)應用到了中國石油工程技術生產(chǎn)運行管理、煤層氣排采監(jiān)控、礦區(qū)業(yè)務管理等多個系統(tǒng)中。
3.1 煤層氣排采監(jiān)控
采用面向服務體系架構軟件平臺,可減少煤層氣排采監(jiān)控軟件系統(tǒng),通過該系統(tǒng),可對煤層氣井口壓力、氣體流量和泵機工作功率等這些數(shù)據(jù)進行遙控和監(jiān)測,并對單井產(chǎn)量和預測排采趨勢進行分析與研究。不僅可以對井場的儀器儀表進行監(jiān)控,還能對控閥組站和集氣站生產(chǎn)詳細情況進行即時監(jiān)測。
3.2 礦區(qū)服務業(yè)務管理系統(tǒng)
中國石油礦區(qū)服務業(yè)務管理系統(tǒng)建設于8年前就提出了系統(tǒng)化業(yè)務要求,確立了“管理與決策支持、專業(yè)服務、實物資產(chǎn)管理、公眾服務”4 個核心平臺。該平臺包括11個子系統(tǒng)以及兩個應用平臺。
3.3 綜合辦公管理系統(tǒng)
中國石油辦公管理系統(tǒng)包括股權管理子系統(tǒng)、信訪管理子系統(tǒng)、思想政治工作管理子系統(tǒng)等系統(tǒng)。這些系統(tǒng)都是基于面向服務體系架構理念而研發(fā),采用的是微軟技術平臺。盡管每一個系統(tǒng)在不同管理部門相對獨立,但是依靠該平臺,通過研發(fā)高效率的開發(fā)模式,對應用框架進行統(tǒng)一化管理,這樣非常有利于建設效率的提高。
4 小結(jié)
未來,面向服務體系的架構會主導網(wǎng)絡商業(yè)系統(tǒng)的發(fā)展方向。面向服務架構的成熟度和完善性還需要有關研發(fā)人員在企業(yè)實踐中不斷完善和改進。
參考文獻
[1]冉曉旻,郭文偉,譯.Oneil M.Web 服務安全技術與原理[M].北京:清華大學出版社,2003.
[2]盧致杰,覃正,韓景調(diào).王立華.SOA體系設計方法研究[J].工業(yè)工程,2004(06).
[3]杜彥斌著.面向服務體系結(jié)構研究[J].計算機工程與應用,2004.
作者單位
西安思源學院 陜西省西安市 710038