陳凌平
摘要:用網(wǎng)絡化、自動化的離校系統(tǒng)來改進傳統(tǒng)離校方式中存在的問題,是畢業(yè)生離校工作的迫切需要。文章在分析畢業(yè)生離校流程和功能需求的基礎上,重點介紹了建設成都師范學院離校信息管理系統(tǒng)的技術路線和數(shù)據(jù)庫設計,其中以圖書館離校業(yè)務辦理為例,詳細描述了其接口和模塊設計。最后,通過對離校統(tǒng)計數(shù)據(jù)的對比,說明了離校系統(tǒng)的良好應用效果。
關鍵詞:離校信息管理系統(tǒng);數(shù)據(jù)庫物理模型;server接口;Action類
中圖分類號:TP315 文獻標識碼:A 文章編號:1009-3044(2015)31-0045-04
1 建設離校信息管理系統(tǒng)的必要性和總體目標
學院原來傳統(tǒng)的離校流程是先給畢業(yè)生發(fā)放紙質(zhì)離校程序單,然后畢業(yè)生按照離校流程到相應的部門辦理相關手續(xù),辦完后方可離校。這種離校方式的缺點顯而易見:1)畢業(yè)生無論是否符合離校條件,都需要到相關業(yè)務部門蓋章,浪費時間和人力;2)各業(yè)務部門手工操作離校業(yè)務,工作效率低,工作量大,持續(xù)時間長;3)各部門的離校數(shù)據(jù)相互獨立,每年都會出現(xiàn)各部門離校數(shù)據(jù)不準確、不一致的情況;查詢歷史信息困難,生成統(tǒng)計報表工作量較大[4]。為改進上述存在的問題,將傳統(tǒng)的離校辦理業(yè)務放在網(wǎng)絡化和數(shù)據(jù)高度共享的信息系統(tǒng)上來處理就成為十分迫切的需要。
離校信息管理系統(tǒng)涉及畢業(yè)生離校各個環(huán)節(jié),是離校業(yè)務信息化的主要載體。離校業(yè)務辦理信息化的總體目標是:1)通過離校信息化,創(chuàng)新工作理念。離校辦理時間緊,工作量大,需要通過信息技術來改變憑紙質(zhì)辦理離校手續(xù)的傳統(tǒng)模式,將跨部門離校業(yè)務網(wǎng)絡化和自動化,實現(xiàn)各部門的業(yè)務信息自動流轉(zhuǎn)和數(shù)據(jù)共享,基本消除手工操作。2)以此為抓手提高學院管理水平和工作效率,方便畢業(yè)生辦理離校手續(xù)。
2 需求分析
2.1 離校流程需求分析
離校業(yè)務共規(guī)劃了畢業(yè)生離校的17個待辦事項,分別由教務處、圖書館、網(wǎng)管中心等3個職能部門審核,由招就處、保衛(wèi)處、團委3個職能部門進行業(yè)務登記,由各系審核公寓公物情況并發(fā)放畢業(yè)證書。其中,各業(yè)務系統(tǒng)(教務系統(tǒng)、學工系統(tǒng)等)通過數(shù)據(jù)交換平臺將畢業(yè)生學籍、學分、學生違紀受限、圖書借閱、學費繳納、寢室電費等數(shù)據(jù)共享給離校系統(tǒng);教務處負責審核畢業(yè)生學籍注冊、成績、考試/出勤違紀、學費結算等8項,如果全部合格則將畢業(yè)證發(fā)給各系;圖書館審核圖書借閱及歸還情況;網(wǎng)管中心審核學生公寓電費繳費情況;保衛(wèi)處作戶口遷移業(yè)務標記;團委作團組織關系轉(zhuǎn)出業(yè)務標記。在此基礎上,各系結合學生公寓公物清查情況,將畢業(yè)證發(fā)放給學生,離校流程結束。上述審核項中除公寓公物外,由系統(tǒng)根據(jù)后臺數(shù)據(jù)自動計算,當數(shù)據(jù)符合標準,該生離校狀態(tài)自動為“辦理通過”。畢業(yè)生只用到相應部門辦理未審核通過的項目,完成后相關數(shù)據(jù)會實時同步到離校系統(tǒng)中更新離校數(shù)據(jù),離校業(yè)務處理流程如圖1所示。
圖1 業(yè)務流程分析
2.2 功能需求分析
根據(jù)對離校業(yè)務部門的調(diào)研和離校業(yè)務的分析,得到離校系統(tǒng)功能需求如圖2所示。離校系統(tǒng)按功能應分為三大模塊,如圖3所示:
圖2 離校業(yè)務模塊
圖3 離校功能模塊
1)業(yè)務管理模塊主要包括離校管理和離校手續(xù)辦理。離校數(shù)據(jù)管理同步相關業(yè)務數(shù)據(jù)到離校系統(tǒng)(若為EXCEl格式數(shù)據(jù),則手動導入);啟動離校將所選擇班級內(nèi)的所有學生信息作為離校工作的操作數(shù)據(jù);內(nèi)容管理提供離校相關信息發(fā)布和編輯的功能,信息填寫以后,能夠直觀的反應到各個視圖中。離校引擎管理實現(xiàn)離校工作管理元可配置,根據(jù)學校的實際離校業(yè)務情況,靈活的配置學校的離校辦理部門、順序,以及每個部門的辦理的方式、數(shù)據(jù)的來源等內(nèi)容,并且可以配置離校的結束點。離校手續(xù)辦理對離校待辦事項中受限環(huán)節(jié)進行系統(tǒng)自動審核,同時也提供手工辦理功能;對非受限業(yè)務作狀態(tài)標記。
2)門戶展示離校狀態(tài)和離校工作指導等相關信息;對畢業(yè)生離校情況進行統(tǒng)計查詢。
3)系統(tǒng)管理包含用戶管理、角色管理和權限管理。
3 離校信息管理系統(tǒng)的設計實現(xiàn)
3.1 離校系統(tǒng)總體框架
數(shù)據(jù)集成平臺DCI和共享數(shù)據(jù)中心為離校系統(tǒng)提供數(shù)據(jù)支撐,對離校數(shù)據(jù)進行清洗和整合,保證數(shù)據(jù)的一致性、完整性和共享??紤]到離校數(shù)據(jù)來源的多樣性,離校數(shù)據(jù)采集主要采用兩種方式,一種是整合業(yè)務系統(tǒng)的數(shù)據(jù),一種是提供Excel格式的數(shù)據(jù)導入功能。離校系統(tǒng)能夠?qū)δ芎土鞒踢M行配置,可實現(xiàn)對視圖的變化的靈活支持,為學校的離校業(yè)務變遷提供有力支持。離校系統(tǒng)的整體框架如圖4所示。
圖4 離校系統(tǒng)整體架構
3.2 數(shù)據(jù)庫設計
離校系統(tǒng)的數(shù)據(jù)庫是整個系統(tǒng)的核心,該系統(tǒng)的所有操作都是在數(shù)據(jù)庫的基礎上進行的[3]。本系統(tǒng)采用的是Oracle 10g 數(shù)據(jù)庫,數(shù)據(jù)庫設計參照了《成都師范學院信息標準》提供的表字段參考標準以及接口文件,保證了數(shù)據(jù)的統(tǒng)一、規(guī)范,能夠使相關數(shù)據(jù)更加有序流通,避免新的信息孤島的產(chǎn)生,發(fā)揮信息資源的綜合效益。數(shù)據(jù)庫物理模型如圖5所示。
圖5 數(shù)據(jù)庫模型
離校系統(tǒng)直接使用共享數(shù)據(jù)中心庫的離?;A數(shù)據(jù),離校數(shù)據(jù)庫則主要包含學生離校辦理和狀態(tài)相關的數(shù)據(jù)表,比如學生表、學生步驟狀態(tài)表和科目表等。他們的結構分別如下所示:
1)學生表(lx_studentExtend)記錄每位學生的學號、離校業(yè)務流編號、離校狀態(tài)和離校業(yè)務流實例啟動/結束時間等信息,如表1所示。
2)學生步驟狀態(tài)表(lx_studentStepStatus)記錄學生的步驟編號、對應步驟狀態(tài)、操作方式是否自動、操作人和催辦信息等,如表2所示。
3)科目表(lx_step)記錄步驟編號、步驟對應業(yè)務部門編號、步驟處理方法、步驟描述和辦理時間等信息,如表3所示。
表1 學生表(lx_studentExtend)
[字段名\&數(shù)據(jù)類型\&備注\&extUserId\&NUMBER\&學生編號,主鍵\&bmpInstanceId\&VARCHAR(128,0)\&離校業(yè)務流實例編號\&leaveStatus\&NUMBER(1,0)\&離校狀態(tài)\&startDate\&DATE\&離校業(yè)務流實例啟動時間\&endDate\&DATE\&離校業(yè)務流實例結束時間\&barCodeKey\&VARCHAR2(128,0)\&二維碼識別密鑰\&barCode\&VARCHAR2(128,0)\&二維碼\&schoolYear\&VARCHAR2(8,0)\&學年\&createDate\&DATE\&創(chuàng)建日期\&studentID\&NUMBER\&學生學號\&]
表2 學生步驟狀態(tài)表(lx_studentStepStatus)
[字段名\&數(shù)據(jù)類型\&備注\&stuStepID\&NUMBER(9,0)\&學生步驟編號\&stepID\&NUMBER(5,0)\&步驟編號\&extUserId\&NUMBER\&學生編號\&stepStatus\&NUMBER(1,0)\&步驟狀態(tài)\&stepData\&VARCHAR2(1024)\&數(shù)據(jù)\&extend1\&VARCHAR2(32)\&擴展數(shù)據(jù)1\&extend2\&VARCHAR2(32)\&擴展數(shù)據(jù)2\&extend3\&VARCHAR2(32)\&擴展數(shù)據(jù)3\&extend4\&VARCHAR2(32)\&擴展數(shù)據(jù)4\&extend5\&VARCHAR2(32)\&擴展數(shù)據(jù)5\&updateDate\&DATE\&操作時間\&mode_\&NUMBER(1,0)\&操作方式\&userId\&VARCHAR2(64)\&操作人\&callMsg\&VARCHAR2(256)\&催辦信息\&callMsgStatus\&NUMBER(1)\&催辦信息狀態(tài)\&remark\&VARCHAR2(256)\&備注\&]
表3 科目表(lx_step)
[字段名\&數(shù)據(jù)類型\&備注\&stepID\&NUMBER(5,0)\&步驟編號\&departmentId\&NUMBER\&部門編號\&taskDefKey\&VARCHAR2(64)\&任務定義編碼\&stepName\&VARCHAR2(128)\&步驟名稱\&stepAlias\&VARCHAR2(32)\&步驟簡稱\&stepJavaService\&VARCHAR2(256)\&步驟處理方法\&remark\&VARCHAR2(256)\&步驟描述\&dataMeta\&VARCHAR2(256)\&業(yè)務數(shù)據(jù)描述\&order_\&NUMBER(4,0)\&科目排序\&companionTime\&VARCHAR2(128)\&辦理時間\&companionAddres\&VARCHAR2(128)\&辦理地點\&serviceTel\&VARCHAR2(32)\&咨詢電話\&companionMsg\&CLOB\&注意事項\&]
3.3 軟件系統(tǒng)實現(xiàn)
離校系統(tǒng)從邏輯上分為Web 層、業(yè)務邏輯層和數(shù)據(jù)訪問層。Web層給用戶展現(xiàn)應用,業(yè)務邏輯層封裝對具體數(shù)據(jù)業(yè)務邏輯的處理,數(shù)據(jù)訪問層所做事務直接操作數(shù)據(jù)庫,是針對數(shù)據(jù)的增添、刪除、修改、更新、查找等。在三層架構基礎上,采用MVC( Model-View-Controller)模式和Struts+Spring+Hibernate框架技術,Struts基于MVC模式,負責封裝前臺表單和頁面跳轉(zhuǎn); Hibernate是對象關系映射框架,對JDBC進行輕量級的對象封裝,將關系數(shù)據(jù)庫映射為對象數(shù)據(jù)庫,完成數(shù)據(jù)的持久化;Spring用于降低層與層間耦合度,用來幫助管理類以及實現(xiàn)一些業(yè)務無關功能。[1,5]這樣可以實現(xiàn)各層之間的松耦合,從而做到服務和業(yè)務流程可配置和可重構。開發(fā)采用Eclipse集成可視化開發(fā)環(huán)境,集分析、設計、構造( 開發(fā)/編譯/測試/打包) 、部署、測試等于一體,從需求分析、設計到代碼自動生成,均在統(tǒng)一的開發(fā)環(huán)境中完成,實現(xiàn)了開發(fā)過程的自動化、規(guī)范化、標準化,保證了從需求到實現(xiàn)的一致性和可追蹤性。[2]
3.3.1 基本接口設計
1)處理離校業(yè)務的基本server接口為LeaveSchoolBasicManager,如圖6所示,其他server接口必須繼承于它。
圖6 LeaveSchoolBasicManager接口圖
其中autoApproval在離校啟動時,調(diào)用各個部門的自動審批;參數(shù)isSystem表是否是系統(tǒng)辦理;studIds為需要審批的學生id拼接的字符串,格式為(id1,id2,…)。
leaveSchool實現(xiàn)根據(jù)學生id集合,辦理離校業(yè)務;參數(shù)ids為辦理離校的學生Id集合;account為辦理員賬號。cancelLeaveSchool根據(jù)學生id集合,取消離校業(yè)務。
getLeaveSchoolStatus獲取學生在部門辦理狀態(tài);參數(shù)stuId為學生Id;返回值為學生的審核狀態(tài)。
synAutoApproval進行數(shù)據(jù)的同步,在部門為自動審批并且數(shù)據(jù)來源為共享中心時才執(zhí)行。
2)處理離校業(yè)務的Action基類為LeaveSchoolBasicAction,其類圖如圖7所示。處理離校業(yè)務的Action必須繼承于LeaveSchoolBasicAction。
圖7 LeaveSchoolBasicAction類圖
其中方法execute實現(xiàn)獲取當前登錄用戶賬號,并存放在session中;調(diào)用數(shù)據(jù)同步方法,保證用戶看到的最新的數(shù)據(jù);捕獲異常,記錄日志,并顯示到前臺。
方法leaveSchool實現(xiàn)獲取頁面?zhèn)魅氲霓k理學生id集合,并拼裝成list對象;調(diào)用對應部門的離校辦理方法,具體業(yè)務由注入的實現(xiàn)類實現(xiàn);捕獲異常,記錄日志,并顯示到前臺。方法cancelLeaveSchool調(diào)用對應部門的取消離校辦理方法。
3.3.2 模塊設計
離校系統(tǒng)根據(jù)功能及具體業(yè)務流程需求按模塊來進行設計。以圖書館模塊為例,圖書館離校業(yè)務辦理具有以下主要功能:
1)圖書館辦理員可以根據(jù)院專業(yè)、班級、學號、姓名及身份證號碼等作為檢索條件進行數(shù)據(jù)檢索。
2)圖書管理員可以選中一個或者多個學生辦理離校,或者取消離校。
3)離校系統(tǒng)能夠和圖書管理系統(tǒng)中的相關數(shù)據(jù)進行同步。圖書館辦理員可以通過Excel的方式導入需要辦理離校手續(xù)的學生數(shù)據(jù),默認導入的學生都需要到圖書館辦理離校手續(xù)。
4)支持圖書館Excel模板的下載。
5)圖書館辦理員可以在頁面上編輯學生信息。處理流程如圖8所示。
圖8 圖書館處理流程
實現(xiàn)上述功能的類繼承關系如圖9所示。
圖9 實現(xiàn)類繼承關系圖
其中方法autoApproval實現(xiàn)審批傳入的待審批學生集合,把沒有欠書或者欠書數(shù)為0的學生圖書館離校狀態(tài)值修改為1;在離校表中,為當前審批的學生新增或者更新審批記錄;拋出異常。參數(shù)isSystem表是否是系統(tǒng)辦理;studIds為需要審批的學生id拼接的字符串,格式為(id1,id2,…)。
leaveSchool實現(xiàn)修改學生的在圖書館離校狀態(tài)值為1(如果欠書,則不允許修改);更新或者新增學生在離校表中的審批記錄,包括審批時間,審批人賬號,辦理方式等。參數(shù)ids為辦理離校的學生Id集合;account為辦理員賬號。cancelLeaveSchool修改學生的在圖書館離校狀態(tài)值為0。
getLeaveSchoolStatus獲取學生在圖書館部門辦理離校業(yè)務狀態(tài)值。參數(shù)stuId為學生Id;返回true表通過。
synAutoApproval更新不欠書或者欠書數(shù)為0的學生狀態(tài)值。
importData導入欠書的學生名單,修改導入的學生在圖書館離校業(yè)務狀態(tài)值0。參數(shù)excelFile為導入的Excel文件。
4 結束語
成都師范學院離校系統(tǒng)于2013年5月首次上線使用。每年平均為學校4000多畢業(yè)生和8個業(yè)務部門提供離校手續(xù)的辦理和查詢服務。以2014年離校過程為例,4463名畢業(yè)生在每個部門自動辦理環(huán)節(jié)耗時0.0072天,與傳統(tǒng)離校需3天辦理時間比,時間節(jié)省了400多倍。離校辦理中除畢業(yè)證領取和公寓公物檢查外,全??偣怖塾嫗?14畢業(yè)生手工辦理了相關手續(xù),與傳統(tǒng)離校所有部門要手工辦理35000多人次比,效率提高了約86倍。可以看到,使用離校平臺完成離校流程的處理,實現(xiàn)了多個業(yè)務系統(tǒng)的數(shù)據(jù)共享和流轉(zhuǎn),自動分析、處理和審核畢業(yè)生離校過程中必須審核的十余項業(yè)務,優(yōu)化了離校管理審核,提高了處理速度,縮短了辦理時間,工作效率和效果都得到了很大改善,讓廣大師生真正體驗到了“一站式”、“一條龍”、“悄無聲息”的離校管理服務。
參考文獻:
[1] JAVA三大框架SSH和MVC[EB/OL]. (2014-08-23). http://www.thinksaas.cn/group/topic/102171/.
[2] 孫秋瑞, 盧小清. 電子離校系統(tǒng)在高校信息化建設中的實施[J]. 廣西大學學報: 自然科學版, 2011, 36(S1): 289-292.
[3] 董梁. 基于Asp.net的高校離校系統(tǒng)設計與實現(xiàn)[J]. 電腦知識與技術, 2010, 6(24): 6757-6758.
[4] 胡洪新. 數(shù)字校園的離校系統(tǒng)建設[J]. 蘇州市職業(yè)大學學報, 2011, 4(22): 26-28.
[5] 朱亞莉, 劉亞彬. 畢業(yè)生離校事務協(xié)同處理系統(tǒng)的設計與實現(xiàn)[J]. 軟件導刊, 2011, 5(10): 36-38.