版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
基于Android的課堂考勤系統(tǒng)的設(shè)計與實現(xiàn)(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)
基于Android的課堂考勤系統(tǒng)的設(shè)計與實現(xiàn)(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)本科畢業(yè)論文題目基于Android的課堂考勤系統(tǒng)的設(shè)計與實現(xiàn)DesignandImplementationofClassroomAttendanceSystemBasedonAndroid姓名學號專業(yè)計算機科學與技術(shù)指導教師職稱副教授中國·武漢二〇一七年五月基于Android的課堂考勤系統(tǒng)的設(shè)計與實現(xiàn)DesignandImplementationofClassroomAttendanceSystemBasedonAndroid學生姓名:學生學號:學生專業(yè):計算機科學與技術(shù)指導教師:華中農(nóng)業(yè)大學楚天學院畢業(yè)論文(設(shè)計)原創(chuàng)性聲明本人鄭重聲明:所呈交的畢業(yè)論文(設(shè)計),是本人在導師的指導下,獨立進行研究所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本論文(設(shè)計)不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫過的作品成果.本人完全意識到本聲明的法律結(jié)果由本人承擔。
作者簽名:
日期:
年月日目錄TOC\o”1-3”\u摘要?PAGEREF_Toc19908I關(guān)鍵詞?PAGEREF_Toc5974IAbstractPAGEREF_Toc20912IKeywordsPAGEREF_Toc7523I1緒論 PAGEREF_Toc1899511。1研究目的與意義?PAGEREF_Toc2137011.2國內(nèi)外的研究現(xiàn)狀 PAGEREF_Toc261411.3本文的主要組織結(jié)構(gòu) PAGEREF_Toc1055512系統(tǒng)開發(fā)環(huán)境介紹 PAGEREF_Toc452722.1Android開發(fā)平臺基礎(chǔ)知識?PAGEREF_Toc671622.1.1Android平臺簡介?PAGEREF_Toc1728822。1.2Android的系統(tǒng)結(jié)構(gòu) PAGEREF_Toc940922.2課題相關(guān)的Android技術(shù)介紹?1632.2.1Android終端與Web服務(wù)器數(shù)據(jù)交互 PAGEREF_Toc1211932。3開發(fā)工具介紹?1033需求分析及系統(tǒng)概要設(shè)計?PAGEREF_Toc721543.1系統(tǒng)可行性分析?PAGEREF_Toc3079843。2功能需求分析 PAGEREF_Toc10753。3數(shù)據(jù)庫設(shè)計 PAGEREF_Toc1467953。4關(guān)系模型?PAGEREF_Toc2629983.5數(shù)據(jù)庫表 PAGEREF_Toc1286884系統(tǒng)詳細設(shè)計 PAGEREF_Toc32765104.1系統(tǒng)整體架構(gòu)設(shè)計?PAGEREF_Toc17286104。1。1系統(tǒng)架構(gòu)設(shè)計 PAGEREF_Toc31164104。1.2系統(tǒng)整體架構(gòu)?7114。2從功能模塊看核心流程 PAGEREF_Toc12735124。2.1服務(wù)端連接設(shè)計實現(xiàn)?PAGEREF_Toc21514124.2.2登錄注冊設(shè)計實現(xiàn) PAGEREF_Toc30479124.2.3請假功能模塊的實現(xiàn)?PAGEREF_Toc6787134.2。4考勤模塊實現(xiàn)?PAGEREF_Toc19474144。2.5個人中心模塊功能實現(xiàn) PAGEREF_Toc24401165實驗與驗證?PAGEREF_Toc31417176系統(tǒng)測試?PAGEREF_Toc581246。1系統(tǒng)測試方法?PAGEREF_Toc4810246。2系統(tǒng)測試過程 PAGEREF_Toc3696246.3測試總結(jié) PAGEREF_Toc27597277設(shè)計總結(jié)?PAGEREF_Toc690127參考文獻PAGEREF_Toc2027328致謝PAGEREF_Toc2638929摘要本論文介紹的是基于安卓技術(shù)的課堂考勤系統(tǒng),本軟件能夠為用戶提供實時查看課程信息,進行課堂簽到的功能,能夠解決當前高校對考勤信息管理困難的問題,對考勤信息進行統(tǒng)一的管理,提高考勤信息的實時性和統(tǒng)一性.這樣能讓高校對考勤信息的管理變得更加方便快捷,節(jié)省人力物力,為需求雙方提供了一個便利的平臺。本軟件系統(tǒng)采用Eclipse開發(fā)環(huán)境結(jié)合AndroidSDK進行設(shè)計,開發(fā)了一個基于Java語言的課堂考勤軟件。系統(tǒng)主要實現(xiàn)了登錄注冊、請假、考勤簽到、個人中心等主要功能模塊.在請假和考勤簽到中使用了百度定位的解決了簽到時候?qū)W生位置的定位,在查詢考勤信息中可以根據(jù)不同的條件獲得符合要求的考勤信息,個人中心可以對賬號密碼等進行修改。關(guān)鍵詞課堂考勤;Android;AndroidSDK;AbstractThispaperintroducesaclassattendancesystembasedonAndroidtechnology.Thissoftwarecanprovidereal-timeinformationfortheusertoviewthecurriculum,classroomattendancefunctionandcansolvethedifficultiesinmanagingcurrentcollegeattendanceinformationforcollegesanduniversities,uniformlymanagingtheattendanceinformationandimprovingthereal—timeandconsistencyofattendanceinformation.Thiscanmakethemanagementofattendanceinformat(yī)ionmoreconvenientandquick,andsavemanpowerandmaterialresources.Itprovidesaconvenientplatformforbothsidesofdemand.Thesoftwaresystemhasdevelopedaclassroomat(yī)tendancesoftwarebasedonJavausingEclipsetodevelopenvironmentandcombiningwithAndroidSDKtodesign.Thesystemmainlyimplementsthemajorfunctionalmodulesoflogin,registration,leaving,attendance,personalcenterandsoon。Intheleaveandattendanceregistration,theuseofBaidupositioninghassolvedthepositionedpositionwhenstudentssign。Intheinquiryofat(yī)tendanceinformation,thesystemcanaccesstotheattendanceinformat(yī)ionthat(yī)meetstherequirementsaccordingtodifferentconditions.Thepasswordoftheaccountnumbercanbemodifiedinthepersonalcenter.KeywordsClassat(yī)tendance;Android;AndroidSDK;1緒論1。1研究目的與意義開發(fā)本系統(tǒng)的目的,就是要解決目前高校中關(guān)于學生請假與上課出勤管理中所面臨的一系列問題。開發(fā)出高校學生考勤管理系統(tǒng)能有效地提高高校辦事效率,解決目前高校學生請假及上課出勤管理問題,實現(xiàn)學生請假及上課出勤信息對任課教師、班主任、院系領(lǐng)導、學校領(lǐng)導透明,使班主任、院系領(lǐng)導及時把握學生的學習情況,及時與學生溝通,提高教學質(zhì)量。但是傳統(tǒng)教學中,學生的考勤信息僅作為教師課程總評結(jié)果中對學生日常表現(xiàn)的評價依據(jù).而且還存在以下一些問題:(1)考勤信息由教師人工操作、管理,效率低下;(2)不同教師所掌握的考勤信息分散、缺乏聯(lián)系;(3)信息匯總往往發(fā)生在期末總評期間,實時性差;(4)記錄形式不規(guī)范統(tǒng)計困難;(5)教師對教學期間的缺勤信息缺乏及時的處理,利用率低下。本設(shè)計是以Android操作系統(tǒng)為基礎(chǔ)的“課堂考勤”軟件的設(shè)計與實現(xiàn).為了方便用戶可以隨時隨地查看考勤信息,申請請假,在線簽到等,一種高效的辦法就是做成應用程序拓展到用戶的終端設(shè)備上,并且提供一些輔助功能。所以這次畢業(yè)設(shè)計的目標就致力于開發(fā)出一款基于Android手機平臺的課堂考勤系統(tǒng),來滿足用戶的需求。1.2國內(nèi)外的研究現(xiàn)狀就目前的情況和事實來看,Android市場正在以迅猛的方式,慢慢地擴展了它的產(chǎn)品,以滿足不同人群的需求,而不僅僅是做一些低端的智能手機,智能機器能夠滿足一般人群的日常生活,包括娛樂的需求,會產(chǎn)生一些比較昂貴,但高品質(zhì)的高端智能手機,適合商務(wù)人士使用。智能機現(xiàn)在越來越多的被大家所接受,相較于其他品牌的普通機器,人們喜歡買一種便宜的,性能優(yōu)異的智能機,其原因是因為他們能滿足一般人誰使用手機的需求,性能特點各方面也讓用戶感到這是一個非常良好的感覺和行動,而不是作為高端機的價格昂貴。很多人喜歡用手機玩系統(tǒng),看視頻等,功能有點硬件和軟件的手機需要增加的需求,比如在屏幕上流暢,速度快,兼容性好等優(yōu)點,對這些人來說,也有很多高端智能手機采用Android,這款手機完全可以滿足人們的日常需求?,F(xiàn)在應用的安卓系統(tǒng)將更加努力來改善,有許多出名的應用程序,如地圖導航,視頻點播系統(tǒng)等.現(xiàn)在Android的發(fā)展速度超出了所有人的想象,為安卓開發(fā)的軟件也非常樂觀,這是一個值得發(fā)展壯大的領(lǐng)域,安卓也將是一個主流系統(tǒng),供市民使用。1.3本文的主要組織結(jié)構(gòu)第一章緒論:全文的研究目的與意義、國內(nèi)外的研究現(xiàn)狀是本章的主要內(nèi)容。此設(shè)計的研究目的與意義在第一節(jié)做出了簡單介紹,第二節(jié)對所用的工具及技術(shù)做出了簡略的敘述,本文的主要組織結(jié)構(gòu)在第三節(jié)做出了簡單介紹。第二章研究基礎(chǔ):本章主要介紹了全文用到的幾個基本概念以及使用的開發(fā)工具。第一節(jié)對全文需要用到的基本概念給出了解釋。第二節(jié)對完成本次設(shè)計所需的開發(fā)工具做了簡要介紹.第三章系統(tǒng)分析:系統(tǒng)的功能模塊和系統(tǒng)使用流程在這一節(jié)進行了介紹。第四章系統(tǒng)設(shè)計及主要模塊功能:本章對整個系統(tǒng)的實現(xiàn)、系統(tǒng)架構(gòu)進行了介紹,并將核心內(nèi)容進行了實現(xiàn),如:簽到、登錄、查詢請假、查詢考勤等。第五章系統(tǒng)實現(xiàn):這一章是對本次設(shè)計的各種功能進行細致的講述實現(xiàn)過程及系統(tǒng)如何完成這些功能的。第六章系統(tǒng)測試:這一章是對本次設(shè)計的各種功能進行細致的測試,驗證系統(tǒng)可用.第七章總結(jié):這一章對本次畢業(yè)設(shè)計進行了自我總結(jié)。2系統(tǒng)開發(fā)環(huán)境介紹2。1Android開發(fā)平臺基礎(chǔ)知識2。1。1Android平臺簡介Android屬于開源移動操作系統(tǒng),該系統(tǒng)主要在Linux平臺上進行設(shè)計,AndyRubin是該系統(tǒng)的最初設(shè)計主體,隨后Google對其進行收購,并且在07年正式宣布該平臺的建設(shè)成功,號稱是首個為移動終端打造的真正開放和完整的移動軟件。該平臺采用軟件疊層架構(gòu),由操作系統(tǒng)、中間件、用戶界面和應用軟件組成.該平臺在具體實踐過程中獲得了快速的發(fā)展,究其原因:其一,Google非常支持該系統(tǒng)的發(fā)展,該公司非常關(guān)注該系統(tǒng)在以下兩個方面的優(yōu)勢,即開源以及標準化,同時希望在創(chuàng)新移動產(chǎn)業(yè)過程中讓這一優(yōu)勢得到體現(xiàn),借此來解決相關(guān)問題,以此來讓個人也能夠想享受到開放性的信息服務(wù)系統(tǒng)服務(wù).其二,Android自身所具有的開放、應用程序相互平等、應用程序之間溝通無限制的優(yōu)勢有也是其快速發(fā)展的重要原因。2.1。2Android的系統(tǒng)結(jié)構(gòu)該系統(tǒng)架構(gòu)在具體設(shè)計過程中遵循的思想為分層架構(gòu),形成了清晰的結(jié)構(gòu)以及層次,做到了分工合作。具體來說,其主要由以下幾個部分組成,即應用程序?qū)?、應用框架層、系統(tǒng)庫和Android運行庫以及Linux內(nèi)核層,如圖2—1所示。圖2-1Android系統(tǒng)架構(gòu)圖接下來對每一層的功能進行具體分析:第一,應用層,這一層的應用程序在編寫過程中主要使用的語言為JAVA語言,并且有非常關(guān)鍵性的應用程序,典型代表有通訊錄管理、收發(fā)信息以及撥打電話等等。這些核心應用可以被編程人員自己用JAVA語言開發(fā)的應用程序進行替代。第二,應用程序框架層,在具體開發(fā)這一系統(tǒng)時,這一層發(fā)揮著基礎(chǔ)性作用,相當數(shù)量核心應用程序來實現(xiàn)核心功能過程中,都需要依托這一層才能夠?qū)崿F(xiàn)。立足于該層中的重用機制,開發(fā)人員對其給予的組件部分,能夠使開發(fā)應用程序快速的實現(xiàn),同時能夠方便地替換平臺本身的各種應用程序組件。第三,系統(tǒng)庫以及Android運行庫,系統(tǒng)庫在應用程序中發(fā)揮著決定性影響,并且連接以下兩個層,即框架層以及Linux內(nèi)核層。在對該系統(tǒng)進行運行過程中,其具體組成內(nèi)容有核心庫和Dalvik虛擬機,前者既兼容了大多數(shù)Java語言所需要調(diào)用的功能函數(shù),又包括了Android的核心庫。第四,Linux內(nèi)核層,該系統(tǒng)的關(guān)鍵功能實現(xiàn)都需要依托這一層次來實現(xiàn),典型代表有安全性、相關(guān)進程、管理以及網(wǎng)絡(luò)協(xié)議等等。Linux內(nèi)核也同時作為硬件和軟件棧之間的抽象層。本文主要是在Android應用基礎(chǔ)上來進行相關(guān)軟件開發(fā),這意味著有必要介紹Android的應用程序基礎(chǔ)知識和相關(guān)組件。2。2課題相關(guān)的Android技術(shù)介紹2.2.1Android終端與Web服務(wù)器數(shù)據(jù)交互在android中發(fā)布應用的途徑主要有:第一,客戶端應用程序,依托AndroidSDK來完成開發(fā),在用戶設(shè)備安裝過程中,其后綴為.apk。第二,作為web應用程序,使用web標準制定和通過web瀏覽器訪問一一不需安裝任何東西。在最終決定應用程序方法時,受到諸多因素影響,但是為能夠支持viewport屬性等等,以此來進一步簡便web應用程序開發(fā)。除此之外,能實現(xiàn)根據(jù)屏幕大小確定web應用的適當尺寸、根據(jù)屏幕分辨率提供圖片和不同風格等功能。在這種情況下,提出屏幕考慮因素可以讓web應用程序開發(fā)難度進一步減少。因為所有Android類型的款的屏幕可以幫你將web頁面設(shè)計的很好。在客戶端以及web端中建立相應的程序并不需要對相關(guān)程序進行設(shè)計,這也是該系統(tǒng)的特點之一。據(jù)此能夠綜合使用這兩方面內(nèi)容,以此來對相關(guān)客戶端進行開發(fā),并且在程序中添加web頁.下圖直觀顯示如何可以訪問web頁從web瀏覽器或Android的應用程序。如圖2—2所示。圖2-2Android終端與Web服務(wù)器端數(shù)據(jù)交互2。3開發(fā)工具介紹(1)Eclipse介紹Eclipse源代碼具有開放性的特點,從本質(zhì)上看,其僅僅包含了一個框架以及一組服務(wù),然而其存在相應的標準插件集,可以據(jù)此來對開發(fā)環(huán)境進行構(gòu)建,是一個基于Java的可擴展開發(fā)平臺。Eclipse主要選擇了輕型軟件組件化架構(gòu)來建立插件集,據(jù)此來在客戶機中增加相應的功能,例如可以支持更多的開發(fā)語言?,F(xiàn)階段,已經(jīng)存在的插件可以對如下內(nèi)容進行使用,即C/C++(CDT)、Ruby等等,同時也可以開發(fā)數(shù)據(jù)庫.插件架構(gòu)可以在當前環(huán)境中增加任何內(nèi)容,具體來說,可以實現(xiàn)配置管理等等,并不僅僅是對相關(guān)編程語言進行使用。其主要結(jié)合如下思想進行設(shè)計,即依托插件來實現(xiàn)所有的功能,其不具有較大的核心,主要通過插件方式來在核心中添加相關(guān)的功能.Eclipse基本內(nèi)核包括:圖形API,Java開發(fā)環(huán)境插件(JDT),插件開發(fā)環(huán)境(PDE)等。Eclipse是一個開放源代碼的軟件開發(fā)項目。它具體包括四個部分:EclipsePlatform,JDT,CDT和PDE,主要由以下幾個項目組成:Eclipse項目、工具項目和技術(shù)項目。PDE用來支持插件開發(fā)、CDT支持C開發(fā)、JDT支持Java開發(fā)、EclipsePlatform則提供了一個通用的開發(fā)平臺,是一個開放的可擴展IDE。要據(jù)此來編寫Android工程,首先需要形成相應的開發(fā)環(huán)境,在這一過程中,首先需要對該工具進行安裝,然后在其上安裝ADT插件,再指定SDK正確的路徑,這樣變可以創(chuàng)建android虛擬機了。(2)關(guān)鍵技術(shù)介紹Android平臺開發(fā)方面包含基本的應用功能開發(fā)、數(shù)據(jù)存儲、網(wǎng)絡(luò)訪問這三大塊。如圖2-3所示.圖2-3Android平臺開發(fā)(3)功能開發(fā)標準的Android程序由如下4部分組成即Activity、BroadcastIntentReceiver、Service、ContentProvider來實現(xiàn)。(4)數(shù)據(jù)存儲在Android,可供選擇的存儲方式包括了SharedPreferences、文件存儲、SQLite數(shù)據(jù)庫存儲方式、內(nèi)容提供器方式(ContentProvider)以及網(wǎng)絡(luò)方式5種,本系統(tǒng)網(wǎng)絡(luò)方式主要是通過網(wǎng)絡(luò)訪問該網(wǎng)絡(luò)提供的網(wǎng)絡(luò)服務(wù)接口實現(xiàn)數(shù)據(jù)的讀寫服務(wù)。(5)網(wǎng)絡(luò)訪問方面主要是Http訪問技術(shù)的封裝,通過java.NET。*;以及Android.net。*;下面提供的HttpPost、DefaultHttpClient、HttpResponse等類提供的訪問接口來實現(xiàn)具體的web服務(wù)訪問.本軟件采用Java作為開發(fā)語言,布局和數(shù)據(jù)存儲是開發(fā)本軟件的關(guān)鍵技術(shù),布局用來設(shè)計用戶交互界面,使用xml技術(shù)設(shè)計,而xml中控件的位置和狀態(tài)則離不開布局的使用,用戶界面的設(shè)計是否美觀和合理直接影響用戶體驗,因此運用好布局技術(shù)是直接和用戶相關(guān)的,而數(shù)據(jù)存儲技術(shù)則記錄了用戶所有的操作數(shù)據(jù)和用戶所需要提取的數(shù)據(jù)。3需求分析及系統(tǒng)概要設(shè)計3.1系統(tǒng)可行性分析(1)技術(shù)可行性Java提供了穩(wěn)定的性能、優(yōu)秀的升級性、更快速的開發(fā)、更簡便的管理、全新的語言以及服務(wù)。整個系統(tǒng)幫用戶做了大部分不重要的瑣碎的工作。且關(guān)于這方面的書籍、資料比較齊全。(2)操作可行性本系統(tǒng)采用基于安卓客戶端,利用安卓手機安裝軟件就能夠進行訪問和操作,且界面簡單易操作,用戶只要平時有在用過智能手機,都能進行訪問和操作。本系統(tǒng)具有易操作、易管理、交互性好的特點,在操作上是非常簡單的。因此本系統(tǒng)可以進行開發(fā).而且對于目前高??记谛畔⒐芾砝щy的問題可以進行有效的解決,提高考勤信息的實時性和統(tǒng)一性。(3)經(jīng)濟可行性系統(tǒng)是基于Android的軟件,采用Eclipse平臺。所以系統(tǒng)在開發(fā)人力、財力要求不高。且能夠有效降低高校中對考勤花費的人力物力。具有經(jīng)濟可行性。3.2功能需求分析用戶使用考勤系統(tǒng),首先需要登錄成功.通過http協(xié)議發(fā)送post請求給后臺服務(wù)器,后臺服務(wù)器通過controller接受登錄的用戶名和密碼選擇對應方法驗證是否登錄成功。當學生沒有賬號時,可以點擊學生注冊進行注冊。輸入所有信息后,且賬號名不為空,兩次密碼相同,則將注冊信息通過異步post提交給后臺,后臺調(diào)用數(shù)據(jù)庫添加學生信息。教師、輔導員以及領(lǐng)導需要在后臺由管理員進行添加.系統(tǒng)主要分為考勤、請假、個人信息三個模塊.進入系統(tǒng)首頁后可以選擇這三個功能模塊.在學生登錄后,點擊請假可以查看請假狀態(tài)(請假是否通過審核),并且可以添加請假的申請或者刪除之前的請假申請;當點擊考勤時根據(jù)課程、時間、當前定位地點來確定學生是否簽到成功。在教師登錄后,點擊查看請假信息可以查看當前通過審核的請假信息.當點擊查看考勤信息可查看此教師教授課程的所有考勤信息,教師也可以根據(jù)學號添加缺勤信息,或者點擊統(tǒng)計然后根據(jù)學生姓名搜此學生的各種考勤信息.輔導員和領(lǐng)導登錄后,點擊查看請假信息可以查看所有請假信息,并且可以選擇是否通過請假申請;而點擊查看考勤信息可以查看所有學生的考勤信息,并且可以根據(jù)課程、時間來查詢所有對應的考勤信息.用戶登錄后都可以在個人界面查看到昵稱和賬號,也可以直接修改昵稱和密碼。圖3—1系統(tǒng)功能結(jié)構(gòu)圖3.3數(shù)據(jù)庫設(shè)計(1)學生實體屬性圖,如下圖3—2所示。圖3-2學生實體屬性圖(2)教師實體屬性圖,如下圖3-3所示。圖3—3教師實體屬性圖(3)輔導員實體屬性圖,如下圖3-4所示。圖3-4輔導員實體屬性圖(4)領(lǐng)導實體屬性圖,如下圖3—5所示。圖3-5領(lǐng)導實體屬性圖(5)學生、課程考勤局部E—R圖,如下圖3-6所示.圖3-6學生、課程考勤局部E—R圖(6)教師、課程局部E-R圖,如下圖3-7所示。圖3—7教師、課程局部E—R圖(7)學生、課程請假局部E—R圖,如下圖3-8所示.圖3-8學生、課程請假局部E-R圖(8)總體E—R圖,如下圖3-9所示。圖3-9總體E—R圖3。4關(guān)系模型由以上實體和E-R圖可導出如下關(guān)系模型。學生(編號,學號,密碼,姓名,角色,班級,電話,密保,經(jīng)度,緯度)教師(編號,工號,密碼,姓名,角色,課程,電話,密保,經(jīng)度,緯度)輔導員(編號,工號,密碼,姓名,角色,電話,密保,經(jīng)度,緯度)領(lǐng)導(編號,工號,密碼,姓名,角色,電話,密保,經(jīng)度,緯度)考勤(編號,學號,教師工號,地址,時間,學生姓名,課程,狀態(tài),經(jīng)度,緯度)請假(編號,學號,教師工號,備注,時間,地址,審核狀態(tài),圖片)3.5數(shù)據(jù)庫表用戶表,如下表3-1所示。表3-1學生表字段字段名類型意義id編號int自增長gonghao學號varchar(20)主鍵pass密碼varchar(50)name姓名varchar(50)type角色varchar(20)識別身份banji班級varchar(20)學生所在班級tel電話varchar(50)mibao密保varchar(50)找回密碼需驗證lat經(jīng)度varchar(20)lng緯度varchar(20)教師表,如下表3-2所示.表3-2教師表字段字段名類型意義id編號int自增長gonghao工號varchar(20)主鍵pass密碼varchar(50)name姓名varchar(50)type角色varchar(20)識別身份kecheng課程varchar(50)教師教授的課程名tel電話varchar(50)mibao密保varchar(20)找回密碼需驗證lat經(jīng)度varchar(20)lng緯度varchar(50)輔導員表,如下表3—3所示。表3—3輔導員表字段字段名類型意義id編號int自增長gonghao工號varchar(20)主鍵pass密碼varchar(50)name姓名varchar(50)type角色varchar(20)識別身份tel電話varchar(50)mibao密保varchar(50)找回密碼需驗證lat經(jīng)度varchar(20)lng緯度varchar(20)領(lǐng)導表,如下表3-4所示.表3-4領(lǐng)導表字段字段名類型意義id編號int自增長gonghao工號varchar(20)主鍵pass密碼varchar(50)name姓名varchar(50)type角色varchar(20)識別身份tel電話varchar(50)mibao密保varchar(50)找回密碼需驗證lat經(jīng)度varchar(20)lng緯度varchar(20)考勤表,如下表3-5所示。表3-5考勤表字段字段名類型意義id編號int自增長uid學生學號號varchar(20)tid教師工號varchar(20)根據(jù)教師確定課程address地址varchar(50)簽到地點time時間varchar(50)簽到時間uname學生姓名varchar(50)簽到學生姓名state狀態(tài)varchar(20)簽到狀態(tài)kc課程varchar(50)簽到課程lat經(jīng)度varchar(20)lng緯度varchar(20)請假表,如下表3-6所示。表3-6請假表字段字段名類型意義id編號int自增長uid學生工號varchar(20)tid教師工號varchar(20)beizhu備注varchar(50)請假原因data時間varchar(50)請假時間address地址varchar(50)請假地點type審核狀態(tài)varchar(20)審核狀態(tài),默認審核中pic圖片varchar(50)頭像4系統(tǒng)詳細設(shè)計4.1系統(tǒng)整體架構(gòu)設(shè)計4.1.1系統(tǒng)架構(gòu)設(shè)計若確定軟件具有若干個部分,則其中最高層次必然為系統(tǒng)架構(gòu)。軟件系統(tǒng)的核心內(nèi)容之一即為元件,再設(shè)計系統(tǒng)架構(gòu)過程中,需要對元件之間的關(guān)系進行確定。系統(tǒng)架構(gòu)設(shè)計除了對己確定的需求的技術(shù)實現(xiàn)構(gòu)架、作好規(guī)劃外,對其可擴展行、穩(wěn)定性和安全性也要給予足夠的重視。本系統(tǒng)主要存在前臺以及后臺,即客戶端以及服務(wù)器端,彼此之間具有相對獨立性。在設(shè)計客戶端過程中,要對使用者的可操作性進行關(guān)注,后臺服務(wù)端設(shè)計著重功能實現(xiàn)上的邏輯合理性,兼顧與數(shù)據(jù)庫的數(shù)據(jù)交互.本基于Android手機的課堂考勤系統(tǒng)后臺的開發(fā)便是采用了SpringMVC的框架來進行實現(xiàn)的。SpringMVC是服務(wù)者到工作者模式的實現(xiàn).前端控制器是DispatcherServlet;應用控制器其實可以拆為處理器映射器(HandlerMapping)進行處理器管理和視圖解析器(ViewResolver)來進行視圖管理;頁面控制器/動作/處理器為Controller接口(僅包含ModelAndViewhandleRequest(request,response)方法)的實現(xiàn)(也可以是任何的POJO類);支持本地化(Locale)解析、主題(Theme)解析及文件上傳等;提供了非常靈活的數(shù)據(jù)驗證、格式化和數(shù)據(jù)綁定機制;提供了強大的約定大于配置(慣例優(yōu)先原則)的契約式編程支持.圖4-1SpringMVC應用結(jié)構(gòu)核心架構(gòu)的具體流程步驟如下:(1)首先用戶發(fā)送請求至DispatcherServlet,前端控制器收到請求后自己不進行處理,而是委托給其他的解析器進行處理,作為統(tǒng)一訪問點,進行全局的流程控制;(2)DispatcherServlet至HandlerMapping,HandlerMapping將會把請求映射為HandlerExecutionChain對象(包含一個Handler處理器(頁面控制器)對象、多個HandlerInterceptor攔截器)對象,通過這種策略模式,很容易添加新的映射策略;(3)Dispat(yī)cherServlet至HandlerAdapter,HandlerAdapter將會把處理器包裝為適配器,從而支持多種類型的處理器,即適配器設(shè)計模式的應用,從而很容易支持很多類型的處理器;(4)HandlerAdapter至處理器功能處理方法的調(diào)用,HandlerAdapter將會根據(jù)適配的結(jié)果調(diào)用真正的處理器的功能處理方法,完成功能處理;并返回一個ModelAndView對象(包含模型數(shù)據(jù)、邏輯視圖名);(5)ModelAndView的邏輯視圖名至ViewResolver,ViewResolver?qū)堰壿嬕晥D名解析為具體的View,通過這種策略模式,很容易更換其他視圖技術(shù);(6)View至渲染,View會根據(jù)傳進來的Model模型數(shù)據(jù)進行渲染,此處的Model實際是一個Map數(shù)據(jù)結(jié)構(gòu),因此很容易支持其他視圖技術(shù);(7)返回控制權(quán)給DispatcherServlet,并且由DispatcherServlet返回響應給用戶,到此一個流程結(jié)束.圖4-2系統(tǒng)數(shù)據(jù)流向在本系統(tǒng)中,用SpringMVC開發(fā)框架來構(gòu)建后臺服務(wù)端,利用了其提供了基于Java的高效開發(fā)的特點,可以快速構(gòu)建穩(wěn)定、功能強大的后臺應用服務(wù)。如圖所示,本系統(tǒng)從Android端直接向由SpringMVC搭建的服務(wù)端獲取請求,服務(wù)端接受請求過后或調(diào)用遠程WEB接口獲取數(shù)據(jù),或調(diào)用本地數(shù)據(jù)庫獲取數(shù)據(jù),然后返回JSON數(shù)據(jù)結(jié)構(gòu)的返回數(shù)據(jù)給Android端.如此一來,就形成了一個運轉(zhuǎn)良好的信息回路。不但把原有系統(tǒng)進行了整合,而且還加入了一些新功能。4.1.2系統(tǒng)整體架構(gòu)基于Android手機的課堂考勤系統(tǒng)的層次和布局如圖4—3所示:圖4—3系統(tǒng)結(jié)構(gòu)圖由上圖可見系統(tǒng)是由三個部分組成,客戶端、服務(wù)端和數(shù)據(jù)端,三個層次在系統(tǒng)中承擔的角色各不相同.客戶端就是指移動終端,用戶通過3G或者WIFI利用移動設(shè)備進入系統(tǒng),與系統(tǒng)建立通信.對于本系統(tǒng)來說,該層是基于安卓的應用程序搭建,其中包括應用程序的界面部分(AndroidView)和應用程序的邏輯控制(AndroidController)搭建。該層通過調(diào)用服務(wù)端接口獲取信息.服務(wù)端是一個基于Java平臺的WEB應用,與傳統(tǒng)的網(wǎng)絡(luò)應用程序不同的是,該層不包含界面的展示,只是為前臺提供JSON數(shù)據(jù)接口.該層包括控制層和業(yè)務(wù)邏輯層,控制層負責提供外部接口以及對接口進行數(shù)據(jù)定義,業(yè)務(wù)邏輯類定義了訪問獲取數(shù)據(jù)庫信息的邏輯和訪問數(shù)據(jù)庫的方式。數(shù)據(jù)層包含兩個數(shù)據(jù)源,一部分是本地數(shù)據(jù)庫的訪問,另一部分是對現(xiàn)有的基于Android平臺的課堂考勤系統(tǒng)數(shù)據(jù)庫的訪問。無論是數(shù)據(jù)的交互還是界面以及流程的設(shè)計,本系統(tǒng)都遵循了MVC設(shè)計原則,盡把系統(tǒng)的功能流程拆分成為具有單獨功能的層次,這樣一來,當未來需要對系統(tǒng)進行修改或者擴展的時候就會變得非常方便,簡而言之,提升了系統(tǒng)的擴展性。同時,系統(tǒng)安全設(shè)計需要貫穿整個數(shù)據(jù)流程,為信息系統(tǒng)的存儲、傳遞、利用提供安全性保障。4.2從功能模塊看核心流程4.2.1服務(wù)端連接設(shè)計實現(xiàn)在本系統(tǒng)我們是使用Http網(wǎng)絡(luò)協(xié)議技術(shù),它具有GET和POST兩種請求方式,對于服務(wù)器交互的數(shù)據(jù),我們使用JSON字符串,Gson框架對它進行解析和轉(zhuǎn)換,這些方法都分別封裝在HttpsUtil。java和JsonUtils.java兩個工具類中。4。2.2登錄注冊設(shè)計實現(xiàn)點擊課堂考勤APP的桌面程序圖標進入登錄界面即login_main.xml界面,先從SharedPreferences中取出上次登錄的用戶名、密碼,如不為空則賦值給相應的輸入框,如為空則要求用戶輸入自己用戶名密碼,點擊登錄按鈕執(zhí)行validate()驗證用戶、密碼是否規(guī)范,符合要求后調(diào)用UserClient。get()方法,開啟一個異步任務(wù)將數(shù)據(jù)通過Http傳服務(wù)器與數(shù)據(jù)庫的用戶信息進行匹配,若用戶名、密碼正確無誤則用戶登錄成功,同時也將本次用戶、密碼也保存到SharedPreference中.用戶登錄的流程圖如4-4所示。圖4-4用戶登錄流程圖如果是新用戶,則點擊登錄界面上的注冊按鈕,進入到activity_register。xml頁面在RegisterActivity.java中進行注冊,此時用戶需要輸入基本信息,分別為用戶名、密碼、確認密碼等信息.點擊注冊按鈕驗證信息的規(guī)范性后將注冊信息封裝提交服務(wù)器并保存到數(shù)據(jù)庫中。注冊成功后返回登錄界面。如下圖4—5所示.圖4—5用戶注冊流程圖如果忘記密碼,則可以點擊找回密碼來通過密保找回密碼。在點擊提交時會驗證是否為空,當兩個EditText都不為空的時候才能提交.服務(wù)器去數(shù)據(jù)庫查詢,如果查到對應用戶,則返回當前用戶的姓名。如下圖4-6所示。圖4-6用戶注冊流程圖4.2.3請假功能模塊的實現(xiàn)請假功能模塊主要實現(xiàn)了用戶查看請假記錄,學生可以發(fā)起請假信息,輔導員和領(lǐng)導對學生的請假信息進行審核。學生申請請假的界面是功能實現(xiàn)在qingjia_add。java中,界面為一個ImageView、日期為兩個TestView、備注則為一個EditText控件.當提交的時候會通過UserClient。java中的get方法發(fā)出一個異步請求提交請假信息,后臺接受后將數(shù)據(jù)寫入數(shù)據(jù)庫中。請假功能模塊實現(xiàn)流程如圖4—7所示.圖4—7學生請假流程圖當學生提交申請后,輔導員和領(lǐng)導可以在查詢請假中看到未審核的請假信息,輔導員和領(lǐng)導可以選擇是否通過審核,審核流程如圖4—8所示.圖4-8審核流程圖教師可以在查詢請假里面查看到自己所教授課程的請假信息,這里只顯示請假通過審核的信息;學生可以查看自己請假狀態(tài)是否被審核通過;輔導員和領(lǐng)導可以查看所有未審核請假信息。至此請假功能模塊結(jié)束。4.2。4考勤模塊實現(xiàn)考勤模塊主要實現(xiàn)了用戶查看考勤記錄的功能,學生進行簽到,教師對學生簽到信息進行審核。 在學生簽到中通過課程、時間以及地點來進行確定學生是否能簽到成功,這里面課程通過學生選擇,時間自動在提交的時候獲取,而地點則由百度定位來實現(xiàn)。簽到時可以根據(jù)控件com.baidu.mapapi.map。MapView這個百度控件來查看當前自己在地圖上的大致位置,在定位中定位會在BDLocationListener中獲得返回的經(jīng)緯度和地址描述,通過重寫onReceiveLocation方法來獲取定位的信息,然后調(diào)用服務(wù)器方法來和教師位置作對比,如果在該課程簽到時間內(nèi)且地理位置相差距離在30米內(nèi).則算簽到成功,否則記為遲到.如圖4—9所示.圖4-9學生簽到流程圖而在教師查詢考勤信息時,默認顯示的是當前課的所有考勤信息??梢渣c擊統(tǒng)計進入按學生姓名查詢考勤信息.相當于在默認情況下加了查詢條件,使得教師可以更快速的找到想要的信息。如圖4-10所示。圖4-10教師查看及添加考勤流程圖當輔導員和領(lǐng)導查詢考勤信息時,默認顯示全部考勤信息。同樣可以點擊進入一個新的Activity按照課程、時間、類別的方式來指定條件查詢。如圖4—11所示。圖4—11輔導員、領(lǐng)導考勤流程圖4.2.5個人中心模塊功能實現(xiàn)個人中心模塊主要實現(xiàn)了用戶查看個人基本信息、修改個人信息的功能。在這里可以查看到當前賬號的賬號名和昵稱,可以直接對昵稱和密碼進行修改,當需要修改的時候會驗證兩個EditText控件中的內(nèi)容是否為空,不為空的時候才會進行提交修改。Android會把這個請求提交給服務(wù)器,讓服務(wù)器自己選擇UserController中對應的方法解決。個人中心模塊流程圖如圖4-12所示。圖4-12個人中心流程圖這里根據(jù)當前登錄賬號,對此賬號的昵稱和密碼進行修改。這里也使用AsyncHttpClient進行異步請求修改賬號昵稱和密碼并根據(jù)返回的json確定是否修改成功。5實驗與驗證這里本人將從四個角色分別測試本程序是否能夠完成其所有功能,每個角色在這個系統(tǒng)中的功能不同需要分開來演示。(1)學生身份實現(xiàn)的功能首先啟動應用,就會啟動LoginActivity這個Activity,這個界面主要部分是圖片TextView、兩個EditText、一個Button按鈕,兩個EditText中獲取賬號和密碼,按鈕被點擊時候觸發(fā)監(jiān)聽時間去驗證數(shù)據(jù)是否合法,然后提交給服務(wù)器,由服務(wù)器的select()方法在數(shù)據(jù)庫中匹配是否存在這個賬號,并且密碼是否正確。如果正確會返回當前登錄用戶的角色,然后進入對應功能模塊。如下圖5-1所示。圖5-1登錄界面接下來點擊學生注冊,會調(diào)用RegistActivity這個Activity。這個Activity中當提交的時候會對各個EditText進行是否為空的驗證.兩次輸入密碼會驗證兩次是否相同。當兩個條件都滿足的時候提交才能將數(shù)據(jù)提交給服務(wù)器,讓服務(wù)器對數(shù)據(jù)庫進行添加操作.如下圖5—2所示。圖5—2學生注冊界面輸入信息后點擊提交,由服務(wù)器先用select()方法驗證學號是否重復,如果重復則不能注冊。如果不重復則執(zhí)行User.a(chǎn)dd()方法添加學生信息,然后返回注冊成功消息,成功后自動返回登錄界面,這里成功后會將注冊這個界面的Activity用finish()方法結(jié)束掉。如下圖5-3所示.圖5-3注冊成功后返回登錄界面登錄進入系統(tǒng),這里會發(fā)送異步請求給服務(wù)器,服務(wù)器在數(shù)據(jù)庫中查詢,匹配則登錄成功,并按照不同角色登入不同Activity.學生登錄的是com。example.qingjia包下的MainActivity這個Activity。如下圖5-4所示.圖5-4學生登錄界面在請假中可以看請假結(jié)果,點擊請假后會通過Intent跳轉(zhuǎn)到qingjia_list。java這個Activity中,并發(fā)出異步請求獲取所有的請假信息,然后通過返回的json數(shù)據(jù)將數(shù)據(jù)再用adapter添加成一個個view,然后顯示上去。如下圖5—5所示。圖5-5查看自己請假狀態(tài)點擊右上角加號可以申請請假。點擊右上角加號跳轉(zhuǎn)到qingjia_add。java中,當填寫了請假信息后,點擊提交時會驗證時間和請假原因是否為空,不為空則發(fā)送請求給服務(wù)器,執(zhí)行添加操作.如下圖5-6所示。未填寫請假(b)填寫后圖5—6申請請假界面選擇請假課程、圖片、時間、請假原因后點擊提交,即可申請請假.這里選圖片的時候,如果圖片過大,可以通過cropImage()方法對圖片進行剪切。成功添加后如下圖5-7所示。在提交后會從服務(wù)器獲取一個返回值,當返回值為1的時候就會代表請假成功,用MyToastUtil.java中這個ShowToast方法來顯示一個成功提示的吐司提示.圖5-7申請成功點擊請假信息可以選擇是否取消請假.當選擇刪除的時候,就將刪除的信息提交到服務(wù)器執(zhí)行kaoqingController.deleteById()方法執(zhí)行刪除操作。刪除完了后會自動刷新頁面,重新使用異步請求獲取請假數(shù)據(jù),然后顯示在界面上。如下圖5-8所示。? ??(a)選擇操作(b)選擇刪除后圖5—8刪除請假申請在登錄界面點擊考勤,并選擇課程后即可簽到,如果此時離這節(jié)課的老師太遠則會記為遲到.這個過程中調(diào)用了百度定位的接口,通過重寫onReceiveLocation方法獲?。翫Locat(yī)ionListener中返回的地址信息。這個地址信息中有三個需要的數(shù)據(jù)分別為:address、lat、lng,address是當前位置的大致信息,lat和lng分別是經(jīng)度和緯度,定位主要靠經(jīng)度和緯度進行計算距離來判斷是否符合簽到。然后finish()掉這個Activity。如下圖5—9所示。(a)選擇課程并提交(b)成功提交圖5-9考勤簽到點擊個人信息,里面可以修改當前賬號密碼。打開mycenter.java這個Activity,如果修改用戶信息不為空,則提交要求改的昵稱和密碼。服務(wù)器通過json中的數(shù)據(jù)自動匹配kaoqingController中的update()方法更新信息。然后根據(jù)返回json判斷是否修改成功,用吐司提示。如下圖5-10所示。????(a)個人信息界面(b)修改信息圖5—10更新昵稱和密碼提交后根據(jù)服務(wù)器返回的json數(shù)據(jù)來判斷是否修改成功,當返回1的時候就提示成功。如下圖5-11所示。圖5—11更新成功(2)教師身份實現(xiàn)的功能教師登錄后點擊請假記錄可以查看已通過審核的請假信息。這里跳轉(zhuǎn)的是com.example。qingjia.jiaoshi包下的qingjia_list。java這個Activity。如下圖5-12.圖5-12查看通過審核的請假點擊查詢考勤記錄可以看教授課程的考勤情況,通過UserClient中的get方法發(fā)出異步請求獲取考勤信息。如果點擊統(tǒng)計則跳轉(zhuǎn)到tongji_list.java中,點擊可以根據(jù)學生信息將考勤信息進行篩選,然后顯示.如下圖5—13。(a)顯示考勤(b)按姓名查詢圖5-13查看所有本課考勤信息教師可以自己添加缺勤記錄。這里通過學號添加缺勤信息,將學號通過異步請求發(fā)送給服務(wù)器,然后調(diào)用kaoqingController中的buchong()方法添加缺勤信息.如下圖5-14所示。(a)填寫缺勤學生學號(b)成功添加并刷新圖5—14添加缺勤信息注:教師個人信息部分和學生相同,在此就不多做贅述。(3)輔導員、領(lǐng)導身份實現(xiàn)的功能請假信息中可以查看所有請假信息,點擊可以選擇是否審核通過.這里先跳轉(zhuǎn)到com。example.qt包下的qingjia_list.java這個Activity,這里默認條件只顯示需要審核的請假信息。點擊確認刪除后將請求提交給服務(wù)器,服務(wù)器執(zhí)行qingjiaController中的update()方法修改請假信息的狀態(tài)。處理完成后,如果成功會返回1的結(jié)果表示操作成功,由此完成對請假的審核。如下圖5-15所示.(a)審核請假(b)批準請假圖5—15審核請假審核通過后學生這里顯示的請假信息.審核后會自動調(diào)用UserClient中的get方法重新獲取請假信息,然后刷新界面。如下圖5—16所示.圖5—16審核通過后顯示結(jié)果如果點擊查詢考勤信息,可以查看所有課程的遲到和缺勤的信息。當點擊統(tǒng)計時候跳轉(zhuǎn)到tongji_list.java中,然后可以根據(jù)課程、時間和類別對考勤信息進行篩選。這里同樣使用UserClient中的get方法進行異步請求獲取數(shù)據(jù)。如下圖5—17所示.個人信息部分和學生相同,就不再重復描述了。 ???(a)顯示所有考勤(b)按條件查詢考勤圖5-17查看所有考勤記錄6系統(tǒng)測試6.1系統(tǒng)測試方法黑盒測試更加注重于測試軟件中的功能需求,根據(jù)軟件規(guī)格說明書中描述的要求,運行并且驗證程序是否能夠滿足用戶的需求,是一種從用戶立場來出發(fā)的測試.它把被測試的程序當成一個黑盒子,不考慮它內(nèi)部的邏輯結(jié)構(gòu),通過輸入的測試數(shù)據(jù),根據(jù)需求來判斷輸出數(shù)據(jù)是否正確,確認軟件功能的正確性和可操作性.根據(jù)軟禁的特定功能構(gòu)造測試,以正式各個部分功能可以執(zhí)行完全,同時在功能中尋找缺陷。本系統(tǒng)的測試方法就是黑盒測試,測試手機為nubiaZ11.6。2系統(tǒng)測試過程(1)用戶注冊的測試,如下表6-1所示。表6-1用戶注冊成功的測試用例前置條件:進入注冊界面測試方法:黑盒測試。輸入數(shù)據(jù):姓名:lyz,學號:lyz,專業(yè)班級:計科1301,密碼:123,確認密碼:123,密保:123。執(zhí)行步驟:填寫注冊信息→提交.預期輸出:注冊成功,返回登錄界面.實際結(jié)果:注冊成功,返回登錄界面。結(jié)論:通過。(2)用戶找回密碼的測試,如下表6-2所示。表6—2用戶找回密碼成功的測試用例前置條件:進入找回密碼界面測試方法:黑盒測試。輸入數(shù)據(jù):賬號名:lyz,密保:123。執(zhí)行步驟:填寫密保信息→提交。預期輸出:找回成功,吐司顯示此賬號密碼.實際結(jié)果:找回成功,吐司顯示此賬號密碼.結(jié)論:通過。(3)學生申請請假的測試,如下表6-3所示。表6—3學生申請請假的用例前置條件:以學生身份登入,進入申請請假界面測試方法:黑盒測試.輸入數(shù)據(jù):請假課程:英語,圖片:假條的圖片,時間:2017—5-10至2017-5-11,原因:生病。執(zhí)行步驟:填寫請假信息→提交。預期輸出:添加成功,并能在請假中查看的新申請的請假信息。實際結(jié)果:添加成功,并能在請假中查看的新申請的請假信息。結(jié)論:通過。(4)學生簽到的測試,如下表6—4所示。表6-4學生簽到的測試用例前置條件:以學生身份登入測試方法:黑盒測試。輸入數(shù)據(jù):課程:英語,時間:第一節(jié)課。執(zhí)行步驟:填寫簽到信息→提交數(shù)據(jù).預期輸出:簽到成功,返回登入界面。實際結(jié)果:簽到成功,返回登入界面。結(jié)論:通過。(5)教師按學生姓名查詢考勤的測試,如下表6—5所示.表6—5教師按學生姓名查詢考勤的測試用例前置條件:以教師身份登入,進入教師統(tǒng)計界面測試方法:黑盒測試。輸入數(shù)據(jù):學生姓名:lyz。執(zhí)行步驟:填寫學生姓名→提交.預期輸出:顯示此學生的所有考勤信息。實際結(jié)果:顯示此學生的所有考勤信息。結(jié)論:通過。(6)輔導員按課程、時間、類別查詢考勤的測試,如下表6-6所示。表6-6輔導員按課程、時間、類別查詢考勤的測試用例前置條件:以輔導員身份登入測試方法:黑盒測試。輸入數(shù)據(jù):課程:英語,時間:2017-5—10,類別:遲到。執(zhí)行步驟:填寫查詢條件→提交。預期輸出:顯示符合此條件的所有考勤信息.實際結(jié)果:顯示符合此條件的所有考勤信息。結(jié)論:通過.(7)領(lǐng)導按課程、時間、類別查詢考勤的測試,如下表6—7所示。表6-7領(lǐng)導按課程、時間、類別查詢考勤的測試用例前置條件:以領(lǐng)導身份登入測試方法:黑盒測試。輸入數(shù)據(jù):課程:英語,時間:2017-5-10,類別:遲到。執(zhí)行步驟:填寫查詢條件→提交.預期輸出:顯示符合此條件的所有考勤信息。實際結(jié)果:顯示符合此條件的所有考勤信息.結(jié)論:通過。(8)輔導員審核請假的測試,如下表6-8所示。表6—8輔導員審核請假的測試用例前置條件:以輔導員身份登入測試方法:黑盒測試。輸入數(shù)據(jù):審核是否通過:通過執(zhí)行步驟:選擇審核是否通過。預期輸出:學生、教師可以查看到通過的請假信息。實際結(jié)果:學生、教師可以查看到通過的請假信息。結(jié)論:通過.(9)領(lǐng)導審核請假的測試,如下表6-9所示。表6-9領(lǐng)導審核請假的測試用例前置條件:以領(lǐng)導身份登入測試方法:黑盒測試.輸入數(shù)據(jù):審核是否通過:通過執(zhí)行步驟:選擇審核是否通過。預期輸出:學生、教師可以查看到通過的請假信息.實際結(jié)果:學生、教師可以查看到通過的請假信息。結(jié)論:通過。(10)更新密碼的測試,如下表6—10所示。表6-10更新密碼的測試用例前置條件:以任意身份登入測試方法:黑盒測試。輸入數(shù)據(jù):昵稱:lll,密碼:1234執(zhí)行步驟:填寫修改信息→提交。預期輸出:吐司提示修改成功。實際結(jié)果:吐司提示修改成功.結(jié)論:通過。6。3測試總結(jié)這個基于安卓的課堂考勤系統(tǒng)在完成了基本簽到功能的同時還加入了對考勤信息的管理,具有很高的實用性.在測試的過程中遇到過不少問題,比如在網(wǎng)絡(luò)比較差的地方定位的精度會有很大的影響,所以系統(tǒng)需要在信號比較好的地方進行測試。還有比如sha1碼如果錯誤的話就只能定位一次,之后的定位都不能正確的定位。這是由于百度定位的異步所造成的,它會優(yōu)先返回定位結(jié)果,然后才會驗證key是否正確,所以當設(shè)置錯誤key的時候就只能定位一次.對于一個系統(tǒng)來說測試是必不可少的環(huán)節(jié),這個過程中讓我發(fā)現(xiàn)了許多系統(tǒng)的缺陷,從而加以整改。7設(shè)計總結(jié)歷時一個學期,我的畢業(yè)設(shè)計基于android手機課堂考勤系統(tǒng)終于完成了.在這段時間里,對進行軟件整體規(guī)劃、設(shè)計與實現(xiàn)有了比較深入細致地了解。對于移動軟件開發(fā)方面,以前在做課程設(shè)計時接觸過,所以在設(shè)計前,我在較短地時間里就很快地對Eclipse做了較為詳細地復習和鞏固,這樣在設(shè)計時,就能很快的上手進行軟件界面的設(shè)計了.在具體設(shè)計時,考慮到界面的整體美觀和操作簡單,在設(shè)計時采用了人性化的交互界面,用戶在操作過程中會給出相應的操作提示,收到了比較滿意的效果。這次設(shè)計中讓我比較不滿意的是因為開始設(shè)計數(shù)據(jù)庫表格的時候沒有設(shè)計好,導致系統(tǒng)的可擴展性比較差。比如統(tǒng)計功能,表的設(shè)計使我在進行對數(shù)據(jù)的統(tǒng)計的時候不能高效的完成功能,不過好在的是功能都已經(jīng)大部分實現(xiàn)了。這讓我認識到編程重要的不只是編程,更重要的是在編程之前的需求分析和系統(tǒng)的設(shè)計,如果這些我能在開始做好,后面在開發(fā)的時候就不會像現(xiàn)在這樣困難重重。這是一個教訓,但是我認為這一個教訓現(xiàn)在來比以后來要值很多,畢竟現(xiàn)在出錯比我以后出錯要付出的代價要小了很多很多,而且我也會有很多時間去改正這些錯誤,讓我能走的更加順利更加遠.軟件系統(tǒng)的基本功能都已經(jīng)實現(xiàn),遺憾的是由于時間、知識能力等各種因素的影響,本網(wǎng)站客戶端的小部分程序沒有完全實現(xiàn),在后期可以進一步提升。參考文獻[1]陳鴻飛,嚴忱君,俞寶福.基于人臉識別的中學課堂考勤系統(tǒng)的設(shè)計[J]??萍紓鞑?,2015,(15):91-92.[2]楊永平,曾藝,劉世興.基于WIFI的高校課堂考勤系統(tǒng)設(shè)計實現(xiàn)[J].信息技術(shù)與信息 化,2017,(Z1):102—103+106。[3]楊云海,章芬芬.一種語音課堂考勤系統(tǒng)的設(shè)計與實現(xiàn)[J]。韶關(guān)學院學報,2016,(12):10-14.[4]蘇草,林亞明.基于人臉識別的移動終端課堂考勤系統(tǒng)[J].計算機光盤軟件與應 用,2014,(04):27-28。[5]張亮.學生課堂考勤管理系統(tǒng)的開發(fā)與設(shè)計[J].產(chǎn)業(yè)與科技論壇,2014,(07):84-85.[6]林健.基于MBaaS的iOS婚慶社交服務(wù)系統(tǒng)研究與實現(xiàn)[D]。華南師范大學,2014.[7]官瑞坤,王千秋,羅顯松.基于Face++的“刷臉”課堂考勤系統(tǒng)[J].信息系統(tǒng)工程,2017,(03):99—100.[8]劉超,龔國勇。學分制條件下課堂考勤管理系統(tǒng)的設(shè)計[J].計算機教育,2007,(16):60-62.[9]樂潔。課堂刷卡考勤系統(tǒng)設(shè)計與實現(xiàn)[J].湖北經(jīng)濟學院學報(人文社會科學版),2013,(04):188-189.[10]姚南野,王林平,鄭世玨.基于藍牙通信的高校課堂手機考勤管理系統(tǒng)[J].計算機與數(shù)字工?程,2014,(10):1986—1990.[11]陳昱,江蘭帆.基于GoogleAndroid平臺的應用程序開發(fā)和研究[J].福建電腦,2008(11):156—157。[12]張捷,朱曉姝,李露璐.一個新的課堂教學工具-—智能考勤及提問點名系統(tǒng)的設(shè)計與實現(xiàn)[J].玉?林師范學院學報,2014,(02):119-124.[13]姚昱旻,劉衛(wèi)國。Android的架構(gòu)與應用開發(fā)研究[J].計算機系統(tǒng)應用,2008(11):110-1。[14]姚昱旻,劉衛(wèi)國.Android與J2ME平臺間即時通信的研究與實現(xiàn)[J].計算機系統(tǒng)應用,2008(12):118—120.[15]公磊,周聰.基于Android的移動終端應用程序開發(fā)與研究[J].計算機與現(xiàn)代化,2008(8):86-89.[16]地獄男爵.用Android開發(fā)手機應用[J]。程序員,2008(1):25-27.[17]張疏影等.大學校園數(shù)字化學生電子考勤系統(tǒng)設(shè)計與實現(xiàn)[J].沈陽農(nóng)業(yè)大學學報(社會科學 版),2012,(06):721—723.[18]張超,王阿川,王智?;贘2ME和J2EE的手機軟件的研究[J].黑龍江科技信息,2007(3):21,201.[19]劉向輝?;冢蔭va的移動終端中間件的研究與設(shè)計[D]。華東師范大學碩士學位論文,2005.[20]刁扣鎖.短信息在嵌入式Linux系統(tǒng)中的設(shè)計與實現(xiàn)[D].東南大學碩士學位論文,2005。[21]唐明。loveshirui。Android中文API[D].電子工業(yè)大學出版社,2009.20—160.[22]MarkoGargenta。Android。開發(fā)書籍。Learning。Android[D].PublishedbyOreillyMedia,2011(3):24-45.[23]FarcicV,GarciaA。Test—DrivenJavaDevelopment[M].PacktPublishing,2015.[24]Roumeliotis-CuratorR。LearningPath:EnterpriseJavaDevelopment[M].O'ReillyMedia,Inc。2015。[25]JacksonW.SettingUpaJava8GameDevelopmentEnvironment[M].BeginningJava8Games?Development.Apress,2014:1—17。[26]Zhu,ZhiwuLiu,XuLi,Xiangyu.RatchetingBehaviorsoftheCarbonFiberReinforcedPEEKComposites:ExperimentalStudyandNumericalSimulation[J].Polymers&PolymerComposite,2014,(221):45—230。[27]encerLM,SpencerSM,Competenceatwork:ModelsforsuperiorperformanceNewWork:Johe Wiley&Sons,Inc,1993:2-39.[28]LuoZhiFeng,SunChao,WuShunXiang.FetchingAddressBookInfoofiPhoneOS[J].AdvancedMaterialsResearch。2011(204).[29]AndreasM.Kaplan,MichaelHaenlein。Usersoftheworld,unite!ThechallengesandopportunitiesofSocialMedia[J].BusinessHorizons。2009(1).[30]McClellandD。C,Testingpetenceratherthanforintelligence[J]。AmericanPsychologist,?1973(12):1-4.致謝在本次畢業(yè)設(shè)計過程中,遇到了很多困難,但在老師和同學的幫助下,我終于順利的完成了.在此,我衷心地感謝我的指導老師——王微老師,正是在王微老師的悉心指導下我才得以順利完成畢業(yè)設(shè)計.在開題報告中,我的指導老師也給了我許多寶貴的意見,在此由衷感謝他們。在設(shè)計的過程中,專業(yè)的其他幾位老師也給予了我指導,在這里也對他們表示衷心的感謝!感謝您們在百忙中抽出時間給予我悉心的指導!每一次的小組開會,王老師總是積極耐心地指導我們,給我們的方案提出意見并督促我們按時完成。在一開始我通過編寫設(shè)計初稿,對設(shè)計本系統(tǒng)有了比較深刻的認識,認真的考慮了每一步驟的執(zhí)行,也發(fā)現(xiàn)編一個優(yōu)秀的軟件決不是一蹴而就的事情,需要長時間的積累和經(jīng)驗。然后,在老師的輔導和同學的幫助下,我更加深入的去考慮這個系統(tǒng).并花了大量的心思和努力去完成這個系統(tǒng)。在做這個系統(tǒng)的這段時間里,我學到了我以前沒有掌握牢的知識.更重要的是了解了作為一個開發(fā)人員開發(fā)一個系統(tǒng)軟件的步驟和方法策略。如何去思考問題,又如何去解決問題……總之,通過這次的系統(tǒng)設(shè)計,我學會了很多,也了解了很多.本次畢業(yè)設(shè)計過程還得到了本班同學的大力支持和熱心幫助,他們給予了我很大的幫助,在此我也對他們表示衷心的感謝。最后,真誠地祝愿學院的所有老師工作順利、身體健康,學院越辦越輝煌!課程論文(設(shè)計)論文題目:基于Android的成績管理系統(tǒng)設(shè)計與實現(xiàn)Designandimplementat(yī)ionofperformancemanagementsystembasedonAndroid系別:計算機系專業(yè):信息管理與信息系統(tǒng)班級:xx姓名:xxx學號:xxxxxxx指導老師:xxxx職稱:xxxxx日期:xxxx年xxx月xx日TO(shè)C\o"1—3”\h\z\uHYPERLINK摘要PAGEREF_Toc436149800\h3HYPERLINK\l"_Toc436149801”ABSTRACTPAGEREF_Toc436149801\h3緒論PAGEREF_Toc436149802\h41。1系統(tǒng)的開發(fā)背景PAGEREF_Toc436149803\h4HYPERLINK\l"_Toc436149804"1.2系統(tǒng)實現(xiàn)的目標PAGEREF_Toc436149804\h4HYPERLINK\l"_Toc436149805”1.3系統(tǒng)功能的概述PAGEREF_Toc436149805\h4HYPERLINK\l”_Toc436149806”1.4系統(tǒng)的開發(fā)環(huán)境PAGEREF_Toc436149806\h5HYPERLINK\l"_Toc436149807"第2章系統(tǒng)可行性分析PAGEREF_Toc436149807\h62。1系統(tǒng)的可行性分析PAGEREF_Toc436149808\h62.2技術(shù)可行性436149809\h6HYPERLINK\l”_Toc436149810”2.3操作可行性PAGEREF_Toc436149810\h7HYPERLINK\l"_Toc436149811"2.4經(jīng)濟可行性PAGEREF_Toc436149811\h7HYPERLINK\l"_Toc436149812"2.5結(jié)論PAGEREF_Toc436149812\h7第3章系統(tǒng)需求分析PAGEREF_Toc436149813\h8HYPERLINK\l"_Toc436149814"3。1系統(tǒng)開發(fā)的具體目標PAGEREF_Toc436149814\h8HYPERLINK\l"_Toc436149815"3.2系統(tǒng)業(yè)務(wù)流程圖PAGEREF_Toc436149815\h8HYPERLINK\l”_Toc436149816"3.3業(yè)務(wù)需求描述PAGEREF_Toc436149816\h9HYPERLINK3。4系統(tǒng)功能需求分析PAGEREF_Toc436149817\h9HYPERLINK\l"_Toc436149818"3.5系統(tǒng)實體—聯(lián)系圖(E-R圖)PAGEREF_Toc436149818\h10HYPERLINK\l”_Toc436149819"第4章系統(tǒng)總體設(shè)計PAGEREF_Toc436149819\h11HYPERLINK\l”_Toc436149820”4.1系統(tǒng)設(shè)計目標PAGEREF_Toc436149820\h114.2系統(tǒng)功能結(jié)構(gòu)PAGEREF_Toc436149821\h11HYPERLINK\l"_Toc436149822"第5章系統(tǒng)詳細設(shè)計PAGEREF_Toc436149822\h13HYPERLINK\l"_Toc436149823"5。1主界面PAGEREF_Toc436149823\h13HYPERLINK5.3課程信息界面PAGEREF_Toc436149825\h165.4成績信息界面PAGEREF_Toc436149826\h17總結(jié)PAGEREF_Toc436149827\h19摘要在21世紀的今天,互聯(lián)網(wǎng)已深入世界的各個角落.而Android軟件技術(shù)的發(fā)展和無線業(yè)務(wù)的成熟,為人們獲取各種信息提供了除Internet之外的另一種便捷的途徑。考生成績查詢方式經(jīng)歷了網(wǎng)上查詢和紙質(zhì)公告,其中以網(wǎng)上查詢方式最為經(jīng)濟.當前,Internet達到了前所未有的普及,而目前的無線通信網(wǎng)絡(luò)幾乎覆蓋了全國每個角落,只要有一部具有上網(wǎng)功能的手機,可以不受時間、地域和設(shè)備的限制,輕松獲取考試成績信息。因此,開發(fā)一個使用Android手機查詢考試成績的系統(tǒng),將是對Internet查詢成績的一個重要補充,有著巨大的實際意義.Android是一個開放的手機平臺,從android的發(fā)布到他的推廣,在短短的時間內(nèi)以驚人的速度占據(jù)的大量的智能手機市場。而且將繼續(xù)擴大其用戶量。因此,開發(fā)基于android的成績查詢系統(tǒng)有其深遠的意義。關(guān)鍵詞:學生成績管理系統(tǒng)AndroidJAVA移動終端ABSTRACTIntwenty-firstCentury,theInternethasgonedeepintoeverycorneroftheworld.AndthedevelopmentofAndroidsoftwaretechnologyandthematurityofthewirelessbusiness,forpeopletogetallkindsofinformationprovidedbytheadditionofInternet,anotherconvenientway.Candidatesscoreinquirywaythroughtheonlinequeryandpapernotice,whichisthemosteconomicalwaytochecktheinternet.Atpresent,theInternetreachedanunprecedentedpopularity,andthecurrentwirelesscommunicationnetworkhascoveredalmosteverycornerofthecountry,aslongasthereisamobilephonewithinternetenabled,cannotberestrictedbytime,regionandequipment,easyaccesstotestresultsinformation。Androidisanopenmobileplatform,fromthereleaseofAndroidtohispromotion,inashortperiodoftimetooccupyalargenumberofsmartphonemarketinashorttime.Andwillcontinuetoexpanditsuservolume.Therefore,thedevelopmentofAndroidbasedquerysystemhasitsprofoundsignificance。Keywords:Studentachievementmanagementsystem;JAVA;Android;mobileterminal緒論系統(tǒng)的開發(fā)背景幾年前,各個學校對于學生成績的管理還是停留在運用手工操作,隨著各個學校的規(guī)模不斷壯大,學生人數(shù)逐年增加。關(guān)于學生成績管理工作所涉及的數(shù)據(jù)量越來越大,有的學校不得不靠增加人力、物力來進行學生成績管理。但人工管理又有著許多缺陷,比如:效率底、易出錯、檢索信息慢、對學校的管理提供決策信息較為困難等。學校不能完全掌握每一個學生的學習情況,這樣對學校的教學工作及其不利,使學校的教學質(zhì)量一直停滯不前,所以我想開發(fā)一個僅適用的成績管理系統(tǒng),使學生能夠充分掌握學生的成績和課程情況,便于學生了解情況.
那么能否在手機上擁有自己編寫的學生成績管理系統(tǒng)呢?答案是肯定的,谷歌Android系統(tǒng)就能做到。本文涉及的成績管理系統(tǒng)就是一個基于谷歌Android手機平臺的學生成績管理系統(tǒng)。1。2系統(tǒng)實現(xiàn)的目標建立學生成績管理系統(tǒng),采用手機端對學生成績進行管理,進一步提高現(xiàn)代化水平.使學生對自己的成績能夠快速并準確的錄入、修改和查詢,更好地了解自己的各科成績,便于教師的管理。使學生對個人的學習成績進行更快的查詢。讓老師能夠更好、更快的了解學生的學習情況,使學校的教學質(zhì)量進一步的提高。1。3系統(tǒng)功能的概述成績管理系統(tǒng)能夠錄入課程和成績資料,在操作上能夠完成諸如添加、修改、刪除、按各種條件進行查詢,基本滿足老師或?qū)W生查詢的需要。成績管理系統(tǒng)主要包含學生基本信息,年齡,電話等各方面信息,內(nèi)容比較簡單.成績管理系統(tǒng)主要是為學生成績信息進行錄入,具有對課程的登記、成績查詢,學生信息登記等功能??傮w上說具有編輯,查詢,學生成績管理等功能。1。4系統(tǒng)的開發(fā)環(huán)境開發(fā)此系統(tǒng)所需要用到的軟件環(huán)境如下:操作系統(tǒng):Windows7開發(fā)平臺:Eclipse
是一個開放源代碼的、基于
Java
的可擴展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運的是,Eclipse
附帶了一個標準的插件集,包括
J
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度離婚后子女監(jiān)護權(quán)與探望權(quán)約定合同2篇
- 二零二五年度門衛(wèi)巡邏車購置與維護合同5篇
- 二手房買賣合同模板2024年版版B版
- 二零二五年度牛糞有機肥原料采購合同范本4篇
- 二零二五年度家具原材料采購合同4篇
- 2025年度智能儲藏室與車位租賃買賣合同模板4篇
- 二零二五年度外匯貸款合同違約責任范本
- 2025年度房地產(chǎn)估價咨詢合同示范文本
- 2025年度民辦學校教師學術(shù)交流與合作合同4篇
- 二零二五年度外教兼職學術(shù)研究資助合同
- 電工基礎(chǔ)知識培訓課程
- 住宅樓安全性檢測鑒定方案
- 廣東省潮州市潮安區(qū)2023-2024學年五年級上學期期末考試數(shù)學試題
- 市政道路及設(shè)施零星養(yǎng)護服務(wù)技術(shù)方案(技術(shù)標)
- 藝術(shù)培訓校長述職報告
- 選擇性必修一 期末綜合測試(二)(解析版)2021-2022學年人教版(2019)高二數(shù)學選修一
- 《論語》學而篇-第一課件
- 《寫美食有方法》課件
- 學校制度改進
- 各行業(yè)智能客服占比分析報告
- 年產(chǎn)30萬噸高鈦渣生產(chǎn)線技改擴建項目環(huán)評報告公示
評論
0/150
提交評論