學生考勤系統(tǒng)的設(shè)計_第1頁
學生考勤系統(tǒng)的設(shè)計_第2頁
學生考勤系統(tǒng)的設(shè)計_第3頁
學生考勤系統(tǒng)的設(shè)計_第4頁
學生考勤系統(tǒng)的設(shè)計_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

三亞學院畢業(yè)論文(設(shè)計)論文(設(shè)計)題目: sdn網(wǎng)絡(luò)現(xiàn)狀分析與發(fā)展應(yīng)用 學 院: 理工學院 專 業(yè)(方 向):計算機科學與技術(shù)(網(wǎng)絡(luò)工程)年 級、班 級: 網(wǎng)絡(luò)1201 學 生 學 號: 1210712058 學 生 姓 名: 張圣楠 指 導(dǎo) 老 師: 張鳳生 2016年4月1日論文獨創(chuàng)性聲明本人所呈交的畢業(yè)論文(設(shè)計)是我個人在指導(dǎo)老師指導(dǎo)下進行的研究工作及取得的成果。除特別加以標注的地方外,論文中不包含其他人的研究成果。本論文如有剽竊他人研究成果及相關(guān)資料若有不實之處,由本人承擔一切相關(guān)責任。本人的畢業(yè)論文(設(shè)計)中所有研究成果的知識產(chǎn)權(quán)屬三亞學院所有。本人保證:發(fā)表或使用與本論文相關(guān)的成果時署名單位仍然為三亞學院,無論何時何地,未經(jīng)學院許可,決不轉(zhuǎn)移或擴散與之相關(guān)的任何技術(shù)或成果。學院有權(quán)保留本人所提交論文的原件或復(fù)印件,允許論文被查閱或借閱;學院可以公布本論文的全部或部分內(nèi)容,可以采用影印、縮印或其他手段復(fù)制保存本論文。加密學位論文解密之前后,以上聲明同樣適用。論文作者簽名: 年 月 日學生考勤系統(tǒng)的設(shè)計摘 要我校主要的考勤管理方式是學生簽到及任課老師點名,該模式費時費力、效率低下。為了能夠更好地督促和管理學生,學生考勤起到了非常重要的作用。我校學生大部分都在使用智能手機,尤其以Android手機居多。本論文基于移動定位Android手機考勤系統(tǒng),利用智能手機自帶的GPS功能進行學生定位,依據(jù)學生的位置及定位時間判斷該生考勤情況,目的是實現(xiàn)手機智能考勤,并提高教學質(zhì)量,方便老師的管理。本設(shè)計分三大部分:后臺管理部分、Android學生手機客戶端、Android老師手機客戶端,Android客戶端使用eclipse開發(fā),后臺管理使用Java語言在myeclipse平臺上開發(fā)?!娟P(guān)鍵詞】考勤,移動定位,eclipse開發(fā)The Design of Student Attendance System Abstract In our school,the way of management attendance is student signed-in, or the teacher calls the roll, which needs time and labor,but inefficient and slow.In order to better supervise and manage students, students attendance plays a very important role. In our school,most students have been using smart phone, especially in the majority with Android mobile phone. This paper is about android mobile positioning attendance system, use GPS positioning in smart phones to track students, then check students attendance by their position and when to position, to achieve mobile intelligent attendance, improve teaching quality, and make management easily. This design includes in three parts: background management part, students android mobile phone, teacher android mobile phone, android using the eclipse developed, background management in myeclipse platform developed using the Java language.【Key Words】 attendance, Mobile positioning,eclipse develop目 錄1緒 論11.1 背景及意義11.2 國內(nèi)外研究現(xiàn)狀11.3 論文的研究內(nèi)容22 相關(guān)理論和技術(shù)32.1 手機定位理論32.2 Android技術(shù)32.2.1 Android應(yīng)用程序開發(fā)技術(shù)32.2.2 Android 手機 GPS 定位技術(shù)概述42.2.3 Java技術(shù)概述53 系統(tǒng)需求分析63.1 手機考勤系統(tǒng)總體陳述63.2 手機考勤管理系統(tǒng)具體需求73.3 手機考勤系統(tǒng)硬件選擇84 手機考勤管理系統(tǒng)設(shè)計與實現(xiàn)94.2 學生手機客戶端考勤模塊的實現(xiàn)104.3 老師手機客戶端組件的實現(xiàn)114.4 考勤管理組件的實現(xiàn)124.5 數(shù)據(jù)庫管理組件的實現(xiàn)135 手機考勤系統(tǒng)的測試及分析155.1 系統(tǒng)非功能測試155.2 學生手機客戶端測試及結(jié)果分析155.3 考勤功能測試及結(jié)果分析165.4 學生注冊模塊測試及結(jié)果分析186 總結(jié)與展望206.1 論文工作總結(jié)206.2 后續(xù)工作展望20參考文獻21致 謝221緒 論1.1 背景及意義無論學校還是企業(yè),為了方便管理、督促員工和學生的工作學習,都會有一套合理有效的考勤管理系統(tǒng),常用的考勤管理系統(tǒng)主要有:Web考勤系統(tǒng)、門禁考勤系統(tǒng)、施工現(xiàn)場考勤系統(tǒng)、手機考勤系統(tǒng)。考勤是一個高校對學生管理的基本依據(jù),國內(nèi)大部分高校仍使用比較傳統(tǒng)的方式進行考勤,以手工的方式錄入考勤信息,如老師點名記錄,學生簽到記錄,該方式存在諸多問題,如浪費人力、效率低下;考勤結(jié)果慢,耽誤上課時間,影響教學質(zhì)量;考勤中難以避免弄虛作假,如學生一人簽到多人;此外所有的考勤資料都是通過紙張進行存儲,容易丟失、對于查找和總結(jié)考勤數(shù)據(jù)都帶來不便,同時,查看不直觀。因此,人工考勤已經(jīng)很難滿足高校規(guī)范化管理的要求,建立現(xiàn)代化的智能考勤系統(tǒng)勢在必行。 現(xiàn)在移動互聯(lián)網(wǎng)飛速發(fā)展,智能手機的性能越來越好,價格也越來越便宜,學生幾乎人手一部智能手機,而且以Android機居多。如今Android技術(shù)和移動定位技術(shù)的成熟,為我們完成手機考勤系統(tǒng)提供了技術(shù)和硬件上的支持,它能夠很好的解決我校目前考勤存在的問題,提高教學效率。1.2 國內(nèi)外研究現(xiàn)狀在基礎(chǔ)設(shè)施方面,基于3G及4G技術(shù)的移動網(wǎng)絡(luò)建成后,已經(jīng)解決了移動網(wǎng)絡(luò)帶寬和基站覆蓋率的問題。而在終端設(shè)備方面,飛速提高的設(shè)備硬件能力和穩(wěn)定可靠的智能設(shè)備操作系統(tǒng),使得移動應(yīng)用程序變得切實可行。在這樣的背景下,移動手機考勤的優(yōu)勢引起用戶和開發(fā)者的重視,并在近年來進入了快速發(fā)展時期。目前,手機定位技術(shù)有兩種,一種基于GPS定位1,一種基于移動運營網(wǎng)的基站定位。其中,基于GPS的定位方式,是利用手機上的GPS定位模塊將自己的位置信號,發(fā)送到定位后臺來實現(xiàn)手機定位的?;径ㄎ皇抢没緦κ謾C的距離的測算距離來確定手機的位置?;径ㄎ徊恍枰謾C具有GPS定位能力,但是精度很大程度依賴于基站的分布與覆蓋范圍的大小,誤差相比前者較大。GPS定位精度較高。所以本系統(tǒng)采用GPS定位。此外還有利用Wi-Fi在小范圍內(nèi)定位方式。 考勤方面,任何企業(yè)和學校為了方便管理和督促員工和學生的工作學習,都會有一套自己的考勤管理系統(tǒng)。企業(yè)中常使用的考勤管理系統(tǒng)主要有:Web在線考勤系統(tǒng)、門禁考勤系統(tǒng),門禁考勤系統(tǒng)還分為打卡考勤、指紋考勤及人臉考勤。在學校中使用的考勤系統(tǒng)主要是比較傳統(tǒng)的點名考勤、學生在點名冊上簽名考勤。Web在線考勤2,首先編寫一個Web在線考勤系統(tǒng),并將其部署在服務(wù)器上,員工或?qū)W生通過客戶端的瀏覽器打開考勤頁面,在考勤頁面上完成考勤相關(guān)操作,提交考勤請求后,客戶端會將個人信息、電腦設(shè)備信息及考勤時間發(fā)送給服務(wù)器,服務(wù)器判斷考勤結(jié)果,并將考勤結(jié)果保存看到數(shù)據(jù)庫中,完成考勤。但是 Web在線考勤的前提需要在瀏覽器上完成考勤,并且每人必須使用與自己相對應(yīng)的電腦來完成考勤,這種考勤方式在公司是比較實用的。在公司中,每人會被分配一臺電腦是與人綁定的,員工可以通過電腦打開Web在線考勤的頁面來完成考勤。在學校,Web在線考勤系統(tǒng)只適用于上機課。門禁考勤以打卡考勤為例,公司會在進出公司的大門處安裝一個門禁設(shè)備,員工需要通過打卡方式來實現(xiàn)考勤。當員工打卡時,門禁設(shè)備會記錄員工的打卡時間及員工信息,并將其發(fā)送給后臺服務(wù)器,服務(wù)器記錄打卡信息并存到數(shù)據(jù)庫中,再通過一定的處理得出員工的考勤結(jié)果。門禁系統(tǒng)是單位企業(yè)中用使用最多的考勤系統(tǒng),學校中卻不太適用,因為通過門禁系統(tǒng)來完成考勤必須要安裝門禁設(shè)備,若學校使用該系統(tǒng),學校的每個教室都需要安裝一個門禁設(shè)備,這樣花費大,對學校來說并不是最佳選擇。指紋考勤和人臉考勤系統(tǒng)與打卡考勤系統(tǒng)類似,都需要安裝考勤相關(guān)的硬件設(shè)別,費用較高,不適用。1.3 論文的研究內(nèi)容本論文主要設(shè)計研究學生移動考勤系統(tǒng)相關(guān)的方面的工作,主要有:1、通過對論文背景和國內(nèi)外考勤現(xiàn)狀的分析,得出系統(tǒng)功能和性能的需求。2、設(shè)計移動考勤系統(tǒng)的架構(gòu)與功能模塊,通過已經(jīng)做好的需求分析,完成系統(tǒng)應(yīng)用架構(gòu)的設(shè)計,并進行模塊化分解。3、實現(xiàn)三大模塊,分別為老師手機客戶端,學生手機客戶端和后臺服務(wù)器模塊的開發(fā)與集成。4、完成手機考勤系統(tǒng)的運行及測試結(jié)果分析。2 相關(guān)理論和技術(shù)2.1 手機定位理論手機定位技術(shù)是指通過手機來確定手機持有者的位置。獲取位置的主要方法有兩種:一是基站定位,通過三臺基站來確定手機的位置;二是 GPS 定位,通過通信衛(wèi)星來確定手機的位置?,F(xiàn)在的手機定位技術(shù)已經(jīng)很成熟了,無論是手機定位的精度還是定位的時間,都能滿足用戶需求。在軍用領(lǐng)域,GPS定位技術(shù)的精度已經(jīng)可以精確到一米以內(nèi),其軍事用途廣泛,也是現(xiàn)代軍事的關(guān)鍵,充當著現(xiàn)代軍隊的眼睛。此外,手機定位技術(shù)也被廣泛使用,警察通過手機定位技術(shù)來鎖定要追捕的犯人,準確的定位抓捕提高了辦案效率,對維護社會穩(wěn)定起到了重要作用。隨著移動互聯(lián)網(wǎng)的發(fā)展,智能機也越來越普及,相應(yīng)的智能機的性價比越來越高,更多的的人使用智能機,使之普及率非常高。在校大學生幾乎人人都擁有一部智能機,基于位置的服務(wù)越來越多,如地圖等搜索服務(wù),這些手機定位的服務(wù)極大的方便了而我們的日常生活。手機的基站定位是通過手機運行商的網(wǎng)絡(luò)(如GSM網(wǎng))獲取移動終端用戶的位置信息(經(jīng)緯度坐標),在電子地圖平臺的支持下,為用戶提供相應(yīng)服務(wù)的一種增值業(yè)務(wù),例如目前中國移動動感地帶提供的動感位置查詢服務(wù)等。手機基站定位具有準確度高、精準度高、覆蓋范圍廣等特點。隨著智能機的廣泛應(yīng)用,現(xiàn)在確定手機的位置進而提供相應(yīng)的服務(wù),大部分都是使用GPS定位技術(shù),GPS定位技術(shù)已經(jīng)非常成熟,得到了廣大廠商和程序員的認可。所以本論文將采用GPS 定位技術(shù)來實現(xiàn)手機定位,通過得到的老師及學生的位置信息來判斷出兩者之間的距離,進而實現(xiàn)學生考勤管理。2.2 Android技術(shù)2.2.1 Android應(yīng)用程序開發(fā)技術(shù) Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要使用于移動設(shè)備,如智能手機和平板電腦3,其體系結(jié)構(gòu)如圖2.1所示。 應(yīng) 用 層 主屏 聯(lián)系人 電話 瀏覽器 其他 Linux內(nèi)核顯示驅(qū)動攝像驅(qū)動藍牙驅(qū)動WiFi驅(qū)動鍵盤驅(qū)動USB驅(qū)動內(nèi)存驅(qū)動電源驅(qū)動音頻驅(qū)動其他驅(qū)動運行庫和程序庫觸屏管理器器多媒體框架 數(shù)據(jù)庫供器核心運行庫 OpenGL SGL WebKitDalvik虛擬機 應(yīng)用框架層Activity 管理器 Window 管理器 內(nèi)容 提供器 視覺 系統(tǒng) 通知 管理器 程序包 管理器電話通信 管理器 資源 提供器位置信息 管理器 XMPP 服務(wù)圖2.1 Android體系結(jié)構(gòu)Android體系結(jié)構(gòu)十分龐雜,要在其上開發(fā)應(yīng)用也需要掌握多種技術(shù),這些技術(shù)可以分為兩大類:一類為通用開發(fā)技術(shù),包括Java編程技術(shù)、面向?qū)ο缶幊碳夹g(shù);另一類為Android體系結(jié)構(gòu)相關(guān)技術(shù),包括Android UI和圖形圖像技術(shù)、Android安全開發(fā)技術(shù)、Android多線程開發(fā)技術(shù)、Android多媒體開發(fā)技術(shù)、Android網(wǎng)絡(luò)編程技術(shù)等等。2.2.2 Android 手機 GPS 定位技術(shù)概述 GPS是美國研發(fā)的衛(wèi)星導(dǎo)航定位系統(tǒng),與GPS類似的系統(tǒng)有歐洲的伽利略定位系統(tǒng)、俄羅斯的格洛納斯定位系統(tǒng)、中國的北斗導(dǎo)航系統(tǒng)。這幾個系統(tǒng)相比較,伽利略定位系統(tǒng)的精度最高,但是它不是免費的,沒有廣泛使用4。現(xiàn)在手機應(yīng)用公司主要使用的還是GPS定位技術(shù),雖然需要定位十分精確,但GPS已經(jīng)可以滿足我們的需要。在Android系統(tǒng)對GPS定位技術(shù)有較好的支持。可以通過 Android系統(tǒng)提供的API庫,調(diào)用GPS服務(wù),進一步獲取手機的位置信息5。2.2.3 Java技術(shù)概述Java是一種簡單的,面向?qū)ο蟮某绦蛟O(shè)計語言。它的語言簡單,可以在小型機上運行。Java語言可以處理TCP/IP協(xié)議,用戶可以通過URL地址訪問服務(wù)器,服務(wù)器響應(yīng)客戶端的請求,返回相應(yīng)的頁面。Java可通過內(nèi)存管理機制來進行內(nèi)存的管理,避免程序員在管理內(nèi)存時出現(xiàn)錯誤,方便程序員的編程,提高程序的穩(wěn)定性6。Java程序是運行在Java虛擬機上的,與平臺無關(guān),無論你的系統(tǒng)是linux還是windows,都不會影響Java程序的運行。總而言之,Java是集編程語言、開發(fā)環(huán)境、應(yīng)用環(huán)境和部署環(huán)境于一體,被程序員廣泛使用的網(wǎng)絡(luò)編程語言。3 系統(tǒng)需求分析3.1 手機考勤系統(tǒng)總體陳述考勤管理是高校管理和督促學生學習的一種重要手段,其中最主要的就是老師點名的實現(xiàn)?,F(xiàn)在我們需要通過移動定位技術(shù)來解決此問題,流程如下圖3.1所示。 開始 老師登錄老師向服務(wù)器發(fā)送考勤請求 學生登錄學生向服務(wù)器發(fā)送考勤信息服務(wù)器處理數(shù)據(jù)得到考勤結(jié)果 結(jié)束登錄驗證 Yes No圖3.1 手機考勤流程圖老師先登錄考勤系統(tǒng)并通過手機客戶端向服務(wù)器發(fā)送點名請求,此過程中,老師手機客戶端會把老師此時的位置及發(fā)送請求的時間發(fā)給服務(wù)器,接著學生登錄客戶端,服務(wù)器會把學生此時的位置及發(fā)送請求的時間發(fā)給服務(wù)器,服務(wù)器將學生發(fā)來的位置、時間信息與老師的位置、時間信息進行比較,判斷此學生在教室內(nèi)是否遲到。 如果某些同學手機壞了或丟了,不能完成考勤登錄,系統(tǒng)會默認設(shè)置他為缺勤。這時學生則需要向老師說明情況,通過老師手工來修改該同學的考勤結(jié)果。基于移動定位的學生考勤系統(tǒng)主要目的就是方便老師的管理,提高課堂教學效率。如果本系統(tǒng)有考勤結(jié)果查看功能,這將非常方便老師對考勤結(jié)果的查詢。系統(tǒng)可以以表格的形式顯示每次考勤結(jié)果,統(tǒng)計出考勤的總次數(shù),并給出學生的出勤率。為了更方便對基礎(chǔ)數(shù)據(jù)的錄入,可以通過.xls文件導(dǎo)入數(shù)據(jù)。如學生信息管理,學生可以將自己的信息填入.xls文件中,然后老師再將.xls文件導(dǎo)入數(shù)據(jù)庫中,這樣就不需要手動添加,方便老師的管理。3.2 手機考勤管理系統(tǒng)具體需求基于移動手機考勤管理系統(tǒng)主要分為三大部分:后臺服務(wù)器管理、學生手機客戶端及老師手機客戶端,其中后臺服務(wù)器管理又細分為三個模塊,基礎(chǔ)信息管理、考勤管理和數(shù)據(jù)庫管理,如下圖3.2所示?;谝苿邮謾C考勤系統(tǒng) 基礎(chǔ)信息管理 數(shù)據(jù)庫管理 考勤管理 學生手機客戶端老師手機客戶端 后臺服務(wù)器管理 輸入老師、 學生等信息 顯示、查詢 顯示結(jié)果 登錄、確認 登錄圖3.2 手機考勤系統(tǒng)數(shù)據(jù)圖后臺服務(wù)器管理管理與手機考勤系統(tǒng)的交互最多7,其中最重要是手機考勤系統(tǒng)與基礎(chǔ)信息管理,基本信息管理模塊包括學生、老師、課程等的管理,可以對其管理對象進行添加、查看、刪除、修改;另外,它向手機考勤發(fā)送請求(主要有查詢老師、學生等信息),手機管理系統(tǒng)在接收到這些請求后,會向基礎(chǔ)信息管理發(fā)送相應(yīng)的回復(fù)(其分別是顯示老師、學生等的基本信息)。考勤管理和手機考勤系統(tǒng)之間的交互是最重要的,考勤管理向手機考勤系統(tǒng)發(fā)送查看考勤請求,手機考勤系統(tǒng)接收到請求后,做出相應(yīng)的處理,將結(jié)果發(fā)送給考勤管理,還可以將考勤結(jié)果以.xls形式導(dǎo)出。數(shù)據(jù)庫管理與手機考勤系統(tǒng)之間的數(shù)據(jù)流主要有三條,且都是從數(shù)據(jù)庫管理流向手機考勤系統(tǒng),他們分別是導(dǎo)入老師、學生等的信息。老師參與Android手機客戶端模塊,它與手機考勤管理系統(tǒng)之間的數(shù)據(jù)流主要有兩條,都是從老師手機客戶端流向手機考勤系統(tǒng),分別是老師手機客戶端的老師登錄信息和老師考勤信息,老師考勤需要先登錄考勤頁面,服務(wù)器驗證通過后,進入老師考勤。 學生參與的是學生手機客戶端模塊,它與手機考勤系統(tǒng)之間的數(shù)據(jù)流主要有兩條,分別是學生手機客戶端的學生登錄信息及學生完成考勤要向服務(wù)器發(fā)送的學生考勤信息,來完成考勤,具體來講就是學生參加點名的時間和學生點名時所處位置的體現(xiàn)。3.3 手機考勤系統(tǒng)硬件選擇 由于后臺服務(wù)器需要同時運行Myeclipse和SQLserver20088占內(nèi)存比較多,所以對系統(tǒng)內(nèi)存的要求最好是4G以上,考勤是服務(wù)器將發(fā)送較多考勤信息,所以對服務(wù)器處理器也要有較高的要求,對于客戶端發(fā)來的數(shù)據(jù)要能及時處理。 手機客戶端采用Android系統(tǒng)開發(fā),最低版本2.3.3,因此對參與考勤的學生及老師來說,必須要有Android手機,并且Android版本在2.3.3以上才能很好的運行手機客戶端,來完成考勤9。4 手機考勤管理系統(tǒng)設(shè)計與實現(xiàn)手機考勤管理系統(tǒng)主要分為兩大部分,移動客戶端及后臺服務(wù)器,移動客戶端又分為老師手機客戶端及學生手機客戶端。老師手機客戶端實現(xiàn)了兩個功能:用戶登錄驗證和老師選課點名。學生手機客戶端實現(xiàn)了三個功能,分別為學生手機的注冊登錄、學生點名完成考勤、學生查看考勤結(jié)果。后臺服務(wù)器又分為三個大模塊分別是基本信息管理、考勤管理及數(shù)據(jù)庫管理10?;拘畔⒐芾矸譃榘嗉壒芾怼⒄n程管理、學生管理和老師管理,每項管理的主要功能是對應(yīng)模塊的添加、刪除、查看和修改??记诠芾矸譃槔蠋燑c名、查看考勤和修改考勤。4.1 學生手機客戶端注冊登錄考勤模塊的實現(xiàn)學生手機客戶端注冊及登錄模塊的主要功能有:第一個是學生身份的驗證,第二個功能是手機注冊,就是將學生的學號及手機的設(shè)備id進行綁定,第三個功能是防止替人點名,即學生不能再登錄沒來上課的同學的學號和密碼,替他人點名簽到。要實現(xiàn)上述三個功能,首先要設(shè)計出學生手機客戶端注冊和登錄模塊的用戶界面。使用Android布局來完成學生手機客戶端注冊登錄界面的設(shè)計,采用嵌套的線性布局來實現(xiàn)。再對程序控件進行綁定,需要綁定的控件為兩個EditText控件和兩個button控件11。點擊注冊按鈕時,程序需要獲取兩個文本編輯框中的學號和密碼,此外還需要獲取本手機的device id,將這些獲取的數(shù)據(jù)發(fā)往后臺服務(wù)器,完成學生身份的驗證及學生與手機的綁定。 完成注冊按鈕監(jiān)聽器的實現(xiàn)方法,第一步通過EditText的getText()方法獲取用戶輸入的用戶名與密碼(獲取數(shù)據(jù)之前需要確保用戶名密碼不為空,如果為空彈出toast,提醒用戶輸入用戶名密碼),然后再獲取本手機的設(shè)備id,因為設(shè)備id有權(quán)限限制,我們需要在AndroidManifest.xml中添加讀取設(shè)備id的權(quán)限。 “/讀取設(shè)備id的權(quán)限”在TelephonyManager下的getdeviceid()中獲取本手機的設(shè)備id。之后把獲取的數(shù)據(jù)發(fā)給后臺服務(wù)器,此時需要訪問網(wǎng)絡(luò),在AndroidManifest.xml中添加訪問網(wǎng)絡(luò)的權(quán)限?!? 訪問internet權(quán)限”獲得網(wǎng)絡(luò)訪問權(quán)限后,下一步來完成學生手機客戶端和后臺服務(wù)器之間的數(shù)據(jù)交互。首先,學生手機客戶端將獲取的學號、密碼和設(shè)備id發(fā)給服務(wù)器,服務(wù)器的url(統(tǒng)一資源定位符)為“:8080/kaoqin/ManageServlet”,程序需要將數(shù)據(jù)與url進行連接,使用HttpURLConnection通過http協(xié)議的GET 方法,(即HttpURLConnection.getInputStream()方法來獲取服務(wù)器發(fā)來的數(shù)據(jù))將數(shù)據(jù)發(fā)給服務(wù)器。Public static String dealReaponseResult(InputStream inputStream) String resultData=null; /存儲處理結(jié)果 ByteArrayOutputStream byteArraryOutputStream=new byteArraryOutputStream(); Byte data=new byte1024; Int len=0; Try While(len=inputStream.read(data)!=-1) byteArraryOutputStream.write(data,0,len); catch(IOException e) e.printStackTrace(); resultData=new String(byteArraryOutputStream.toByteArray(); result resultData; 服務(wù)器接收到學生客戶端發(fā)來的數(shù)據(jù),對數(shù)據(jù)進行處理后給客戶端發(fā)出返回信息:如果學號密碼都正確,且該手機沒被注冊過,服務(wù)器會完成對該手機的注冊,并發(fā)出“注冊成功”的消息;如果學號和密碼有錯誤,則服務(wù)器給客戶端發(fā)出“密碼或?qū)W號有錯誤”消息;如果該手機已注冊,則服務(wù)器給客戶端發(fā)出“注冊成功”的消息。 4.2 學生手機客戶端考勤模塊的實現(xiàn)要實現(xiàn)考勤功能,先要設(shè)計出學生手機客戶端考勤界面,與登錄注冊同理。之后綁定兩個EditText控件及兩個button控件,當學生點擊點名按鈕時,程序需要獲取老師姓名和課程,另外還需要獲取本手機的位置,并將這些獲取的數(shù)據(jù)發(fā)往后臺服務(wù)器,完成學生的考勤。采用System.currentTimeMillis()獲取時間,戳獲取學生的位置要通過Android的GPS定位功能來實現(xiàn),需要在AndroidManifest.xml中添加GPS定位權(quán)限。“”通過GPS獲取位置先要檢查手機的GPS業(yè)務(wù)是否打開,獲取位置服務(wù)。全部數(shù)據(jù)獲取完后,就要將數(shù)據(jù)連接起來發(fā)給服務(wù)器,發(fā)送數(shù)據(jù)的方法與注冊模塊發(fā)送數(shù)據(jù)的方法相同。輸入用戶名密碼將學號、密碼及手機設(shè)備發(fā)給服務(wù)器是否完成考勤 完成考勤結(jié)束開始第一次登錄 注冊這樣就完成了學生在手機客戶端的注冊登錄、點名完成考勤。學生考勤流程如圖4.1所示。 Yes No No Yes圖4.1 學生考勤流程4.3 老師手機客戶端組件的實現(xiàn)老師客戶端有登錄驗證與考勤功能,具體實現(xiàn)方法和學生客戶端類似,總體實現(xiàn)過程為,先設(shè)計老師客戶端登錄功能,老師登錄輸入老師號和密碼,將老師號和密碼發(fā)送到服務(wù)器,服務(wù)器接收到客戶端發(fā)來的老師號和密碼并進行判斷,并將反饋信息發(fā)給客戶端,客戶接收到服務(wù)器發(fā)來的反饋信息,如果老師名和密碼正確則跳轉(zhuǎn)到考勤界面實現(xiàn)考勤,如果老師名和密碼錯誤則需重新輸入老師名和密碼。另外,當進入考勤界面時,老師需要輸入課程名,點擊考勤,客戶端程序會通過locationManager.requestLocationUpdates(bestProvider, 1000, 10, this);獲取老師手機的當前的位置,將獲取到信息和老師在考勤界面填寫的信息通Doget()方法,發(fā)給服務(wù)器端,服務(wù)器會對學生和教師發(fā)來的位置進行運算,算出兩者之間的距離。4.4 考勤管理組件的實現(xiàn)考勤管理分老師點名模塊、查看考勤模塊及修改考勤老師點名模塊。實現(xiàn)是先通過老師客戶端向服務(wù)器發(fā)送點名請求,開始考勤,學生通過學生客戶端點名簽到,服務(wù)器通過對比老師客戶端與學生客戶端分別發(fā)來的信息,得出考勤結(jié)果并寫入數(shù)據(jù)庫。完成考勤功能的關(guān)鍵是確定老師和學生之間的距離,以此來判斷該同學是否在上課。服務(wù)器接收到老師與學生分別發(fā)來的考勤數(shù)據(jù),先將位置信息信息進行比較,再將時間數(shù)據(jù)進行比較,如果兩者的距離小于100米,且時間少于5分鐘可以判斷此學生在教室內(nèi)且未遲到,這樣結(jié)果記錄為到勤;如果兩者的距離大于100米,則直接將考勤結(jié)果記錄為缺勤;如果兩者的距離小于100米,并且時間大于5分鐘少于60分鐘,則將考勤結(jié)果記錄為遲到。最終考勤結(jié)果會以表格的形式呈現(xiàn)出來,并統(tǒng)計出考勤次數(shù)與出勤率。流程如圖4.1所示。開始服務(wù)器接收到老師和學生發(fā)來的考勤數(shù)據(jù) 判斷老師和學生的距離100米老師和學生的考 勤時間差 10分 60分缺勤到勤遲到缺勤結(jié)束 Y N Y N Y N 圖4.1 老師考勤流程圖當老師點擊任務(wù)欄里查看考勤時,頁面會跳轉(zhuǎn)到查看考勤頁面,此時查看考勤頁面會發(fā)送teacher_id、class_id和course_id發(fā)送給ViewKaoQinServlet,ViewKaoQinServlet 通過調(diào)用StudentDAO.getStudentByClassId(class_id)方法獲取學生列表,然后通過for循環(huán)獲取學生的 student_NO,調(diào)用SeeKaoQinViewDAO 中的getSeeKaoQinViewById(course_id, class_id,student_NO()獲取考勤信息,之后發(fā)給查看考勤頁面。4.5 數(shù)據(jù)庫管理組件的實現(xiàn)此部分主要功能是把與考勤相關(guān)的數(shù)據(jù)以.xls文件的形式導(dǎo)入數(shù)據(jù)庫中,關(guān)鍵在于.xls文件的設(shè)計。文件中的各列需要與本系統(tǒng)中學生的各屬性相對應(yīng),并建立關(guān)聯(lián)關(guān)系??梢酝ㄟ^以班級為單位填寫學生的個人信息,將文件導(dǎo)入到數(shù)據(jù)庫。同時系統(tǒng)會根據(jù)路徑獲取并解析.xls文件,讀取出學生信息,通過tudent類的set方法設(shè)置學生的相關(guān)屬性并添加到數(shù)據(jù)庫,完成學生信息的導(dǎo)入。課程及老師信息的導(dǎo)入與學生信息的導(dǎo)入類似,通過以上的分析設(shè)計,數(shù)據(jù)庫管理組件就基本實現(xiàn)了。5 手機考勤系統(tǒng)的測試及分析5.1 系統(tǒng)非功能測試安全性方面:基于移動定位的手機考勤系統(tǒng),老師手機客戶端及學生后機客戶端都需要輸入賬號和密碼,進行登錄認證。學生客戶端的賬號為學生學號,老師客戶端的賬號為老師編號,這樣就限制了系統(tǒng)的使用人員,只有是本校的學生才能使用該系統(tǒng),使得系統(tǒng)的安全性得到了保障。 擴展性方面:本系統(tǒng)在Java平臺上進行開發(fā),而且所使用的技術(shù)對跨平臺都有支持,因此本系統(tǒng)滿足可移植性的特性。響應(yīng)速度方面:電子硬件的蓬勃發(fā)展,無論是手機還是電腦的運行速度都有了很大的提高,本系統(tǒng)邏輯運算量不大,完全能滿足用戶對相應(yīng)時間的要求。5.2 學生手機客戶端測試及結(jié)果分析學生手機客戶端主要測試的是,如果不用自己的手機是否能完成考勤,以及一部手機是否可以多次簽到。有些同學不去上課,不能完成考勤,若果有同學點完名,再次在此手機上打開學生手機客戶端,用沒來上課的同學的學號密碼來登錄,看看能否完成考勤,當同一部手機重復(fù)考勤時,測試用例如下表5.1所示,會出現(xiàn)如圖5.1所示的界面。測試用例測試數(shù)據(jù)測試結(jié)果魅族MX4已完成考勤的手機再登錄其他賬號不能考勤,提示該學號和設(shè)備id不相符魅族MX4 Pro還沒有參與點名登錄其他賬號不能考勤,提示該學號和設(shè)備id不相符中興V5沒注冊過的手機登錄其他賬戶不能考勤,提示該學號和設(shè)備id不相符表5.1 學生客戶端測試 圖5.1 學生客戶端測試用例效果截圖手機魅族MX4與中興V5都安裝了Android學生手機考勤客戶端,用這兩部手機進行測試,讓它們分別登錄自己的學號和對方的賬號,重復(fù)十次。測試結(jié)果如表5.2所示。表5.2 學生手機客戶端測試結(jié)果統(tǒng)計表測試內(nèi)容預(yù)期結(jié)果測試次數(shù)成功次數(shù)成功率魅族MX4登錄自己的學號跳轉(zhuǎn)到考勤界面1010100%魅族MX4登錄對方的學號系統(tǒng)提示,學號與設(shè)備號不符1010100%中興V5登錄自己的學號跳轉(zhuǎn)到考勤界面1010100%中興V5登錄對方的學號系統(tǒng)提示,學號與設(shè)備號不符10990%由于中興手機處理器相對魅族而言,穩(wěn)定性較差些。當中興手機輸入對方學號時,會出現(xiàn)少數(shù)閃退現(xiàn)象,故測試結(jié)果有出錯的可能。綜合來看,測試的成功率最低為90%,平均成功率接近100%。通過測試進行分析,基本實現(xiàn)程序設(shè)計的預(yù)期,是可以接受的。 5.3 考勤功能測試及結(jié)果分析考勤功能是本程序最主要的功能,此功能實現(xiàn)的效果會直接關(guān)系到本系統(tǒng)的成功與否,下面是針對考勤功能的測試。將老師客戶端安裝在中興V5手機中,學生客戶端安裝在魅族MX4中,用老師客戶端中興V5開始點名,可以分四種情況進行測試:第一種情況,不移動或移動距離小100米,一分鐘后用魅族MX4手機簽到;第二種情況,把魅族MX4手機拿到100以外的地方在完成簽到;第三種情況,使時間大于10分鐘小于1小時,且移動距離小于100米,再使用魅族MX4手機完成簽到;第四種情況,在一個小時以后,且移動距離小于100米使用魅族MX4手機完成簽到。老師可通過后臺登錄,在查看考勤模塊查看考勤結(jié)果,結(jié)果如圖5.2所示,測試用例如下表5.3所示。表5.3考勤功能測試測試用例測試數(shù)據(jù)測試結(jié)果教師端中興V5學生客戶端魅族MX4情況一到勤教師端中興V5學生客戶端魅族MX4情況二缺勤教師端中興V5學生客戶端魅族MX4情況三遲到教師端中興V5學生客戶端魅族MX4情況四缺勤圖5.2 考勤結(jié)果考勤功能模塊進行測試時,安裝教師客戶端的中興V5手機發(fā)出考勤請求,安裝學生客戶端的魅族MX4手機完成考勤。在四種情況下(第一種情況,不移動或移動距離小100米,一分鐘后用魅族MX4手機簽到;第二種情況,把魅族MX4手機拿到100以外的地方在完成簽到;第三種情況,使時間大于10分鐘小于1小時,且移動距離小于100米,再使用魅族MX4手機完成簽到;第四種情況,在一個小時以后,且移動距離小于100米使用魅族MX4手機完成簽到)各進行10次試驗,試驗結(jié)果如表5.4所示。表5.4 考勤功能測試結(jié)果統(tǒng)計表測試內(nèi)容預(yù)期結(jié)果測試次數(shù)成功次數(shù)成功率情況一到勤1010100%情況二缺勤10990%情況三遲到1010100%情況四缺勤1010100%通過上表可以看出四種情況中,有三種情況的成功率均為100%,第二種情況有一次未成功,是因為第一次測試時對距離的概念不強,沒超過100米就開始了考勤操作,因此結(jié)果顯示為到勤,發(fā)現(xiàn)錯誤后才有意識到要走的更遠一些,這樣結(jié)果才會顯示為缺勤。除此之外試驗結(jié)果接近100%,基本實現(xiàn)程序設(shè)計的預(yù)期,可以接受的。5.4 學生注冊模塊測試及結(jié)果分析學生注冊模塊的主要功能是完成學號和手機的綁定,以便完成以后的考勤,我們需要測試學生注冊模塊能否正確完成學號和手機的綁定。下面分兩種情況進行測試:第一種,正常的輸入學號密碼,使用Android手機魅族MX4進行注冊,如果已經(jīng)注冊過,那么從數(shù)據(jù)庫中將該學號對應(yīng)的device_id刪除,再次注冊;第二種情況,用已經(jīng)注冊了的手機,在登錄其他的學號和密碼進行注冊。測試用例如下表5.5所示。5.5學生注冊測試測試用例測試數(shù)據(jù)測試結(jié)果使用手機完成注冊情況一如圖5.3使用已注冊的手機注冊情況二如圖5.4圖5.3 情況一 圖5.4 情況二選5部Android手機分別安裝學生客戶端,并進行注冊(情況一),注冊后在等錄其它學號密碼進行統(tǒng)計(情況二),統(tǒng)計結(jié)果如表5.6所示。表5.6 學生注冊模塊結(jié)果統(tǒng)計表測試內(nèi)容預(yù)期結(jié)果測試次數(shù)成功次數(shù)成功率情況一注冊成功5480%情況二該手機已注冊5480%從學生注冊模塊測試結(jié)果表可以看出,兩種情況均出現(xiàn)了一次錯誤。第一種情況是因為測試前沒有刪除數(shù)據(jù)庫中該學號對應(yīng)的device_id,因此會顯示手機已注冊;第二種情況出現(xiàn)的錯誤,是因為點擊注冊時,顯示服務(wù)器無響應(yīng),經(jīng)檢查發(fā)現(xiàn)斷網(wǎng)了,因此顯示服務(wù)器無響應(yīng)是正常情況。通過測試可以判斷,學生注冊模塊是可以防止手機重復(fù)注冊的。6 總結(jié)與展望隨著智能手機等移動互聯(lián)網(wǎng)的發(fā)展,移動終端的種類隨之越來越多,價格較以前相比便宜了很多,移動終端設(shè)備的應(yīng)用越來越廣、硬件配置越來越高,這支持并且要求我們需要將更多的計算機軟件在移動終端上實現(xiàn)。現(xiàn)在越來越多的軟件從電腦上被移植到移動終端上去,如QQ和word。隨著移動終端行業(yè)的繼續(xù)發(fā)展,必然會導(dǎo)致移動終端和計算機并存的現(xiàn)象,除了兩者之間的軟硬件差異會越來越小外,還有極大的可能導(dǎo)致計算機和移動終端合并。這就要求我們將更多更好的計算機軟件在移動終端上實現(xiàn)。6.1 論文工作總結(jié)本系統(tǒng)是基于移動定位的Android手機考勤系統(tǒng),主要目的是實現(xiàn)手機智能考勤,并提高教學質(zhì)量,方便老師的管理。本系統(tǒng)具有很好實用性,它以教學需求為目標,以方便教學為原則,根據(jù)教學實際的

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論