齊 悅 謝 泰 沙 琨* 孫倩文
(海軍軍醫大學海軍衛生信息中心,上海 200082)
目前,企業的招聘考試紛紛由線下轉變為線上。線上招聘考試的時間和地點較為靈活,同時可以減少企業的成本。但是,也有一定的弊端,最大的問題就是求職者在網上進行筆試時候可能會存在作弊的行為。所以,必須對招聘考試系統加強防作弊的監管。基于此,本文對基于大數據的在線防作弊招聘考試系統進行了分析和設計,通過本系統能對求職者求職更公平,對企業招聘更有利。
本系統的用戶主要有管理員、企業招聘人員和求職者三類。
管理員在系統中的操作權限最大,主要包括:(1)對用戶的管理,包括增加用戶、刪除用戶、查找用戶、修改用戶信息、密碼重置等功能;(2)角色管理,主要包括新增角色、刪除角色、修改角色等功能;(3)權限管理,當指定完用戶的角色之后,該角色還沒有任何執行操作的權限,必須通過管理員給其賦予權限,才可以進行相應的操作,權限管理主要包括新增權限、刪除權限、修改權限等功能。管理員的用例圖如圖1 所示。

圖1 管理員用例圖
企業招聘人員在系統中起著重要的作用,它的主要功能有用戶登錄、對試題庫的管理、對試卷的管理、在線和求職者交流、對求職者分數的管理、修改企業信息、對求職者的作弊記錄的管理、對考試監控記錄的管理、對考試組卷的管理、對考試結束之后的考情分析等功能。企業招聘人員的用例圖如圖2 所示。

圖2 企業招聘人員用例圖
求職者的功能主要有在線考試、模擬練習、分數查詢、考試進度查詢、用戶登錄、修改個人信息、查詢歷史考試記錄、作弊記錄查詢、在線和企業招聘人員聊天等功能。求職者的用例圖如圖3 所示。

圖3 求職者用例圖
本系統的主要功能模塊圖如圖4 所示。

圖4 系統功能模塊圖
對于用戶管理、權限管理、角色管理在第二部分已經介紹了,下面對該系統的其他關鍵模塊進行介紹。
根據求職者報名的招聘筆試場次,選擇相應的考試,在考試開考前不得進入試卷界面,為了便于求職人員做好考試準備,在開考前10 分鐘在界面會有倒計時的提醒。考試開始之后,考生可進入考試界面進行作答。考試進行過程當中,會有用時的提醒,如果考生在結束考試之前作答完畢,可以提前保存作答記錄并交卷。在距離考試結束還有5 分鐘的時候,系統會跳出彈出框進行特別的提醒,如果考生在規定時間內沒有作答完畢,系統將會自動保存作答記錄并強制提交試卷。
企業招聘人員可對試題庫進行管理,包括對試題的增加、刪除、查找、修改等,試題庫中的題目按照學科領域進行劃分,方便企業招聘人員在后續的考試中組建新的考試試卷。試題的題型有多種,包括選擇題、填空題、判斷題、簡單題、分析題、綜合題等,對考生進行全方位的考察。
對于求職者而言,參與過的每一場考試都可以進行詳情查詢,如參與考試的時間,本場考試的排名,組織考試的企業名稱,報考的崗位信息,考試是否通過等信息。對于企業招聘人員而言,可以查詢組織過的每一場考試的名稱、時間、招考崗位、應考多少人、缺考多少人等信息,特別地,還可以查詢每場考試是否有作弊情況的發生,如果有,就會顯示考試作弊的時間,作弊人的個人信息等。
本系統采用智能閱卷的方式,對于客觀題,包括填空題、選擇題、判斷題等,由于答案是唯一的,在系統中會設定好每道題的標準答案,和標準答案一樣就會得分,否則就是0 分。對于主觀題,由于其標準答案非唯一,會提前設置好關鍵詞和相應分數,如果考生答案中出現了這些關鍵詞系統就會自動給分。
對于每一場考試而言,企業招聘人員可以靈活進行組卷,比如固定試題出卷,還可以從試題庫中隨機抽題組卷,其中對于每一道試題和一套試卷都有對其進行刪除、查找、修改的功能。
在每場考試進行過程中,企業招聘人員都可以對參與考試的考生進行實時監控,并對考生的作答視頻畫面隨機進行拍照留存,若在考生作答過程中,出現被系統判為疑似作弊的行為,該考生就會標記為疑似作弊,并拍照取證,同時系統會發消息給考生進行提醒,如果超過三次疑似作弊行為,系統會直接判定為該考生存在作弊行為并立即自動提交試卷,停止答題。對考生的作弊記錄,企業招聘人員可以進行刪除,查找和修改。
本系統采用B/S 架構,使用HTTP、TCP/IP 等網絡傳輸協議實現客戶端和服務器之間的網絡通信,客戶端通過網絡向WEB服務器發送HTTP 請求,WEB 服務器接收請求之后對數據報文進行解析,再向數據庫服務器發出請求數據的信號,數據庫服務器根據請求的數據進行查找,給WEB 服務器響應需要的數據,WEB 服務器通過網絡把包含HTML、CSS、JAVASCRIPT 等數據信息返回給客戶端,其整個流程可以用圖5 的系統架構圖表示。

圖5 系統架構圖
系統有較為完善的防考試作弊措施來減少作弊的發生,主要措施有:(1)考生在進入當場考試界面之前必須先啟用電腦的攝像頭和打開電腦的音頻,同時進行拍照,如果經過人臉識別,發現和系統中保存的該考生照片不符合,將不能進入考題界面。(2)在考試過程中,如果監測不到該考生的人臉超過一定時間,則會判定為疑似作弊并發出警告提示。(3)在考試過程中,如果監測到有多個人臉,則會判定為疑似作弊并發出警告提示。(4)在考試過程中,如果監測到只有一個人臉且該人臉和系統中保存的該考生照片不符合,則會判定為疑似作弊并發出警告提示。(5)在考試過程中,監測到有人的聲音并且經過語音識別,聲音的內容和考試題目相關,則會判定為疑似作弊并發出警告提示。(6)在考試過程中,如果考生切屏,跳出考試界面,則會判定為疑似作弊并發出警告提示。(7)如果監測到考試過程中考生有遠程協助的行為,則會判定為疑似作弊并發出警告提示。(8)為了防止考生在考試過程中使用手機查資料,在進入考試界面時候需要用手機掃描二維碼,一旦考試過程中,手機跳出當前界面,則會判定為疑似作弊并發出警告提示。(9)在考試過程中,如果考生使用了雙屏,則會判定為疑似作弊并發出警告提示。
本系統考慮到可擴展性、性能、健壯性、可靠性等因素,采用了大數據的多項技術來設計出高質量的考試系統。
Hadoop 是一個能夠對大量數據進行分布式處理的軟件框架,其最核心的設計是HDFS 和MapReduce,HDFS 用于存儲海量數據,MapReduce 用于計算海量數據。Hadoop 處理數據時具有可靠、高效、可伸縮、低成本的特點[1]。它的可靠性體現在它維護多個工作數據副本,如果出現失敗的節點,則會重新分布處理;它的高效性體現在工作方式是并行的,能夠通過并行處理的方式加快數據處理速度;它的可伸縮性體現在能夠處理PB級的海量數據;它的低成本體現在由于Hadoop 是開源項目,其軟件成本會大大的降低[2]。隨著在線招聘考試系統的流行,參與到在線考試的人數也越來越多,數據量也越來越龐大,所以有必要在Hadoop 平臺上進行海量數據的處理,以此來提高系統的效率。
MongoDB 是一種介于關系型數據庫和非關系型數據庫之間的基于分布式文件存儲的數據庫[3],它支持對復雜的數據類型和海量數據的存儲,它使用二進制數據存儲,可以存儲一些大型對象,如可以存儲監控視頻等。它可以用來做考試系統中的視頻和圖片等的緩存,提高系統的性能和查詢效率。同時,它具有更好的安全性,MongoDB 支持主從復制,可以實現數據備份、故障恢復等功能,基于副本集的復制機制實現了系統出現故障后,可以自動恢復的功能,保證了集群數據不會丟失。在考試系統中使用MongoDB 可以很好地保證海量數據的存儲。
本文詳細介紹了基于大數據的在線防作弊招聘考試系統的功能需求分析、功能模塊設計、系統架構設計,提出了一些切實可行的防作弊措施,同時介紹了系統設計中應用到的相關大數據技術。在線招聘考試給求職者和企業招聘人員帶來了很多便利,是值得大力推廣的,但是也可能存在一些不誠信考試的行為,雖然本系統在設計上提出了一些防作弊舉措,但是并不能完全杜絕考試作弊的發生。在今后,不僅要設計出更為完善的防作弊考試系統,更為重要的是要呼吁各位考生誠信考試,共同營造一個公平公正的求職環境。