林菲菲 吳榮珍
摘要:目前系務(wù)管理借用多個系統(tǒng)進行,導(dǎo)致效率低、交互性不強,數(shù)據(jù)處理帶來了不少的困難,為系部管理人員、教師、學(xué)生提供一個方便、實時的交流和溝通的平臺成為不可忽略的問題,鑒于此,設(shè)計系務(wù)管理系統(tǒng)。系統(tǒng)前臺使用多線程可移植的Java進行開發(fā),后臺采用高效開源的MySQL進行設(shè)計,主要設(shè)計了教師信息、教學(xué)計劃、課程安排、 教材管理、成績管理、畢業(yè)管理、學(xué)生信息變更、班級調(diào)整、學(xué)籍變更、獎懲信息管理等功能模塊。結(jié)果表明,保證數(shù)據(jù)一致性,減少冗余,提高系務(wù)處理效率和管理水平。
關(guān)鍵詞:系務(wù)管理;Java;構(gòu)件;MySQL數(shù)據(jù)庫;信息系統(tǒng)
中圖分類號:TP311? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2024)07-0053-04
開放科學(xué)(資源服務(wù))標識碼(OSID)
0 引言
系作為學(xué)校二級管理機構(gòu),其基本事務(wù)的管理是系部管理工作中的重要組成部分,使用計算機對各種資源進行管理,能夠極大地提高工作效率,也是使各系管理工作趨向科學(xué)化、正規(guī)化的重要前提和手段。目前學(xué)校系基本事務(wù)管理仍是借用學(xué)生管理系統(tǒng)和教務(wù)管理系統(tǒng)進行,這種管理方式效率低、操作復(fù)雜、交互性不強[1],給查找信息、修改和保存數(shù)據(jù)都帶來了不少的困難。開發(fā)一套基于系綜合事務(wù)管理的信息系統(tǒng),為系務(wù)管理信息化提供輔助手段,為教學(xué)/學(xué)生管理人員、教師/輔導(dǎo)員、學(xué)生提供一個交流和溝通的平臺。
1 系統(tǒng)需求分析
系統(tǒng)采用具有分布式與面向?qū)ο?、多線程與動態(tài)性[2]、安全性及可移植等特點的Java作為前臺開發(fā)工具[3],后臺使用速度快、體積小且開源免費的MySQL 數(shù)據(jù)庫管理系統(tǒng)進行開發(fā)[4]。包括教師基本信息管理、教學(xué)計劃、課程教材、成績、畢業(yè)管理、學(xué)生基本信息管理、學(xué)籍變更管理、獎懲信息管理、班級管理等。實現(xiàn)數(shù)據(jù)庫功能如增、刪、改、查、排序、打印及大量原始數(shù)據(jù)自動檢索,提取有用信息進行更高層次的操作功能,減少因復(fù)雜的信息和繁多的項目帶來管理不便,以提高辦公效率。
1.1 功能需求分析
系統(tǒng)的主要功能有:對基本信息進行增、刪、改、查等操作;制定教學(xué)計劃,生成新的課表并刪除舊課表,并對各門課程所使用的教材的管理;對學(xué)生成績、畢業(yè)信息、學(xué)籍變更情況以及學(xué)生獎懲信息等的操作管理;進行用戶管理,使用密碼登錄,進行數(shù)據(jù)庫備份與還原,保證系統(tǒng)的安全。各模塊需求如下:
教師基本信息:對教師信息操作。
教學(xué)計劃:對教學(xué)計劃制定的基本操作。
課程教材:對教師選擇的教材信息進行管理。
課程安排:舊課表的刪除和新課表的生成。
成績管理:包括成績錄入、修改、查詢和學(xué)分統(tǒng)計等操作。
畢業(yè)管理:對學(xué)生畢業(yè)信息的基本操作。
學(xué)生基本信息管理:對學(xué)生信息的基本操作。
學(xué)籍變動管理:對學(xué)生學(xué)籍變動信息的管理。
學(xué)生獎懲信息管理:包括獎勵信息和懲罰信息的操作。
系統(tǒng)管理:包括系統(tǒng)設(shè)置和用戶管理以及數(shù)據(jù)庫維護。
1.2 數(shù)據(jù)需求
系務(wù)管理信息系統(tǒng)是一個綜合管理信息系統(tǒng),所涉及高校管理的兩個最基本的也是最重要的內(nèi)容即學(xué)生和教學(xué),數(shù)據(jù)量大,為了減少冗余,由學(xué)院統(tǒng)一管理的信息就不再涉及,系統(tǒng)需要管理的數(shù)據(jù)僅僅涉及日常管理的一些信息。派生或一些小類信息并未列入其中,主要包括基本信息類、教學(xué)類、學(xué)生管理類等。系統(tǒng)總體數(shù)據(jù)類如表1所示。
各類數(shù)據(jù)需求分析:
基本數(shù)據(jù):在校生和本系教職員工的基本信息,不涉及詳細的信息,避免數(shù)據(jù)冗余。
教學(xué)管理數(shù)據(jù):系內(nèi)教師、外聘教師、兼職教師等的授課信息、課程信息匯總、調(diào)停課、考試安排等。
學(xué)生信息管理數(shù)據(jù):學(xué)生獎懲、學(xué)籍變更、班級管理、學(xué)業(yè)預(yù)警等數(shù)據(jù)。
1.3 系統(tǒng)業(yè)務(wù)流程圖
系統(tǒng)主要是對教學(xué)和學(xué)生信息進行管理,系務(wù)管理信息系統(tǒng)業(yè)務(wù)流程圖,見圖1所示。
教研室主任:根據(jù)制定教學(xué)計劃進行排課,供教師選教材,并把排課和選擇教材匯總數(shù)據(jù)反饋給教務(wù)秘書,教務(wù)秘書將選教材結(jié)果上報校教務(wù)處統(tǒng)一征訂教材,并排課,課程結(jié)束后經(jīng)過考核,錄入成績。
教務(wù)秘書:輸入教師信息,并管理學(xué)生成績,根據(jù)學(xué)生成績確定學(xué)生學(xué)分是否夠,是否準許畢業(yè)。
學(xué)生管理人員:輸入學(xué)生信息、班級信息,及時更新學(xué)生由于退學(xué)、轉(zhuǎn)專業(yè)、休學(xué)等情況發(fā)生的學(xué)籍變更,并告知有關(guān)教師及班主任和學(xué)生管理人員。錄入學(xué)生及班級獎懲信息,以確定學(xué)生是否準許畢業(yè),教師根據(jù)學(xué)生考勤情況,決定是否給予期末考試。
學(xué)生:可以查詢自己在校,獎懲信息、畢業(yè)信息及個人基本信息。系統(tǒng)業(yè)務(wù)流程圖如圖1所示。
1.4 系統(tǒng)用例
1) 教學(xué)計劃用例。教學(xué)計劃管理主要完成教學(xué)計劃的制定、修改、刪除以及根據(jù)教學(xué)計劃對教師進行排課并選擇相應(yīng)的課程教材。教學(xué)計劃用例圖如圖2所示。
2) 成績管理用例。成績管理主要提供成績單的錄入、修改、學(xué)分統(tǒng)計等,并能根據(jù)查詢條件進行成績查詢、打印等功能。
3) 教材管理用例。教材管理主要完成教材選擇和統(tǒng)計功能。
4) 畢業(yè)管理用例。畢業(yè)管理用例完成對學(xué)生畢業(yè)信息的錄入、查詢、修改、統(tǒng)計等操作。畢業(yè)管理用例圖如圖3所示。
5) 獎懲管理用例。獎懲管理用例主要是對在校學(xué)生獎懲信息的錄入、查詢、修改等操作。
2 系統(tǒng)設(shè)計
2.1 功能模塊設(shè)計
本系統(tǒng)分大模塊,12個功能小模塊,分別是:教師信息管理、教學(xué)計劃、課程安排、 教材管理、成績管理、畢業(yè)管理、學(xué)生基本信息、班級管理、學(xué)籍變更信息、獎懲信息等功能模塊。系統(tǒng)功能模塊圖如圖4所示。
2.2 數(shù)據(jù)庫設(shè)計
根據(jù)系統(tǒng)需求分析和系統(tǒng)設(shè)計,選擇一些合適信息單位作為本系統(tǒng)使用基本實體,如學(xué)生、班級、教師、畢業(yè)等,本系統(tǒng)中主要的實體聯(lián)系有教材、成績、變更說明等,系統(tǒng)概念結(jié)構(gòu)設(shè)計(ER圖)如圖5所示。
通過E-R圖向關(guān)系模型轉(zhuǎn)換的方法得到如下數(shù)據(jù)模型。
教師信息:(教工號、姓名、性別、職稱、出生日期、民族、政治面貌、畢業(yè)院校、所學(xué)專業(yè)、學(xué)歷、聯(lián)系電話、E-mail、備注)
教學(xué)計劃:(課程代號、課程名稱、課程類別、理論教學(xué)時數(shù)、實訓(xùn)教學(xué)時數(shù)、總學(xué)時、學(xué)分、學(xué)期周時數(shù))
課表:(課程代號、班級編號、課程名稱、總學(xué)時、教學(xué)起止周、周學(xué)時、課程類別、任課教師、星期一、星期二、星期三、星期四、星期五)
教材:(課程代號、教工號、教材名稱、出版社、單價、作者、書號、課程簡介、是否高職高專教材、備注)
成績:(學(xué)號、課程代號、課程名稱、平時成績、期末成績、總評成績、補考成績、重修成績、備注)
畢業(yè)信息:(畢業(yè)證編號、姓名、班級名稱、畢業(yè)時間、備注)
學(xué)生信息:(學(xué)號、姓名、性別、出生日期、民族、班級、家庭住址、生源地、聯(lián)系電話、電子郵件、備注)
班級:(班級編號、班級名稱、所屬系年級、專業(yè)、學(xué)制、輔導(dǎo)員/班主任)
學(xué)籍變更:(記錄號、記錄對象、變更情況、記錄時間、班級名稱、詳細描述)
獎懲信息:(記錄號、級別、處分對象、記錄時間、詳細描述、是否生效)
變更說明:(學(xué)號、記錄號、變更原因)
獎懲發(fā)布:(學(xué)號、記錄號、班號、獎懲原因)
畢業(yè)證領(lǐng)?。海ó厴I(yè)證號、學(xué)號、領(lǐng)取時間、簽名、備注)
登錄日志:(用戶名、用戶權(quán)限、登錄時間)
系統(tǒng)賬號:(登錄用戶名、用戶口令、用戶權(quán)限)
權(quán)限:(用戶名、登錄用戶名、權(quán)限類型)
根據(jù)本系統(tǒng)的特點,在后臺數(shù)據(jù)庫中建立以下的索引和視圖:
1) 在學(xué)生基本信息表上,建立屬性“姓名”和“年齡”的組合索引。
2) 在成績表中,建立屬性“成績”索引。
3) 教師基本情況表中,建立“職稱”“年齡”兩個索引。
由于在輸出學(xué)生情況和教師教學(xué)情況時會同時,涉及多個表,因此,有必要創(chuàng)建視圖,以簡化數(shù)據(jù)的操作。
1) 教師教學(xué)情況視圖,該視圖所包括的字段有工號、姓名、授課名稱、授課班級、授課學(xué)期、課程性質(zhì)等。所涉及的表有教師基本信息表、教學(xué)計劃表、班級信息表等。
2) 學(xué)生在校情況視圖,該視圖包括的字段有學(xué)號、姓名、總學(xué)分、獎懲名稱、畢業(yè)證書編號等。所涉及的表有學(xué)生基本信息表、成績表、獎懲信息表及畢業(yè)信息表等。
4 系統(tǒng)實現(xiàn)主要技術(shù)
4.1 翻頁查詢小構(gòu)件設(shè)計
主要功能是對系務(wù)管理信息系統(tǒng)較大的表進行全表掃描[5],將每一頁查詢的數(shù)據(jù)控制在一定數(shù)量范圍內(nèi),降低對數(shù)據(jù)庫壓力[6],實現(xiàn)數(shù)據(jù)查詢完整性。實現(xiàn)方法是把翻頁部分抽象成公共腳本,單獨定義各個具體業(yè)務(wù)邏輯。通過定義select函數(shù)、轉(zhuǎn)化函數(shù)及處理函數(shù),以及調(diào)用數(shù)據(jù)持有的容器[7],同時調(diào)用的翻頁查詢構(gòu)件[8],該構(gòu)件具有支持定義翻頁數(shù)量、處理總數(shù)與起始編號、翻頁睡眠時間等功能。
1) 實現(xiàn)的SQL語句代碼如下:
select Items.id= FirstPage - ResulType=com. Items
select from items where Deleted-0
if tests=beginId<>null then
tests= isFirst is true and items.id
order by items.id limit 0;
查詢構(gòu)件主要思路是,首先查詢起始的id,首次可為空,從第二次開始取最后1個記錄的id,并設(shè)置每次查詢的個數(shù),將查詢結(jié)果轉(zhuǎn)化為數(shù)據(jù)處理函數(shù)的參數(shù)、處理結(jié)果保存在數(shù)據(jù)持有容器中。
function
funct ion
Funct ion
Map< Integer, Record> dataContainMap = new HashMap<>();//數(shù)據(jù)持有容器
2) 進行數(shù)據(jù)查詢:
quryParm=(T) new QueryParm( firstPgeId, pagSize, isFirst) ;
quryResu=quryFuntion. apply( quryParm) ;
if (quryResult== null|| ! queyResul. isHasNext())
Then logger . info( logPref ix+" ResulIs NULL OR Empty");
3) 將查詢結(jié)果轉(zhuǎn)化為數(shù)據(jù)處理函數(shù)的參數(shù):
dealPram=tranformFunction . apply( quryResu);
dealPram . setResulContain( resuContain);
IntcurSize=quryResult. getSize() count+=curSize;
4) 對數(shù)據(jù)進行處理:
logger . info( logPrefix+" End, spend:{ }”,System. currentTimeMillis()-start);
4.2 事務(wù)提醒功能的設(shè)計
事務(wù)提醒功能是指系務(wù)日常事務(wù)工作的提醒。包含補考重修考試安排、學(xué)業(yè)預(yù)警通知、休學(xué)復(fù)學(xué)到期通知等的提醒。以保證工作能得到及時的處理。在系統(tǒng)中設(shè)計TRIGGER(inout),同時結(jié)合Java的分布式及多線程技術(shù)特點,業(yè)務(wù)提醒作了并行處理并使用Reminder Thread類開啟提醒線程,設(shè)計一個信息提示二維表,監(jiān)視各事務(wù)到點辦理通知,觸發(fā)一個timer控件不間斷地從消息表里提取數(shù)據(jù),到達設(shè)置時限即觸發(fā)事務(wù)提醒功能。主要代碼如下:
SimpleDateFormat x=newSimpleDateFormat("hh: mm:ss" ); // 從系統(tǒng)獲取時間
Remind r1=new? Remind(time, null, remindMessage); // 創(chuàng)建提醒線程對話框
Thread qThread=new Thread (r1) ;
qThread. start () ;
1) 獲取系統(tǒng)當前的日期時間:
FROMSysDateTime y1=FromnewSysdatetime( YY-MM-DD HH:MM:SS) ;
2) 事務(wù)提醒線程的可視化提示框的創(chuàng)建:
TransaThread X1=new TransaThread(Datetime, NotNull, TransaMessage);
3) 事務(wù)開始:
KTransaThread. start () ;
5 結(jié)論
根據(jù)二級學(xué)院系務(wù)管理實際問題,進行系統(tǒng)詳細設(shè)計并給出實現(xiàn)技術(shù)。通過使用該系統(tǒng),可以實現(xiàn)系務(wù)管理信息化,解決了效率低、操作復(fù)雜、交互性不強、數(shù)據(jù)源獲取困難等問題,減少錯誤率,促進二級學(xué)院各項工作有序開展,提高工作效率。但是,隨著信息化校園的推進,數(shù)據(jù)變得越來越龐大且雜亂無序[6],數(shù)據(jù)的安全性和完整性以及私有庫的設(shè)計等方面還須進一步完善。
參考文獻:
[1] 莊帥,呂波.基于Java設(shè)計實現(xiàn)職工信息管理系統(tǒng)[J].信息系統(tǒng)工程,2022(7):149-152.
[2] 聶旭.B/S架構(gòu)網(wǎng)絡(luò)系統(tǒng)數(shù)據(jù)庫訪問性能提升技術(shù)及其應(yīng)用研究[D].武漢:華中科技大學(xué),2017.
[3] 王梓屹.基于Java的在線家庭體育作業(yè)系統(tǒng)的設(shè)計與實現(xiàn)研究[D].長春:吉林大學(xué),2022.
[4] 唐倩文,陳良育.基于復(fù)雜網(wǎng)絡(luò)理論的Java開源系統(tǒng)演化分析[J].計算機科學(xué),2018,45(8):166-173.
[5] 劉杰,孫浩,郭東旭,等.基于Spring MVC及MyBatis框架的在線教育平臺的設(shè)計與實現(xiàn)[J].沈陽師范大學(xué)學(xué)報(自然科學(xué)版),2019,37(3):268-273.
[6] 王爍宇,張宸豪,肖志仁,等.基于Java的可加密校園即時通信系統(tǒng)設(shè)計與實現(xiàn)[J].電腦編程技巧與維護,2023(8):170-173.
[7] 張軍.基于Java的企業(yè)人力資源管理系統(tǒng)的設(shè)計與實現(xiàn)[J].中國信息化,2022(3):42-44.
[8] 李月萍.職業(yè)院校教務(wù)管理系統(tǒng)的優(yōu)化與創(chuàng)新[J].現(xiàn)代信息科技,2019(12):119-120,123.
【通聯(lián)編輯:唐一東】