崔 洋,孟祥龍
(華能國際電力股份有限公司德州電廠,山東 德州 253000)
企業通過安全培訓,讓從業人員具備必要的安全意識和技能,不僅能有效避免人為因素導致的安全隱患和事故,還體現了“以人為本”的安全管理理念,從根本上提高安全生產水平。在以往的實踐中,電廠的安全培訓經常采用的方式是集中培訓和集中考試,雖然部分電廠將安全培訓過程逐漸信息化,建設了基于PC的安全培訓管理系統,但由于管理混亂,題庫建設陳舊,考試間隔時間過長,同時生產一線員工無法做到“一人一機”,實際效果無法滿足員工的全員覆蓋和個性化的學習需求。致使安全培訓效率低,安全存在較大的隱患。隨著移動互聯網的到來,移動學習已經成為必然選擇,而開發一款手機APP應用需要投入巨大的技術支持,由于APP的研發周期長,后臺服務器的維護成本高,致使系統的售價普遍較高,給企業帶來昂貴的費用開支。微信小程序相比傳統的手機APP擁有諸多優勢,如開發成本低、維護簡便、更流暢的使用體驗、方便快捷、即用即走、速度快、不占內存,功能豐富等。因此,研發基于微信小程序的安全培訓系統,對企業的安全培訓工作具有非常重要的現實意義。
針對目前電廠安全培訓工作中仍然存在的問題,結合對目前國內相關系統的調研和分析,確定電廠安全培訓系統在業務和架構方面,主要有以下幾個需求。
(1) 依據安全培訓工作的實際需求開發系統,切合實際,能夠有效地提高電廠安全工作的知識水平,提高安全培訓工作效率。
(2) 學、考、搜相結合,滿足學習者的個性化與多樣化的學習需求。
(3) 使系統具有可擴展性,為了使系統在未來的發展中能夠良好地滿足用戶的培訓需求,應將系統架構設計成易于擴展模式,降低功能模塊的耦合度,系統設計的應簡單、易用。
(4) 降低系統開發的成本,選擇生態系統豐富的編程語言,便于查找技術資料,按照資源優化合理分配,在現有的軟硬件條件下,遵循現用現行原則,優化應用開發與部署。
(5) 降低手機客戶端的運行壓力,提高系統的適應性,有助于在線培訓系統的推廣。
(6) 設計用戶管理系統,方便用戶快速無擾注冊,系統數據庫記錄用戶練習、測試情況,實現個性化培訓。
綜合考慮電廠安全培訓系統的業務需求、功能性需求等需求詳情,結合系統總體設計原則,確立電廠安全培訓系統總體框架(如圖1所示)。

圖1 系統總體框架
小程序前端根據學、考、搜三位一體設計思想進行功能設計,后臺主要用來進行題庫和用戶信息的管理。用戶管理模塊包含用戶信息管理與注冊登錄兩個功能模塊,實現用戶注冊、用戶登錄以及用戶登錄后的權限認證和校驗等功能,不同用戶采用微信的唯一標識符openID來區分,用戶經過小程序啟動后的靜默注冊、登錄即可使用小程序全部功能,進一步的信息完善需進入個人信息模塊進行添加、修改。
傳統手機APP開發者需要面對兩大操作系統iOS和Android,采用兩套前端編程語言。而小程序開發過程只需要面對微信客戶端,一套編程語言即可覆蓋全體手機用戶。微信小程序前端主要使用JavaScript,HTML (WXML)和CSS作為開發語言,和Web前端開發相似,但是在小程序JS語言中去除了不必要的功能,例如DOM,其次還添加了一些微信原生API接口和組件供使用。微信小程序擁有對開發者很友好的開發環境,使用微信開發者工具作為主要開發工具。
系統總體設計分為視圖層、邏輯層與系統層三個部分。視圖層主要用來渲染和設計頁面結構,也可以接收由業務邏輯層發來的數據請求。邏輯層用來處理事務邏輯,由JavaScript語言編寫。視圖層和邏輯層分別為兩個獨立運行的線程,兩個線程間可通過系統層的JSBridge實現信息的交互。
本次小程序的后端開發完全采用騰訊云云開發技術。騰訊云云開發有諸多優勢。
(1) 無需自行構建服務器,從而節省了構建服務器的金錢和時間。
(2) 項目迅速上線,云開發可以不依靠外部云服務器來執行數據庫的添加、刪除、修改和對象存儲。無需配置一個域名,無需等待ICP備案。這使項目可以快速上線,并且可以在開發完成后立即對其進行查看和啟動,節省了很多時間。
(3) 輕松獲取用戶憑據,對于不使用云開發的小程序來說獲取用戶憑證的過程非常復雜。對于云開發來說,擁有免鑒權的能力。
(4) 云開發的后端使用Node.js語言進行開發,達到了與前端開發的統一。
(5) 云開發提供的數據庫為JSON數據庫,可以在小程序前端和云函數中方便的進行讀寫操作。
使用云函數中的基本能力,只需執行幾行代碼即可:
云開發弱化了后端和運維的概念,在不配置服務器的情況下,使用平臺提供的API進行核心業務開發,可以使項目快速啟動和迭代。這些都給開發者完成整套的應用開發帶來了很大的便利。
啟動電廠安全培訓小程序后,在進入首頁后立即實現微信用戶自動注冊和登錄,利用云開發的云函數的獨特優勢實現與微信登錄鑒權的無縫銜接,在小程序端調用云函數,云函數靜默獲取到該用戶openID,然后通過后臺邏輯進行判斷,如果該用戶未注冊則將用戶信息添加到云開發用戶信息數據表中,完成注冊。
小程序首頁整體設計簡潔明了,符合設計規范,顯示了考試排名、題庫練習、安規考試、知識搜索等常用功能模塊,在底部設計了四個導航欄,分別是首頁、學習、倒班、我(個人信息),通過點擊可跳轉至相關的頁面。
依托最新版的電力安規、行業安全生產規章制度等設計練習功能,將學習內容拆分成單選、多選、判斷題型,在學習界面擴展了鍋爐、汽機、電氣、熱工、消防、技能鑒定以及雙重預防體系等電廠相關的題庫。用戶可選擇不同題型進行答題練習,并且可根據行業發展情況,隨時更新后臺題庫。
在后臺對每個題目進行編號,施行模塊化管理。對于重點需要記憶的題目,用戶可使用收藏功能。用戶點擊題目底部收藏按鈕,此時五角星點亮,提示該題目已被收藏,同時在后臺將該題目編號添加至云開發數據庫的收藏數據表中。進入收藏題庫的頁面可以進行收藏題目的集中練習。
用戶可以使用小程序隨時隨地進行在線考試,在線考試題庫設置與練習題庫一致,充分實現了考學一體化理念。用戶首先選擇考試題庫,然后設置本次考試題型,系統根據內置組卷策略隨機抽取相應題目,生成考試試卷。用戶全部作答完畢后點擊提交試卷按鈕,系統將自動計算分數,并顯示帶有用戶信息的成績卡,用戶可回看試卷中的錯題與正確答案;同時錯題將自動保存至后臺錯題本數據庫,用戶可進入錯題本中進行針對性測試,依據錯題個性化地設置下一階段學習和測試內容。
為滿足用戶個性化培訓需求,擴充培訓題庫,小程序充分利用云開發數據庫,設計了用戶自定義題庫考試功能,用戶可在首頁自定義考試模塊自行上傳EXCEL格式的題庫,經開發者審核后發布,方便用戶本身和有相似需求的其他用戶進行學習。
為用戶提供了一種簡單、快捷的知識檢索途徑。在云開發數據庫內建立龐大的安全和專業知識庫,同時在前端加入數據庫搜索功能。點擊主頁的知識搜索圖標,可以進入知識搜索的界面,在輸入框中輸入想搜索的任何關鍵詞,即可在小程序內置的海量數據庫中搜索相關知識,例如輸入給水泵,可以顯示出與給水泵相關的所有題目,點擊相應題目即可查看答案。與網頁的搜索引擎相比,小程序用來查詢電廠相關知識更加專業和便捷,成為用戶手中的知識寶典。
為提高職工學習的主動性,小程序設置了安全知識答題競賽功能,并設立了競賽獎勵,各個電廠的用戶均可參與到答題競賽中,用戶每日可參與競賽答題獲取積分,積分經過累加用于排名,在排行榜頁面可實時查看用戶積分排名情況。在每賽季結束時,為排行榜前5名的用戶發放獎勵,獎勵經費來源于微信小程序開通的流量主的部分收益,無需開發者另行承擔費用。
個人中心展示了用戶資料、學習時長、歷史成績、當前頭銜等記錄,用戶可以在此添加修改個人信息。每個用戶的學習情況以學時的形式進行統計,當用戶進行答題練習時,統計用時時長,將時長數據傳入后臺自動加入到用戶個人信息表的累計時長中。根據學時(用戶活躍度)為每個用戶設置不同頭銜,提升用戶的參與感和黏度。
電廠安全培訓小程序系統建立了一種新型的網絡培訓體系。通過使用騰訊云云開發技術,該微信小程序快速上線并迭代,只需幾個人即可完成全流程開發,極大地節約了開發成本。在培訓方面,有效改善了傳統培訓方式培訓面窄、培訓時間死板、培訓地點固定的弊端,將學習、考試和知識搜索有機融合在一起,用戶可以利用碎片化的時間隨時隨地來進行安全知識的學習,并根據前一階段的測試結果個性化地進行下一階段學習和測試。小程序的有獎競賽模式極大地提高了用戶學習的主動性。企業也可以方便地使用小程序對員工進行考試,并依據考試成績進行獎懲。
因為解決了傳統培訓模式的痛點,自電廠安全培訓小程序上線發布以來,經過大家的積極推廣和用戶的自發分享,已在山東華能各電廠中形成了數量龐大的用戶群體,成為大家安全知識學習和自我測試必不可少的工具。經過推廣使用,當前所在企業的安規考試合格率達到100 %,切實有效地提升了員工的安全綜合素質,為企業的安全生產培訓工作賦能。