秦桂英 王景勝
(常州機電職業(yè)技術學院,江蘇常州213000)
隨著計算機技術的飛速發(fā)展,為提高高校人事管理部門的工作效率,解決傳統(tǒng)管理方式中數(shù)據(jù)一致性差、統(tǒng)計查詢費時費力且易出差錯、報表生成難度大等問題,各高校紛紛采用人事管理系統(tǒng)進行管理。但傳統(tǒng)的高校人事管理系統(tǒng)的開發(fā)技術較為陳舊,體系架構混亂,系統(tǒng)的可維護性及可擴展性較差,用戶操作友好性差,其已不能適應現(xiàn)代信息化發(fā)展的需要。因此,采用ASP.NET和Ajax等技術以及三層架構設計模式開發(fā)高校人事系統(tǒng)是現(xiàn)代教育信息化發(fā)展的需要。
ASP.NET是M icrosoft.NET的一部分,它提供了一個統(tǒng)一的Web開發(fā)模型,以及一種新的編程模型和結構,可生成伸縮性和穩(wěn)定性更好的應用程序,并提供更好的安全保護。使用ASP.NET開發(fā)Web應用程序具有易于寫出結構清晰的代碼、代碼易于重用和共享、可用編譯類語言編寫等特點。
在軟件體系架構設計中,分層式結構是最常見,也是最重要的一種結構。通常意義上的三層架構就是將整個業(yè)務應用劃分為:表現(xiàn)層(UI)、業(yè)務邏輯層(BLL)、數(shù)據(jù)訪問層(DAL)。
(1)表現(xiàn)層(UI):位于最外層(最上層),離用戶最近。用于顯示數(shù)據(jù)和接收用戶輸入的數(shù)據(jù),為用戶提供一種交互式操作的界面。表示層一般為Windows應用程序或Web應用程序。
(2)業(yè)務邏輯層(BLL):該層是系統(tǒng)架構中體現(xiàn)核心價值的部分,針對具體問題的操作,也可以說是對數(shù)據(jù)層的操作,對數(shù)據(jù)業(yè)務邏輯處理。
(3)數(shù)據(jù)訪問層(DAL):該層所做事務直接操作數(shù)據(jù)庫,針對數(shù)據(jù)的增添、刪除、修改、更新、查找等。
使用三層架構開發(fā)應用程序的優(yōu)點:
1)開發(fā)人員可以只關注整個結構中的其中某一層;
2)可以很容易地用新的實現(xiàn)來替換原有層次的實現(xiàn);
3)可以降低層與層之間的依賴;
4)有利于標準化;
5)有利于各層邏輯的復用。
高校人事管理系統(tǒng)的主要功能包括:教師信息管理、人才引進管理、職稱評定管理、教師培訓管理、教師評優(yōu)管理、信息管理、意見建議反饋管理、系統(tǒng)設置、郵件通知等功能,系統(tǒng)功能結構如圖2所示。
高校人事管理系統(tǒng)結構復雜,而且常常需要添加新的功能模塊,為了使得高校人事管理系統(tǒng)邏輯結構清晰,提高系統(tǒng)的開發(fā)效率、降低維護成本、提升軟件的可維護性和可擴展性,高校人事管理系統(tǒng)框架結構采用三層架構設計,主要分為表現(xiàn)層、業(yè)務邏輯層、數(shù)據(jù)訪問層。同時為了適應不同數(shù)據(jù)庫環(huán)境,使系統(tǒng)支持多種數(shù)據(jù)庫訪問,在數(shù)據(jù)訪問層使用抽象工廠設計模式。系統(tǒng)運行時,由數(shù)據(jù)工廠決定使用不同的數(shù)據(jù)訪問模塊訪問多種數(shù)據(jù)庫。高校人事管理系統(tǒng)架構設計如圖3所示。
在高校人事管理系統(tǒng)架構圖中,虛線邊框的圓角矩形表示解決方案中的項目,直角矩形表示完成特定功能的重要類,實線邊框矩形表示分類模塊,圓柱體表示數(shù)據(jù)庫。
(1)表現(xiàn)層設計
在表現(xiàn)層WebUI中Security是系統(tǒng)安全驗證的主要類,并且它調用IProfile接口來取得數(shù)據(jù)庫中的信息。
表現(xiàn)層中CommonWebUI項目內置了一些常用的類,使用Response.W rite語句返回客戶端的javascript語句模板。CommonWebUI項目使開發(fā)人員在編寫表現(xiàn)層代碼的時候不必重復書寫javascript語句和也不必關心javascript的語法。
表現(xiàn)層中WinUI項目主要完成對教師相關資料的導入工作。考慮到使用普通的C/S結構,客戶端和服務器端之間可能需要跨防火墻,同時為了提高代碼重用率,采用WinUI調用Web Service的方式來完成教師信息導入的功能。
(2)業(yè)務邏輯層設計
業(yè)務邏輯層中,BLL項目中包含高校人事管理系統(tǒng)的所有業(yè)務邏輯的處理,它調用IDAL項目中對應的數(shù)據(jù)庫處理類來進行數(shù)據(jù)庫的訪問。EmailNotify項目為郵件通知模塊,當業(yè)務邏輯層BLL中完成了相關的申請或審核時,Email-Notify會收到業(yè)務邏輯層BLL發(fā)來的通知,此時EmailNotify從IProfile進行個人設置的查詢,確定是否將郵件加入郵件隊列等待發(fā)送。
(3)數(shù)據(jù)訪問層設計
數(shù)據(jù)訪問層由數(shù)據(jù)工廠來決定接口的實現(xiàn)。數(shù)據(jù)工廠ProfileFactory和DALFactory使用工廠模式,工廠內使用反射機制,從Web.config讀取配置信息,根據(jù)配置信息使用反射機制加載對應的數(shù)據(jù)庫訪問的程序集。在數(shù)據(jù)工廠中選擇不同程序集完成對不同數(shù)據(jù)庫訪問接口實現(xiàn)。
數(shù)據(jù)訪問接口IDAL由DALFactory決定是由SQLServer DAL還是MySQLDAL實現(xiàn)。DBUtility項目中包含了SQL SERVER和MYSQL的數(shù)據(jù)庫操作。
表現(xiàn)層、業(yè)務邏輯層和數(shù)據(jù)訪問層中,使用Model項目中的業(yè)務實體進行數(shù)據(jù)傳遞。此架構使得程序邏輯結構清晰,大大減弱了模塊之間的耦合,系統(tǒng)上層只需要關心他需要的服務,不必關心服務是如何實現(xiàn)的,各模塊各職其責,分工明確,從而提升了高校人事系統(tǒng)各模塊的獨立性,同時使得系統(tǒng)更加可靠。
ASP.NET是一種建立在通用語言上的程序構架,以其作為技術平臺,結合三層架構的軟件設計體系,使開發(fā)者能夠更專注于應用程序的業(yè)務邏輯的開發(fā)。基于ASP.NET和三層架構體系開發(fā)的高校人事管理系統(tǒng),可以克服傳統(tǒng)高校人事管理系統(tǒng)的缺點,同時也大大提升了系統(tǒng)的可維護性和可擴充性,縮短系統(tǒng)的開發(fā)周期。
[1] 李克勛.教職工信息系統(tǒng)在高校人事管理中的應用[J].安徽大學學報(自然科學版),2001,(04).
[2] 韓堅華.高校人事管理信息系統(tǒng)的研究與開發(fā)[J].計算機工程與應用,1996,(03).
[3] 張計龍.基于改進MVC的高校人事管理系統(tǒng)[J].計算機工程,2004,(08).
[4] 王軍.基于ASP.NET的辦公自動化系統(tǒng)設計與實現(xiàn)[J].科技咨詢導報,2007,(15).
[5] 梁西陳,朱水源.基于.NET的高職院校教師信息管理系統(tǒng)研發(fā)[J].宿州教育學院學報,2009,(01).
[6] 毛銳,趙季中.基于ASP.NET的旅游監(jiān)管系統(tǒng)的設計與實現(xiàn)[J].微計算機信息,2008,(24).