翁小可等
摘要:在許多高校中,每年教師工作業績的收集、統計、審核等工作的工作量巨大而且瑣碎、復雜,每學年需要花費大量的精力來制作維護大量的數據表格。本研究采用Java EE開發語言,依據佛山科學技術學院人文與教育學院的教師工作業績考核管理需求,設計開發一個基于B/S架構的教師工作業績考核管理系統,實現了教師年度的工作業績的錄入、計算、審核、統計、匯總、查詢、導出等核心需求,使教師工作業績考核評價實現信息化、智能化管理,使其更加高效、科學、規范。
關鍵詞:教師工作量;績效管理系統;B/S;MVC
中圖分類號:G434? 文獻標識碼:A? 論文編號:1674-2117(2019)06-0097-05
需求分析
在佛山科學技術學院的人文與教育學院,教師的工作業績統計與審核等工作事務,目前還沒完全實現信息化管理。每一個學年,教師都要自主填寫工作量表,手動計算個人分值。提交到系部后由系部進行初審,人工核對工作量及其得分。系部初審后提交到學院各個業務主管部門分別審核教學、科研、指導學生方面的業績。整個過程繁瑣,工作量大,持續時間長,統計結果容易出錯,相關業績成果無法及時有效地統計、匯總。因此,本研究針對佛山科學技術學院人文與教育學院教師工作業績考核管理中存在的問題與需求,進行個性化定制,設計開發一個基于B/S架構的教師工作業績考核管理系統,實現工作量錄入、計算、審核、統計、匯總、查詢、導出等功能。
功能設計
功能上,依據上述需求分析,從系統用戶角色出發,將系統功能分為三大部分:院級功能模塊、系部功能模塊、教師功能模塊。本系統開發時按各功能模塊獨立進行開發,保證系統各模塊之間較低的耦合程度。各模塊之間有業務需求的時候再通過調用具體內容的代碼進行業務數據操作。系統總體開發柜架如下頁圖1所示。
系統概要設計
1.系統MVC框架設計
本系統采用B/S架構,系統結構分為四層,分別為用戶層、Web層、業務層以及數據處理層。四個層彼此獨立,互相調用相應模塊,保證系統的低耦合性,便于擴展和維護。用戶層是用來瀏覽用戶端即用戶界面的顯示與各種交互操作。Web層用來映射系統用戶同系統服務器之間的交互,Web層的代碼主要用來判斷用戶的業務類型,并調用數據層、業務層的相關操作。業務層用來處理系統中的業務邏輯。數據處理層用來完成對后臺數據庫的操作。后臺數據庫采用中小型系統常用的MySql數據庫。根據MVC思想可以得到如圖2所示的系統服務器與后臺程序處理MVC架構和圖3的服務器客戶端體系結構圖。
2.數據庫設計
數據庫設計是系統開發的重中之重。數據庫設計的過程是根據實際開發需求、用戶需求對系統使用到的數據進行表結構的設計的過程。由于本系統涉及的工作量類型多,數據復雜,設計一個關系明確、易于維護的數據庫至關重要。ER圖是一種認識世界的方法和工具,它提供了表示實體、屬性、聯系的方法。通過ER圖可以對事物進行客觀抽象并得到關系圖。圖4是本系統不同角色之間的ER圖。院級實體對應系級實體是1∶N的關系,院級實體對教師實體是1∶N的關系,系級實體對教師是1∶N的關系,教師對應工作量是M∶N的關系。其他實體的ER圖在此不再贅述。
在設計完ER圖之后,要根據ER圖生成數據庫表結構。隨著系統數據量的提高,對系統的性能也是一種考驗。對表的命名、表屬性的命名,要規范化,做到簡單直觀,同時也要考慮到后期維護人員能簡單理解。根據以上數據庫設計的需求分析,針對整個系統的功能模塊,以及各類數據的特點,本系統定義了數據庫結構邏輯圖和表結構。下頁圖5為部分數據庫表圖。
系統詳細設計
1.前端視圖層
操作主界面的布局采用典型的region布局,分別是頂部LOGO區域、左側導航菜單區域、右側操作界面主區域、下端網站信息區域。前端的布局設計完成之后,前端操作及用戶反饋流程如下頁圖6所示。
2.后端業務層
根據系統的功能分析,確定教師工作業績包含了教學工作量、科研工作量、管理崗工作量、校內公益(服務)工作量等四大模塊,同時加上角色權限的登錄、系部審核對應工作量的模塊、院部審核工作量的模塊等,總共有13個主要模塊。在系統設計過程中,遵循MVC的思想,把系統分為四個分層包:Web包負責與用戶界面進行交互,Util包則是存放一些需要經常調用的工具包,Model層則是模型層,存放對應的實體模型,Dao層則是和數據庫進行數據的交互操作。
不同類型的業績的得分有不同的判斷條件,所以需要教師提交相應的業績。如果數據類型不準確,或者未提交足夠的判斷材料,則無法提交。工作量模塊的反饋流程圖如下頁圖7所示。
關鍵技術與實現
1.Web層交互核心模塊
本系統基于MVC思想開發,Web層起到用戶視圖層與服務器交互的作用,Web層的內容至關重要,需要通過web.xml代碼來布置判斷用戶的操作,并通過servlet進行判斷。在Web層的映射里,每一個
以下是web.xml的部分代碼。
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"這里是調用javaee的一個web包組件。xsi:schemaLocation="http://java.sun.com/xml/ns/javaee//這里是一個路徑地址,一般都是默認安裝,取決于javaee的位置。
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">//這里是調入javaee的web組件版本及ID等屬性,這些必須寫在XML文檔里,編譯的時候才會去找對應路徑的內容實現相應的功能。
通過Web層的處理,再調用后臺的數據處理層,對前臺傳來的數據進行處理、分類。最后再調用數據庫處理層,進行數據庫存儲。存儲前同時調用不同工作量的計算模塊進行計算。并將計算結果一并存入數據庫。以教學工作量的前臺獲取數據為例。
通過轉換為utf-8字符串,再調用提前封裝好的教學工作量對象,對數據進行讀取操作。
2.分數計算的數據處理邏輯實現
分數的計算涉及數據內容的判斷與數據庫的存取。本系統開發中,將各工作量的計算方法抽象成一個對象進行調用。根據面向對象編程的思想,不同工作量的計算調用不同的計算規則。
全院的教師工作量計算要通過不同工作量的表篩選出具體通過審核工作量的內容,并存入隊列中進行循環讀取,并實現加法計算。這里以畢業論文表中數據的讀取與計算為例。具體實現邏輯的代碼如下,注釋的內容為“//”后的內容。其他表的內容讀取也相同,就不做贅述。
工作量單項得分的計算是通過前臺獲取到不同數據之后進行判斷并存儲。同時調用課題計算對象,將前臺數據資料傳入進行判斷。有些數據如整形(int)數據的處理,必須提前判斷是否為空,非空的時候,才調用JAVA的數據類進行處理,將字符串進行轉化,使之對應數據庫的字符類型。計算時,通過調用DAO層的rule規則,不同工作量調用各自的RULE。這里以論文工作量為例進行功能實現的邏輯展示。
在后臺進行具體的數據判斷和結果計算,得到具體分數之后再存入到數據庫。有一些比較復雜的計算,要提前在數據庫處理前進行邏輯判斷。比如說,課題工作量要先根據計算規則,判斷課題組成員的內容,并實現自動填寫。代碼邏輯如下。先新建一個課題對象,再進行臨時的數據存取。通過邏輯判斷,調用工具類,將前臺數據內容進行比較之后,再通過邏輯判斷的結果進行內容的數據庫存儲。
結語
本研究設計開發了教師工作業績考核管理系統,實現了教師年度的工作業績的錄入、計算、審核、統計、匯總、查詢、導出等核心需求,滿足了當前相應部門進行教師業績考核與管理的實際需求。從長遠來看,可以考慮將業績考核管理系統與科研系統、教務管理系統等業務系統對接,實現科研業績、教學業績等的自動導入,進一步提高系統的工作效率。同時,在移動互聯網時代,可以同時開發一個APP或者微信小程序,進一步優化用戶體驗。
參考文獻:
[1]韋婉辰.基于SHH架構的工作量統計系統的設計與實現[D].南寧:廣西大學,2013:3-4.
[2]葛漢強.基于Java EE的輕量級Web應用框架研究與實現[D].武漢:武漢科技大學,2008:1-2.
[3]侯利東.基于J2EE架構的高校教師績效工資管理系統的設計與實現[D].云南:云南大學,2014:7-8.
[4]薛嵐.基于J2EE的高校工作量統計系統的設計與實現[D].南昌:南昌大學,2012:3-4.
[5]賴英旭,劉增輝,李毛毛,等.MVC模式在B/S系統開發中的應用研究[J].微計算機應用,2006,10(3):62-63.
[6]王威.MySQL數據庫源代碼分析及存儲引擎的設計[D].南京:南京郵電大學,2012:3-4.
[7](美)弗蘭納根.JavaScript權威指南(第6版)[M].北京:機械工業出版社,2012:1-4.
[8]劉西杰.HTML CSS JavaScript網頁制作從入門到精通[M].北京:人民郵電出版社,2012:6-8.
[9]相潔.Java語言程序設計[M].北京:人民郵電出版社,2013:8-13.
[10]徐世河.管理信息系統設計教程[M].北京:電子工業出版社,2003:128-133.
[11]郝玉龍.Java EE編程技術[M].北京:清華大學出版社,2013:55-59.
[12]張海藩,牟永敏.軟件工程導論[M].北京:清華大學出版社,2013:149-150.