賈震斌 徐芳 王宇 李雨辰 謝艷朋
摘? 要:在對(duì)大學(xué)生體質(zhì)健康測(cè)試工作現(xiàn)狀調(diào)研和分析基礎(chǔ)上,研究了大學(xué)生體測(cè)工作中數(shù)據(jù)錄入、采集、分析的信息化流程,提出采用計(jì)算機(jī)后端數(shù)據(jù)服務(wù)系統(tǒng)處理前端APP錄入數(shù)據(jù)的設(shè)計(jì)路徑,報(bào)告了后端服務(wù)子系統(tǒng)中系統(tǒng)和用戶(hù)管理、數(shù)據(jù)管理模塊的數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)服務(wù)接口實(shí)現(xiàn)方式,描述了數(shù)據(jù)分析可視化設(shè)計(jì)步驟,展望了后端數(shù)據(jù)服務(wù)系統(tǒng)改進(jìn)方向。
關(guān)鍵詞:大學(xué)生體測(cè);數(shù)據(jù)處理;后端服務(wù);系統(tǒng)設(shè)計(jì)
中圖分類(lèi)號(hào):TP311? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2021)16-0001-05
Design of Back-end Data Service Subsystem for College Students Physical Health Testing System
JIA Zhenbin, XU Fang, WANG Yu, LI Yuchen, XIE Yanpeng
(Suzhou Vocational University, Suzhou? 215004, China)
Abstract: Based on the investigation and analysis of the current situation of college students’ physical health testing, this paper studies the informatization process of data entry, collection and analysis in college students’ physical testing, proposes the design path that uses the computer back-end data service system to process the data entered by the front-end APP, reports the data structure of system,user management,data management module in the back-end service subsystem, and the implementation mode of data service interface,describes the visualization design steps of data analysis,, and looks forward to the improvement direction of back-end data service system.
Keywords: college students physical testing; data processing; back-end service; system design
0? 引? 言
大學(xué)生體質(zhì)健康測(cè)試是我國(guó)高校貫徹《中華人民共和國(guó)體育法》和《全民健身計(jì)劃綱要》的重要舉措,旨在通過(guò)對(duì)大學(xué)生進(jìn)行體質(zhì)測(cè)定,評(píng)價(jià)體質(zhì)狀況和體育鍛煉效果,督促大學(xué)生參加體育鍛煉的有效機(jī)制,增強(qiáng)大學(xué)生體質(zhì)。
我校體測(cè)工作的現(xiàn)狀是:(1)由體育部按班級(jí)組織體測(cè),由負(fù)責(zé)體測(cè)老師在測(cè)試現(xiàn)場(chǎng)邊測(cè)試邊記錄學(xué)生體測(cè)成績(jī);(2)體測(cè)現(xiàn)場(chǎng)成績(jī)記錄在紙質(zhì)表格上,事后再由老師手工輸入電腦并人工核對(duì)數(shù)據(jù)后再上傳至國(guó)家體質(zhì)測(cè)試中心。
上述現(xiàn)狀主要存在以下問(wèn)題:(1)現(xiàn)場(chǎng)手工記錄體測(cè)成績(jī)方式具有工作量大、效率低、易出錯(cuò)的弊端;(2)現(xiàn)場(chǎng)紙質(zhì)記錄體測(cè)成績(jī)方式無(wú)法做到快速整理、登錄、公布測(cè)試成,學(xué)生無(wú)法及時(shí)了解自己的體測(cè)狀成績(jī)。(3)體測(cè)工作面廣量大,情況復(fù)雜,難以及時(shí)統(tǒng)計(jì)發(fā)現(xiàn)學(xué)生缺測(cè)、漏測(cè);(4)大量體測(cè)數(shù)據(jù)處于沉睡狀態(tài),難以量化分析我校學(xué)生體質(zhì)狀況歷史、現(xiàn)狀和發(fā)展趨勢(shì)。
為此,我校計(jì)算工程學(xué)院與體育部師生進(jìn)行了跨學(xué)科合作,對(duì)研發(fā)大學(xué)生體質(zhì)健康測(cè)試管理系統(tǒng)的技術(shù)可行性進(jìn)行了分析和研究,提出借助智能手機(jī)完成現(xiàn)場(chǎng)數(shù)據(jù)錄入、傳輸如圖1所示,后端采用Web網(wǎng)站和數(shù)據(jù)庫(kù)技術(shù)可以實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)和管理,結(jié)合體育專(zhuān)業(yè)理論和分析技術(shù)實(shí)現(xiàn)數(shù)據(jù)分析結(jié)果可視化效果,讓閑置數(shù)據(jù)“活”起來(lái),更好地服務(wù)師生。
1? 系統(tǒng)分析
1.1? 需求分析
本項(xiàng)目主要需求目標(biāo)是:利用現(xiàn)代科技手段,跨學(xué)科解決高校大學(xué)生體質(zhì)健康測(cè)試錄入、傳輸、數(shù)據(jù)存儲(chǔ)和管理、數(shù)據(jù)分析和可視化,輔助體測(cè)大數(shù)據(jù)分析模型研究,提出大學(xué)生健康管理對(duì)策。
據(jù)此,我們確定項(xiàng)目研究?jī)?nèi)容包括:
(1)研究高職高專(zhuān)院校大學(xué)生體質(zhì)測(cè)試工作現(xiàn)狀,體測(cè)項(xiàng)目數(shù)據(jù)記錄結(jié)構(gòu)和特點(diǎn),探索通過(guò)APP錄入、傳輸?shù)某R?guī)化流程;
(2)研究高職高專(zhuān)院校體質(zhì)健康測(cè)試儀器設(shè)備特點(diǎn),探索數(shù)據(jù)傳輸、存儲(chǔ)、管理和分析的實(shí)現(xiàn);
(3)利用體育專(zhuān)業(yè)理論,對(duì)高職高專(zhuān)院校學(xué)生體測(cè)數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)存在問(wèn)題,探索問(wèn)題原因,提出解決對(duì)策;
(4)針對(duì)上述研究?jī)?nèi)容,前端設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)基于Android系統(tǒng)智能手機(jī)的APP,由前端完成現(xiàn)場(chǎng)體測(cè)數(shù)據(jù)錄入和傳輸,后端設(shè)計(jì)目標(biāo)是實(shí)現(xiàn)基于Web服務(wù)的數(shù)據(jù)庫(kù)管理系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)和管理,結(jié)合體育專(zhuān)業(yè)理論和方法實(shí)現(xiàn)數(shù)據(jù)分析可視化。
后端數(shù)據(jù)服務(wù)子系統(tǒng)主要需求包括:
(1)系統(tǒng)與用戶(hù)管理。系統(tǒng)與用戶(hù)管理的需求包括登錄驗(yàn)證、體測(cè)班級(jí)管理、體測(cè)老師管理、管理員管理等功能。
(2)數(shù)據(jù)管理。數(shù)據(jù)管理的需求包括獲取體測(cè)班級(jí)與學(xué)生信息、體測(cè)項(xiàng)目數(shù)據(jù)保存、獲取與修改。體測(cè)項(xiàng)目包括身高、體重、肺活量、左右眼裸眼視力、立定跳遠(yuǎn)、坐位體前屈、一分種仰臥起坐、引體向上、50米跑、800米跑、1 000米跑。
(3)數(shù)據(jù)分析可視化。根據(jù)體育專(zhuān)業(yè)理論和方法,對(duì)當(dāng)年和歷年體測(cè)數(shù)據(jù)進(jìn)行統(tǒng)計(jì),獲得學(xué)生體質(zhì)情況的宏觀分析,并對(duì)統(tǒng)計(jì)分析結(jié)果進(jìn)行可視化展示,包括曲線圖、直方圖、餅圖、散點(diǎn)圖、雷達(dá)圖等,為數(shù)據(jù)分析提供直觀形象的可視化效果圖。
1.2? 關(guān)鍵技術(shù)及其可行性
根據(jù)本項(xiàng)目需求,我們梳理了可支撐項(xiàng)目研究和開(kāi)發(fā)的關(guān)鍵技術(shù),后端數(shù)據(jù)服務(wù)子系統(tǒng)涉及的技術(shù)主要包括:HTTP網(wǎng)絡(luò)訪問(wèn)技術(shù)、Web后臺(tái)服務(wù)技術(shù)、數(shù)據(jù)庫(kù)服務(wù)技術(shù)、計(jì)算機(jī)數(shù)據(jù)分析技術(shù)、數(shù)據(jù)可視化技術(shù)以及體育專(zhuān)業(yè)數(shù)據(jù)分析理論。
我們分析了關(guān)鍵技術(shù)的相互關(guān)系:
(1)HTTP網(wǎng)絡(luò)訪問(wèn)技術(shù)是實(shí)現(xiàn)智能手機(jī)前端與后端服務(wù)之間數(shù)據(jù)連接的關(guān)鍵技術(shù),目前技術(shù)方案成熟且豐富。Android應(yīng)用訪問(wèn)網(wǎng)絡(luò)常基于HTTP協(xié)議,Retrofit是一個(gè)RESTful風(fēng)格的網(wǎng)絡(luò)請(qǐng)求框架,用注解描述網(wǎng)絡(luò)請(qǐng)求方式,配置網(wǎng)絡(luò)請(qǐng)求參數(shù),可以高效方便地在客戶(hù)端定義RESTful風(fēng)格的網(wǎng)絡(luò)請(qǐng)求,后端也將提供RESTful風(fēng)格的網(wǎng)絡(luò)服務(wù)接口。
(2)后端Web服務(wù)是前端與數(shù)據(jù)庫(kù)服務(wù)之間的公共網(wǎng)關(guān),是實(shí)現(xiàn)數(shù)據(jù)請(qǐng)求和響應(yīng)的關(guān)鍵技術(shù),從團(tuán)隊(duì)成員技術(shù)背景出發(fā),我們考慮以Tomcat作為Web服務(wù)器,以Servlet作為公共網(wǎng)關(guān)技術(shù)。
(3)數(shù)據(jù)庫(kù)服務(wù)技術(shù)是后臺(tái)數(shù)據(jù)存儲(chǔ)和管理的關(guān)鍵技術(shù),同時(shí)為后續(xù)數(shù)據(jù)分析提供服務(wù),開(kāi)源數(shù)據(jù)庫(kù)系統(tǒng)MySQL功能強(qiáng)大且穩(wěn)定,可以滿(mǎn)足項(xiàng)目需求。
(4)計(jì)算機(jī)數(shù)據(jù)分析技術(shù)為體測(cè)數(shù)據(jù)的專(zhuān)業(yè)分析和可視化提供了數(shù)據(jù)分析基礎(chǔ),數(shù)據(jù)可視化技術(shù)為體測(cè)數(shù)據(jù)直觀呈現(xiàn)和分析提供了可能性。從數(shù)據(jù)分析需求出發(fā),同時(shí)兼顧項(xiàng)目后續(xù)研發(fā)中使用人工智能技術(shù)、大數(shù)據(jù)技術(shù)的需求,我們采用基于Python的數(shù)據(jù)分析和可視化技術(shù)。
(5)體育專(zhuān)業(yè)數(shù)據(jù)分析理論為本項(xiàng)目奠定了體測(cè)數(shù)據(jù)分析的理論基礎(chǔ)和模型;數(shù)據(jù)可視化的難點(diǎn)在于如何與體育專(zhuān)業(yè)理論相結(jié)果,從大量體測(cè)數(shù)據(jù)中分析和提取有價(jià)值信息。
2? 系統(tǒng)設(shè)計(jì)
針對(duì)系統(tǒng)分析和需求,我們?cè)O(shè)計(jì)了后端服務(wù)子系統(tǒng)的三大模塊:系統(tǒng)和用戶(hù)管理模塊、數(shù)據(jù)管理模塊以及可視化分析模塊,系統(tǒng)功能架構(gòu)如圖2所示。
圖2? 系統(tǒng)功能架構(gòu)圖
2.1? 數(shù)據(jù)庫(kù)設(shè)計(jì)
對(duì)于后端數(shù)據(jù)服務(wù)系統(tǒng)來(lái)說(shuō),數(shù)據(jù)庫(kù)是存儲(chǔ)和管理數(shù)據(jù)的核心,根據(jù)應(yīng)用需求,主要設(shè)計(jì)了如下數(shù)據(jù)表:
2.1.1? 體測(cè)班級(jí)信息表
體測(cè)班級(jí)信息表主要用于管理體測(cè)負(fù)責(zé)教師與班級(jí)關(guān)系,體測(cè)班級(jí)信息表結(jié)構(gòu)如表1所示。
2.1.2? 體測(cè)學(xué)生信息表
體測(cè)學(xué)生信息表是體測(cè)核心數(shù)據(jù)表,用于存儲(chǔ)和管理每一位學(xué)生的體測(cè)數(shù)據(jù),體測(cè)項(xiàng)目名稱(chēng)和表結(jié)構(gòu)應(yīng)與國(guó)家體測(cè)中心要求保持一致,方便后續(xù)報(bào)送數(shù)據(jù)。體測(cè)學(xué)生信息表結(jié)構(gòu)如表2所示。
2.1.3? 體測(cè)教師與管理員信息表
體測(cè)教師與管理員信息表主要用于存儲(chǔ)和管理參加體測(cè)工作的教師信息以及管理員信息,以便系統(tǒng)為體測(cè)班級(jí)分配負(fù)責(zé)體測(cè)教師,管理員信息表用于存儲(chǔ)和管理后臺(tái)系統(tǒng)管理員信息,并在管理員登錄時(shí)進(jìn)行相關(guān)安全認(rèn)證,如連續(xù)登錄失敗次數(shù)、驗(yàn)證碼等。根據(jù)我校情況,管理員通常是體測(cè)教師組成員。該表結(jié)構(gòu)如表3所示。
表3? 體測(cè)教師與管理員信息表結(jié)構(gòu)
字段名 類(lèi)型 長(zhǎng)度 小數(shù)位 非null 鍵 注釋
userName varchar 20 0 √ √ 用戶(hù)名(同教工號(hào))
teacherName varchar 20 — — — 教師名稱(chēng)
password varchar 255 — √ — 密碼
failNum int 2 — — — 登錄失敗次數(shù)
identifyingCode varchar 10 — — — 登錄驗(yàn)證碼
permission int 2 — — — 用戶(hù)權(quán)限
2.2? 數(shù)據(jù)服務(wù)接口設(shè)計(jì)
后臺(tái)數(shù)據(jù)服務(wù)子系統(tǒng)通過(guò)網(wǎng)絡(luò)為前端APP應(yīng)用提供數(shù)據(jù)服務(wù),前端APP使用HTTP協(xié)議連接訪問(wèn)后端數(shù)據(jù)服務(wù)功能,因此,后端系統(tǒng)服務(wù)的接口設(shè)計(jì)是重中之重。我們?cè)O(shè)計(jì)了三大服務(wù)模塊,每個(gè)模塊包含若干子功能,所有功能均通過(guò)RESTful風(fēng)格的URL接口提供服務(wù),接口HTTP請(qǐng)求方法均為POST,根據(jù)接口功能規(guī)定了不同的請(qǐng)求參數(shù)和返回結(jié)果,請(qǐng)求參數(shù)和返回結(jié)果均為JSON格式。用戶(hù)登錄接口協(xié)議的前端登錄界面如圖1所示。
以用戶(hù)登錄接口為例,接口協(xié)議為:
用戶(hù)登錄接口請(qǐng)求URL為:/project/user/login
用戶(hù)登錄接口請(qǐng)求方法為:POST
用戶(hù)登錄接口參數(shù)格式:JSON格式。參數(shù)名為:userName,password,identifyingCode
2.2.1? 登錄管理模塊
登錄管理模塊主要為前端APP提供用戶(hù)登錄、密碼修改等服務(wù)接口,密碼修改接口協(xié)議的前端界面如圖3所示。
2.2.2? 人員管理模塊
人員管理模塊主要接口有:管理員獲取所有班級(jí)、管理員為班級(jí)分配體測(cè)教師、根據(jù)教工號(hào)獲取體測(cè)班級(jí)信息、管理體測(cè)教師信息、管理參加體測(cè)學(xué)生。本模塊的班級(jí)管理模塊接口的前端界面如圖4所示。
2.2.3? 體測(cè)數(shù)據(jù)管理模塊
體測(cè)數(shù)據(jù)管理模塊是后端數(shù)據(jù)服務(wù)子系統(tǒng)的核心模塊,各個(gè)體測(cè)項(xiàng)目的數(shù)據(jù)存儲(chǔ)、修改、檢索等功能通過(guò)本模塊接口實(shí)現(xiàn),本模塊除了定義體測(cè)項(xiàng)目數(shù)據(jù)接口,還包括獲取指定班級(jí)體測(cè)數(shù)據(jù)等接口。本模塊的體測(cè)項(xiàng)目管理前端界面如圖5所示。
3? 數(shù)據(jù)可視化接口設(shè)計(jì)
本項(xiàng)目后端服務(wù)不僅提供了體測(cè)數(shù)據(jù)存儲(chǔ)、檢索、修改和刪除等基本操作功能,還具有對(duì)當(dāng)年或歷年體測(cè)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析功能,并對(duì)統(tǒng)計(jì)分析結(jié)果進(jìn)行可視化展示,為數(shù)據(jù)分析提供形象直觀的可視化效果圖。
我們調(diào)研了目前主流的數(shù)據(jù)可視化技術(shù)路徑,結(jié)合團(tuán)隊(duì)成員技術(shù)背景,選擇了Python+Flask+Pandas+Matplotlib的數(shù)據(jù)可視化路徑。
在數(shù)據(jù)可視化接口設(shè)計(jì)中,各Python函數(shù)庫(kù)分工合作,完成數(shù)據(jù)讀取、數(shù)據(jù)分析運(yùn)算、可視化分析結(jié)果、可視化接口部署等工作:
(1)Python語(yǔ)言借助mysql-connector驅(qū)動(dòng)模塊可以直接訪問(wèn)MySQL數(shù)據(jù)庫(kù),取得學(xué)生體測(cè)數(shù)據(jù)。
(2)Matplotlib繪圖函數(shù)庫(kù)提供了實(shí)現(xiàn)數(shù)據(jù)可視化的繪圖功能,可以繪制二維、三維的線型圖、直方圖、餅狀圖、散點(diǎn)圖、雷達(dá)圖等常見(jiàn)圖形。
(3)Pandas作為Python的數(shù)據(jù)分析函數(shù)庫(kù),提供了高效易用的結(jié)構(gòu)化數(shù)據(jù)分析能力,諸如歸并、重組、選擇、清洗和加工等數(shù)據(jù)操作。
(4)Flask是Python平臺(tái)的Web應(yīng)用程序框架,可以快速構(gòu)建符合RESTful風(fēng)格的API,實(shí)現(xiàn)網(wǎng)絡(luò)應(yīng)用程序(包括前端和后端)的開(kāi)發(fā),可以讓數(shù)據(jù)分析的可視化結(jié)果部署到網(wǎng)絡(luò)環(huán)境中。
數(shù)據(jù)可視化接口最終體現(xiàn)在前端APP界面中,如圖6所示。
4? 問(wèn)題與展望
本文介紹項(xiàng)目已經(jīng)初步實(shí)現(xiàn)并開(kāi)始試用,目前已進(jìn)入軟件著作權(quán)申請(qǐng)階段。試用過(guò)程中遇到的主要問(wèn)題,包括:
(1)體測(cè)數(shù)據(jù)采集和記錄仍然需要手工錄入APP。
(2)數(shù)據(jù)分析模型如何更好地與體育專(zhuān)業(yè)理論和方法結(jié)合,提供更加實(shí)用的可視化圖表。
針對(duì)上述問(wèn)題,我們考慮在下一步研發(fā)工作中,引入視覺(jué)識(shí)別和人工智能技術(shù),利用智能手機(jī)攝像頭讀取并識(shí)別某些體測(cè)設(shè)備數(shù)據(jù),如身高、體重?cái)?shù)據(jù),進(jìn)一步減輕體測(cè)教師工作量。其次,研發(fā)團(tuán)隊(duì)成員加強(qiáng)與體測(cè)教師合作,深入研究體育專(zhuān)業(yè)理論和方法,改進(jìn)可視化圖表,提升實(shí)用價(jià)值。
5? 結(jié)? 論
本項(xiàng)目作為大學(xué)生體質(zhì)健康測(cè)試系統(tǒng)的后端數(shù)據(jù)服務(wù)子系統(tǒng),其設(shè)計(jì)與實(shí)現(xiàn)為前端APP提供了開(kāi)發(fā)與應(yīng)用平臺(tái),同時(shí)作為省級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目培養(yǎng)和鍛煉了學(xué)生的綜合開(kāi)發(fā)能力,為項(xiàng)目后續(xù)研發(fā)打下了扎實(shí)基礎(chǔ)。
參考文獻(xiàn):
[1] 趙益鑫.中國(guó)大學(xué)生體育鍛煉過(guò)程中體質(zhì)健康狀況調(diào)查研究 [J].山東農(nóng)業(yè)工程學(xué)院學(xué)報(bào),2019,36(12):133-134.
[2] 韓霜.大學(xué)生體質(zhì)健康管理系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)與應(yīng)用評(píng)價(jià) [J].大眾投資指南,2018(16):158.
[3] 殷華杰,王凱,高平.基于RESTful Web Service的數(shù)據(jù)資源交換系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].航空電子技術(shù),2021,52(2):32-38.
[4] 任文娟,薛坤,張杰.基于H5的跨平臺(tái)“疫守護(hù)”APP設(shè)計(jì) [J].信息技術(shù)與信息化,2021(5):59-62.
[5] 葛勇.基于Python實(shí)現(xiàn)生產(chǎn)數(shù)據(jù)可視化可行性分析 [J].紅水河,2021,40(4):138-141.
作者簡(jiǎn)介:賈震斌(1967—),男,漢族,江蘇蘇州人,講師,博士研究生,研究方向:移動(dòng)應(yīng)用開(kāi)發(fā)、人工智能應(yīng)用。