張昕,林洪芳
海軍潛艇學院,山東 青島 266199
隨著信息技術的發(fā)展,如何利用信息化技術快速管理、配置和使用圖書席位,實現(xiàn)圖書館席位預約系統(tǒng)高效、穩(wěn)定運行成為目前高校信息化普及工程的重點方向[1]。
微信是眾多手機應用中最突出的社交工具之一,不僅具有新媒體的特性和優(yōu)勢,還擁有廣泛的用戶基數(shù)。本文選用HBuilderX開發(fā)工具、LNMP系統(tǒng)架構,基于PHP語言、MySQL數(shù)據庫關聯(lián)接口實現(xiàn)前后端數(shù)據的調用;后臺管理頁面使用Bootstrap的UI框架進行設計,用戶操作頁面基于Uni-app框架實現(xiàn),利用Uni-app社區(qū)提供的UI完成用戶前端的設計,通過調用云函數(shù)及自編程序接口實現(xiàn)功能的開發(fā)。經過系統(tǒng)功能頁面、業(yè)務流程測試,界面運行效果良好[2]。圖書館座位預約管理系統(tǒng)適用于任何一所擁有圖書館的高校。通過該系統(tǒng)的部署不僅可以實現(xiàn)書館座位數(shù)字化管理,還可以極大的提升了圖書館座位的利用率[3]。
該系統(tǒng)對主要業(yè)務功能需求性較強,不需要設計多余的功能去映襯功能量的多少,能讓用戶清晰地進行座位的預約及取消等功能操作。一個標準的預約系統(tǒng)不僅需特定的功能,還需要特定的權限申請、認證才能進入系統(tǒng)。用戶進入該系統(tǒng)后可以清晰的分辨出功能模塊,根據需求對座位、時間選擇,當選定座位后,座位會進入鎖定狀態(tài),其他用戶則無法對被鎖定座位進行操作。座位可以進行取消、簽到、暫離、暫離簽到、簽退等操作。與之相對應的管理員用戶,也可以對本項目中所有權限的數(shù)據進行管理、維護。
本系統(tǒng)所擁有的如下。
(1)超級管理員對使用規(guī)則、閱覽室信息、通知公告、預注冊信息、預約信息、信用信息、用戶信息、反饋信息、臨時用戶信息的管理等模塊;
(2)管理員對通知公告、預注冊信息、預約信息、信用信息、用戶信息、反饋信息、臨時用戶信息管理等模塊;
(3)學生用戶信息管理、座位選擇、選座信息查詢、違約信息查詢、通知公告查詢、使用規(guī)則查詢、反饋信息等模塊。
1.2.1 擴展性
由于各個高校的圖書館座位數(shù)量不同,座位預約管理系統(tǒng)的需求也有所差異,因此需要在擴展本項目初期就做好地理位置的調研,獲取樓層平面圖。通過獲取的平面圖進行座位的編排,將編排好的座位后統(tǒng)一部署,即可完成項目的拓展。
1.2.2 靈活性
基于環(huán)境、空間限制,不僅各高校的圖書館空間不同,而且高校圖書館內部的樓層與樓層之間的布置格局也不盡相同。因此在設計數(shù)據庫之初,就要對數(shù)據表的結構進行合理的規(guī)劃,功能模塊具有較高的兼容性,可以嵌套多個子模塊,將模塊化的設計理念融入到整個設計開發(fā)中。
1.2.3 穩(wěn)定性
校方與學生用戶都希望預約平臺在使用時能保證服務器的穩(wěn)定性,網絡延遲、無法連接、數(shù)據丟失等這類問題均為服務器不穩(wěn)定的展現(xiàn)形式。首先設備供應商要能保障服務器的正常使用,在出現(xiàn)問題時能隨時聯(lián)系維護方及時進行服務器的維護,避免服務器主機的宕機或異常;其次,通過上線前系統(tǒng)測試保障程序安全、穩(wěn)定;最后,數(shù)據庫的穩(wěn)定和可靠,需要定期檢查導出的logs文件,發(fā)現(xiàn)錯誤信息可及時處理。
1.2.4 易用性
系統(tǒng)的易用性對于管理員來說,主要體現(xiàn)管理員專業(yè)知識、素養(yǎng)積累。對于學生來說,程序設計頁面的簡潔、清晰可以更加直觀的滿足用戶的使用,實現(xiàn)操作頁面可視化明了、操作易學、上手簡單等效果,當操作頁面做到完全可視化后不需要學校的統(tǒng)一培訓即可通過清晰的頁面掌握系統(tǒng)的操作流程[4]。
該系統(tǒng)在用戶登錄上做了相應的判斷,因為是面向在校大學生的系統(tǒng),因此在注冊的時候需要進行相關的認證,認證通過后才能注冊。同時在后續(xù)的登錄中,由于本地緩存保存了相關的信息,因此不需要重復輸入賬號密碼即可實現(xiàn)快速登錄,若因為違約賬號被凍結,則無法登錄。
該系統(tǒng)的主要功能是學生進行座位預約,座位預約的流程為進入選座頁面選擇合適的座位及入座時間,再確認選座信息后,將會進入到下一個流程。提前取消預約,未按時到場簽到則算違約,按時簽到則進入下一流程[5]。中途暫離用戶需要進行暫離操作,暫離歸來后點擊歸來按鍵,否則違約一次。脫離學習狀態(tài)后按時點擊簽退,否則也算違約或者時長已達到系統(tǒng)預定將會自動釋放座位。
系統(tǒng)架構是基于Uni-app、B/S、LNMP三個架構結合協(xié)調設計。服務器采用Centos7.2系統(tǒng),利用寶塔面板搭建起LNMP系統(tǒng)架構,將服務器與前端分別放置于兩個不同系統(tǒng),保證系統(tǒng)穩(wěn)定性。使用Uni進行應用頁面的編輯,優(yōu)先選擇開源的封裝接口進行調用。在后端完成部署后,利用Nginx的反向代理技術及Redis的負載均衡技術為系統(tǒng)提供穩(wěn)定的服務,系統(tǒng)架構圖如圖1所示。

圖1 系統(tǒng)架構圖
座位預約模塊是對各個校區(qū)圖書館的座位空閑、預定和占用情況進行查詢。針對不同的讀者需要,可以對根據不同的閱覽室進行查詢。座位管理模塊是用戶對座位進行預約后,根據自己的實時需求對座位的狀態(tài)進行調整變更的一個功能模塊[6]。
個人資料模塊是用戶對自身各個信息進行查詢修改的模塊,其中可以分為座位預約記錄的查詢、違約記錄查詢、個人信息查詢、修改個人信息等功能。
學生信息管理模塊是由超級管理員對學生的預注冊信息進行管理,預注冊信息進入數(shù)據庫后,用戶才能進行賬號的注冊。管理員則負責對注冊后的信息進行管理,一些信息的修改及信用的管理都屬于模塊的功能。
用戶進入系統(tǒng)沒有登錄歷史留下的本地緩存的情況下,進入系統(tǒng)頁面是登錄頁面,需要用戶輸入賬號密碼進行認證才能進入系統(tǒng)。從數(shù)據庫中查找學號,若數(shù)據庫中有此學號,會回傳使用者學號所對應的密碼,并對照此密碼與輸入密碼是否相符。如果密碼是正確的,使用者將會成功的登入系統(tǒng)。如果密碼不符合,或是數(shù)據庫中沒有這個使用者的學號,會傳回一條提示,讓使用者檢查自己的學號和密碼后再次登入。
在進入系統(tǒng)后,首頁會讀取預約記錄將最近的預約記錄以列表的形式展示,該列表自動讀取用戶在數(shù)據庫中的預約記錄,若有預約記錄則將預約記錄羅列出來,若沒有預約記錄則顯示為無。
用戶需要查看個人信息及修改部分個人信息時,點擊個人資料進入相應頁面,該頁面進入后系統(tǒng)會通過用戶的唯一標識進行查詢,將查詢結果一一展示出來,且用戶需要更改部分信息時,可以直接點擊對數(shù)據進行修改。
當用戶有座位使用需求時,點擊進入“我要預約”功能頁面,進入該功能頁面后可先選擇對應校區(qū);再選擇相應的閱覽室和入座時間,在選座時間上做了相應的判斷,擇時間不能超出系統(tǒng)規(guī)定的時間,否則座位會被釋放。
用戶在完成預約功能后,需要在預約時間之前來到座位進行掃碼簽到,未及時取消座位的預約且未按時來到座位進行掃碼簽到的則會被記違約一次,且座位會被釋放。點擊簽到后,數(shù)據庫中status從0變?yōu)?,顯示出來就是已簽到狀態(tài),點擊暫離后status變?yōu)?,系統(tǒng)開始計算時間,若45min內未點擊“已回來”按鍵,則會判定違約一次;若點擊按鍵,status狀態(tài)則會變?yōu)?。用戶結束學習狀態(tài)點擊簽退后,status會變?yōu)?,隨后座位將釋放,座位變?yōu)橹匦驴蛇x擇狀態(tài),該條預約記錄也因此而結束流程,變?yōu)橐粭l不可修改的數(shù)據隨后可從預約記錄中查詢到該條記錄。
該頁面支持留言反饋及在線反饋兩種反饋方式。留言反饋即用戶輸入反饋信息,該條數(shù)據保存至zuowei_fankui表中,管理員可以通過反饋管理進行查看。用戶點擊在線反饋后,通過contact接口彈出類似微信聊天的窗口頁面來實現(xiàn)在線反饋。
管理員通過輸入對應地址進入后臺管理頁面,隨后輸入賬號密碼驗證碼進行身份驗證,身份驗證通過后進入后臺系統(tǒng),認證錯誤則無法進入系統(tǒng)。
用戶預約管理頁面設定為,管理員可通過該頁面對用戶預約的信息進行查閱,在必要的時候可以通過“取消”按鍵,幫用戶取消所預定的座位。
管理員可以查詢用戶的違約記錄,進入該頁面首先通過查詢所有的違約信息,將所有信息羅列出來,其次可以通過輸入學號對單個用戶的違約信息進行查詢。
進入頁面后首先進行全體學生的用戶信息查詢,其次可以根據需求,輸入學號或姓名對目標進行查詢。該頁面實現(xiàn)的功能有:修改學生的違約信息、重置用戶密碼。
黑盒測試則與功能檢測相對應,通過觀測法等手段來檢測該系統(tǒng)所實現(xiàn)的功能模塊測試,以驗證其與實際的系統(tǒng)計劃與設計要求相符。本文按照預定操作流程分別對用戶預約座位功能進行功能測試,頁面展示信息完整、模塊功能均符合預計結果,具體測試結果和流程如表1所示。

表1 系統(tǒng)測試
本文選用HBuilderX,使用PHP編寫與MySQL關聯(lián)的接口實現(xiàn)后端數(shù)據的調用,后臺管理頁面使用Bootstrap的UI框架進行設計,用戶操作頁面基于Uni-app框架實現(xiàn),利用Uni-app社區(qū)提供的UI完成用戶前端的設計,調用云函數(shù)及自寫接口來對功能進行實現(xiàn)。經過系統(tǒng)功能頁面和業(yè)務流程測試,效果良好,運行正常。