李方元,裴世保,畢好昌
(1.中國科學(xué)技術(shù)大學(xué),安徽 合肥 230026;
(2.安徽電子信息職業(yè)技術(shù)學(xué)院,安徽 蚌埠 233030)
基于.NET的高校薪酬管理系統(tǒng)的設(shè)計與實現(xiàn)
李方元1,裴世保1,畢好昌2
(1.中國科學(xué)技術(shù)大學(xué),安徽 合肥 230026;
(2.安徽電子信息職業(yè)技術(shù)學(xué)院,安徽 蚌埠 233030)
本文針對高校薪酬管理的實際需求,探討并設(shè)計實現(xiàn)了一個具體的基于.NET框架的網(wǎng)絡(luò)薪酬管理系統(tǒng),重點介紹了系統(tǒng)的需求分析、結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫設(shè)計和主要功能的實現(xiàn)。
薪酬管理系統(tǒng);B/S+C/S;.NET技術(shù)
高校薪酬管理是一項重要而繁雜的日常性工作,政策性強、數(shù)據(jù)量大、變動頻繁,各薪酬項目的錄入、維護、統(tǒng)計、發(fā)放等各環(huán)節(jié)都需要大量的手工勞動,而且極易出錯。隨著計算機技術(shù)的飛速發(fā)展,數(shù)據(jù)庫成為數(shù)據(jù)處理的公用支撐技術(shù),以數(shù)據(jù)庫技術(shù)為核心的薪酬管理系統(tǒng)的應(yīng)用,大大減輕了相關(guān)業(yè)務(wù)人員的工作量,提高了薪酬管理效率,顯示出日益重要的支撐作用。
在技術(shù)路線上,隨著Internet技術(shù)和Web技術(shù)的進步,基于B/S架構(gòu)的MIS系統(tǒng)的開發(fā)變得越來越流行,相對于傳統(tǒng)的C/S架構(gòu),顯示了巨大的先進性。但在系統(tǒng)的人機交互、界面表現(xiàn)、功能定制、響應(yīng)速度和安全控制等方面,C/S架構(gòu)仍然具有B/S架構(gòu)無法替代的優(yōu)勢。從實際應(yīng)用情況來看,只有將主要以數(shù)據(jù)庫為處理對象的統(tǒng)計、分析、控制作為主體的業(yè)務(wù)處理技術(shù)(C/S技術(shù))與采用Web技術(shù)的信息查詢、發(fā)布系統(tǒng)(B/S技術(shù))的有機結(jié)合,才是管理信息系統(tǒng)網(wǎng)絡(luò)化的最佳解決方案。
.NET是微軟推出的支持生成和運行下一代應(yīng)用程序和XMLWeb Services的內(nèi)部Windows組件,是一種面向網(wǎng)絡(luò)、支持各種用戶終端的開發(fā)平臺環(huán)境。概括起來,.NET Framework具有跨語言、跨系統(tǒng)平臺、安全、對開放性互聯(lián)網(wǎng)標(biāo)準(zhǔn)和協(xié)議的支持等優(yōu)點。.NET框架提供的ADO.NET、ASP.NET等組件,使得開發(fā)基于C/S或B/S架構(gòu)的數(shù)據(jù)庫應(yīng)用系統(tǒng)變得更加高效、快捷。
本文通過對高校薪酬管理信息化現(xiàn)狀、未來辦公模式和技術(shù)發(fā)展趨勢的分析,提出建立并實現(xiàn)一套基于.NET架構(gòu)的高校薪酬管理系統(tǒng)。從業(yè)務(wù)層面上看,系統(tǒng)的設(shè)計方式使得薪酬數(shù)據(jù)可以在相關(guān)部門間同步流轉(zhuǎn),并存儲在同一數(shù)據(jù)庫平臺,實現(xiàn)了數(shù)據(jù)的高度共享,對改進薪酬管理模式、提高薪酬管理效率都有很大的促進作用。
開發(fā)高校薪酬管理系統(tǒng)應(yīng)以實際需要為出發(fā)點,以應(yīng)用需求為核心,堅持技術(shù)為應(yīng)用服務(wù)、為管理服務(wù)的思想,薪酬管理系統(tǒng)的開發(fā)應(yīng)能協(xié)助用戶到達以下基本目標(biāo):以統(tǒng)一的電子流程來保障薪酬管理工作的順暢進行,實現(xiàn)數(shù)據(jù)資源的整合與集中管理;建立嚴格的權(quán)限管理機制,給不同用戶賦予不同的薪酬數(shù)據(jù)維護、相關(guān)信息查閱、獲取綜合分析報表的權(quán)限;建立良好的安全與備份、恢復(fù)機制,保障系統(tǒng)及數(shù)據(jù)資料的可靠運行。
1.功能需求
主要包括:教職工個人的基本信息管理和維護,以便于業(yè)務(wù)人員對薪酬級別、標(biāo)準(zhǔn)等進行調(diào)整變動;提供帳套設(shè)置、標(biāo)準(zhǔn)維護、月度發(fā)放等常規(guī)功能;對很多高校設(shè)立的崗位津貼進行單獨的管理和發(fā)放;各種臨時性、一次性收入的管理(如課時津貼、項目獎勵等);支出維護、工資校核、計稅、銀行帳號維護等財務(wù)管理功能;各類薪酬報表的進行統(tǒng)計、打??;對薪酬業(yè)務(wù)人員和教職工個人提供不同的查詢功能和查詢方式;根據(jù)用戶的分類,實現(xiàn)不同的權(quán)限和角色管理;數(shù)據(jù)備份、數(shù)據(jù)恢復(fù)、數(shù)據(jù)優(yōu)化、數(shù)據(jù)清空等各種系統(tǒng)維護功能。
規(guī)劃中的高校薪酬管理系統(tǒng)要實現(xiàn)的主要功能如圖1所示。
2.性能需求
主要包括:操作界面友好,能夠快速、方便地進行各種數(shù)據(jù)維護操作,最大限度地方便用戶的使用;具備高度的數(shù)據(jù)存儲安全性和訪問控制安全性;具備良好的開放性和可伸縮性,必須考慮到將來的應(yīng)用,能夠根據(jù)用戶需求進行結(jié)構(gòu)和功能上的調(diào)整;隨著網(wǎng)絡(luò)應(yīng)用的不斷普及,系統(tǒng)用戶數(shù)量將會逐漸增長,應(yīng)該保證在不影響用戶使用的情況下動態(tài)擴充系統(tǒng)容量,包括硬件的可擴展性和軟件的可擴展性。
根據(jù)用戶對象及其功能需求,將系統(tǒng)從邏輯上分為兩部分,分別進行設(shè)計。一部分面向人事部門和財務(wù)部門的業(yè)務(wù)人員,此部分功能對應(yīng)的用戶數(shù)量較少,但需要維護的數(shù)據(jù)量卻很大,對系統(tǒng)的響應(yīng)速度、交互性和靈活性都有較高的要求,該部分采用三層C/S結(jié)構(gòu)實現(xiàn);另一部分面向校內(nèi)教職工的網(wǎng)上查詢需求,此部分功能對應(yīng)的用戶數(shù)量眾多,但涉及的數(shù)據(jù)量較少,主要是對信息的查詢、收集等,在校內(nèi)任意一臺安裝Browser瀏覽器的計算機上都可登錄本系統(tǒng),故采用B/S結(jié)構(gòu)來實現(xiàn)。
總體上,將系統(tǒng)分為三層結(jié)構(gòu),前端是用戶層,為客戶專用程序(C/S)或瀏覽器(B/S);中間是業(yè)務(wù)層,由應(yīng)用程序服務(wù)器和Web應(yīng)用服務(wù)器實現(xiàn);后端是數(shù)據(jù)層,由數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)管理。
系統(tǒng)的總體結(jié)構(gòu)模型如圖2所示。
1.數(shù)據(jù)表的建立
在高校薪酬管理系統(tǒng)中,各類數(shù)據(jù)表共有20余個,按照業(yè)務(wù)范圍和性質(zhì)分為人事數(shù)據(jù)表、財務(wù)數(shù)據(jù)表和其他必要的數(shù)據(jù)表,包括教職工基本信息表、年度考核信息表、基本工資帳套項目信息表、收入稅率表、臨時收入信息表、銀行帳號信息表、用戶信息表、單位代碼信息表等。限于篇幅所限,下面僅例舉基本工資帳套項目數(shù)據(jù)表的結(jié)構(gòu)和用途。
2.數(shù)據(jù)庫的優(yōu)化
為了使數(shù)據(jù)庫易于使用、維護,方便進行結(jié)構(gòu)擴展,提高數(shù)據(jù)檢索和更新的效率,在初步設(shè)計的基礎(chǔ)上,對數(shù)據(jù)庫進行進一步的優(yōu)化處理。在設(shè)計時主要采用了以下幾種方法:
(1)創(chuàng)建索引。索引是對數(shù)據(jù)庫表中一個或多個列的值進行排序的結(jié)構(gòu),利用索引可以快速地訪問數(shù)據(jù)庫中的信息。
表 基本工資帳套項目信息表
(2)使用事務(wù)。事務(wù)包含了一組完成同一項任務(wù)的數(shù)據(jù)庫操作命令,所有的命令作為一個整體一起向系統(tǒng)提交或撤消操作請求,即要么都執(zhí)行,要么都不執(zhí)行。在系統(tǒng)較為復(fù)雜的業(yè)務(wù)處理過程中引入事務(wù)機制,實現(xiàn)對整個過程的共同提交或回滾,極大地保證了數(shù)據(jù)的完整性和一致性。
(3)建立關(guān)聯(lián)。數(shù)據(jù)庫系統(tǒng)依賴于在兩個數(shù)據(jù)表中找到的匹配值來建立關(guān)聯(lián),進行匹配的值基本上都是主鍵和外鍵。通過建立關(guān)聯(lián),可以提高系統(tǒng)設(shè)計和實現(xiàn)的靈活性,同時還能保證數(shù)據(jù)庫的一致性和完整性。
(4)適度冗余。在數(shù)據(jù)庫設(shè)計中,規(guī)范化的設(shè)計思想一般是盡量減少數(shù)據(jù)冗余來節(jié)省系統(tǒng)資源,提高系統(tǒng)效率。但如果數(shù)據(jù)庫的規(guī)范化程度過高,在一個查詢的應(yīng)用中要經(jīng)常涉及兩個或多個數(shù)據(jù)表的屬性,就必須頻繁地進行聯(lián)接運算,以致影響系統(tǒng)的運行速度。另外,適度的冗余也便于系統(tǒng)的開發(fā)和維護。因此,在保證數(shù)據(jù)完整性和一致性的前提下,我們在數(shù)據(jù)庫的設(shè)計中,對表、記錄、屬性、值等都采取了適度的冗余。
1.系統(tǒng)的開發(fā)環(huán)境
系統(tǒng)開發(fā)環(huán)境為:采用Microsoft Visual Studio.NET 2008作為系統(tǒng)的集成開發(fā)工具;采用C#、JavaScript、HTML作為系統(tǒng)開發(fā)語言;采用Internet Explorer 6.0作為B/S客戶端瀏覽器;采用IIS5.0+ASP.NET作為B/S部分的Web服務(wù)器;采用Windows 2003 Server作為服務(wù)器運行平臺;采用Microsoft SQL Server 2005作為數(shù)據(jù)庫服務(wù)器。
2.系統(tǒng)實現(xiàn)的技術(shù)路線
(1)Microsoft SQL Server 2005存儲管理系統(tǒng)數(shù)據(jù)
SQL Server提供了豐富的編程接口,并且和Windows操作緊密結(jié)合。.NET的數(shù)據(jù)訪問技術(shù)專門針對SQL Server作了擴展,可以實現(xiàn)更高的數(shù)據(jù)存取效率。本系統(tǒng)的數(shù)據(jù)主要指薪酬信息數(shù)據(jù)、用戶信息數(shù)據(jù)和系統(tǒng)維護數(shù)據(jù)。其中用戶信息數(shù)據(jù)、系統(tǒng)維護數(shù)據(jù)可以在SQL Server 2005中直接編輯或從外部數(shù)據(jù)庫導(dǎo)入。薪酬信息數(shù)據(jù)則需要通過用戶登錄系統(tǒng)后,按照相關(guān)的業(yè)務(wù)需求和規(guī)則進行定義、維護。
(2)C#和JavaScript實現(xiàn)客戶端邏輯
本系統(tǒng)采用C/S和B/S混合模式的體系結(jié)構(gòu),其中,C/S部分使用C#語言開發(fā)專門的客戶端程序,供人事部門和財務(wù)部門的業(yè)務(wù)人員維護薪酬數(shù)據(jù),B/S部分使用Internet瀏覽器作為客戶界面,以便于教職工登錄網(wǎng)頁,查詢個人薪酬信息。同時利用JavaScript與HTML編寫客戶端網(wǎng)頁代碼,實現(xiàn)部分客戶端的應(yīng)用邏輯,客戶端腳本就在用戶的本地執(zhí)行,不用提交到服務(wù)器,也不需要刷新頁面,一方面可以提高執(zhí)行速度,提高系統(tǒng)使用的便利性,另一方面可以節(jié)省網(wǎng)絡(luò)帶寬,減輕服務(wù)器的壓力。
(3)ADO.NET組件技術(shù)實現(xiàn)與數(shù)據(jù)庫的交互
系統(tǒng)采用ADO.NET組件技術(shù)實現(xiàn)與SQLServer數(shù)據(jù)庫的交互:首先使用ADO.NET的Connection對象建立與數(shù)據(jù)庫的連接,然后使用Command對象創(chuàng)建操作命令,使用DataAdapter對象從數(shù)據(jù)庫獲取數(shù)據(jù),并保存在DataSet對象中。其中每個DataSet對象可以包含多個DataTable對象的實例,表示對數(shù)據(jù)庫中相應(yīng)表集合的存儲。用戶可以通過斷開連接的方式對表數(shù)據(jù)進行編輯,待所有操作完成后再一起寫回數(shù)據(jù)庫實現(xiàn)更新。在某些簡單查詢界面,使用DataReader對象與數(shù)據(jù)庫建立快速連接的數(shù)據(jù)訪問方式。
(4)ASP.NET技術(shù)創(chuàng)建動態(tài)網(wǎng)頁
本系統(tǒng)B/S部分的主要開發(fā)技術(shù)為ASP.NET,它在系統(tǒng)開發(fā)中起著粘合劑的作用,將客戶端組件、客戶端腳本語言、服務(wù)器端組件、服務(wù)器腳本語言完美結(jié)合在一起。利用ASP.NET提供的豐富的控件可以很方便的創(chuàng)建各種動態(tài)網(wǎng)頁。ASP.NET采用事件驅(qū)動、前臺HTML代碼和后臺代碼分離的機制,使得系統(tǒng)邏輯變得十分清晰,開發(fā)的效率也大大提高,系統(tǒng)地維護也更加容易。
3.系統(tǒng)主要應(yīng)用功能實現(xiàn)
系統(tǒng)有兩種類型的客戶界面,一種是面向業(yè)務(wù)人員的C/S專用程序界面,一種是面向校內(nèi)普通教職工的B/S瀏覽器查詢頁面。前者使用.NET平臺的Windows Form技術(shù)和C#語言開發(fā)實現(xiàn),后者則在ASP.NET平臺上使用C#語言實現(xiàn)后臺代碼,結(jié)合JavaScript、HTML代碼生成動態(tài)網(wǎng)頁。由于用戶需求和數(shù)據(jù)訪問量的差異,這兩種界面的側(cè)重點和實現(xiàn)技術(shù)有很大不同。C/S用戶的數(shù)據(jù)訪問量和維護量較大,界面上使用了大量的DataGrid-View和ComboBox等各種控件,以實現(xiàn)數(shù)據(jù)的表格式修改和各種條件組合的定制功能,滿足系統(tǒng)的交互性、響應(yīng)速度及易用性需求;而B/S用戶的數(shù)據(jù)訪問量及維護量均較小,界面強調(diào)信息的表現(xiàn)形式,由ASP.NET服務(wù)程序調(diào)用后臺的C#代碼,并結(jié)合JavaScript和HTML語言,動態(tài)生成查詢頁面返回給瀏覽器客戶端,只提供少量的編輯與自定義功能。下面為人事檔案信息維護和教職工查詢模塊的部分代碼示例。
(1)人事檔案信息維護
在客戶端與數(shù)據(jù)庫服務(wù)器的交互上,利用ADO.NET對象來實現(xiàn)。本模塊中主要的數(shù)據(jù)訪問流程如下:
(2)教職工薪酬信息查詢
薪酬查詢頁面實現(xiàn)的主要思路是:使用Web控件和HTML標(biāo)記語言進行頁面的布局,在與后臺數(shù)據(jù)庫的交互中,使用ADO.NET對象創(chuàng)建連接,實現(xiàn)查詢請求,實現(xiàn)頁面查詢的數(shù)據(jù)訪問技術(shù)與C/S模式部分類似。
網(wǎng)絡(luò)辦公、移動辦公是未來的辦公模式,成熟的網(wǎng)絡(luò)技術(shù)和數(shù)據(jù)庫技術(shù)為這種辦公模式提供了關(guān)鍵支持,通過網(wǎng)絡(luò)進行業(yè)務(wù)功能和數(shù)據(jù)資源的整合已經(jīng)成為管理信息系統(tǒng)的發(fā)展趨勢。通過建立基于網(wǎng)絡(luò)的高校薪酬管理系統(tǒng),使得薪酬數(shù)據(jù)可以在相關(guān)部門間同步流轉(zhuǎn),并存儲在同一數(shù)據(jù)庫平臺,實現(xiàn)了數(shù)據(jù)的高度共享,對改進薪酬管理模式、提高薪酬管理效率都有極大的促進作用。
[1]冀慶斌.事業(yè)單位薪酬發(fā)放管理系統(tǒng)探討[J].科技情報開發(fā)與經(jīng)濟,2006(16):215-216.
[2]葛海燕.科發(fā)(網(wǎng)絡(luò))新工資系統(tǒng)在高校中的應(yīng)用[J].會計電算化,2005(16):56-57.
[3]李建忠譯.Microsoft.NET框架程序設(shè)計(修訂版)[M].北京:清華大學(xué)出版社,2003.
[4]郭玉峰,師成林.ASP.NET經(jīng)典案例設(shè)計與實現(xiàn)[M].北京:電子工業(yè)出版社,2007.
[5]胡江奕.基于SQL SERVER的數(shù)據(jù)庫應(yīng)用系統(tǒng)性能的優(yōu)化[J].計算機工程與應(yīng)用,2001(2):95-97.
[6]蔣天超,徐嗣鑫.基于三層C/S體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用與實現(xiàn)[J].微機發(fā)展,2002(12):25-27.
[7]http://developer.51cto.com/(開發(fā)頻道--51cto.com)
TP315
B
1673-8454(2012)05-0033-04
(編輯:楊馥紅)