郭 捷 楊笑千 鄭 炯 肖 波
(中國核動力研究設計院,四川 成都610014)
每日一學系統是一個采用B/S 架構的軟件系統。用戶通過瀏覽器客戶端完成與答題系統服務器端進行的數據交互。用戶在客戶端進行數據請求,通過服務器端進行相應的業務邏輯處理,包括頁面渲染、頁面跳轉、數據獲取、數據處理及數據存儲。這樣就在邏輯上形成了三個不同層面的業務處理,即表示層、業務邏輯層、數據層。
表現層,是為系統操作人員提供一個方便、整潔、高效的操作界面。系統實現界面可視化、數據交互。
業務邏輯層,通過業務特點將現實事物進行抽象處理,形成對象,然后對各個對象和操作進行定義和封裝,本系統通過C#實現相關操作。
數據訪問層,事先設計好數據格式及存儲式樣,編寫相應的查詢、編輯、刪除方法,并利用數據表視圖和觸發器來提高數據存儲及查詢效率,本系統通過SqlServer 實現數據存儲、調用等。
每日一學系統為我院職工提供在線答題功能,用戶可以進入系統客戶端,完成在線答題,并返回用戶答題記錄信息,管理員可通過每日一學答題系統管理端對職工答題信息進行數據統計和分析。系統各功能的具體需求分析如下:
a.用戶管理功能需求,用戶分為職工和系統管理員,系統管理員可以增、刪、查、改職工信息。
b.題庫管理功能需求,通過輸入試題的題干、答案、解析、分值等形成題庫,通過查詢條件搜索可找到不同類型的試題,以列表形式展現,對列表中的試題可執行增刪改查等功能。

圖1 每日一學系統職工答題界面
c. 答題管理功能需求,系統判別職工身份和當天答題情況,提供符合情況的操作頁面。系統自動判斷職工答題正誤,給出答案解析,職工直到提交正確答案,方可進入院內網。
d. 統計管理功能需求,按題目統計學習情況,某個題目的回答情況;按用戶統計學習情況,某用戶答題情況;按科室統計學習情況,科室參與答題情況。
e. 錯題查看功能需求,系統對職工做的錯題進行整理,便于職工查看并找出未完全掌握的知識,職工可根據薄弱環節針對性的學習,進而提高學習效率。
系統各非功能的具體需求分析如下:
a.用戶界面需求,簡單、清晰、方便、美觀、符合用戶習慣。
b.性能需求,系統的并發數,答題系統需要滿足大量用戶同時對系統進行訪問;系統的響應時間,系統應在用戶可接受的時間范圍內對用戶做出相應響應。
c.安全性需求,數據存儲的安全性,短時間故障下,實現對數據信息的快速恢復。
根據數據庫相關設計原則,結合院實際業務需求,設計了詳細的系統數據庫的概念結構與邏輯結構,每日一學系統數據庫主要分為5 個部分,分別是題庫表、選項信息表、答題記錄表、用戶表、科室表。用戶表主要記錄職工的工號、姓名,科室主要記錄了單位各科室的編號、科室名,用戶表與科室表之間通過科室號相關聯。題庫表主要記錄題干、答案、解析、類型、類別、總分、創建時間、創建人等信息,選項信息表主要記錄題目選項信息,通過題目Id 與題表庫關聯。答題記錄表主要記錄職工工號、題目id、第一次是否答題正確、最后是否通過、通過時間等信息,答題記錄表與用戶表、題庫表相關聯。
本系統主要使用Visual Studio2008 和SQL Server2014 進行開發。職工每天第一次登陸院內網首頁時,系統自動彈出答題學習頁面,從已經錄入的題庫中隨機生成試題,頁面顯示1 道題(選擇題、判斷、填空隨機顯示,題目來自題庫,題庫分別包含安全、質量、保密、行政管理等方面的題目),用戶答題后方可使用內網。
用戶在答題過程中,系統會自動計時并判斷回答正誤,在用戶當天第一次答題后,系統會自動給出相應結果。若當用戶回答錯誤,系統會并顯示該題解析,直到用戶答題正確,才能轉入首頁。當用戶回答正確,系統會彈出回答正確的提示框,并顯示此用戶的答題正確率,用戶可以通過錯題中心查看錯題詳情(圖1)。

圖2 每日一學系統管理員后臺操作界面
系統管理員可以通過后臺對用戶和題庫進行管理,也可以按題目、用戶、科室查看相應答題學習統計情況。通過后臺的題庫管理,管理員可以根據具體需要錄入、查看、修改、刪除相關試題。通過后臺的用戶管理,管理員可以根據院實際職工情況進行用戶的增、刪、改、查。通過后臺的用戶答題情況統計和科室管題情況統計,可以了解每人、每科室的答題正確率(圖2)。
為確保系統各功能的正確性、適用性,用戶在使用過程中的效率性、穩定性,需要針對系統各模塊進行相關測試。經測試確定,系統和數據庫之間的連接通暢;用戶在使用過程中,系統無崩潰現象發生;系統有較高的容錯率;系統支持500 個用戶同時對系統進行訪問,系統的平均響應時間為3 秒。系統各項指標都符合相關標準,能夠滿足院內職工使用需求。