王素珍
(延安職業技術學院, 經濟管理系, 陜西,延安 716000)
在移動互聯網時代中基于移動學習和移動終端的平臺已經成為重要的手段和方法[1]。市場為了適應新時代用戶獲取知識的需求需要開發面向不同群體、具有多種不同功能的移動網絡學習平臺[2]。國內有學者提出了一些設計方法。楚巍等[3]提出基于德爾菲法的會計職稱考試培訓系統設計方法,該方法通過德爾菲法對培訓體系框架中存在的相關要素進行分析,根據分析結果建立系統正常運行的體系、保障體系、數據管理體系以及題庫制度體系,完成會計職稱考試培訓系統的設計,該方法在組卷過程中沒有考慮試卷的曝光率和試卷結構約束,導致試卷的信度和效度較低。楊利等[4]提出基于云計算的會計職稱考試培訓系統設計方法,該方法通過云計算技術設計會計職稱考試培訓系統的架構,通過教學資源共享和培訓資源調配完成會計職稱考試培訓系統的設計,該方法在組卷過程中未將知識點覆蓋率作為約束條件,導致試卷的知識點覆蓋率較低。
為了解決上述方法中存在的問題,提出基于微信小程序的會計職稱考試培訓系統設計方法。按功能模塊將系統按層次劃分,設計了系統的硬件部分;根據會計職稱考試試卷的特點,以試卷結構、知識點、難度為約束條件,利用加權離差模型實現了組卷多約束條件下的建模,利用遺傳算法對模型進行求解,實現了約束條件下的最優解。為會計職稱考試培訓中應用提供了一定參考價值。
采用三層架構對微信小程序結構進行設計,自上而下分別為數據服務層、業務邏輯層和表示層,每層的任務都不相同,劃分系統中存在的任務,可以降低會計職稱考試培訓系統的耦合性。設計的微信小程序結構如圖1所示。

圖1 程序總體結構
表示層的主要作用是接收、處理并展示用戶輸入的數據,包括系統的交互效果和UI界面,屬于直接將數據呈現給用戶的界面[5-6]。針對會計職稱考試的特點,將交互頁面設計為類似試卷排版的界面。
業務邏輯層在微信小程序架構中屬于核心,具有橋梁作用,連接著數據服務層與表示層,其主要目的是傳輸數據和處理業務邏輯[7-8]。業務邏輯層分為移動端在線學習平臺和Web端管理系統2個部分,移動端在線學習平臺會接收移動設備傳輸的如會計職稱考試題庫聯系模塊等用戶操作,業務邏輯層收到請求信息后,為了獲取數據庫中存在的會計職稱考試題庫數據,向服務端發起請求,接收到響應后業務邏輯層處理數據,并向表示層中傳輸處理后的數據進行展示[9]。Web端管理系統接收瀏覽器傳遞的如會計職稱考試題庫上傳模塊等用戶操作,接收到請求后業務邏輯層執行對應的業務邏輯,用二進制的格式對上傳的題庫文件進行解析和存儲,并向數據服務層傳輸解析后的數據。
數據服務層負責數據庫的訪問,在會計職稱考試培訓系統中由服務端實現數據服務層,提供題庫文件的解析、存儲和傳輸等服務。在微信小程序結構中可以實現數據庫與客戶端的交互,在數據庫中提供存取接口服務,在RESTful API規范的基礎上設計接口,有助于系統實現緩存機制,提高系統的規范性、合理性[10]。
數據存儲包括云存儲、MongoDB數據庫和文件存儲3個部分。會計職稱考試培訓系統中的云存儲服務的主要任務是保存教師上傳到系統中的會計職稱考試培訓視頻文件,為了實現移動設備的訪問提供了視頻資源接口;視頻數據、用戶數據、緩存數據、考試信息和題庫信息等數據都存儲在MongoDB數據庫中;文件存儲的主要目的是在Web端管理系統中存儲教師上傳的題庫文件,方便服務端解析文件[11]。
按照功能模塊會計職稱考試培訓系統可以分為移動端在線學習平臺和Web端管理系統,系統總體功能圖如圖2所示。

圖2 系統總體功能圖
根據組卷基本原則,從試卷結構、知識點和難度3個方面約束組卷問題。
設S代表抽取試題組中屬性指標b構成的矩陣,其表達式為
(1)
矩陣中的每一列描述試題對應的屬性,矩陣中的每一行都描述試題對應的屬性值[12]。
(1) 難度約束,教師在組卷前設定試卷的難度值:
(2)
式中,PSt代表試卷中第t個難度等級試題設定的難度值,其中難度參數C1i的計算式如下:
(3)
(2) 知識點分數約束
設I1、I2分別代表重點知識點和次重點知識點構成的集合,[L1,U1]、[L2,U2]分別代表集合I1、I2的設定試題總分數范圍:
(4)
知識點分數約束定義了重點知識點和次重點知識點在試卷中的分數應該符合的要求,由教師設定集合I1、I2以及范圍[L1,U1]、[L2,U2][13]。
(3) 知識點覆蓋面約束:
(5)
式中,R代表知識點覆蓋率,R的最大值為1,參數r的值通常大于80%,Sbd代表試題組中已經存在的知識點數量,Shd代表試卷應該包含的知識點數量。當一個題目出現多個知識點,或一個知識點出現在多個題目中,始終以知識點為中心進行計算,重復出現算一次。
(4) 試卷結構約束
設K代表由教師制定的試卷總分,其計算式如下:
(6)
設Qt代表第t個題型在試卷中的分數,其計算式如下:
(7)
(5) 曝光率約束
bi5≤n,i=1,2,…,m
(8)
組卷問題屬于多重約束目標優化問題,通過加權離差模型完成組卷問題建模:
(9)
式中,Lj、Uj分別描述j個約束條件的取值上限和取值下限,aij為在不同約束條件j下試題的取值。
用目標函數描述組卷問題:
f(X)=w1×d1+w2×(dL1+dU1+dL2+dU2)+w3×d3
(10)
式中,X代表抽取的試題構成的組合,w1、w2、w3分別代表約束條件在組卷目標函數中對應的權重,d1、dL1、dU1、dL2、dU2、d3分別代表在不同約束條件下對應的離差。
組卷中試題的構成還需要對不同試題和知識點的權重及分數比重等進行計算求解,并尋求最優化的解。但由于會計職稱考試的知識點較多且復雜,面對海量試題組卷尋優具有較高的難度。采用遺傳算法求解組卷目標函數。利用遺傳算法將最優化問題轉換為求解目標函數的最優解問題,借助遺傳算法求解的連續性,可以較好地對全局試題進行驗算,得到最優組卷解,完成會計職稱考試的組卷,具體流程如圖3所示。
為了驗證設計方法的整體有效性,對設計方法進行測試。實驗環境如下。輔助工具:Robo3T、Postman2;操作系統:Microsoft Windows 7/8/10、Mac OS;數據庫:MongoDB;編程語言:HTML5、CSS3、JavaScript。實驗采用2015年—2020年的中級會計職稱考試真題作為數據集進行測試。

圖3 函數求解流程
分別采用設計方法(方法1)、文獻[3]方法(方法2)和文獻[4]方法(方法3)通過試卷的信度和效度對系統的整體有效性進行測試,其計算式分別如下:
(11)
(12)

測試結果分別如圖4、圖5所示。

圖4 試卷信度測試結果

圖5 試卷效度測試結果
由圖4可知,方法1的信度最高,平均為87,而方法2和方法3的信度平均為59和36.2。由圖5可知,方法1的效度最高,平均為86.4,而方法2和方法3的效度平均為57和41。方法1系統中的試卷信度和效度遠遠高于方法2和方法3中的試卷信度和效度。因為方法1在系統中組卷時,對試卷的曝光率和試卷結構約束進行了考慮,提高了試卷的信度和效度。
采用方法1、方法2和方法3進行組卷測試,試卷的題量和知識點都已確定,對比不同方法試卷中知識點的覆蓋率,測試結果如表1所示。

表1 知識點覆蓋率 單位:%
分析表1中的數據可知,方法1組建的試卷中除了試卷5的知識點覆蓋率為99%,剩余試卷的知識點覆蓋率均為100%,方法2組建試卷的知識點覆蓋率次之,方法3組建試卷的知識點覆蓋率最低,對比可知,方法1的知識點覆蓋率最高。這是因為本文方法在構建組卷目標函數之前,將知識點覆蓋率作為函數的約束條件,通過設定的約束進行會計職稱考試組卷,進而提高了試卷的知識點覆蓋率。
目前會計職稱考試培訓系統設計方法存在試卷信度低、試卷效度低和知識點覆蓋率低的問題,提出基于微信小程序的會計職稱考試培訓系統設計方法,設計了系統的功能模塊,并在軟件設計中構建了組卷目標函數,實現會計職稱考試培訓系統的設計,為無紙化培訓和考試的發展奠定了基礎。同時通過微信小程序可以做到“觸手可及”“用完即走”,使用時不需要擔心安裝太多手機應用而帶來的存儲容量問題[14]。