2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩88頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  本科畢業(yè)設(shè)計說明書</b></p><p>  題 目:基于百度云平臺的校外實 </p><p>  習管理系統(tǒng)設(shè)計及實現(xiàn)</p><p>  院 (部):計算機科學(xué)與技術(shù)學(xué)院</p><p>  專 業(yè):軟件工程</p><p>  班

2、 級:軟件123</p><p><b>  姓 名:李娜</b></p><p>  學(xué) 號:20121112090</p><p><b>  指導(dǎo)教師:伊靜</b></p><p>  完成日期:2016-05-26</p><p><b>

3、  目 錄</b></p><p><b>  摘要V</b></p><p>  ABSTRACTVI</p><p><b>  1 前言</b></p><p>  1.1選題背景1 </p><p>  1.2系統(tǒng)簡要說明2 </p>

4、<p>  1.3相關(guān)開發(fā)技術(shù)簡介3 </p><p>  1.3.1 MVC設(shè)計模式3 </p><p>  1.3.2 Android3 </p><p>  1.3.3 Afinal框架4 </p><p>  1.3.4 移動互聯(lián)技術(shù)5 </p><p>  1.3.5 實時通信技術(shù)5

5、 </p><p>  1.3.6 圖片處理技術(shù)6 </p><p>  1.3.7 語音識別技術(shù)7 </p><p>  1.3.8 信息緩存技術(shù)7 </p><p>  1.3.9 HTTP協(xié)議8</p><p>  1.3.10 PHP語言8 </p><p><b>

6、  1.4應(yīng)用前景9</b></p><p><b>  2 需求分析</b></p><p>  2.1 任務(wù)概述10 </p><p>  2.1.1 目標10</p><p>  2.1.2 開發(fā)環(huán)境10 </p><p>  2.1.3 運行環(huán)境10 </p&g

7、t;<p>  2.1.4 條件與限制11</p><p>  2.1.5 用戶特征11</p><p>  2.2 數(shù)據(jù)描述11 </p><p>  2.2.1 靜態(tài)數(shù)據(jù)11 </p><p>  2.2.2 動態(tài)數(shù)據(jù)11</p><p>  2.3 功能需求12 </p>

8、<p>  2.3.1 業(yè)務(wù)流程圖12</p><p>  2.3.2 功能劃分12 </p><p>  2.3.3 其他功能需求12</p><p>  2.4 性能需求13 </p><p>  2.4.1 數(shù)據(jù)精確度13 </p><p>  2.4.2 時間特性14</p>

9、<p>  2.4.3 適應(yīng)性14</p><p>  2.5 運行需求14</p><p>  2.5.1 用戶界面14</p><p>  2.5.2 硬件接口14 </p><p>  2.5.3 軟件接口14</p><p>  2.5.4 故障處理15 </p><

10、p><b>  3 概要設(shè)計</b></p><p>  3.1 系統(tǒng)結(jié)構(gòu)設(shè)計16</p><p>  3.2 功能概要設(shè)計16 </p><p>  3.2.1模塊功能描述16</p><p>  3.2.2 系統(tǒng)用例圖18 </p><p>  3.2.3目標業(yè)務(wù)時序圖19&l

11、t;/p><p>  3.3 數(shù)據(jù)庫設(shè)計19 </p><p>  3.3.1 概念結(jié)構(gòu)設(shè)計19</p><p>  3.3.2 邏輯結(jié)構(gòu)設(shè)計22 </p><p>  3.3.3 物理結(jié)構(gòu)設(shè)計25 </p><p>  4 詳細設(shè)計與系統(tǒng)實現(xiàn)</p><p>  4.1 系統(tǒng)總體結(jié)構(gòu)26

12、 </p><p>  4.2 系統(tǒng)架構(gòu)設(shè)計27 </p><p>  4.2.1 Model層的實現(xiàn)27 </p><p>  4.2.2 View層的實現(xiàn)27 </p><p>  4.2.3 Controller層的實現(xiàn)28</p><p>  4.3 系統(tǒng)關(guān)鍵基礎(chǔ)類28</p><

13、p>  4.4 百度云數(shù)據(jù)庫配置29</p><p>  4.5 公共模塊功能設(shè)計與實現(xiàn)32</p><p>  4.5.1 登錄功能32 </p><p>  4.5.2 忘記密碼功能34 </p><p>  4.6 考勤功能模塊設(shè)計與實現(xiàn)37</p><p>  4.7 統(tǒng)計分析功能模塊設(shè)計與實現(xiàn)

14、44 </p><p>  4.8 一鍵SOS功能模塊設(shè)計與實現(xiàn)46</p><p>  4.9 請假審批功能模塊設(shè)計與實現(xiàn)50 </p><p>  4.10 通知推送功能模塊設(shè)計與實現(xiàn)54</p><p>  4.11 實時定位功能模塊設(shè)計與實現(xiàn)57 </p><p>  4.12 語音查詢功能模塊設(shè)計與

15、實現(xiàn)60 </p><p>  4.13其他功能界面設(shè)計說明63</p><p><b>  5 系統(tǒng)測試</b></p><p>  5.1 測試計劃描述65 </p><p>  5.2 測試環(huán)境65</p><p>  5.3 測試結(jié)果及分析65</p><p&

16、gt;  5.3.1 功能測試報告65 </p><p>  5.3.2 性能測試報告70 </p><p>  5.3.3 安全測試報告71 </p><p>  5.3.4 易用性測試報告72</p><p>  5.3.5 可靠性測試報告73</p><p>  5.4 測試結(jié)論與建議74</p

17、><p><b>  6 總結(jié)78</b></p><p><b>  謝辭79</b></p><p><b>  參考文獻80</b></p><p><b>  摘要</b></p><p>  校外實習是高校學(xué)生都需要經(jīng)

18、歷的一個教學(xué)過程,通過對這些學(xué)生進行及時有效的管理,確保其人身安全是學(xué)校管理的一個重要課題,同時也是一個難題。</p><p>  本系統(tǒng)是以校外實習管理的需求為基礎(chǔ),經(jīng)過大量實踐調(diào)查和歸納總結(jié)開發(fā)的一套基于百度云平臺的校外實習管理系統(tǒng)。系統(tǒng)分為兩個客戶端,教師端和學(xué)生端。學(xué)生端的主要功能是定位當前位置、拍攝水印照片、發(fā)送考勤信息、發(fā)送請假信息、一鍵SOS等。教師端的主要功能是 考勤情況查看、考勤情況統(tǒng)計分析、請

19、假審批、實時定位、同地圖定位、通知推送、語音查詢等。</p><p>  本系統(tǒng)以百度云數(shù)據(jù)庫與手機客戶端相分離的C/S結(jié)構(gòu)和將業(yè)務(wù)邏輯和數(shù)據(jù)顯示分離開來的MVC設(shè)計模式進行開發(fā)。以百度云平臺為依托,綜合運用移動互聯(lián)技術(shù)、實時通信技術(shù)、圖片處理技術(shù)、信息緩存技術(shù)、百度地圖、百度應(yīng)用引擎、百度云存儲、百度云數(shù)據(jù)庫、百度媒體云等多種開發(fā)技術(shù),實現(xiàn)了定位、存儲、推送、瀏覽、即時通訊等功能,實現(xiàn)了校外實習管理的基本需求,

20、擁有很強的可操作性及應(yīng)用前景。</p><p>  關(guān)鍵詞:校外實習管理;安卓;C/S;MVC;實時通信;XMPP;通知推送;SOS;百度云</p><p>  Design and implementation of Practice Outside The College Management System Based on The Baidu Cloud Platform</p

21、><p><b>  ABSTRACT</b></p><p>  Practice outside the college is all of college students need to experience a teaching process. It is an important problem to ensure the security of stude

22、nts by timely and effective management,it is also a difficult problem.</p><p>  This system is based on the requirement of Practic Outside The College Management, after a lot of practice survey and summarize

23、d, and is developed a Practice Outside The College Management System which is Based on The Baidu Cloud Platform.</p><p>  This system is divided into a couple of client-side: Teachers’client and Student’clie

24、nt. Some importmant functions for Student’client includes locating the current location, watermark photographs taken, sending attendance information, sending leave the information and one-key SOS function etc. Some impor

25、tmant functions for Teachers’client includes viewing attendance situation, the statistics and analysis of the attendance situation, approval of asking for leave, real-time location, one map locat</p><p>  Th

26、is system uses a C/S architecture model where database server based on Baidu cloud and client software is separated from each other, and it uses a MVC design pattern where business logic and data display is separated fro

27、m each other. This system based on Baidu cloud platform, the integrated use of a variety of technologies such as mobile Internet technology, real time communication technology, image-processing technology, information ca

28、che technology, Baidu Maps, Baidu App Engine, Baidu Object</p><p>  Key Words:Practic Outside The College Management;Android;C/S;MVC;real time communication;XMPP;push notification; SOS; Baidu Cloud</p>

29、<p><b>  1 前言</b></p><p><b>  1.1選題背景</b></p><p>  校外實習是高校學(xué)生都需要經(jīng)歷的一個教學(xué)過程,同時也是學(xué)校教務(wù)管理的一個重要工作,而對校外實習的學(xué)生進行及時有效的管理是學(xué)生工作人員工作的重中之重。通過對這些學(xué)生進行及時有效的管理,確保其人身安全是學(xué)校管理的一個重要課題,同時

30、也是一個難題,其主要原因就是由于時間、地點等因素,導(dǎo)致現(xiàn)有的管理制度無法及時準確掌握校外學(xué)生的信息。綜合而言主要有以下幾個方面的問題:</p><p>  學(xué)校無法掌握校外實習學(xué)生的考勤情況;</p><p>  現(xiàn)有的考勤制度無法完成準確考勤(是否本人簽到);</p><p>  通知下發(fā)不夠及時方便;</p><p>  校外人身安全難以

31、保障,緊急情況求救不便;</p><p>  請假審批不夠及時便捷;</p><p>  各班級考勤情況不能及時統(tǒng)計對比;</p><p>  考勤管理信息化程度明顯不足;</p><p>  難以實現(xiàn)校外實習管理一站式服務(wù)。</p><p>  移動設(shè)備的快速發(fā)展給我們帶來了新的思路。Android系統(tǒng)的出現(xiàn)給智能移

32、動設(shè)備帶來一場新的革命,它的易用性、界面友好性都深深吸引用戶。人們越來越希望能在智能移動終端上完成之前只能在PC上完成的工作,事實上Android已經(jīng)做到了這一點。 智能手機可以通過連接網(wǎng)絡(luò)方便地實現(xiàn)定位、拍攝、語音、收發(fā)消息等功能,智能手機的迅速普及為校外實習管理的實現(xiàn)帶來了可能。</p><p>  轉(zhuǎn)向云計算,是業(yè)界將要面臨的一個重大改變。各種云平臺的出現(xiàn)是該轉(zhuǎn)變的最重要環(huán)節(jié)之一,我們似乎都看到了個性化和規(guī)

33、?;耐昝澜y(tǒng)一。云平臺優(yōu)點眾多:搭建快速、操作簡捷、智能管理;運行穩(wěn)定、安全可靠;彈性擴展、節(jié)約成本。將應(yīng)用部署于云平臺上已成為大勢所趨。</p><p>  針對以上存在的幾點問題,借助智能移動設(shè)備進行基于百度云平臺的校外實習管理為學(xué)校教務(wù)管理開辟了一種新的管理模式,對高校提高管理效率,進行規(guī)范化、科學(xué)化管理具有重要意義。主要體現(xiàn)在:</p><p>  手機定位加水印照片考勤,精準考勤

34、;</p><p>  通知推送功能,通知下發(fā)及時方便;</p><p>  一鍵SOS功能,緊急求救一鍵完成;</p><p>  請假審批,請假手續(xù)網(wǎng)上辦理;</p><p><b>  考勤情況統(tǒng)計評比;</b></p><p>  語音查詢,方便快捷;</p><p&g

35、t;  考勤、請假、求救、評比,人員管理一站式服務(wù)。</p><p><b>  1.2系統(tǒng)簡要說明</b></p><p>  基于百度云平臺的校外實習管理系統(tǒng)是高校基礎(chǔ)管理系統(tǒng)之一。引進該系統(tǒng)將有助于探索新的考勤管理模式,為改善高校學(xué)風、營造良好的學(xué)習氛圍提供有力支持。同時,利用移動終端將考勤情況信息化,可以減輕相關(guān)人員管理負擔,輕松便捷實現(xiàn)高效管理。</p

36、><p>  按照各角色所承擔的業(yè)務(wù),本系統(tǒng)主要由兩個功能模塊組成:教師模塊和學(xué)生模塊。其中,教師模塊的主要功能包括:</p><p>  (1) 考勤情況查看;</p><p>  (2) 考勤情況統(tǒng)計分析;</p><p><b>  (3) 請假審批;</b></p><p><b>

37、  (4) 實時定位;</b></p><p><b>  (5) 通知推送;</b></p><p><b>  (6) 語音查詢;</b></p><p>  (7) 接收求救信息。</p><p>  學(xué)生模塊的主要功能包括:</p><p>  (1) 定

38、位當前位置;</p><p>  (2) 拍攝水印照片;</p><p>  (3) 發(fā)送考勤信息;</p><p>  (4) 一鍵SOS;</p><p><b>  (5) 請假。</b></p><p>  該系統(tǒng)兩個模塊分別擁有自己的客戶端,功能不同,客戶端不同,登錄時無需進行角色驗證。

39、</p><p>  1.3相關(guān)開發(fā)技術(shù)簡介</p><p>  1.3.1 MVC設(shè)計模式</p><p>  MVC模式(Model-View-Controller)是軟件工程中的一種軟件設(shè)計典范,把軟件系統(tǒng)分為三個基本部分:模型(Model)、視圖(View)和控制器(Controller)。它們各自的功能分別為:</p><p>  

40、(1) 控制器(Controller)- 負責轉(zhuǎn)發(fā)請求,對請求進行處理。</p><p>  (2) 視圖(View) - 界面設(shè)計人員進行圖形界面設(shè)計。</p><p>  (3) 模型(Model) - 程序員編寫程序應(yīng)有的功能(實現(xiàn)算法等等)、數(shù)據(jù)庫專家進行數(shù)據(jù)管理和數(shù)據(jù)庫設(shè)計(可以實現(xiàn)具體的功能)。</p><p>  這種經(jīng)典的模式優(yōu)點眾多,主要包括低耦合

41、性、高重用性和可適用性、較低的生命周期成本、部署快,可維護性高。</p><p>  MVC模式的目的是實現(xiàn)一種動態(tài)的程序設(shè)計,使后續(xù)對程序的修改和擴展簡化,并且使程序某一部分的重復(fù)利用成為可能。除此之外,此模式通過對復(fù)雜度的簡化,使程序結(jié)構(gòu)更加直觀。軟件系統(tǒng)通過對自身基本部分分離的同時也賦予了各個基本部分應(yīng)有的功能。</p><p>  圖1-1 MVC組件類型的關(guān)系和功能</p&

42、gt;<p>  1.3.2 Android</p><p>  Android系統(tǒng)架構(gòu)采用了分層架構(gòu)的思想,從底層到上層共有四層:Linux Kernel(Linux 內(nèi)核層)、Android Runtime and Libraries(系統(tǒng)運行庫層)、Application Framework(應(yīng)用程序框架層)和Applications(應(yīng)用程序?qū)樱?。四層架?gòu)分工合作,將Android 打造成一

43、種以Linux 為核心的移動平臺。</p><p>  圖1-2 Android系統(tǒng)架構(gòu)圖</p><p>  1.3.3 Afinal框架</p><p>  Afinal 是一個Android的sqlite orm和ioc框架。同時封裝了Android中的Http框架,使其更加簡單易用;使用FinalBitmap,無需考慮Bitmap在Android中加載的時候

44、OOM的問題和快速滑動的時候圖片加載位置錯位等問題。</p><p>  目前Afinal主要有四大模塊:</p><p>  (1) FinalDB模塊:Android中的orm框架,一行代碼就可以進行增刪改查。支持一對多,多對一等查詢。</p><p>  (2) FinalActivity模塊:Android中的ioc框架,完全注解方式就可以進行UI綁定和事件

45、綁定。無需findViewById和setClickListener等。</p><p>  (3) FinalHttp模塊:通過Httpclient進行封裝Http數(shù)據(jù)請求,支持Ajax方式加載。</p><p>  (4) FinalBitmap模塊:通過FinalBitmap,Imageview加載Bitmap的時候無需考慮Bitmap加載過程中出現(xiàn)的OOM和Android容器快速滑

46、動時出現(xiàn)的圖片錯位等現(xiàn)象。FinalBitmap可以配置線程加載線程數(shù)量,緩存大小,緩存路徑,加載顯示動畫等。</p><p>  Afina的宗旨是簡潔,快速。約定大于配置的方式。盡量一行代碼完成所有事情。</p><p>  1.3.4 移動互聯(lián)技術(shù)</p><p>  隨著智能手機的普及、3G/4G時代的到來和各種應(yīng)用的推出,互聯(lián)網(wǎng)已從桌面PC走向手機及其他移

47、動設(shè)備。移動互聯(lián)網(wǎng)是在互聯(lián)網(wǎng)技術(shù)經(jīng)過充分發(fā)展之后,與移動通信的數(shù)據(jù)通信能力相結(jié)合形成的技術(shù)平臺,解決了常規(guī)互聯(lián)網(wǎng)受網(wǎng)絡(luò)接入條件制約的訪問能力問題。</p><p>  本系統(tǒng)以百度云作為網(wǎng)絡(luò)交互平臺,提供核心服務(wù):響應(yīng)數(shù)據(jù)請求和進行數(shù)據(jù)庫增刪改查,用戶的手持設(shè)備或便攜式設(shè)備作為移動端,通過聯(lián)網(wǎng),校外實習學(xué)生就可以利用本系統(tǒng)進行個人信息的獲取,如:用戶所在地理位置、用戶姓名、用戶編號以及用戶頭像,學(xué)生用戶通過本系統(tǒng)

48、的拍照功能即可將自己的照片加上時間和地點水印發(fā)送到百度云存儲和云數(shù)據(jù)庫,這樣學(xué)生用戶就完成了簽到;;教師用戶通過聯(lián)網(wǎng),可以查看當天學(xué)生的考勤情況以及考勤信息如:所在的考勤位置、考勤時間和考勤圖片,教師還可以查看自己所管轄的所有學(xué)生一個月或者一周的考勤情況餅狀圖。移動互聯(lián)網(wǎng)技術(shù)讓本系統(tǒng)的用戶可以隨時隨地的進行考勤操作,讓考勤雙方能隨時獲取考勤信息。</p><p>  1.3.5 實時通信技術(shù)</p>

49、<p>  在傳統(tǒng)的互聯(lián)網(wǎng)應(yīng)用中,由于人們無法攜帶計算機并保持開機和接入網(wǎng)絡(luò),因此更多的是非實時通信,如電子郵件等。發(fā)展到在移動互聯(lián)網(wǎng)應(yīng)用中,移動終端時刻伴隨著用戶,就產(chǎn)生了把消息實時通知用戶的需求。但是移動終端存在電池容量低和網(wǎng)絡(luò)流量收費高的挑戰(zhàn),因此需要研究移動互聯(lián)網(wǎng)下的實時通信技術(shù)。 </p><p>  XMPP協(xié)議是一種基于可擴展標記語言XML的高度自由、高度開放的協(xié)議,可以方便快

50、捷地實現(xiàn)即時通訊(IM)。XMPP超強的跨平臺性和可擴展性,直觀性和廉價性,為系統(tǒng)提供了良好的可用性。</p><p>  本系統(tǒng)利用開源服務(wù)器Openfire在Android平臺上設(shè)計并實現(xiàn)了基于XMPP協(xié)議的即時通信系統(tǒng)。教師端,教師可以隨時查看任一學(xué)生的當前位置,并時刻監(jiān)聽,在學(xué)生發(fā)出求救信息后即刻接收并及時作出反應(yīng);學(xué)生端,可實現(xiàn)請假及一鍵SOS功能,在遇到緊急情況時立刻向教師及指定好友發(fā)送求救信息。&l

51、t;/p><p>  圖1-3 XMPP協(xié)議簡單示意圖</p><p>  圖1-4消息推送示意圖</p><p>  1.3.6 圖片處理技術(shù)</p><p>  圓角處理:傳統(tǒng)的矩形照片不適合軟件界面的布局,影響界面的美觀,因此本系統(tǒng)的用戶頭像均采用圓角圖片的處理技術(shù)對矩形圖片進行切割覆蓋處理圓角化圖片,這樣更符合人的審美,也適合軟件界面的

52、布局,使界面更人性化,用戶體驗更好。</p><p>  圖1-5 圓角處理簡單示意圖</p><p>  水印處理:本系統(tǒng)采用的圖片水印處理技術(shù)在原來照片的基礎(chǔ)上加上了時間、地點和頭像然后進行整體截圖,生成的水印照片不但起到美化作用,更是將一些必要信息直接展示給教師看,減少了加載數(shù)據(jù)的必要,起到了節(jié)省流量的作用。</p><p>  圖1-6 水印技術(shù)簡單示意圖&

53、lt;/p><p>  1.3.7 語音識別技術(shù)</p><p>  現(xiàn)在熱門的體感交互以及語音控制,技術(shù)的趨勢總是想方設(shè)法讓我們能夠用最自然的方式與機器交流,而語音作為人類溝通和獲取信息最自然最便捷的方式,必然成為人機交互的未來趨勢。本系統(tǒng)在教師端采用百度語音識別技術(shù),智能識別語音返回識別字符串,在進行字符串配對查找學(xué)生資料,查詢學(xué)生信息只需語音即可,無需用手操作,智能快捷。</p&g

54、t;<p>  1.3.8 信息緩存技術(shù)</p><p>  本系統(tǒng)第一次登錄就會緩存用戶信息,如:用戶名,用戶密碼,用戶頭像,用戶分組號,用戶名電話等信息與本地,第二次登錄將實現(xiàn)自動登錄(如果選擇自動登錄選項的話),并檢查是否有本地緩存,有的話將自動加載本地數(shù)據(jù)和圖片。這樣將大大減少聯(lián)網(wǎng)流量,減少用戶的經(jīng)濟負擔。</p><p>  圖1-7 信息緩存簡單示意圖</p

55、><p>  1.3.9 HTTP協(xié)議</p><p>  HTTP的主要特點可概括為:能夠支持客戶/服務(wù)器模式;簡單快速,客戶向服務(wù)器請求服務(wù)時,只需傳送請求方法和路徑,由于HTTP協(xié)議簡單,使得HTTP服務(wù)器的程序規(guī)模?。籋TTP允許傳輸任意類型的數(shù)據(jù)對象,因此更加靈活;我們采用無連接的方式處理請求,即服務(wù)器處理完客戶的請求,并收到客戶的應(yīng)答后,就斷開連接,采用這種方式可以節(jié)省傳輸時間。&

56、lt;/p><p>  本系統(tǒng)客戶端(Android)通過HTTP協(xié)議連接服務(wù)器端的PHP程序,通過JSON格式發(fā)送SQL請求到服務(wù)器端,服務(wù)器端的PHP解析JSON格式,獲取詳細請求,然后PHP程序再從服務(wù)器數(shù)據(jù)庫獲取數(shù)據(jù),再把數(shù)據(jù)封裝成JSON格式,再通過HTTP協(xié)議發(fā)送給客戶端,客戶端再解析接收到的JSON數(shù)據(jù)格式,還原成原來的數(shù)據(jù)。</p><p>  圖1-8 HTTP協(xié)議簡單示意圖

57、</p><p>  1.3.10 PHP語言</p><p>  PHP的主要特點可概括為:PHP 運行于各種平臺(Windows,Linux,Unix,Mac OS X 等等);兼容幾乎所有服務(wù)器(Apache,IIS 等等);支持多種數(shù)據(jù)庫;沒有成本,可供免費下載和使用;</p><p>  PHP是基于服務(wù)器端的,因此即使再多的用戶,再復(fù)雜的程序也不會影響運

58、行的速度。</p><p><b>  1.4應(yīng)用前景</b></p><p>  目前,市場上存在的手機考勤軟件,例如“外勤365”、“18云辦公”、“管家婆簽到通”等,基本都是以外勤管理為核心,面向不同的終端用戶(Web、iPhone、Android),大部分擁有定位、考勤、日志、客戶、簽到、請假等多項應(yīng)用功能,借此提高企業(yè)外勤管理的效率。但這些軟件存在以下弊端:

59、</p><p>  沒有提供語音查詢的功能。</p><p>  沒有提供一定小規(guī)模人員的同時定位功能。</p><p>  沒有充分體現(xiàn)以人為本的設(shè)計理念,過多注重對人員的管理,而忽略了考勤的目的一方面是為了監(jiān)督作用,提高出勤率和工作效率,更重要的一點是為了校外學(xué)生的安全考慮,避免校外學(xué)習時出現(xiàn)一些突發(fā)事件而來不及及時作出反應(yīng)。</p><p

60、>  系統(tǒng)功能過于龐大,對用戶的流量計費沒有充分考慮。</p><p>  本系統(tǒng)充分利用移動互聯(lián)網(wǎng)絡(luò)實現(xiàn)了實時的信息傳遞,具有很強的可操作性及應(yīng)用前景,完全能夠適用于不同地域,滿足不同高校的需求,應(yīng)用前景廣。本系統(tǒng)的應(yīng)用對高校提高管理效率,進行規(guī)范化、科學(xué)化管理具有重要意義,使高校校外實習管理再上一個新的臺階。</p><p><b>  2 需求分析</b>

61、</p><p><b>  2.1 任務(wù)概述</b></p><p><b>  2.1.1 目標</b></p><p>  (1) 明確軟件需求,加速開發(fā)進程;</p><p>  (2) 學(xué)生使用本系統(tǒng)可以實現(xiàn)定位當前位置、拍攝水印照片、發(fā)送考勤信息、發(fā)送請假信息、一鍵SOS等功能;<

62、/p><p>  (3) 教師使用本系統(tǒng)可以實現(xiàn)考勤情況查看、考勤情況統(tǒng)計分析、請假審批、實時定位、同地圖定位、通知推送、語音查詢等功能;</p><p>  (4) 高校對校外實習實現(xiàn)規(guī)范化、科學(xué)化管理。</p><p>  2.1.2 開發(fā)環(huán)境</p><p><b>  (1) 硬件:</b></p>&

63、lt;p>  1) PC機:處理器為Intel,內(nèi)存2G;</p><p>  2) 測試機:操作系統(tǒng)為Android 4.0以上版本的智能手機。</p><p><b>  (2) 軟件:</b></p><p>  1) ADT-Bundle-windows-x86-20140702:Android集成開發(fā)環(huán)境,其中包含已安置ADT插

64、件的Eclipse和Android SDK;</p><p>  2) jdk 1.7:Java語言開發(fā)工具包,包含了Java程序開發(fā)所需要的環(huán)境、工具和資源;</p><p>  3) IE瀏覽器:訪問網(wǎng)頁,進行有關(guān)百度云平臺的配置和操作;</p><p>  4) Zend Studio 10:PHP語言集成開發(fā)環(huán)境(IDE);</p><p

65、>  5) Tortoise SVN-1.8.10.26129-x64:開放源代碼的版本控制系統(tǒng),向百度云服務(wù)器提交代碼;</p><p>  6) openfire 3_7_1:基于XMPP協(xié)議的開源實時協(xié)作(RTC)服務(wù)器,以此構(gòu)建高效率的即時通信服務(wù)器。</p><p>  2.1.3 運行環(huán)境</p><p>  (1) 硬件:操作系統(tǒng)為Android

66、 4.0以上版本的智能手機。</p><p><b>  (2) 軟件:</b></p><p>  1) jdk 1.7;</p><p>  2) Mysql數(shù)據(jù)庫(位于百度云服務(wù)器);</p><p>  2.1.4 條件與限制</p><p>  客戶端要求:操作系統(tǒng)為Android 4.

67、0以上版本的智能手機。</p><p>  2.1.5 用戶特征</p><p>  本系統(tǒng)用戶為各高校學(xué)生管理人員和校外實習的學(xué)生,主要用戶有以下兩類:</p><p>  (1) 校外實習學(xué)生:主要負責向教師發(fā)送考勤、請假信息;</p><p>  (2) 教師:負責學(xué)生校外實習的管理,主要包括統(tǒng)計查看學(xué)生考勤信息、請假審批、通知推送等。

68、</p><p><b>  2.2 數(shù)據(jù)描述</b></p><p>  2.2.1 靜態(tài)數(shù)據(jù)</p><p>  靜態(tài)數(shù)據(jù)是指基本保持穩(wěn)定的數(shù)據(jù)。本系統(tǒng)中的主要靜態(tài)數(shù)據(jù)有以下幾類:</p><p>  AttManager表(教師表):教師ID、教師姓名、教師頭像、教師性別、聯(lián)系方式、教師管理班級數(shù);</p&g

69、t;<p>  AttGroup表(班級表):班級ID、班級名稱、班級人數(shù);</p><p>  AttObject表(學(xué)生表):學(xué)生ID、學(xué)生姓名、學(xué)生頭像、學(xué)生性別、學(xué)生年齡、學(xué)生電話、學(xué)生所在公司、學(xué)生應(yīng)在地址、緊急聯(lián)系人ID;</p><p>  AttInformation表(考勤信息表):考勤信息ID;</p><p>  AskForLe

70、ave表(請假表):請假ID。</p><p>  2.2.2 動態(tài)數(shù)據(jù)</p><p>  動態(tài)數(shù)據(jù)是指時常發(fā)生變化,并直接反映事務(wù)過程的數(shù)據(jù)。本系統(tǒng)中的主要靜態(tài)數(shù)據(jù)有以下幾類:</p><p>  AttGroup表(班級表):今日時間、今日到崗數(shù)、今日缺勤數(shù)、今日遲到數(shù)、周到崗數(shù)、周缺勤數(shù)、周遲到數(shù)、月到崗數(shù)、月缺勤數(shù)、月遲到數(shù);</p><

71、;p>  AttObject表(學(xué)生表):學(xué)生月到崗數(shù)、學(xué)生月缺勤數(shù)、學(xué)生月遲到數(shù)、考勤信息發(fā)送時間、今日考勤狀態(tài);</p><p>  AttInformation表(考勤信息表):考勤圖片路徑、考勤地址、考勤信息發(fā)送時間、考勤經(jīng)度、考勤緯度;</p><p>  AskForLeave表(請假表):請假時間、請假原因、是否準假。</p><p><b

72、>  2.3 功能需求</b></p><p>  2.3.1 業(yè)務(wù)流程圖</p><p>  圖2-1 校外實習管理業(yè)務(wù)流程圖</p><p>  2.3.2 功能劃分</p><p>  根據(jù)以上業(yè)務(wù)流程圖,本系統(tǒng)將校外實習管理的主要業(yè)務(wù)分為兩大模塊:學(xué)生端和教師端。以下介紹每個模塊的主要功能項目劃分情況:</p&

73、gt;<p>  學(xué)生模塊:獲取個人信息、修改個人資料、忘記密碼短信驗證、定位當前位置、拍攝水印照片、發(fā)送考勤信息、發(fā)送請假信息、一鍵SOS、添加緊急聯(lián)系人。</p><p>  教師模塊:獲取個人信息、修改個人資料、忘記密碼短信驗證、班級考勤情況查看、語音查詢、實時定位學(xué)生位置、學(xué)生月考勤情況查看、學(xué)生考勤水印照片查看、班級周考勤情況統(tǒng)計分析、班級月考勤情況統(tǒng)計分析、請假信息查看、請假審批、同地圖

74、定位、通知推送。</p><p>  2.3.3 其他功能需求</p><p>  (1) 主程序界面需求</p><p>  本軟件在操作和使用上要求簡單易用,參照目前各APP主流界面風格,結(jié)合本系統(tǒng)具體功能,做了如下界面設(shè)計:</p><p>  1) 側(cè)滑菜單:系統(tǒng)主要功能在教師模塊且教師模塊功能較多,因此在界面設(shè)計上仿照QQ 5.0引

75、入了側(cè)滑菜單,使功能操作更加靈活便捷;</p><p>  2) 自定義適配器:Android的API也提供了許多創(chuàng)建ListView適配器的快捷方式。例如ArrayAdapter、SimpleAdapter和SimpleCursorAdapter等。如果采用這些系統(tǒng)自帶的適配器,對于事件的響應(yīng)只能局限在一個行單位。假設(shè)一行里面有一個按鈕和一個圖片控件,它們之間的響應(yīng)操作是不一樣的。若采用系統(tǒng)自帶的適配器,就不能

76、精確到每個控件的響應(yīng)事件。因此在Adapter的使用上本系統(tǒng)采取自定義適配器來實現(xiàn)這個比較精確的請求,同時,對于功能需求更加合理,用戶使用更加人性化;</p><p>  3) 自定義彈出框:本系統(tǒng)中存在一些消息提示,此效果采用彈出框來顯示。PopupWindow這個類用來實現(xiàn)一個彈出框,可以使用任意布局的View作為其內(nèi)容,這個彈出框懸浮在當前Activity之上的任意位置,靈活便捷,符合用戶使用習慣,大大提高

77、用戶體驗;</p><p>  4) 餅狀圖:針對系統(tǒng)考勤情況統(tǒng)計對比功能引入餅狀圖,使用MPAndroidChart類庫實現(xiàn)Android設(shè)備上各種統(tǒng)計圖表的繪制,使統(tǒng)計結(jié)果更加直觀;</p><p>  5) 通知欄推送:針對本系統(tǒng)一鍵SOS和通知下發(fā)功能,引入了通知機制中的通知欄框架Notificaiton,它是位于頂層可以展開的通知列表,適用于此類及時的交互事件的通知;</p

78、><p>  6) 過渡動畫:軟件使用過程中,為避免干澀的切換到另一個界面或功能,特此引入過渡動畫。如界面切換過程中的進入動畫和退出動畫,在當前界面覆蓋或自然切換,保持了切換與過渡的連續(xù)性和整體性,使用戶擁有更加愉快地使用體驗。</p><p>  (2) 數(shù)據(jù)庫初始化需求</p><p>  系統(tǒng)投入使用前首先進行數(shù)據(jù)庫的數(shù)據(jù)錄入。主要需錄入以下幾部分內(nèi)容:</

79、p><p>  學(xué)生ID:學(xué)生的登錄名,即學(xué)生學(xué)號,不可更改;</p><p>  教師ID:教師的登錄名,即教師工號,不可更改;</p><p>  初始密碼:登錄時的初始密碼,用戶登錄成功后可重新設(shè)置;</p><p>  教師--班級關(guān)系:教師ID和教師所管理班級的ID;</p><p>  班級--學(xué)生關(guān)系:班級I

80、D和本班級內(nèi)所包含學(xué)生的ID。</p><p>  (3) 其他功能需求</p><p>  要求系統(tǒng)提供用戶名密碼驗證功能,在登錄界面進行用戶名和密碼的驗證。驗證用戶名在數(shù)據(jù)庫中是否存在,驗證密碼輸入位數(shù)用戶對應(yīng)的密碼位數(shù)是否相等。</p><p>  要求系統(tǒng)提供記住密碼功能,用戶下次登錄時無需再次輸入密碼。</p><p>  要求系統(tǒng)

81、提供自動登錄功能,用戶使用軟件時點擊本系統(tǒng)快捷方式即可自動登錄到主界面,無需在登錄界面點擊“登錄”按鈕。</p><p><b>  2.4 性能需求</b></p><p>  2.4.1 數(shù)據(jù)精確度</p><p>  數(shù)據(jù)要求必須精確,可靠,真實。進行數(shù)據(jù)操作請求時,如:查找、刪除、修改、添加,應(yīng)保證輸入數(shù)據(jù)與數(shù)據(jù)庫數(shù)據(jù)的相匹配性。而在滿

82、足用戶請求時,系統(tǒng)應(yīng)保證所響應(yīng)數(shù)據(jù)的查全率與查準率。</p><p>  2.4.2 時間特性</p><p>  該系統(tǒng)時間特性影響因素較多,比如網(wǎng)絡(luò)傳輸速度、云服務(wù)器訪問速度、系統(tǒng)數(shù)據(jù)量、系統(tǒng)當前在線用戶人數(shù)、客戶端硬件配置等,但系統(tǒng)總體響應(yīng)時間應(yīng)不超過5S,復(fù)雜功能響應(yīng)時間應(yīng)在可接受范圍之內(nèi)。</p><p><b>  2.4.3 適應(yīng)性</

83、b></p><p>  該系統(tǒng)主要基于Android平臺開發(fā),主要應(yīng)用于Android操作系統(tǒng)的智能手機。</p><p><b>  2.5 運行需求</b></p><p>  2.5.1 用戶界面</p><p>  系統(tǒng)用戶界面參照目前主流APP的界面風格結(jié)合自身功能綜合設(shè)計,主程序參照QQ 5.0風格設(shè)

84、置了側(cè)滑菜單,加入扁平化元素,并配以自定義列表、彈出框、過渡動畫等設(shè)計,使得整體界面風格清大方,簡單易用。</p><p>  2.5.2 硬件接口</p><p>  (1) 云端服務(wù)器內(nèi)存要求:128MB內(nèi)存或以上</p><p>  (2) 云端服務(wù)器磁盤要求:2GB或以上</p><p>  (3) 云端服務(wù)器帶寬要求:5Mb/S或以

85、上</p><p>  (4) 客戶端處理器要求:1GHz處理器或以上</p><p>  (5) 客戶端內(nèi)存要求:512MB內(nèi)存或以上</p><p>  (6) 運行環(huán)境硬件配置:真機,Android 4.2.1操作系統(tǒng),CPU主頻1.6GHz,運行內(nèi)存為2GB。</p><p>  2.5.3 軟件接口</p><p

86、>  (1) 云端服務(wù)器和數(shù)據(jù)庫操作實現(xiàn):通過IE瀏覽器訪問,進行有關(guān)配置和操作;</p><p>  (2) 代碼提交:Tortoise SVN-1.8.10.26129-x64</p><p>  (3) 客戶端操作系統(tǒng):Android</p><p>  (4) 客戶端系統(tǒng)必要配置:Android 4.0及以上</p><p> 

87、 (5) 開發(fā)環(huán)境軟件配置:</p><p>  Android集成開發(fā)環(huán)境:ADT-Bundle-windows-x86-20140702</p><p>  PHP語言集成開發(fā)環(huán)境(IDE):Zend Studio 10。</p><p>  2.5.4 故障處理</p><p>  由于用戶在使用本系統(tǒng)時,可能因長時間使用多個功能而使得

88、內(nèi)存占有量上升,因此使用完成后及時退出可以有效降低系統(tǒng)內(nèi)存消耗,保持系統(tǒng)運行流暢。</p><p>  系統(tǒng)反應(yīng)時間上面,建議用戶在執(zhí)行查詢功能時,盡量增加查詢條件以減少查詢數(shù)據(jù)量,縮短系統(tǒng)反應(yīng)時間。</p><p><b>  3 概要設(shè)計</b></p><p>  3.1 系統(tǒng)結(jié)構(gòu)設(shè)計</p><p>  根據(jù)需求

89、分析,基于百度云平臺的校外實習管理系統(tǒng)的功能結(jié)構(gòu)圖如圖3-1所示。該APP主要實現(xiàn)學(xué)生端和教師端兩大模塊的功能。</p><p>  圖3-1 系統(tǒng)功能結(jié)構(gòu)圖</p><p>  3.2 功能概要設(shè)計</p><p>  功能概要設(shè)計主要從模塊功能描述、系統(tǒng)用例圖和目標業(yè)務(wù)時序圖三個方面進行描述。</p><p>  3.2.1模塊功能描述&

90、lt;/p><p>  根據(jù)2.3.2節(jié)的描述,劃分完功能模塊和功能項目后,各模塊的具體功能已明確,現(xiàn)簡述如下:</p><p><b>  (1) 學(xué)生模塊:</b></p><p>  1) 獲取個人信息:用戶登錄成功后即從服務(wù)器獲取個人信息并緩存到本地,方便以后取用,無需每次聯(lián)網(wǎng)獲?。?lt;/p><p>  2) 修改個

91、人資料:登錄名、用戶名、頭像、性別等信息均不可更改,主要修改項為登錄密碼;</p><p>  3) 忘記密碼短信驗證:登錄時如忘記密碼,可點擊登錄界面的“忘記密碼”按鈕,向手機發(fā)送短信驗證碼,輸入驗證碼后進行新密碼設(shè)置;</p><p>  4) 定位當前位置:主頁中系統(tǒng)自動利用百度地圖定位當前位置,并獲取當前經(jīng)緯度;</p><p>  5) 拍攝水印照片:拍攝

92、包含本人的水印照片,水印內(nèi)容為學(xué)生頭像、當前定位地點、當前時間;</p><p>  6) 發(fā)送考勤信息:拍攝完成水印照片后發(fā)送考勤信息;</p><p>  7) 發(fā)送請假信息:在請假界面編輯請假信息發(fā)送;</p><p>  8) 一鍵SOS:遇到緊急情況時點擊“SOS”按鈕,向指定緊急聯(lián)系人發(fā)送求救信息。</p><p>  9) 添加

93、緊急聯(lián)系人:進行一鍵SOS操作后,如果檢測到該用戶未添加緊急聯(lián)系人,跳轉(zhuǎn)到添加聯(lián)系人界面,依次填寫三個聯(lián)系人ID,添加緊急聯(lián)系人。</p><p><b>  (2) 教師模塊:</b></p><p>  1) 獲取個人信息:用戶登錄成功后即從服務(wù)器獲取個人信息并緩存到本地,方便以后取用,無需每次聯(lián)網(wǎng)獲??;</p><p>  2) 修改個人

94、資料:登錄名、用戶名、頭像、性別等信息均不可更改,主要修改項為登錄密碼;</p><p>  3) 忘記密碼短信驗證:登錄時如忘記密碼,可點擊登錄界面的“忘記密碼”按鈕,向手機發(fā)送短信驗證碼,輸入驗證碼后進行新密碼設(shè)置;</p><p>  4) 班級考勤情況查看:系統(tǒng)主頁顯示登錄教師所管理班級的考勤情況,包括到崗數(shù)、缺勤數(shù)、遲到數(shù)等。點擊某班級可以查看具體考勤情況,即到崗學(xué)生列表、遲到學(xué)

95、生列表、缺勤學(xué)生列表、考勤情況未知的學(xué)生列表;</p><p>  5) 語音查詢:語音查詢界面進行語音輸入,使查詢更加便捷。語音識別后進行姓名匹配,若有匹配結(jié)果則可以選擇查看學(xué)生的考勤情況和水印照片,定位該學(xué)生當前位置;</p><p>  6) 實時定位學(xué)生位置:語音識別與匹配完成后,選擇“當前位置”,定位該學(xué)生當前所在地理位置;</p><p>  7) 學(xué)生

96、月考勤情況查看:語音識別與匹配完成后,選擇“考勤記錄”,查看該學(xué)生月考勤情況;</p><p>  8) 學(xué)生考勤水印照片查看:語音識別與匹配完成后,選擇“水印照片”,查看該學(xué)生今日所上傳的水印照片,確定是否為本人簽到;</p><p>  9) 班級周考勤情況統(tǒng)計分析:主頁側(cè)滑,在側(cè)邊欄選擇“統(tǒng)計”菜單,查看班級周考勤情況餅狀圖;</p><p>  10) 班級

97、月考勤情況統(tǒng)計分析:在統(tǒng)計界面選擇“月度統(tǒng)計”, 查看班級月考勤情況餅狀圖;</p><p>  11) 請假信息查看:主頁側(cè)滑,在側(cè)邊欄選擇“消息”菜單,查看學(xué)生的請假信息;</p><p>  12) 請假審批:在消息界面對某一請假信息選擇“同意”或“不同意”,對學(xué)生請假信息進行處理;</p><p>  13) 同地圖定位:定位某班級所有學(xué)生的當前位置,并在同

98、一張地圖上顯示;</p><p>  14) 通知推送:向某班級所有學(xué)生發(fā)送通知,推送到給學(xué)生;</p><p>  3.2.2 系統(tǒng)用例圖</p><p>  根據(jù)3.2.1節(jié)的描述,系統(tǒng)涉及到的用戶包括兩大類:學(xué)生和教師。每類用戶對應(yīng)的用例圖如下所示:</p><p>  圖3-2 學(xué)生用例圖

99、 圖3-3 教師用例圖</p><p>  圖3-2為學(xué)生用例圖,學(xué)生的主要任務(wù)為獲取個人信息、修改個人資料、定位當前位置、拍攝水印照片、發(fā)送考勤信息、一鍵SOS、請假。</p><p>  圖3-3為學(xué)生用例圖,教師的主要任務(wù)為獲取個人信息、修改個人資料、考勤情況查看、考勤情況統(tǒng)計分析、請假審批、實時定位、通知推送、語音查詢。</p><p>  3.

100、2.3目標業(yè)務(wù)時序圖</p><p>  圖3-4 學(xué)生考勤信息發(fā)送時序圖</p><p>  圖3-5 學(xué)生一鍵SOS時序圖</p><p>  圖3-6 學(xué)生請假時序圖</p><p>  圖3-7 教師考勤情況查看時序圖</p><p>  圖3-8 教師考勤情況統(tǒng)計時序圖</p><p>

101、;  圖3-9 教師實時定位時序圖</p><p>  圖3-10 教師通知推送時序圖</p><p>  圖3-11 教師請假審批時序圖</p><p>  圖3-12 教師語音查詢時序圖</p><p><b>  3.3 數(shù)據(jù)庫設(shè)計</b></p><p>  3.3.1 概念結(jié)構(gòu)設(shè)計<

102、;/p><p>  本系統(tǒng)采用自頂向下的方法設(shè)計概念結(jié)構(gòu),即首先定義全局概念結(jié)構(gòu)的框架,然后逐步細化。</p><p>  數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計主要使用E-R圖(實體-關(guān)系圖)的形式進行表述。首先呈現(xiàn)的是系統(tǒng)總體E-R圖,然后根據(jù)不同的功能需求劃分不同的子E-R圖,具體描述如下:</p><p>  圖3-15 系統(tǒng)總體E-R圖</p><p>

103、  如圖3-15所示為系統(tǒng)總體E-R圖,反映了系統(tǒng)中各表之間的實體-關(guān)系圖,各表之間通過存儲相互關(guān)聯(lián)的主鍵或其他可唯一確定一條數(shù)據(jù)的鍵值進行相互關(guān)聯(lián)。各數(shù)據(jù)對應(yīng)狀態(tài)可能為一對一,一對多,多對一,多對多的關(guān)系,具體各表之間的對應(yīng)關(guān)系將在以下各子E-R圖中進行闡述。</p><p>  圖3-16 學(xué)生、權(quán)限、班級之間的E-R圖</p><p>  如圖3-16所示,每個學(xué)生擁有多個不同的權(quán)限

104、,同一個權(quán)限也可以由不同的學(xué)生擁有;每個學(xué)生屬于一個確定的班級,每個班級可以包含多名學(xué)生。</p><p>  圖3-17 教師、權(quán)限、班級之間的E-R圖</p><p>  如圖3-17所示,每個教師擁有多個不同的權(quán)限,同一個權(quán)限也可以由不同的教師擁有;每名教師管理多個班級,每個班級只能由一個教師管理。</p><p>  圖3-18 學(xué)生、考勤信息、教師之間的E

105、-R圖</p><p>  如圖3-18所示,每個學(xué)生每天可以發(fā)送一條考勤信息,每條考勤信息也只能由一個學(xué)生發(fā)送;每個教師可以查看多條考勤信息,每條考勤信息只能由管理發(fā)送該信息的學(xué)生的教師查看。</p><p>  圖3-19 學(xué)生、請假信息、教師之間的E-R圖</p><p>  如圖3-19所示,每個學(xué)生每天可以發(fā)送多條請假信息,每條請假信息也只能由一個學(xué)生發(fā)送

106、;每個教師可以審批多條請假信息,每條請假信息只能由管理發(fā)送該信息的學(xué)生的教師審批。</p><p>  3.3.2 邏輯結(jié)構(gòu)設(shè)計</p><p>  本系統(tǒng)共用到教師信息表(AttManager)、班級信息表(AttGroup)、教師-班級表(ManagerGroup)、班級-學(xué)生表(GroupObject)、學(xué)生信息表(AttObject)、考勤信息表(AttInformation)、請

107、假信息表(AskForLeave)7個數(shù)據(jù)表,涉及到系統(tǒng)用戶—教師和學(xué)生、考勤、請假等多個方面,以下將以列表形式簡要簡要敘述各數(shù)據(jù)表的邏輯結(jié)構(gòu)設(shè)計。</p><p>  表3-1 教師信息表(Table AttManager)</p><p>  表3-2 班級信息表(Table AttGroup)</p><p>  表3-3 教師-班級表(Table Ma

108、nagerGroup)</p><p>  表3-4 班級-學(xué)生表(Table GroupObject)</p><p>  表3-5 學(xué)生信息表(Table AttObject)</p><p>  表3-6 考勤信息表(Table AttInformation)</p><p>  表3-7 請假信息表(Table AskForL

109、eave)</p><p>  3.3.3 物理結(jié)構(gòu)設(shè)計</p><p>  4 詳細設(shè)計與系統(tǒng)實現(xiàn)</p><p>  4.1 系統(tǒng)總體結(jié)構(gòu)</p><p>  基于百度云平臺的校外實習管理系統(tǒng)APP是一個Android客戶端,主要處理交互和交互邏輯。APP負責與用戶交互,將用戶的操作請求發(fā)送到服務(wù)端,服務(wù)端進行處理后將結(jié)果返回給客戶端,再

110、呈現(xiàn)給用戶。以下為系統(tǒng)邏輯架構(gòu)圖和物理架構(gòu)圖。</p><p>  圖4-1 系統(tǒng)邏輯架構(gòu)圖</p><p>  如圖4-1所示為系統(tǒng)邏輯架構(gòu)圖,基于百度云平臺的校外實習管理系統(tǒng)APP包括學(xué)生端和教師端兩大模塊的考勤情況統(tǒng)計、請假審批、通知推送、一鍵SOS、實時定位、語音查詢等功能,所有功能模塊同時在不同終端上相互協(xié)作共同完成校外實習管理工作。終端通過互聯(lián)網(wǎng)、GPS網(wǎng)絡(luò)遠程連接百度云平臺,

111、訪問云平臺提供的Mysql數(shù)據(jù)庫,云存儲器,實現(xiàn)與云服務(wù)器的數(shù)據(jù)通信。</p><p>  圖4-2 系統(tǒng)物理架構(gòu)圖</p><p>  如圖4-2所示為系統(tǒng)物理架構(gòu)圖,多個移動客戶端(包括教師端和多個學(xué)生端)通過網(wǎng)絡(luò)遠程連接百度云服務(wù)器,客戶端、服務(wù)器在物理架構(gòu)上相互分離,通過網(wǎng)絡(luò)連接共同構(gòu)成了基于百度云平臺的校外實習管理系統(tǒng)。</p><p>  4.2 系統(tǒng)架

112、構(gòu)設(shè)計</p><p>  本系統(tǒng)開發(fā)采用C/S結(jié)構(gòu),MVC設(shè)計模式。其中,View是顯示數(shù)據(jù)的,Model層是對數(shù)據(jù)的處理、操作、訪問,而Activity在中間起了組織的作用,充當了Controller層。除此之外,系統(tǒng)的分析設(shè)計采用面向?qū)ο蠹夹g(shù),使用Visio等工具進行輔助設(shè)計。</p><p>  圖4-3 Android中的MVC模式應(yīng)用模型</p><p>

113、;  4.2.1 Model層的實現(xiàn)</p><p>  Model層是對數(shù)據(jù)的處理、操作、訪問,是應(yīng)用程序的主體部分,所有的業(yè)務(wù)邏輯都寫在該層。對數(shù)據(jù)庫的操作、對網(wǎng)絡(luò)的操作、對業(yè)務(wù)計算的操作等都寫在該層。</p><p>  本系統(tǒng)中,Model層的實現(xiàn)主要在com.smartattendance.util包中。其中,MyNetUtil.java類封裝了網(wǎng)絡(luò)請求的處理方法;SaveUse

114、rInfo.java類封裝了信息緩存的方法;UploadImage.java類封裝了圖片上傳的方法;XmppTool.java類則封裝了連接openfire服務(wù)器的配置。在Activity中調(diào)用這些方法,即實現(xiàn)了Controller層和Model層的交互。</p><p>  4.2.2 View層的實現(xiàn)</p><p>  Android本身就將界面和邏輯分離開來設(shè)計。在Android中

115、,采用xml文件進行界面的描述。View在layout目錄下通過xml文件格式生成,用getViewById( )獲取,使用的時候可以非常方便地引入。</p><p>  xml文件位于Android項目的res/layout目錄下。不同樣式的界面對應(yīng)不同的xml文件,不同功能一般對應(yīng)不同的界面,也就有不同的xml文件。如登錄界面對應(yīng)activity_login.xml;主界面對應(yīng)activity_main.xm

116、l;自定義的listview樣式界面lv_item_content.xml;彈出框界面popupwindow_emergency.xml等。</p><p>  為提高軟件的友好性,本系統(tǒng)在界面設(shè)計上精益求精。</p><p>  首先,對普通的輸入框、文本框、按鈕等進行了優(yōu)化,自定義了不同的shape.xml文件,設(shè)置了圓角、邊框、顏色、透明度等風格,并且在頁面跳轉(zhuǎn)時設(shè)置了過渡動畫,保持

117、了切換與過渡的連續(xù)性和整體性,使用戶擁有更加愉快地使用體驗。</p><p>  其次,為了保持不同窗口之間的風格統(tǒng)一,在這些xml文件中,用到了很多相同的布局,如標題欄。為了避免在每個xml文件中都把相同的布局都重寫一遍,造成代碼冗余,可讀性差,修改起來比較麻煩,對后期的修改和維護不利,便把相同布局的代碼單獨寫成一個模塊,在用到的時候,通過<include /> 標簽來重用layout的代碼。<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論