劉毅
【摘 要】本文論述了軟件開發(fā)新技術(shù)及常用的開發(fā)平臺,以及如何采用軟件新技術(shù)如中間件、數(shù)據(jù)倉庫等三層軟件架構(gòu)開發(fā)超市管理信息系統(tǒng) ,針對開發(fā)過程中需要注意的幾個問題進(jìn)行了闡述,并給出了解決辦法。
【關(guān)鍵詞】C/S、B/S三層架構(gòu);中間件;管理信息系統(tǒng);數(shù)據(jù)倉庫
傳統(tǒng)的計算機管理信息系統(tǒng)的從單機版軟件發(fā)展到網(wǎng)絡(luò)化的客戶/服務(wù)器計算模式,從單機用戶發(fā)展到網(wǎng)絡(luò)化多用戶同時操作。可是,INTERNET/INTRANET的普及,計算機網(wǎng)絡(luò)技術(shù)的發(fā)展,這種將數(shù)據(jù)統(tǒng)一存儲在數(shù)據(jù)庫服務(wù)器上,有關(guān)的業(yè)務(wù)邏輯組件都在客戶端的,即所謂胖終端(二層體系結(jié)構(gòu))的解決方案已經(jīng)大大阻礙了系統(tǒng)的發(fā)展,難以擴展到廣域網(wǎng)或INTERNET上,由于客戶端承擔(dān)了絕大部分的邏輯計算功能,導(dǎo)致了客戶端成本的提高,對于管理系統(tǒng)的軟件更新和員工培訓(xùn)也要投入更多的成本來實現(xiàn)。
隨著計算機軟件廠商推出的J2EE平臺和.NET開發(fā)平臺的普及使用,這些新的開發(fā)平臺所采用的三層或四層體系結(jié)構(gòu)將取代原有的二層體系結(jié)構(gòu)作為企業(yè)級應(yīng)用。三層結(jié)構(gòu)就是把用戶端的業(yè)務(wù)從邏輯上獨立出來,并與數(shù)據(jù)庫服務(wù)器中存儲過程合并在一起,構(gòu)成應(yīng)用層(一般成為第二層),以提高計算機能力,實現(xiàn)管理信息系統(tǒng)在開發(fā)和使用、升級中的靈活性。采用多層結(jié)構(gòu)的分布系統(tǒng),對每個應(yīng)用系統(tǒng)來說,在設(shè)計和實現(xiàn)時需要開發(fā)的,僅僅是在應(yīng)用服務(wù)器上的業(yè)務(wù)邏輯部分的軟件,還必須要設(shè)計處理分布系統(tǒng)所特有的功能的軟件,而目前的操作系統(tǒng)和支撐軟件都不支持,為此,采用了中間件,它是處于系統(tǒng)軟件和應(yīng)用軟件之間的一批軟件,可以實現(xiàn)客戶機和服務(wù)器間的連接和通信;提供應(yīng)用層不同服務(wù)間的互操作機制;提供一個應(yīng)用開發(fā)框架,支持模塊化的應(yīng)用開發(fā)等基本功能。
隨著電子信息及計算機和計算機網(wǎng)絡(luò)的發(fā)展,在零售市場由食雜店向小型連鎖和大型連鎖超市(購物廣場)步進(jìn)的過程中,銷售管理也由手工記賬轉(zhuǎn)變?yōu)橛嬎銠C單機進(jìn)銷存和網(wǎng)絡(luò)化的大型超市(購物廣場)管理及銷售信息系統(tǒng),為超市(購物廣場)的管理、決策、商品的調(diào)配帶來了非常大的便利,提高了運行效率,增加了超市(購物廣場)效益。
本文所要論述的是超市(購物廣場)管理信息系統(tǒng)的改造、設(shè)計開發(fā)的架構(gòu)及采用的開發(fā)工具和平臺的選擇,從中引入軟件開發(fā)新技術(shù)解決管理信息系統(tǒng)效率低下、遠(yuǎn)程擴展等問題問題。
該超市在2年內(nèi)就由一家超市、一個配貨中心發(fā)展到市區(qū)和周邊縣(市)共10家大型連鎖購物廣場和一個全市配貨中心,實現(xiàn)區(qū)域內(nèi)布點和統(tǒng)一配送。原來配備的超市管理信息系統(tǒng)已經(jīng)無法滿足管理、銷售、采購、配送等經(jīng)營需求,所以必須采用全新的架構(gòu)進(jìn)行開發(fā)相應(yīng)的新的管理信息系統(tǒng)。
系統(tǒng)采用的架構(gòu)。
經(jīng)過充分論證管理信息系統(tǒng)需求后,決定采用軟件構(gòu)件技術(shù)與中間件進(jìn)行系統(tǒng)的開發(fā)。保留了數(shù)據(jù)庫系統(tǒng),但也針對發(fā)展的需求重新調(diào)整了數(shù)據(jù)庫結(jié)構(gòu),增加了數(shù)據(jù)表,改善了數(shù)據(jù)管理模式,使之能夠適應(yīng)新的管理信息系統(tǒng)的要求。
本系統(tǒng)主要包含前臺服務(wù)子系統(tǒng);后臺服務(wù)子系統(tǒng);輔助決策子系統(tǒng);數(shù)據(jù)倉庫支持系統(tǒng);供應(yīng)鏈管理系統(tǒng)等五大模塊。其中前臺服務(wù)子系統(tǒng)在前臺工作站上運行;后臺服務(wù)子系統(tǒng)由系統(tǒng)管理人員操作;輔助決策子系統(tǒng)為領(lǐng)導(dǎo)階層提供決策服務(wù);數(shù)據(jù)倉庫支持系統(tǒng)用來分析歷史數(shù)據(jù),并為高層領(lǐng)導(dǎo)決策提供數(shù)據(jù)支持;供應(yīng)鏈管理系統(tǒng)則提供貨物采購管理。
由于原來的管理信息系統(tǒng)是采用二層C/S結(jié)構(gòu),不利于超市連鎖的擴張帶來的遠(yuǎn)程訪問的需求,同時,由于前臺客戶機性能差異,也帶來了客戶端運行的不平衡性,特別是胖客戶端運行時產(chǎn)生的的大量實時數(shù)據(jù)要經(jīng)過網(wǎng)絡(luò)連接到數(shù)據(jù)庫服務(wù)器,有時還會造成服務(wù)器無法響應(yīng),這些都給超市的經(jīng)營、顧客所購商品的結(jié)算帶來了很大的困擾。
因此,決定引入軟件開發(fā)新技術(shù),采用C/S、B/S三層結(jié)構(gòu),在前臺工作站和高層領(lǐng)導(dǎo)層采用表示層,把原來的業(yè)務(wù)邏輯獨立出來,放置于采用了集群的服務(wù)器中,以方便隨業(yè)務(wù)量擴大而不至于在業(yè)務(wù)應(yīng)用層產(chǎn)生系統(tǒng)計算瓶頸,單獨設(shè)立專用的數(shù)據(jù)庫服務(wù)器,并采用雙機熱備外置磁盤陣列,保證數(shù)據(jù)的相對可靠。
在開發(fā)工具上改用了微軟公司的VISUAL STUDIO .NET+SQL SERVER 企業(yè)版的開發(fā)平臺。在選用開發(fā)工具和方法時主要考慮微軟產(chǎn)品人機界面良好,并具有相當(dāng)?shù)拈_發(fā)基礎(chǔ),同時微軟公司也為企業(yè)計算提供了相當(dāng)?shù)闹С郑谠O(shè)計語言方面也比J2EE平臺采用的JAVA語言具有更多的選擇性。因此,選擇微軟的.NET平臺作為開發(fā)新的管理信息系統(tǒng)的開發(fā)平臺。
在系統(tǒng)開發(fā)中,選用ADO.NET來訪問數(shù)據(jù)庫,使用C#來編寫業(yè)務(wù)邏輯,用ASP.NET書寫WEB表示層,以及用C#書寫前臺工作站的客戶端操作界面。這里前臺工作站采用專用的操作界面不采用WEB瀏覽器的方式,主要是出于工作人員的操作便捷以及相關(guān)應(yīng)用的擴展需要(如:會員卡、預(yù)付費卡、折扣卡等)。
在采用新技術(shù)開發(fā)管理信息系統(tǒng)的過程中,應(yīng)該特別注意一下幾個方面的問題:
(1)三層C/S、B/S結(jié)構(gòu)中,最關(guān)鍵的是中間層的開發(fā),如何實現(xiàn)高效、精簡的中間層組件。
(2)三層結(jié)構(gòu)中,數(shù)據(jù)流量的問題,中間層應(yīng)用服務(wù)器負(fù)載的均衡、服務(wù)器響應(yīng)等問題。
(3)應(yīng)該妥善解決異地連鎖和管理中心的數(shù)據(jù)實時處理問題。
(4)利用軟件開發(fā)新技術(shù)實現(xiàn)高層領(lǐng)導(dǎo)決策分析系統(tǒng)的問題。
在管理信息系統(tǒng)開發(fā)過程中,圍繞上述問題展開技術(shù)攻關(guān),在系統(tǒng)投入使用時解決了大多數(shù)問題,保證了該系統(tǒng)的運行良好。
(1)采用軟件構(gòu)件技術(shù),把業(yè)務(wù)邏輯單獨抽取,并考慮了軟件復(fù)用技術(shù),順利解決三層體系結(jié)構(gòu)的中間層問題。
(2)為解決網(wǎng)絡(luò)流量過大和服務(wù)器響應(yīng)問題,在前臺工作站采用專用客戶端軟件,以降低WEB客戶端占用過多網(wǎng)絡(luò)帶寬問題,同時,采用中間層服務(wù)器集群技術(shù),并采用了負(fù)載均衡技術(shù),在必要時,可以增加中間層服務(wù)器的數(shù)量。
(3)遠(yuǎn)程實時數(shù)據(jù)傳送和處理采用了租借通信公司的光纖通道,配備硬件防火墻等設(shè)備架設(shè)專用的VPN網(wǎng),保證數(shù)據(jù)傳送的快捷、安全和保密性。
(4)利用SQL SERVER 實現(xiàn)數(shù)據(jù)庫倉庫,并開發(fā)適合的數(shù)據(jù)挖掘工具,進(jìn)行數(shù)據(jù)的抽取、創(chuàng)建、分析,最終形成決策分析系統(tǒng),滿足高層領(lǐng)導(dǎo)對超市(購物廣場)運行情況的監(jiān)督和決策。
在利用軟件新技術(shù)對管理信息系統(tǒng)進(jìn)行重新設(shè)計和開發(fā)后,提交的管理信息系統(tǒng)經(jīng)過試運行,基本滿足了該企業(yè)10家門店的連鎖經(jīng)營。在配備了足夠的安全保護(hù)設(shè)備和措施后,該系統(tǒng)也可以提供在因特網(wǎng)上實現(xiàn)在線購物,當(dāng)然,要增加開發(fā)購物網(wǎng)站和利用WEB SERVICE技術(shù)來實現(xiàn)復(fù)雜的商業(yè)功能,對貨品數(shù)據(jù)庫的管理也要更加精準(zhǔn)。 [科]
【參考文獻(xiàn)】
[1]洪志全,徐琳.分布式數(shù)據(jù)服務(wù)中間件實現(xiàn)技術(shù)研究[J].計算機應(yīng)用研究,2003,12(1):46-48.
[2]李敏,周園春,李淼,等.基于DCOM的領(lǐng)域數(shù)據(jù)訪問中間件的研究與實現(xiàn)[J].計算機應(yīng)用研究,2004,6(2):130-131.
[3]吳峰,周宗錫.數(shù)據(jù)訪問中間件及其在管理信息系統(tǒng)中的應(yīng)用.微處理機,2008.29(2):75-77.