姚居文
(新疆農業職業技術學院,新疆昌吉 831100)
職業院校技能大賽作為我國職業教育的一項重要制度設計,與職業教育發展緊密相連,每年舉辦的職業院校技能大賽是各個職業學校展示自己的管理水平、專業師資水平、技能訓練水平的重要平臺[1]。大賽對職業院校辦出特色、辦出水平的引領作用日益凸顯[2]。
省級職業院校技能大賽是面向全區職業院校的比賽,通過網上報名可大大提高報名等相關工作的工作效率,同時通過網上報名,可實現參賽院校隨時查看報名信息,查看比賽成績等,也可為省級管理部門提供較好的數據分析和決策依據。
通過對職業技能大賽主管部門下發的文件以及賽事章程的研究,為方便各參賽院校使用系統,決定采用基于B/S架構(Browser/Server,瀏覽器/服務器模式)開發模式研發職業院校技能大賽賽務管理系統,該系統主要核心模塊包括:職業院校報名、院校報名信息查詢、賽點院校通知發布、賽點院校信息統計、賽點院校裁判信息統計、賽點院校成績錄入、賽點院校優秀工作人員錄入等功能。
按照信息管理系統(MIS)開發流程,在系統開發前期,進行系統立項、可行性分析、系統分析、系統設計等工作,最終確定系統整體技術架構,前端開發框架采用Lay UI,后端開發框架采用Spring Boot編碼語言為Java,數據庫采用MySQL數據庫,系統中間件使用Tomcat。
本系統用戶主要分為以下幾個角色:參賽院校用戶、賽點院校用戶、省級管理員用戶。參賽院校用戶主要權限包括用戶的登錄,報名信息刪除修改等;賽點院校用戶除報名參賽外,還可以對本校承辦賽項各報名信息進行統計分析;省級管理員用戶作為系統最高管理者,可以查看相關報表信息,全區報名情況等。
1.2.1 參賽院校功能需求
參賽院校用戶主要有以下功能:
1)用戶注冊:在院校首次使用系統,需先進行注冊,其中注冊內容包括:院校名稱下拉選擇,登錄賬號、登錄密碼、院校聯系人,聯系人聯系方式等,為了減少數據的冗余,每所院校只能注冊一個賬號,在注冊時系統會判斷數據庫是否存在數據,如存在進行重復性提示。
2)院校報名:在院校注冊賬號后,用戶根據注冊的賬號可登錄系統。登錄系統,在“院校報名”頁面進行報名。院校報名頁為提高用戶操作性,系統常用的內容(參賽組別,參賽級別,參賽項目),盡可能采用了下拉框的形式進行,參賽隊員信息采用輸入框形式,同時系統會對相關錄入的內容進行校驗(手機號校驗,郵箱號校驗,證件號校驗)。
3)報名信息修改與刪除:在技能大賽報名過程中,會存在錄入錯誤的可能性,參賽人員信息也會存在變動的情況,為了降低開發與維護人員修復與更改數據的復雜性,系統提供了數據修改與刪除功能。相關院校注冊后,通過選中相關錯誤記錄進行數據的修改刪除操作,大大提高了系統的便利性。
4)成績與獲獎查詢:在比賽結束后,參數院校可以在報名系統中查看成績與獲獎信息。
1.2.2 賽點院校功能需求
1)用戶注冊:賽點院校是指舉辦賽事的院校,通常情況下區內職業院校根據自身實際情況來申請承辦賽項,由賽事主管部門進行審批。賽點院校的賬號由管理員進行分配,此類賬號和參賽院校相比操作系統權限不同。
2)院校報名:賽點院校同時可以參加比賽,賽點院校報名權限與參賽院校報名權限保持一致。
3)報名信息修改與刪除:賽點院校在報名后也可以進行相關信息的修改與刪除,賽點院校報名信息修改、刪除權限與參賽院校保持一致。
4)賽點通知發布:賽點院校承辦賽項,在賽事準備過程中,會持續更新賽項通知,以此來告知相關的參賽院校如何備賽,該功能只有賽點院校賬號能進行訪問,參賽院校賬號無權訪問該功能頁面。
5)賽點院校統計:職業技能大賽作為一個省級賽事,參賽隊伍及人數較多。為方便賽點院校的統籌管理,確定每個賽項的參賽隊伍的吃、住、比賽場地的安排,賽點院校統計功能就非常重要,該統計可實時統計出不同賽項的參賽隊伍,參賽人數。賽點院校可根據相關數據進行合理安排。
6)裁判與工作人員錄入:在賽點院校承辦的比賽中,不同的賽項會有不同的裁判與工作人員,通過系統錄入相關人員的基本信息,一方面方便管理另一方面在后期評優中只能在錄入系統的人員進行選擇,提高了賽事信息的規范性。
7)優秀裁判與工作人員錄入:為提高相關人員工作的積極性,在比賽結束后會針對不同賽項,賽點院校根據實際情況評選出優秀工作人員以及優秀裁判,并在系統中錄入。主管部門通過系統獲取相關優秀人員信息,公示后,頒發榮譽證書。
1.2.3 省級管理員功能需求
1)大賽報名信息匯總查詢:省級管理員對于系統核心需求是要隨時能夠查看各個賽點的報名情況,其次是對不同賽項,參賽組別,參賽級別等形成報表數據進行決策。該信息匯總查詢功能滿足了省級管理員對各項數據匯總統計的需求。
2)主頁通知發布:為提高政策信息的及時性,省級管理員可以通過系統后臺進行政策信息的發布(PDF附件上傳等形式),用戶在報名系統可以預覽下載最新的通知文件。
1.2.4 性能需求
院校報名需要在規定時間內完成,在實現核心功能之余還需保證系統的可靠性、穩定性、安全性等性能,在界面設計采用簡潔的設計元素,方便用戶理解操作,保證用戶能正常完成相關賽事報名。
在系統結構層面采用B/S架構模式(瀏覽器/服務器模式),采用Lay UI為前端框架,采用Spring Boot為后端框架,采用MySQL為后端數據庫。
常見的系統架構分為兩種:B/S架構與C/S架構,B/S架構相比C/S架構而言業務擴展簡單,維護方便,只要有瀏覽器就可以訪問系統進行相關業務處理;前端框架種類眾多,本系統選用Lay UI作為前端框架,Lay UI更多是面向后端開發者,無須涉足前端各種工具,只須面對瀏覽器本身;在后端框架選擇上,本系統采用當下比較流行的微服務框架Spring Boot,Spring Boot是基于Spring框架開發的全新框架,其設計目的是簡化開發過程,Spring Boot整合許多框架和第三方庫配置,提供依賴啟動器簡化構建配置,極大地簡化XML配置,直接嵌入Tomcat等服務器,可快速構建Spring應用[3];在數據庫層面,采用MySQL作為系統數據庫,其主要優勢在于使用成本低,運行速度快,MySQL體積小,命令執行的速度快。
在數據庫層面,共設計6張數據表,分別是:edu_school_user(用戶資料表),edu_school_match_info(參賽信息表),edu_match_referee(裁判信息表),edu_school_detailed(院校參數表),edu_match_detailed(賽事參數表),edu_match_release(賽點參數表),在6張數據表中核心表,如圖1所示。

圖1 關系圖
院校在首次使用系統,需先進行注冊,注冊信息寫入edu_school_user(用戶資料表),注冊后登錄系統,根據系統提示完成技能大賽參賽信息的填寫,參賽信息寫入edu_school_match_info(參賽信息表),根據school_name字段作為條件可查詢出院校參賽信息。賽點院校登錄后,根據edu_match_release(賽點參數表)與edu_school_match_info(參賽信息表)聯合查詢,可以統計出賽點各賽項報名信息。
系統開發工具采用IntelliJ IDEA(以下簡稱IDEA),IDEA是一款強大的Java代碼編譯工具,前端后端包括數據庫都可以通過IDEA來編寫,為提高系統效率加入Redis緩存機制,通過Shiro安全框架實現權限控制。
系統核心模塊包括:賬號注冊模塊、院校報名模塊、報名信息查詢模塊、賽點院校通知發布模塊、賽點院校信息統計模塊、賽點院校裁判信息統計模塊、賽點院校成績錄入模塊、賽點院校優秀工作人員錄入模塊等。
院校在首次使用系統時,需進行賬號注冊,院校名稱通過下拉框進行選擇,下拉框內容由管理員事先維護在參數表中。在注冊界面中錄入用戶名、賬號、密碼、聯系人、聯系方式后提交,相關數據將保存在用戶資料表中,界面如圖2所示。

圖2 注冊界面
3.3.1 院校報名模塊
院校登錄后,進入院校報名界面。在報名界面中,用戶可以根據需要選擇相關賽事的參賽組別(學生組,教師組)、參賽級別(中職,高職)、參賽項目(參數庫獲取),同時需要錄入相關的參賽隊員的基本信息包括姓名與身份證號。不同賽事有團隊賽個人賽之分,系統會根據參數表中配置信息動態生成提醒信息,界面如圖3所示。

圖3 報名界面
3.3.2 報名信息查詢模塊
院校在完成報名后,可在報名信息頁面進行查詢,展示字段為用戶在報名頁面錄入的信息,用戶可通過選中單條記錄進行刪除或修改操作,本頁面所有數據都可導出為Excel文件,界面如圖4所示。

圖4 信息查詢界面
3.3.3 賽點院校通知發布模塊
賽點院校是承辦各類賽項的院校,所以會對外公布各類比賽的比賽章程,賽點通知發布頁面為賽點院校提供相關功能,賽點可以將相關附件進行上傳,同時如果出現上傳錯誤的情況,也可在本界面進行刪除,界面如圖5所示。

圖5 賽點通知發布界面
3.3.4 賽點院校信息統計模塊
賽點院校是承辦各類賽項的院校,賽點要根據各個賽項報名情況合理安排比賽場地、住宿場所等,所以詳細的統計報表非常重要。在賽點統計界面,清楚明了地展示各個賽項報名情況,方便賽點院校進行決策,界面如圖6所示。

圖6 賽點院校統計界面
3.3.5 賽點院校裁判信息錄入模塊
在賽事舉辦的過程中,必不可少的是裁判信息與工作人員信息,通過對相關通知文件的研究,在比賽結束后,須評選出優秀裁判以及優秀工作人員,為保證公平公正,所有評優人員需在比賽前錄入系統中,評優人員只能在錄入系統的人員中進行選擇。界面如圖7所示。

圖7 賽點裁判信息錄入
3.3.6 賽點院校成績錄入模塊
比賽結束后,賽點院校要根據比賽情況,將各參賽隊伍比賽成績錄入系統。為提高系統可操作性,在成績錄入界面,盡可能采用下拉框與選擇框的形式,方便用戶操作。比賽成績需用戶自行錄入,成績輸入框系統預先進行權限設定,只能數字錄入。參數院校登錄系統后在院校報名信息頁,可查詢各個賽項成績以及獲獎情況,界面如圖8所示。

圖8 賽點院校成績錄入
3.3.7 賽點優秀工作人員錄入模塊
工作人員共分兩種類型(賽點,賽項)。賽點工作人員指服務賽點的人員,統籌各個賽項不服務具體賽項,職能包括統籌安排各賽項場地、人員住宿等。賽項工作人員指服務具體某一項比賽,職能包括帶領參賽隊伍進入比賽場地,核算成績等。界面如圖9所示。

圖9 賽點院校成績錄入
3.3.8 系統部署
在系統部署方面,考慮到系統的安全、成本、性能等方面因素,采用騰訊云輕量級應用服務器,操作系統采用的Linux(CentOS 7.6 64bit)系統,硬件配置采用1核CPU,2GB內存,40G SSD硬盤,考慮到系統服務全區內職業院校,為保證系統訪問效率,服務器帶寬為10Mbps。在項目部署時需要在服務器安裝好Java環境,MySQL數據庫,Redis等,同時根據實際情況將本地項目打包為Jar包,通過FTP工具上傳到騰訊云服務器。通過遠程登錄工具訪問Linux服務器,進入Jar包同級目錄下,鍵入nohup java-jar包名.jar&命令,即可啟動項目,部署簡單。
系統測試,是對整個系統的測試,將硬件、軟件、操作人員看作一個整體,檢驗它是否有不符合系統說明書的地方。系統功能性測試主要測試各功能點是否存在錯誤,各功能點是否滿足預期需求。系統安全測試主要測試安全措施是否完善,保證系統不受非法侵入。
系統功能性測試,主要作用為能保證系統各個功能點正常運行,系統軟件測試分為α測試與β測試,具體測試功能點如表1所示。

表1 功能性測試
軟件安全性測試是保護管理系統安全的一道重要防線,只有系統安全,系統穩定運行才能夠保證業務正常開展。職業院校技能大賽賽務管理系統數據涉及用戶個人敏感信息,要盡可能保障系統的數據安全,因此,做好系統的入侵檢測,攻擊入侵非常必要[4]。本系統主要通過以下幾個方面來展開測試,具體如表2所示。

表2 安全性測試
本文基于當前流行的Spring Boot微服務框架,實現職業院校技能大賽報名系統。該系統基于B/S(瀏覽器/服務器模式)架構模式,通過2021與2022年全國職業技能大賽自治區選拔賽的實踐應用,證明了系統的安全性,穩定性,方便性。據不完全統計,2021年全國職業技能大賽自治區選拔賽共設置了93個競賽項目,涉及24個專業大類/類,全區兵地共有160所職業院校參加了比賽,報名參賽學生人數達到2700余人,教師組參賽700余人,2022年通過該系統報名人數已達到5000余人。該系統的上線,對領導而言通過查看報名數據,能決策預判哪些賽項參與度較高,哪些賽點院校工作完成效果較好,對院校而言通過信息化的手段,大大提高了工作效率。該系統的上線,在當前職業技能大賽的報名和成績管理工作中,具有實際的應用推廣價值[5]。