關(guān)鍵詞: 決策支持系統(tǒng) 組件建模 J2EE技術(shù) 分布式體系結(jié)構(gòu)
城市數(shù)字化使國家在經(jīng)濟、文化、教育、電信、國防和安全以及公民在教育、就業(yè)、醫(yī)療等社會保障方面的信息有效地組織起來,形成在先進網(wǎng)絡(luò)環(huán)境下?lián)碛泻A啃畔⒌膹?fù)雜應(yīng)用系統(tǒng)。綜合決策指揮系統(tǒng)將為這樣一個龐大而復(fù)雜的系統(tǒng)工程提供支撐和保障。若沒有一個科學(xué)的、實效的、可靠的、多層次的決策模型和決策系統(tǒng),最終必將制約數(shù)字化城市的發(fā)展。目前國內(nèi)許多城市已有一些相應(yīng)的決策支持系統(tǒng)正在運行,但由于各自分散建設(shè),呈離散式分布,并采用了各異的系統(tǒng)平臺,缺乏信息共享的機制,缺乏與其他現(xiàn)行的管理信息系統(tǒng)(MIS)、辦公室自動化(OA)等系統(tǒng)的整合與管理,信息未能得到充分利用。因此建成的系統(tǒng)往往綜合決策性不強,導(dǎo)致在城市數(shù)字化進程中不能很好地發(fā)揮指揮決策作用。面對我國城市數(shù)字化發(fā)展的迅猛趨勢,城市信息共享機制與技術(shù)問題成為越來越突出的問題,迫切需要能提供支持分布式、異構(gòu)空間信息共享與分析的決策支持平臺[1]。
1 技術(shù)方案的研究與選擇
1.1 多層B/S結(jié)構(gòu)模式
隨著Internet/Intranet/Extranet技術(shù)的不斷發(fā)展,基于Web的信息發(fā)布和檢索技術(shù)導(dǎo)致了整個應(yīng)用系統(tǒng)的體系結(jié)構(gòu)從C/S的主從結(jié)構(gòu)向靈活的B/S分布計算體系結(jié)構(gòu)過度,其最大特點就是客戶機采用瀏覽器界面,簡單易學(xué),且有統(tǒng)一的客戶界面,大大降低了C/S模式客戶端多樣軟件的開發(fā)、維護及培訓(xùn)的成本費用。這種模式得到現(xiàn)代數(shù)據(jù)庫應(yīng)用系統(tǒng)的青睞,并逐漸滲透到現(xiàn)代決策支持系統(tǒng)領(lǐng)域。采用統(tǒng)一的B/S結(jié)構(gòu)開發(fā)的決策支持系統(tǒng)無論是現(xiàn)在還是將來都是最好的選擇,它提供了真正意義上的與其他系統(tǒng)進行無縫整合的方案。這種結(jié)構(gòu)模式的決策支持系統(tǒng)不僅提供了個體決策者獨立的決策能力,而且對多決策者群決策也提供了支持,決策點的增加不會帶來額外的維護和多余負擔(dān)。
但面對信息瞬息萬變、系統(tǒng)龐大且環(huán)境復(fù)雜的數(shù)字化城市,確保決策支持系統(tǒng)的穩(wěn)定性、分析處理能力及決策的效率成為解決問題的關(guān)鍵。傳統(tǒng)的瀏覽器/Web服務(wù)器/數(shù)據(jù)庫服務(wù)器的二層或三層B/S結(jié)構(gòu)模式是基于簡單事務(wù)處理能力的系統(tǒng),已遠遠不能滿足數(shù)字城市建設(shè)中對信息共享和系統(tǒng)整合以及系統(tǒng)跨平臺性、分布性、可重用性、高擴展性及決策支持系統(tǒng)強大的分析處理與決策的要求。因此數(shù)字化城市決策支持系統(tǒng)必然選擇多層B/S結(jié)構(gòu)。
1.2 J2EE體系架構(gòu)
數(shù)字化城市的建設(shè)不是一朝一夕的事,其可持續(xù)發(fā)展的特點必然導(dǎo)致城市信息、建設(shè)策略等因素的不斷變化,從而導(dǎo)致對決策支持系統(tǒng)的要求也不斷改變。因而,如何延長系統(tǒng)的使用壽命成為開發(fā)者必須面對的問題,其擴展性和平臺無關(guān)性的特點更是表明了決策支持系統(tǒng)基礎(chǔ)架構(gòu)的選擇是延長系統(tǒng)壽命的重要因素。
目前,業(yè)界流行的系統(tǒng)架構(gòu)為J2EE和.Net二大體系。其中,.Net是來自Microsoft的系統(tǒng)架構(gòu),其部署、應(yīng)用依賴于Microsoft公司的Windows。也就是說,選擇了.Net平臺就意味著選擇了Windows??疾煳覈跋嚓P(guān)部門軟件采購的特點,會發(fā)現(xiàn)選擇.Net平臺將會制約城市決策支持系統(tǒng)的部署及與相關(guān)系統(tǒng)的整合。
而由Sun公司提出的J2EE作為一個標(biāo)準(zhǔn)中間件體系結(jié)構(gòu)正日趨成熟。它簡化和規(guī)范多層分布式企業(yè)應(yīng)用系統(tǒng)的開發(fā)和部署,其最大特點就是跨平臺和強大的組件建模技術(shù)。
J2EE運行在Java虛擬機JVM(Java Virtual Machine)上,利用Java本身的跨平臺特性,獨立于硬件配置和操作系統(tǒng),完全消除了平臺差異。圖1為其特性圖。目前,幾乎所有的主流操作系統(tǒng)都提供對J2EE的支持。因此,通過采用Java及J2EE可以使得系統(tǒng)的部署和擴展免于昂貴的硬件設(shè)備及操作系統(tǒng)的再投資,保護已有的IT資源。在很多情況下,J2EE還可以直接運行在企業(yè)集成系統(tǒng)服務(wù)器環(huán)境中,從而節(jié)約網(wǎng)絡(luò)帶寬,提高性能。實際上如果要搭建跨Linux、Windows等多個操作系統(tǒng)的平臺,J2EE平臺幾乎是惟一的選擇,其規(guī)范性和兼容性的特點使得只需進行少量的代碼修改就可以把J2EE部署在不同的應(yīng)用服務(wù)器上。綜上所述,采用J2EE實施方案顯著地提高了系統(tǒng)的可移植性、可伸縮性、可重用性、安全性和負載平衡。

采用此平臺的另一特點是通過JMS支持MOM部署Java RMI/IIOP和CORBA/IIOP分布式對象和組件,使得EJB構(gòu)件及CORBA構(gòu)件的互操作成為可能,在很大程度上實現(xiàn)它們之間的互補。這種集成的體系成為擴展的J2EE集成體系結(jié)構(gòu),數(shù)字化城市決策支持系統(tǒng)選擇這種系統(tǒng)基本架構(gòu)完全滿足了多層分布式結(jié)構(gòu)和跨平臺的條件,大大提高了系統(tǒng)的可擴展性、可伸縮性、部署集成的松耦合性,真正延長了系統(tǒng)的使用壽命。
1.3 Java語言
對于語言的選擇,既要保證系統(tǒng)的效率、安全性和實時性,還要提供足夠的穩(wěn)定性。在系統(tǒng)構(gòu)建中,選擇采用Java為主語言的主要原因有如下幾點:
(1)Java語言“Write once, run anywhere(一次編寫,到處運行)”的特點,徹底解決了跨平臺問題,避免了將來更換操作系統(tǒng)或移植決策支持系統(tǒng)所帶來的風(fēng)險。
(2)Java是對C++語言的補充,構(gòu)建的系統(tǒng)在穩(wěn)定性方面得到極大的提高。
(3)Java強大的組件技術(shù),其可擴展性、安全性、可重用性和松耦合性為分布式系統(tǒng)的部署提供了有利條件。
(4)通過Java和XML組合可以得到一個更加完美的平臺獨立性解決方案。XML是一種可以用來定義其他標(biāo)記語言的語言,它可以在不同的商務(wù)過程中共享數(shù)據(jù)。XML的發(fā)展和Java是相互獨立的,并且它和Java具有的相同目標(biāo)正是平臺獨立性。
2 城市數(shù)字化決策支持系統(tǒng)體系結(jié)構(gòu)設(shè)計
本方案基于擴展的J2EE集成體系結(jié)構(gòu),采用了組件化的設(shè)計思想并綜合MVC(模型-視圖-控制器Model-View-Controller)設(shè)計模式進行系統(tǒng)設(shè)計。
MVC設(shè)計模式屬于體系結(jié)構(gòu)設(shè)計模式的一種,所謂設(shè)計模式就是面向?qū)ο蟮某绦蛟O(shè)計人員用來解決編程問題的一種形式化表示。此模式中Model層用來實現(xiàn)決策業(yè)務(wù), View層用來顯示決策界面,Controller層主要負責(zé)View層和Model層之間的控制關(guān)系。這種設(shè)計模式使得數(shù)字化城市決策支持系統(tǒng)在構(gòu)建中實現(xiàn)了數(shù)據(jù)、應(yīng)用、表示的分離,使開發(fā)工作更加容易和迅速。基于此種設(shè)計模式的決策支持系統(tǒng)體系結(jié)構(gòu)如圖2所示。

(1)用戶層。系統(tǒng)數(shù)據(jù)的直觀表現(xiàn)部分直接面向決策者,屬于系統(tǒng)的UI(User Interface)。決策者直接通過瀏覽器實現(xiàn)與系統(tǒng)的交互。同時,本系統(tǒng)基于J2EE架構(gòu)的特點,使得用戶可以通過桌面應(yīng)用系統(tǒng)進行B/S結(jié)構(gòu)和C/S結(jié)構(gòu)的集成混合使用;通過支持J2EE平臺的移動設(shè)備使移動交互、移動決策成為可能。
(2)Web服務(wù)組件層。本層是部署系統(tǒng)的表現(xiàn)層,面向用戶提供數(shù)據(jù)服務(wù)。它位于MVC模式的View層。組件層提供報表展現(xiàn)、報表定制、數(shù)據(jù)輸入及信息瀏覽獲取的功能。
本層采用基于Java的Servlet、JSP及XML編程技術(shù)建立了一個動態(tài)的、高度交互的、顯示直觀的、可維護性強及能夠跨平臺部署的Web體系。
(3)應(yīng)用服務(wù)器層。響應(yīng)來自Web服務(wù)層或客戶瀏覽器及其他用戶應(yīng)用程序的服務(wù)請求而執(zhí)行一系列的分析決策及事務(wù),它是用戶服務(wù)和集成層數(shù)據(jù)服務(wù)之間聯(lián)系的橋梁,其交互由控制層及會話處理層來完成。應(yīng)用服務(wù)器中的決策核心層如圖3所示,其實現(xiàn)采用基于Java及J2EE平臺的強大的EJB組件建模技術(shù)。通過對模型庫、方法庫、數(shù)據(jù)管理等組件化的設(shè)計與封裝和RMI與CORBA構(gòu)件互操作的實現(xiàn),使得系統(tǒng)不僅可以實現(xiàn)即插即用的組件模型服務(wù)功能,而且可以充分利用和集成現(xiàn)有的豐富的模型資源和現(xiàn)行系統(tǒng),實現(xiàn)模型資源的共享和分布式管理。

(4)系統(tǒng)集成層。建立決策支持系統(tǒng)數(shù)據(jù)倉庫響應(yīng)OLTP和OLAP請求而提供的分析與決策服務(wù);并利用整合技術(shù)與現(xiàn)行系統(tǒng)集成,實現(xiàn)城市分布廣泛的數(shù)據(jù)資源共享。
數(shù)據(jù)倉庫是面向主題的、集成的、不可更新的、隨時間不斷擴展的數(shù)據(jù)集合[2]。它建立在已有的數(shù)據(jù)資源之上,采用二次采集的方法將原始數(shù)據(jù)轉(zhuǎn)變?yōu)榭蛇M行信息的查詢、分析、統(tǒng)計并組織成可用于決策分析的綜合數(shù)據(jù)形式。其體系結(jié)構(gòu)如圖4所示。

3 結(jié)束語
基于J2EE應(yīng)用架構(gòu)的決策支持系統(tǒng)體系是一種新型的體系模式。本文結(jié)合MVC設(shè)計模式,采用組件化設(shè)計思想,簡便、高效地實現(xiàn)Web計算。系統(tǒng)具有良好的可靠性、可重用性、可維護性和可擴展性,尤其是RMI與CORBA構(gòu)件的交互實現(xiàn),極大地增強了軟件模塊的可重用性和共享性,從而提高了系統(tǒng)的開發(fā)效率并降低了開發(fā)、維護、培訓(xùn)的成本。數(shù)據(jù)倉庫技術(shù)的引入使得系統(tǒng)分析決策的實現(xiàn)更高效、更可靠。這些特點也正體現(xiàn)了DSS技術(shù)平臺今后的發(fā)展方向。在數(shù)字化城市的建設(shè)中,決策支持系統(tǒng)采用這樣的體系結(jié)構(gòu)將會實現(xiàn)城市內(nèi)部、城市與城市之間及城市與國家數(shù)據(jù)信息應(yīng)用體系的平滑銜接,真正體現(xiàn)連接與數(shù)據(jù)共享、局部決策與全局決策完美結(jié)合的群決策思想。該體系結(jié)構(gòu)在數(shù)字化博物館、學(xué)校師資人才決策支持系統(tǒng)等應(yīng)用實踐中效果良好。
參考文獻
1 邵立勤,景貴飛.加強技術(shù)創(chuàng)新,推動我國數(shù)字化城市建設(shè)2002年北京數(shù)字化城市高層論壇及學(xué)術(shù)研討會,2002
2 Mallach E G.決策支持與數(shù)據(jù)倉庫系統(tǒng)(英文影印版). 北京:清華大學(xué)出版社,2001
