趙嘉旭,余尚坤,孫磊
(1.天津科技大學電子信息與自動化學院,天津300457;2.天津科技大學人工智能學院,天津300457)
隨著我國高等教育事業步入發展快車道,高等院校學生規模也逐年增長。據教育部公布的《2018 年全國教育事業發展統計公報》顯示,全國各類高等教育在學總規模達到3833 萬人,高等教育毛入學率達48.1%。其中普通本??圃谛I?831.03 萬人,2018 年招生790.99 萬人,比上年增加29.50 萬人,增長率3.87%。研究生在校生273.13 萬人,2018 年招生85.80萬人。圖1 為2018 年高等教育在學規模和毛入學率的數據情況。
由圖1 近十年高等教育在學規模和毛入學率逐年增長的趨勢來看,預計2020 年高等教育在學規模會突破4000 萬,毛入學率突破50%。在如此龐大的學生基數下,以傳統的意見箱、代表座談會、信息員制度為代表的傳統學校評價和反饋機制不僅反饋群體范圍局限,且流程復雜、反饋周期長、缺乏有效深入了解等問題也日漸凸顯。2019 年1 月出臺的《教育部關于加強網絡學習空間建設與應用的指導意見》明確指出,教育管理者(校方)應對網絡學習空間先試先用,建立基于數據的學校評價機制、管理服務機制,實現過程化評估和精細化管理。未來,如何在高?,F有基礎條件下,為學生構建數字化、便捷化、可視化的智慧校園反饋系統,讓學生能與學?!懊鎸γ妗狈答伹闆r,實時了解反饋處理進度;讓學校直擊問題本源,改善學生的學習生活環境,不斷提升教育教學管理能力,從而推進教育教學方式變革和精準化施策,促進教育治理體系和治理能力現代化[1]成為目前迫待解決的問題。
(1)促進學生反饋體系多樣化
目前大部分高校反饋體系結構單一,缺少基于數據化的評價反饋手段。學生在校生活反饋系統作為智能大眾化的網絡反饋途徑,將成為各高校評價反饋體系的新技術補充。在各高校原本的學校評價反饋系統的基礎上,以增加網絡反饋的形式進一步完善學校原有的評價反饋體系,從而增加學生反饋途徑,方便反饋信息流轉、促進學校督導管理。
(2)保證反饋問題的客觀公正
客觀公正是信息反饋的基本要求,也是信息傳輸過程中不失真的根本保證[2]。本反饋系統采用LBS 技術實現匿名反饋,打消學生實名反饋的多重顧慮,將所遇的問題真實、全面的反映給學校相關部門。這同樣有利于學校準確研判問題并制定科學有效的解決方案,也避免了學校評價反饋機制“名存實亡”的問題。
(3)提升處理反饋問題的效率
縮短反饋周期是提升處理反饋問題的效率的行之有效的方法。用微信小程序收集學生問題既簡化了學校收集反饋的流程,且在人力物力財力的利用上實現了優化??s短反饋周期、提升處理反饋效率的同時也使整個反饋系統實現正反饋性。這樣,學校評價和反饋機制發揮預期效用的同時也讓決策者在學生層面對學校發展程度有整體的把控。

圖1 2018年高等教育在學規模和毛入學率
微信小程序(WeChat Mini Program)是指微信公眾平臺小程序,是一種無需下載安裝,只需在微信中搜索或掃二維碼“用完即走”的應用。這種與微信公眾平臺并行的新型應用因響應快、無需下載、不占內存的特點一經推出就受到大眾好評。據《2019 年小程序行業年中增長研究報告》的預估,2019 年微信小程序日活躍數將達到3.5 億。微信小程序的多入口獲取和“用完即走”的極速體驗不僅減少了開發成本,而且實現了對原生App 基本功能的覆蓋,這對用戶基數大的非剛需類應用是極大的福音。
MINA 是開發微信小程序的工具集合,其核心是一個數據、視圖同步的數據綁定系統。MINA 框架通過封裝微信客戶端提供的文件系統、網絡通信、任務管理、數據安全等基礎功能,對上層提供一整套JavaScript API[3],以盡量簡單、便捷的方式開發媲美原生APP 的服務。
其 中WXML(WeiXin Markup Language)、WXSS(WeiXin Style Sheet)以及基于JavaScript 的邏輯層是視圖層特有的描述語言,同時提供邏輯層與視圖層間的數據傳輸和事件機制。當頁面數據需更新時,在邏輯層直接進行數據修改,對應的更新就會在視圖層上顯示。如此一來,這種數據與視圖的同步機制讓開發者聚焦于數據與邏輯上,實現高效簡單的開發。整個MINA 框架大體可分為三部分:視圖層(View)、邏輯層(App Service)和系統層(Native),MINA 框架圖如圖2所示。

圖2 MINA框架圖
(1)視圖層
視圖層作為提供一系列基礎組件的技術層,主要任務是呈現相關信息給用戶并得到用戶數據后,將反饋后的信息呈現給用戶??紤]到本系統的用戶基本是通過掃描二維碼進入,所以我們針對移動端進行了特殊的技術選型。首先,為了前端方便,采用了與微信原生視覺體驗一致的WeUI,它給用戶提供良好的使用體驗的同時,也使用戶使用感知更加統一。同時采用了jQuery 進行前端交互,其具有可連續操作寫出的鏈式語法,上手簡單、良好瀏覽器兼容性的CSS 選擇器,以及完善的AJAX 和豐富的插件,這使得開發難度大大降低。
(2)邏輯層
邏輯層作為由JavaScript 實現的MINA 服務中心,以控制程序走向,完成一般數據的預處理和檢測為主要任務。首先為了對Web 頁面的邏輯流向有清晰的認識,我們對其走向進行控制。其次,為避免MINA 業務邏輯受到不必要的外部檢測,該層對數據進行簡單的預處理,控制層根據邏輯層的處理結果尋找適合用戶的路徑。各頁面的js 腳本文件的主要任務是實現邏輯層對視圖層的響應,并將響應結果返回視圖層。為實現這些功能我們使用ThinkPHP 框架,它具有靈活的Modal View Controller 架構,使項目邏輯更加清晰;同時采用MVC 分布開發,同步協作更好地完成了該項目。
(3)系統層
此層主要采用MySQL 高性能數據庫進行數據的存儲。系統層使用了更為高效,高性能的Redis 服務,它可以進行KV 對的存儲,這種方式使得數據處理隊列更加簡潔。對于大并發而言,大流量情景有更好的反應處理能力。為了更加方便用戶反饋信息,我們特地將Web H5 封裝成App,同時使用Android JS Native API,無縫調用Android 系統級別API,使軟件性能得到大幅度的提升,無需掃碼也可進行信息反饋。該層支持多種動態數據緩存類型,包括文件格式,APC、db、Memcache、Shmop 和Xcache。在此基礎上我們定制了一系列緩存規則,確保能夠更快地完成頁面加載,更好地使用緩存以及優化用戶體驗。
系統層簡要代碼如圖3。

圖3 系統層簡要代碼
LBS(Location Based Services)是基于位置數據提供的服務。由移動終端通過無線網絡(或衛星定位)獲取用戶所在的地理坐標信息,再集成其他信息從而向用戶提供所需的與位置相關的服務。本系統采用LBS 技術實現用戶位置所在的校區反饋系統登錄,在確保該校學生身份的前提下實現匿名反饋問題,保證反饋的真實與準確。圖4 是LBS 的系統架構圖。

圖4 LBS系統架構
在定位模塊中,負責定位的API 主要是可以獲取用戶位置信息的wx.getLocation(obj)。本反饋系統中LBS 在頁面加載時調默認調用obj,用戶授權定位模塊使用其所在地理位置后,可通過LBS 系統的推送服務功能進入用戶位置所在學校的反饋系統;若調用失敗則加載wx.getSetting。若用戶未授權,則調用wx.openSetting 打開授權設置界面;若用戶允許授權,則再次返回調用obj。具體流程圖如圖5。

圖5 定位API獲取用戶位置信息流程圖
在用戶授權的同時,LBS 系統會通過基于網絡的定位模塊將用戶位置信息存儲在移動對象數據庫(Moving Object Database,MOD),使用頻次較高的用戶二次登錄時無需再使用LBS 確認校區位置,更快地進入反饋界面,提升了用戶體驗感。靜止對象數據庫(Static Object Database,SOD)存儲地理信息系統(Geographic Information System,GIS)中的靜態地理位置信息。
查詢執行模塊分為兩部分,一部分是查詢處理引擎,通過訪問SOD 和MOD 處理用戶終端的定位請求。另一部分是位置隱私保護,對用戶的位置信息進行隱私保護。除非用戶授權,否則不會向任何第三方機構提供用戶位置信息。中間塊模塊是一個用API 定義的分布式軟件管理框架,可以實現不同硬件和操作系統平臺上的數據共享和應用互操作[4]。
據騰訊官方給出的數據,騰訊位置服務在日均1100 億次的定位服務中,定位請求精度<22.5 米的服務占比90%,用戶確認定位準確成功率達99.3%,服務保障率達99.99%。而本反饋系統的設計只需獲取用戶所在的校區級地理位置信息,從而進入該校的反饋系統。以青海師范大學南校區為例,校區面積達400000平方米,師生數量12000 余人,實踐證明,騰訊位置服務的定位精度和服務保障足以覆蓋所有在校用戶。
LBS 系統在微信小程序的運行效果圖依次如圖6。

圖6 LBS系統在微信小程序的運行效果圖
系統的總體設計是對系統進行一個自上而下或自下而上的一個總體概括與設計。將系統進行總體的架構后,對系統的每一個層級進行細化[5],實現對每一功能模塊的詳細設計。如圖6 所示,本系統以微信小程序發送請求(WX.request)給高校學生在校生活反饋服務器為總體架構,反饋服務器以Web API 為網絡服務接口;同時插入redis 中間件進行用戶信息授權鑒別,并通過nginx 和php-fpm 服務器進行測試,最后用MySQL 進行數據處理。
系統的功能結構在總體架構的大框架下具體設計,從本系統的目標和實際功能需要出發,設計該系統的各功能模塊。系統功能結構設計將本系統涉及到的四個子系統模塊化,對系統操作流程的前后端配合、人機配合進行清晰演示。

圖7 系統總體架構圖
本系統主要分為四大功能模塊:學生反饋模塊、后臺處理模塊、職能部門模塊、信息回執模塊。具體的功能框架圖如圖8 所示。

圖8 高校學生在校生活反饋系統功能架構圖
(1)學生反饋模塊
學生反饋模塊整體基于微信小程序開發,用戶進入小程序授權LBS 系統獲取其地理位置信息后,會自動檢索登入用戶所在學校的學生反饋模塊。學生反饋模塊共分為四個界面:主頁界面、排行界面、分類界面和反饋界面。學生反饋模塊邏輯圖如圖9。

圖9 學生反饋模塊邏輯圖
主頁界面可看到該校實時的問題反饋情況和用戶反饋問題的處理進程。排行和分類界面分別從問題熱度和問題類型兩個維度供用戶查閱該校學生反饋的問題,用戶可為同感問題進行匿名點贊和評論;反饋問題熱度是基于用戶對該問題的點贊和評論數量從高到低依次排列。
其中在反饋界面的問題編輯欄中采用DFA(Deterministic Finite Automaton)算法對敏感詞進行檢測和屏蔽設定,防止惡意評論。其基本思想是基于狀態轉換來獲取敏感詞,將詞組拆分成單個字符組成的樹形結構,對含有該字符的子樹在敏感詞庫中逐一檢索,每個詞組依次迭代的檢測方法。DFA 作為一種高效內容匹配模型,處理字符匹配操作的成功概率高,可應對反饋界面日常用語的敏感詞檢測。DFA 根據在敏感信息決策樹中包含的敏感詞關鍵字的相關信息,縮小查找范圍、提高查找準確率[6]。
學生反饋模塊試運行的效果圖如圖10。

圖10 學生反饋模塊部分界面示意圖
(2)后臺處理模塊
后臺處理模塊管理人員主要由各學院選派的優秀學生組織成員構成,各學院管理人員輪值組織負責兩周的后臺管理任務。管理人員定期通過后臺錄入的賬號密碼登錄,對該段時間的反饋問題匯總處理,依據排行榜的問題熱議度和問題的實際情況標注問題的緊急類型;分為一般、緊急和非常緊急三類。最后將問題分類以E-mail 的方式將問題發送給相應的學校職能部門,以便于相關職能部門合理安排解決流程。在收到學校相關部門的回復后,會將處理進程會通過信息回執模塊更新,以便用戶及時了解問題處理的進度。后臺處理模塊邏輯圖如圖11。

圖11 后臺處理模塊邏輯圖
(3)職能部門模塊
后臺處理模塊中各類反饋問題對應職能部門模塊的一個或若干個部門。各部門收到反饋問題后展開調研并開會商討解決反饋問題,具體解決方法待請相關領導批準后將問題的處理進程及處理辦法在信息回執模塊及時更新。職能部門模塊邏輯圖如圖12。

圖12 職能部門模塊邏輯圖
(4)信息回執模塊
信息回執模塊在收到問題解決進程通知及處理辦法的相關郵件后,管理人員會實時將學校對該反饋問題的處理意見在該問題下方以評論的方式回復該用戶,并且將處理進程標注在該反饋問題之后,以便接受所有用戶的監督。信息回執模塊邏輯圖如圖13。

圖13 信息回執模塊邏輯圖
本設計以各高校建設基于數據化的學校反饋評價系統為契機,利用具有社交軟件領先地位的微信工具為載體,同時借助LBS 技術,針對在校學生提供了一種基于微信小程序的高校生活評價反饋系統。該系統便于高校收集并解決學生在校生活中的各類問題,具有一定的實際意義。文中各模塊的流程圖和實現代碼有助于讀者對于本系統的設計思想與方法的理解。