文 昕 杜丹蕾 聶 力 韋美雁
農村留守兒童學業預警系統設計與實現
文昕杜丹蕾聶力韋美雁
(湖南科技學院信息工程學院,湖南 永州 425100)
學業預警系統是基于永州市的留守兒童現狀進行深入的調查和分析而研發,系統基于B/S構建,采用JAVA、Vue.js等技術實現。主要功能模塊有系統管理、用戶信息管理、學習數據管理,系統在預警時可依據在線學習數據及考試成績的結果進行預警處理,可促進家校溝通,讓家長及時了解孩子的學業狀況,對留守兒童學習成績提升起到積極促進作用。
留守兒童;預警;JAVA;Vue.js
我國留守兒童的學業問題是當前社會,尤其是教育系統非常關注的一個熱點[1]。據不完全統計,隨著城鎮化建設的加快,農村學生與城市學生的學習成績差距越來越大[2]。造成這種現象的主要因素除了學校的軟硬件之外,還有家庭因素、文化基礎、學習習慣和個人性格等。如何科學系統地分析以上因素的相關性和影響程度,以幫助學校進行教學管理模式改革,加強家校溝通,及時提醒家長孩子學業所存在的問題顯得非常重要。建立一個完善的農村留守兒童學業成績預警系統,結合第三方學習平臺產生的教育數據來進行系統分析是一個很好的解決方案。本文闡述了學業預警系統的研發過程,該系統包括系統管理、用戶管理、學習數據管理三大模塊,旨在促進家校溝通,讓家長及時了解孩子的學業狀況,為留守兒童學習成績的提升起到一個積極的促進作用。
學業預警系統的實現需要基于系統用戶、在線學習數據、考試成績等數據的管理和處理,在一定的數據統計基礎上,更好地對留守兒童學習狀態有合適的描述和表達,因此,系統的功能模塊需要分成三大模塊,即系統管理模塊、用戶信息管理模塊、學習數據管理模塊。詳見圖1系統功能模塊圖。

圖1 系統功能模塊圖
系統管理分三個子模塊,分別是班級管理、課程管理、用戶權限管理。
(1)班級管理。由系統管理員負責班級的添加、修改、刪除,系統管理員可以通過已有的電子表格數據直接導入班級相關學生數據。
(2)課程管理。由系統管理員或相關權限人員負責對課程信息的增刪改查。
(3)權限管理。系統中的用戶設管理員、老師、家長、學生四個角色。用戶權限管理應該具有不同層級權限的角色管理,例如管理員(可分為系統管理員和普通管理員,其中系統管理員權限最高)可以對用戶進行權限分配,老師、學生、家長各自權限不同。普通管理員可以管理相應老師、學生、課程信息;學生可查看自己的信息;家長可查看孩子成績,修改自己的信息。不同角色對應不同業務權限,使系統權限的劃分更加清晰。
管理員可以對教師、學生、家長等用戶信息進行增、刪、改、查;教師可以對他擁有權限的班級學生信息進行查看,學生可以查看自己賬號信息,家長可以查看并修改自己的用戶信息。
(1)在線數據統計。學校若與第三方在線學習平臺合作,系統能根據第三方平臺提供的學習數據進行統計分析,以獲得學生學習過程的一些特性。
(2)成績信息管理。管理員可以對課程信息進行增、刪、改、查,教師對權限內的學生成績在一定時間限度內可以增、刪、改。在提交成績后,可以永久查詢,學生在系統開放后可以查詢成績。
(3)預警管理。系統具有預警功能,管理員可以根據學校的實際情況設置預警方向。一為成績預警,依據考試成績的情況進行預警;二為根據在線學習數據進行數據分析,結合成績進行預警。
對于成績預警,管理員可以根據不同的年級及考試情況,給予不同情況下的預警等級劃分。比如初中、小學的期中、期末考試預警,可以從整體考試結果來進行預警,也可以對一學期中某單科連續不及格情況進行預警等。預警分為三個等級,即一級、二級、三級。
對于有第三方在線學習平臺的學校,給學生家長發送預警時,同時從學生學習效率、學習狀態、學習方法、家長陪伴等方面給予基本的建議和提醒。
系統采用B/S[3,4]架構,運用MVVM(Model-View-ViewModel)框架[5,6]進行設計,MVVM即模型層結構(Model)、視圖層(View)、視圖模型層(ViewModel)。
視圖層(View)主要負責數據的展示以及用戶與系統的交互。通過login、manager、student等系統視圖組件組成,login與regist組件是登錄和注冊的界面組件,其余組件分別代表學生界面組件、管理員界面組件、教師界面組件、家長界面組件,分別對應不同系統角色的交互界面。
視圖模型(ViewModel)層將后端獲取的數據進行轉換做二次封裝生成符合視圖層使用預期的視圖數據模型。視圖模型層與視圖層是雙向數據綁定的,當用戶與視圖層進行交互時視圖層會將交互數據通過雙向數據綁定的方式傳遞到視圖模型層,根據模型層的要求,視圖模型層會對這些交互數據進行處理然后通過Axios工具傳遞給模型層提供的接口。除此之外模型層回傳的數據也會通過接口以JSON數據格式傳遞給視圖模型層,經過視圖模型層的加工處理再通過雙向數據綁定傳遞給視圖層用于展示。
模型層(Model)包括了后端的各種業務邏輯和數據操控,主要工作是圍繞數據庫展開的。視圖模型層傳遞數據或者獲取數據時會根據模型層提供的接口來進行工作。
系統研發過程中后端采用Java、Python語言及SpringBoot、Mybatis、Swagger框架技術;前端運用Vue.js 2.0、Node.js、IViewUI模板,使用Axios對接接口;采用MySQL、Redis 進行數據管理。
客戶機通過WEB瀏覽器向服務器發起訪問請求,服務器對訪問請求解析,將解析后的SQL命令提交給數據庫服務器,由數據庫系統解析命令后將處理結果返回至服務器,然后經過服務器處理后再返回給客戶端。體系結構圖如圖2所示。

圖2 體系結構圖
在用戶與View層進行交互時,與View層對應的ViewModel層會通過雙向數據綁定獲取到用戶與View層的交互數據,然后對其進行處理,并通過Axios工具以請求數據的格式發送到Model層,Model層接受到請求數據后執行對應的指令,然后將數據以JSON的格式返還給ViewModel層,經ViewModel層處理過后在View層根據要求展示給用戶,具體過程如圖3所示。

圖3 MVVM流程結構圖
數據庫設計包括概念模型、邏輯模型、物理模型等設計[7],其目的是為系統設計合適的數據庫,以保證數據的一致性、完整性。本系統概念模型結構如圖4所示。

圖4 系統ER模型
結合系統概念模型和實際所需,系統數據表分為兩大類:用戶類、非用戶類兩個方面。
(1)用戶類主要有管理員、教師、學生、家長,設計數據庫的數據結構時會根據用戶角色的不同設計不同的角色用戶表。以Teacher表(教師表)為例,展示了教師用戶的物理結構,具體如表1所示。

表1 Teacher表(教師)
(2)系統中除了用戶角色還有一些其他的信息表,如課程、班級、測試成績、任教表等,除此之外由于系統采用客戶端渲染,因此還有一個功能表用于存儲各個角色所具備的交互功能,當登錄某個角色用戶時會展示不同的功能。Class表存儲著班級信息,具體如表2所示。

表2 Class表(班級)
(1)用戶注冊登錄功能。用戶注冊登錄功能是為了保證系統功能只有授權用戶才能使用的一項子功能,是用戶實現與系統進行交互的第一個步驟。
當用戶使用賬號密碼、賬號角色登錄后,Signin按鈕綁定的click事件會隨之發生,將輸入框內的數據和選定的賬號角色ID通過Axios工具傳給后臺,由后臺在數據庫內進行搜索判定是否為合法用戶。搜索完后會將結果傳給前端,如果是非法用戶會給出一個error信息,如果是合法用戶則會對該用戶的部分信息進行二次加密,以token的形式傳遞給前端作為其跳轉頁面后使用功能的憑證,前端則會將用戶token保存在Session里,當用戶退出系統后會自動清空Session里的token數據,系統注冊登錄功能流程如圖5所示。

圖5 注冊登錄功能流程圖
(2)成績錄入。教師登錄進入系統主界面,點擊主菜單的添加成績成績按鈕,根據自己的需求在固定選項中選擇對應的考試和課程,然后分別填入要錄入成績的學生學號與成績,最后點錄入按鈕觸發內置的click事件,前端會將錄入的數據打包通過Axios經接口傳給后端,后端對打包數據處理后會形成對應的SQL命令在數據庫內執行,然后將執行結果回傳給前端。
(3)成績查詢。被授權的管理員(班主任等)可以查詢班級成績。成績數據管理功能區共包括兩個部分,一個部分是查詢區。查詢需要有考試類別、年級、班級、時間四個查詢條件,只有當全部選好后點擊查詢才會顯示相應數據。第二部分為數據展示區,當查詢區選定查詢條件點擊查詢后才會展示相應數據,同時對老師只展示與其教授課程對應的科目成績。
(4)預警。管理員在后臺設置好預警觸發條件后,當時機達到時,系統會讀取數據庫中的相關內容,通過發送郵件的方式給學生家長發送預警信息,如圖6的預警功能流程圖所示,初中生以成績不及格課程數3門為界,小學生以2門課程為界。實際操作中,可以根據情況設定預警條件是幾門課程。如果校方有合作在線學習平臺,系統在預警前會讀取根據在線平臺提供的數據分析結果,結合考試成績給出綜合評價。

圖6 學生成績預警功能流程圖
本系統通過使用黑盒測試方法,分別對普通用戶與管理員用戶進行了功能測試,測試了用戶登錄、注冊、數據修改查詢、成績導入、預警等功能,測試結果正常,達到系統設計的各項基本要求。
非功能性測試是針對系統整體運行環境的一種檢測,主要包括操作系統兼容性測試和瀏覽器兼容性測試。非功能性測試是除功能性測試之外另一種加強系統穩定性的測試,對系統的兼容性和瀏覽器的兼容性測試如表3和表4所示。

表3 操作系統兼容性測試用例

表4 瀏覽器兼容性測試用例
瀏覽器中IE11已經過時,不支持很多前端的關鍵詞與特性,在此IE11僅作為一種瀏覽器兼容測試用例對比。
本文針對學生學業預警系統進行了需求分析、系統設計、系統實現和系統測試。預警系統采用B/S架構,MVVM設計模式,利用java、Python技術,vue.js框架以及MySQL與Redis數據管理分別實現了系統管理、用戶信息管理、學習數據管理等。對學生在線學習數據進行統計分析并加以運用到預警中來,促進家校雙方對學生的了解。然而在實現中仍有許多的不足,某些地方考慮尚不夠完善,如在線學習信息的收集與分析還存在一定的差距,本系統僅簡單考慮了學生學習時長、做題速度、學習次數等,對學生學習時的心理狀態并未關注,也并沒有全面分析在線學習產生的大量數據。希望在以后的研發中能夠逐步地完善這些問題。
[1] 潘彤彤. 新時代下農村留守兒童教育問題探究[J]. 才智,2018(10): 88,90.
[2] 孟東吉. 農村和城市中小學生成績差距越來越大?這能說明什么問題嗎?[EB/OL]. https://www.sohu.com/a/471224344_120012569,2017-07-16.
[3] 王利明. 基于 B/S 結合 C/S 結構的高校教務學生管理系統設計與實現[D]. 長春: 吉林大學,2012.
[4] 印明陽. 基于 B/S 結構的學生成績管理系統的設計與實現[D]. 長春: 吉林大學,2015.
[5] 柯小龍,周春國. 基于MVVM架構的解析木信息管理系統的開發[J]. 森林工程,2021,37(1): 18-27.
[6] 朱海萍,丁西,劉鏈. Web前端中基于MVVM框架的技術應用研究[J]. 科技資訊,2020,18(30): 8-10.
[7] 王珊、薩師煊. 數據庫系統概論(第五版)[M]. 北京: 高等教育出版社,2014.
Design and Implementation of Academic Early Warning System for Rural Left-Behind Children
The learning early warning system is developed based on the in-depth investigation and analysis of the current situation of left-behind children in Yongzhou city. The system is constructed based on B/S and adopts JAVA and Vue.js and other technologies. The main functional modules include system management, user information management and learning data management. During early warning, the system can carry out early warning processing according to online learning data and test results, which can promote home school communication, let parents know their children's academic status in time, and play a positive role in promoting the improvement of left-behindchildren's academic performance.
left-behind children; early warning; JAVA; Vue.js
TP311.5
A
1008-1151(2022)01-0012-04
2021-11-21
湖南省教育科學“十三五”規劃2018年度課題“基于教育大數據的湖南農村留守兒童學業預警研究”(XJK18BFZ002)。
文昕(2001-),女,湖南衡陽人,湖南科技學院信息工程學院學生,研究方向為軟件工程。
韋美雁(1974-),女,湖南永州人,湖南科技學院信息工程學院副教授,碩士,研究方向為區塊鏈、智能信息處理、信息安全。