辛世龍,譚凌風,潘鵬宇,黃開杰,石俊杰



摘要:為了充分滿足用戶的需求,系統提供了課程表顯示、課程事件提醒、畢業計劃課程查詢、成績查詢、選課查詢、學分查詢、藏書查詢、考試安排查詢、一鍵式教學評價等功能。課程事件提醒,可以有效避免學生忘記上課。成績查詢,可以讓學生快速地了解到自己的考試成績。圖書館藏查詢,可以讓學生快速在圖書館中找到自己想要的書籍。一鍵評教,可以讓學生從重復的點擊工作中解脫出來。自桂電課程表測試以來,獲得了不少同學們的認可,方便了同學們的生活,這便是我們做桂電課程表軟件的意義所在。
關鍵詞:Android;課程表;成績查詢
中圖分類號:TP311? ? 文獻標識碼:A
文章編號:1009-3044(2021)20-0081-02
1引言
目前,大部分高校的課堂教學都采用流動式的課室,即學生沒有固定的教室,在上課前,學生需要查詢課表,找到相應課程的上課時間(包括周次、節次等)、上課地點等。隨著互聯網技術和移動技術的快速發展,當前大學生的生活方式、學習習慣也發生了很大的變化,智能手機在現代大學生中普及度非常高,學生越來越喜歡通過手機處理日常生活學習中的一些事務[1]。移動化課表的實時更新、一步到位來代替課表的拍照截圖或紙質化課表,給學生們帶來了更加便捷的方式,無疑更受學生們的青睞。
2設計背景
隨著智能時代的發展,移動通信技術日益成熟,Android移動設備得到了廣泛的使用。手機軟件登上智能時代的舞臺,各式各樣的手機軟件給人們帶來娛樂的同時,也給人們的日常生活帶來了諸多便利。作為新時代的弄潮兒,大學生人人擁有一部智能手機,學生應用廣泛,涉及社交、游戲、娛樂、購物等,而在學習應用的設計上還較少,集成學生各方面信息的應用更是寥寥無幾[2]。基于此,本文利用Android平臺設計一款面向學生使用的課程信息軟件。
3系統的需求分析
3.1 系統功能性分析
3.1.1課程表與課程信息的調整
時間選擇:可以選擇想要查看的學期和周數。
課表呈現:將當前周的課表展現出來。
時間調整:可以進行上課時間調整(或者學期調整)。
3.1.2登錄
登錄:有內網登錄和外網登錄兩種模式
驗證碼自動識別:實現驗證碼的自動填寫,或者由后臺完成驗證碼的校驗。
3.1.3信息查詢
查詢功能:用戶可以查詢到個人信息、畢業計劃課程、成績單、考試安排、CET成績、學分績、圖書館藏等。
3.1.4更多功能
評教:可以進行一鍵評教,由網絡線程和Toast線程組成。
應用更新:可以進行自動應用更新。當新版本發布時,通知欄會有消息提示。
消息推送:可以將下一節課的信息在通知欄中推送。
小部件:可在手機桌面添加小部件。
常用工具:包括桂電校歌、桂電電話本、桂電地圖、公眾號、常用鏈接、教學日歷。
3.2 系統非功能需求
3.2.1界面優化
在外網登錄中,老用戶在登錄時點擊學號輸入框,就會出現一個列表。再點擊列表中自己的學號,其余輸入框都會被自動填寫,用戶只需點擊登錄即可。如果是新用戶登錄,則進入登錄界面時,焦點會集中在學號的輸入框,并且呈現輸入鍵盤。
3.2.2 交互性
系統功能交互可以體現在圖書館藏中,用戶翻頁過快時,會給予用戶反饋。在外網登錄時,網絡異常或者跳轉失敗等問題出現時,都會給予用戶相應的提示和解決方法。登錄期間等待時間過長時,會提示用戶耐心等待。
3.2.3 安全性
當應用發生用戶無法自行解決的錯誤時,用戶只需要將打印出的錯誤日志發送給開發人員,而不是自己的賬號信息。比如,在外網登錄中,我們專門構建了一個包用于處理遇到的各種網絡錯誤。如果沒有登錄,課表顯示為空,功能菜單不可用。
4 系統的總體設計
4.1 系統模塊設計
根據程序的設計,將程序分成3個模塊。課程表與課程信息的調整,以課表顯示功能為主,課表信息調整為輔,讓學生已進入App就可以看到詳細的課程安排。
各類信息查詢功能,包括但不限于個人信息查詢,考試成績查詢,考試安排查詢,圖書館藏信息查詢等等,盡力滿足用戶的各種信息查詢要求,直接快捷簡單。
常用工具模塊功能,是為了讓學生可以快速完成一些重復的工作,比如關于本款軟件的更新,各類輔助功能Q群的頁面跳轉,學校各級領導電話的撥打,又或者是一鍵評教的實現,讓用戶輕輕松松達成目的。
4.2 接口設計
4.2.1網頁數據獲取接口
在Http包和Https包中,都有一個叫作HTTPConnectionAndCode的類,用于與學分制系統的網頁對接,以進行數據的獲取。以及處理消息頭GET和POST方法的類,和處理驗證碼的類。
一般將網頁的url,user_agent,refer,cookie,tail,success_response作為參數傳入。
4.2.2數據庫接口
在Database包中,對應各類對象,構造相應的Dao類接口,主要實現數據的插入、刪除、部分選擇以及全部選擇。
4.3 數據庫設計
構建了一個包,包名叫Database含有AppDatabase(應用數據庫),AppTestDatabase(測試數據庫),DAO類接口(主要用于數據庫操作)以及CET、ClassInfo、TermInfo等各種對象類。
5 軟件測試
5.1功能測試