【摘 要】分析了基于構件的學生宿舍管理信息系統(tǒng)的主要技術,包括設計模式、基于構件的設計方法等,并對系統(tǒng)進行了設計和實現(xiàn)。
【關鍵詞】構件技術 宿舍管理系統(tǒng) SQL server
1 引言
過去幾年來,軟件復用技術已融入軟件工程建設主流之中。許多軟件設計技術如可視化編程、云計算等為廣大工程技術人員和系統(tǒng)開發(fā)者的首選技術。事實上這些技術和工具提供的開發(fā)環(huán)境,其真正的效益并不在于它們所提供的可視化編程范型,而在于它們對軟件復用的基礎支持。
2 基于構件的學生宿舍管理信息系統(tǒng)
2.1 基于構件的復用系統(tǒng)設計模式
應用軟件系統(tǒng)的開發(fā)過程通常包含需求分析、系統(tǒng)設計、編碼、測試、維護等幾個典型階段。采用軟件復用技術可以有效地避免各應用系統(tǒng)在以上各階段可能出現(xiàn)地重復勞動,其宗旨是應用系統(tǒng)開發(fā)不在一切從頭開始地模式,而以已有工作成果為基礎,充分利用過去開發(fā)時積累的經(jīng)驗和知識(如需求分析結果、設計方案、測試計劃、維護方法等),乃至可直接使用或稍加修改后便可使用的源代碼、功能模塊等。
基于構件的軟件復用系統(tǒng)設計同一般的軟件工程設計過程(如瀑布模型)類似,它主要由以下幾個方面組成:
1.需求分析
由用戶或系統(tǒng)分析員對已有成果進行分析,結合應用系統(tǒng)的特殊要求,在深刻理解用戶需求的基礎上,編寫系統(tǒng)功能和用法的非形式化描述,輸出為需求說明和新產(chǎn)生的可復用知識、規(guī)則等。
2.功能分析
用形式化語言描述系統(tǒng)功能,包括復用部分和可作為可復用構件的部分。輸出為功能說明和可復用構件描述。也可將該過程歸入總體設計。
3.詳細設計
用可復用的構件構造軟件的算法描述。在該階段,針對具體算法還將產(chǎn)生可復用的構件功能級描述,以便生成新的可復用構件。
4.編碼
構造可執(zhí)行代碼,包括直接利用(或修改后)可復用構件,并按構件接口規(guī)則生成新的可復用構件。
5.運行維護
在功能級上進行維護。
6.軟件復用和理解
經(jīng)充分考驗的軟件及設計說明均可作為可復用的構件存庫。
詳細設計和編碼階段,將涉及可復用構件的檢索、修正、組合。在最后階段還將面臨構件入庫的問題。實際上,這正是軟件復用的核心開發(fā)模式,可用如下圖1表示。
入庫前的標識是實現(xiàn)復用的前提,以便在復用時快速檢索到可復用的構件??蓮陀脴嫾目煽啃浴⒄_性是非常重要的,因而在標識后還必須進行嚴格地測試和審查,即對可復用構件進行驗證。入庫前的最后一個過程為分類,即對可復用構件的功能、用法、適用范圍、接口等進行說明性描述,以便為構件檢索提供準備。
2.2 構件的設計方法
基于構件的軟件復用技術不同于以往的各種軟件構造方法,它更著重于可復用構件的檢索與使用方法,即用現(xiàn)有的構件組裝軟件系統(tǒng)??蓮陀脴嫾墨@取是基于構件的軟件復用系統(tǒng)的前提。而從應用領域中設計可復用構件則是系統(tǒng)實現(xiàn)的關鍵。
軟件構件化方式是對具有特定功能的構件對象進行設計與實現(xiàn),就像上圖中“設計可復用的構件”,再將構件對象組合起來生成軟件系統(tǒng)的開發(fā)方式。這種方式如同硬件那樣,是基于面向?qū)ο蟮?、以嵌入后立即使用的即插即用型軟構件的概念為中心,通過構件的有機組合來建立應用系統(tǒng)的技術體系。構件具有可視化、規(guī)格標準化、可立即執(zhí)行等幾大特征,方便使用,可靠性強。
2.3 基于構件的應用軟件系統(tǒng)的體系結構
在軟件工程實踐中,應用軟件系統(tǒng)的開發(fā)一直是一項困難的工作,軟件開發(fā)的主要困難在于系統(tǒng)分析及系統(tǒng)多變性而造成的軟件維護量大。具體而言,存在著需求的不確定性和易變性、可復用性差、編碼工作量大、非形式化、維護困難等問題。因此其直接后果是體系結構設計只是被開發(fā)人員含糊的理解,體系結構的選擇建立在直覺和經(jīng)驗上,而非堅實的工程原則上,難以對體系結構設計做出一致或完整的分析等等。軟件構件化技術被普遍認為是解決這些難題的一個很有前途的解決方案,它是繼面向?qū)ο蠹夹g之后發(fā)展起來的一種新的軟件工程技術。良好的系統(tǒng)體系結構對保證系統(tǒng)的成功起著至關重要的作用,如同高樓大廈一樣,每個軟件系統(tǒng)都有一定的系統(tǒng)體系結構。
2.4 基于構件的學生宿舍管理信息系統(tǒng)總體設計
根據(jù)上述的思路,在這里簡要的分析一下學生宿舍管理信息系統(tǒng)。隨著高校教育計劃的擴充,學校規(guī)模的擴大,越來越多的學生集聚在大學校園里面,以前手工操作的宿舍管理己經(jīng)很不適應學生急劇增加的形式了,于是對學生宿舍進行科學化、規(guī)范化管理迫在眉睫。而基于構件的學生宿舍管理信息系統(tǒng),利用計算機實現(xiàn)了學生基本情況、學生住宿分配、住宿人員管理等。
通過采集信息、調(diào)研、對用戶的需求分析及目前宿舍管理狀況的分析總結出系統(tǒng)包括以下幾個模塊:
(1)宿舍管理模塊
(2)學生基本情況管理模塊
(3)學生住宿分配管理模塊
(4)住宿人員管理模塊
(5)物業(yè)物資管理模塊
(6)后勤人員管理模塊
(7)財務管理模塊
(8)用戶權限管理模塊
系統(tǒng)框架的功能總體設計框架如下圖2所示。
3 基于構件的學生宿舍管理信息系統(tǒng)結構及開發(fā)環(huán)境
3.1 分層結構
系統(tǒng)采用三層結構的計算機體系,其三層結構應用軟件模型如下圖3所示。
第一層,客戶服務層。負責處理與用戶的交互和與應用服務器的交互。它負責實現(xiàn)在客戶系統(tǒng)上的數(shù)據(jù)顯示和操作,以及對用戶輸入作合理性校驗。
第二層,應用層。介于客戶層與數(shù)據(jù)服務層之間,分別與客戶服務層和數(shù)據(jù)服務層交互。它負責接受客戶方應用程序的請求,再根據(jù)應用邏輯將該請求轉(zhuǎn)化為數(shù)據(jù)庫請求后與數(shù)據(jù)庫服務器交互,并將與數(shù)據(jù)庫服務器交互的結果傳送給客戶機的應用程序。
第三層,數(shù)據(jù)服務層。根據(jù)應用服務器發(fā)送的請求,進行數(shù)據(jù)庫操作,為Web服務器和應用服務器提供數(shù)據(jù)信息。
3.2 系統(tǒng)的開發(fā)環(huán)境
系統(tǒng)環(huán)境需求是:PIII500以上CPU,512M以上內(nèi)存,軟件采用Windows2000作為系統(tǒng)及網(wǎng)絡軟件,SQL Server
2005作為后臺數(shù)據(jù)庫管理軟件,C#作為前臺用戶界面開發(fā)軟件。
對軟件的性能指標要求是:人機界面交互反應時間不超過4秒,系統(tǒng)啟動運行不超過15秒,占用內(nèi)存不大于100M,占用外存不大于500M,具有密碼口令驗證安全保密功能。
SQL Server不是一個數(shù)據(jù)庫,它是一個關系型數(shù)據(jù)庫管理系統(tǒng),是用來存儲和管理數(shù)據(jù)庫的引擎。SQL Server是一個作為服務運行的Windows應用程序。這就是說,它要運行在Windows環(huán)境下,并且啟動后需要極少的用戶交互。SQL Server提供了用于建立用戶連接、提供數(shù)據(jù)安全性和查詢請求服務的全部功能。
C#是面向.NET的開發(fā)工具。C#是一種現(xiàn)代的面向?qū)ο蟮某绦蜷_發(fā)語言,它使得程序員能夠在.NET平臺上快速開發(fā)種類豐富的應用程序。.NET平臺提供了大量的工具和服務,能夠最大限度的發(fā)掘和使用計算和通信能力。并且使用C#語言設計的組件能夠用于Web服務,這樣通過Internet,可以被運行于任何操作系統(tǒng)上任何編程語言所調(diào)用。其顯著特點是:簡潔的語法、精心的面相對象設計、與Web的緊密結合、完整的安全性和錯誤處理、版本處理技術以及靈活性與兼容性等。
3.3 系統(tǒng)體系結構
系統(tǒng)采用三層體系結構,其構件體系如圖4所示,橫向即為三層應用,縱向為構件層次。
圖4 系統(tǒng)構件體系
從數(shù)據(jù)相關性的角度來看,構件可分為三類:第一類只與客戶端數(shù)據(jù)有關,與后臺數(shù)據(jù)無關,適合放在客戶端;第二類與客戶端、后臺數(shù)據(jù)均有關,適合放在應用服務器:第三類只與后臺數(shù)據(jù)有關,與客戶端數(shù)據(jù)無關,后者后臺數(shù)據(jù)已滿足構件功能處理的需要,適合放在數(shù)據(jù)庫服務器。
4 基于構件的MIS開發(fā)模型
綜上所述,整個系統(tǒng)的開發(fā)均采用了基于構件的軟件復用思想。通過領域分析技術建立了領域模型和提取構件。在分析了學生宿舍管理信息系統(tǒng)需求文檔的基礎上,抽取出該領域的共同部分即領域模型,將其不變部分做成通用構件,將其可變部分做成知識庫、數(shù)據(jù)庫。通過領域分析,可以做成了以下幾類的通用構件:文檔類,計算類,統(tǒng)計類,查詢類,報表類,計劃類。這幾種通用構件產(chǎn)生后,將它們裝入領域通用構件庫供系統(tǒng)調(diào)用。做好以上幾類領域通用構件后,復用它們,并形成開發(fā)領域的專用構件。
5 小結
本文根據(jù)提出的思想和方法,分析了一個基于構件的軟件復用的學生宿舍管理信息系統(tǒng)。簡要介紹了該系統(tǒng)的總體設計思想和系統(tǒng)組成,并采用三層結構體系構建系統(tǒng)。研究了基于構件的宿舍管理系統(tǒng)體系結構以及構件的分層結構,分析了系統(tǒng)的開發(fā)模型和設計的各構件的功能。從應用角度說明了可復用構件及軟件復用技術在系統(tǒng)設計和快速實現(xiàn)方面所具有的突出優(yōu)勢和強大的生命力。
參考文獻
[1]楊芙清.構件技術引臨軟件開發(fā)新潮流[M].北京:電子出版.2005.2
[2]曹春萍,龔崇棟.基于可復用構件的軟件開發(fā)過程[J].上海水產(chǎn)大學學報.2005.3
[3]賀新聞.基于可復用構件MIS開發(fā)模式探討[J].中國管理信息化(綜合版).2006,(10)
作者簡介:王昌建(1977-),男,遼寧盤錦人,副教授,研究方向為軟件設計與開發(fā)、教育教學方法研究。