劉嘉峰 孫思齊 韓寧
(1.沈陽工業大學 遼寧省沈陽市 110870 2.沈陽民航東北凱亞有限公司 遼寧省大連市 116000)
在當今互聯網飛速發展的時代,微信小程序的發展也在日趨成熟,針對一系列類別的選座系統也在蓬勃發展,圖書館自助選座系統是一個軟件平臺,目的是為了合理的處理由于諸如座位占用等現象而導致的圖書館座位資源浪費等問題。在座位資源問題得不到更好解決的問題上,微信小程序這一出現在用戶視野中的高使用率軟件展現了其舒適、流暢的交互界面和運行效率,有效地提高圖書館自習室座位資源的使用率[1]。
后臺開發編程中使用 Java 語言中的 Spring boot 框架來實現主要的系統搭建,而系統所需的數據的存儲和更新通過 MySQL 數據庫進行;前端則使用微信開發者工具,通過在帶的調試界面進行系統調整與測試。由此可得出,在技術方面該系統的設計是可行的,其為系統的開發提供了有利資源,同時保證了技術可行的穩定性,大量排除了系統開發的技術困難。
1.2.1 選座
系統中展示了所有可利用的自習室座位資源的當前使用情況,學生根據需要進行一下選擇:
“自主選座”即根據當前座位使用的情況及進行自主選座;
“隨機選座”即系統對所有空置的座位進行隨機滾動選擇,為學生節約時間,若不滿意,可取消選擇并進行自主選座。
1.2.2 離座
離座為永久。即系統將立即釋放座位。
1.2.3 預約
學生可在當天提前進行座位預約,并在預約時間即將到達的前 30 分鐘內進行座位確認。
1.2.4 續座
學生確定入座后開始自習,系統將默認單次使用時間為 1 小時,當需要續座時,學生也可自由選座為 1 小時、2 小時等,此操作必須在倒計時前 30 分鐘內進行續座,否則到時座位自動釋放。
圖書館自助選座系統分為學生端和管理員后臺。在學生端中,學生可以選擇選座、離座、預約、續座等功能上的使用。在管理員后臺,管理員可以審核學生信息,并根據學校情況對學校、教室進行添加修改,還可以布置每個教室的專屬座位圖。本文主要介紹學生端的功能設計。在學生端,除了選座預約等功能,學生在確認入座后還會看到自己所在的座位信息、選座時間離座時間等,學生可根據座位不同的顏色,即(可視化界面),來了解座位是否已被人選,是否確定成功,是否預約成功等。
學生進入選座系統小程序的登錄界面后,查看自己是否已經注冊賬號,若注冊,登錄并進入選座系統,若沒注冊,進入注冊界面,添加自己的賬號密碼等信息后,確定并等待管理員驗證,驗證成功方可進入系統。進入選座系統頁面中,選擇自己要去的教室,查看自己是否已經選座,若選座,在點擊座位圖時會被提醒已經選座,若沒有,可進行選座、續座、預約等操作。選好座位點擊確認,便可以進行學習。學習結束(即倒計時結束)后,座位將自動釋放。

圖1:座位可視化

圖2:選座界面
學生能夠直觀地完成選座操作,可視化界面是必不可少的,通過顏色的區分讓學生清晰地分辨出當前座位狀態,見圖1,選座系統用了可視化界面的設定,紅色代表自己選座或他人選擇了座位,綠色代表自己選擇了作為但并沒有進行下一步選座操作。
以下是可視化界面的實現:
定義一個對象 item,對 item 進行賦值,以已選為例:
item=“{{item}}” data-index=“{{index}}” src=“img/noseat.png” /> 若 item=1 時,將已選照片(noseat.png)傳給類對象 chool-listphoto,同理若item=其他數字是設置對應的圖片進行可視化的實現。 表1:學生端測試用例 學生進入到主界面,進行教室的選擇,進入教室界面后,展示了學生用戶的使用功能,可以進行隨機選座,也可以自主選座。這時需要判斷學生是否已經有座位,若有則提示已經選座,若沒有便可以進行選座確認,隨機選座是點擊完之后系統自動從數據庫隨機取出一條數據顯示出來,并提示選座成功。確認入座之后,界面會顯示離座時間,并進行倒計時。在學生學習過程中,若可以進行續座,或者提前離座,在有效時間結束后,座位會自動釋放。 圖 2 為選座界面展示,選座分為自助選座和隨機選座,在隨機選座部分,首先設置了一個 flag 開關: 定義需要滾動的長度 seatArr.length,這代表著座位一共的長度,添加語句 使其在座位表中開始隨機滾動,當遇到選座狀態為紅色的時候需要重新計算, 如果不是紅色(即 index=0)直接選座。 自助選座:首先設置初始值為空,建立一個自動排列的座位表,進入頁面時自動獲取座位數據。 傳統的考試主要考核學生的基礎知識點掌握情況,題型主要包括以名詞解釋、填空題、選擇題及簡答題。本研究依然采用傳統的書面考試,但在題型方面做了調整,包括選擇題及病例分析題,學生只有對所學知識深入理解、綜合分析才能給出正確答案,重點考察學生的臨床思維能力。研究結果顯示,與傳統的教學模式相比,整合醫學教學模式對學生考試總成績及病例分析題成績均有明顯的提升。調查問卷的分析結果表明,整合醫學教學模式有利于學生學習動機、自主學習能力的提升,更有助于學生分析解決臨床實際問題及臨床思維綜合運用能力的提高,同時這種教學模式得到學生的普遍認可。 接著做一個判斷語句,查詢學生是否選座位。 如果沒選座,則可進行選座操作 之后將學生信息和座位信息傳入后臺, 進行更新操作 基本的數據傳輸更新完成后,對座位進行賦值,并存入緩存,保存用戶的座位信息。 if (list[index]== 0 || list[index]== ''|| list[index]== null) 對座位的狀態進行判斷,如果是紅色則彈出提示已經選座,如果沒有則進行下一步操作。 首先創建可選擇的時間 序列 array: [1,2],對增加時間進行格式規定與轉換 在后臺創建一個 SeatScheduleTask 的類,類中對象 userSeat Service、classInfo Service。調用 seat()方法,在方法中做一個定時管理器,并對時間格式進行編寫。 SimpleDataFormat d = new SimpleDataFormat(“yy-MM-dd HH:mm”);String date = d.format(new Date()); 預約與續座大致相同,只是時間和可視化上有所調整。 map.put(“ret”,userSeatService.queryUserSeatList(userSeat)); 學生在進入選座系統后,需要先選擇座位,再進行預約。預約時需要選座預約時間,且預約時間必須比當前時間晚。 系統測試時在系統的開發后針對于該系統的某個功能點或者性能進行測試,其目的是為了發現潛在問題,檢測系統漏洞,更好的將系統進行再一次的優化以保證系統的正常運行。 學生模塊主要功能包括選座、續座、預約。由于功能之間關聯性強,每一項測試都會互相 影響功能,如表1 所示為測試用例。 經過測試,每個功能模塊大體達到預期效果,通過此次測試結果與實際操作相對比得知,該系統功能的操作性是可行的,因此在系統的設計上進行層次分析的辦法和技術可行,有一定的使用價值。 在高校人數不斷增多的現如今,想要更好的優化系統已實現趨于成熟的微信小程序,要將后續工作以如何構建針對項目實施過程的質量評價體系為研究方向,對每個功能架構的細節與尚未解決的問題進行更加深入研究。
2.3 選座流程設計








2.4 續座設計

2.5 預約
3 系統測試與結構分析
3.1 測試用例
3.2 測試結果
4 結論