三九論壇基于安卓系統(tǒng)的考勤_第1頁
三九論壇基于安卓系統(tǒng)的考勤_第2頁
三九論壇基于安卓系統(tǒng)的考勤_第3頁
三九論壇基于安卓系統(tǒng)的考勤_第4頁
三九論壇基于安卓系統(tǒng)的考勤_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)Teaching Management System Based on Android system-Students Client Design and Implementation ABSTRACTDue to the teaching m,the interaction time between teachers and students in universitiesis extremely short,attendance,assignments and feedback from students and other issues take

2、up a lot of valuable teaching time,which tends to affect the normal teaching plans and quality,and also causes unnecessary trouble to the study lives of students.In recent years,the growing mobile Internet and the rapid development of mobile platformscarry the new channels and means for the improvem

3、ent of the teaching m.Using Androidsystem which is Equipped in mobile platform the most widely,its a convenient and efficient attendance system client for student in mobile phones and tablet PCs that is built.The client provides students thefuctions of querying the situations of attendance and homew

4、ork and feedbacking on teaching contents to their teachers,optimizes the teaching mode,increases the teaching time and also Improve the studentslearning efficiency.The pages client which is built with ASP expanded the scope of application of the system,alleviate the economic pressures of the student

5、s,improves the quality of teaching greatly and helps students better to complete thelearning task.Key word:Android;teaching management system;Students'client;ASP.NET河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)目錄1引言12課題背景與可行性分析22.1課題背景22.2可行性分析22.3結(jié)論意見32.4開發(fā)工具簡介33需求分析63.1特性需求分析63.2功能需求分析64總體設(shè)計 .114.1硬件配置設(shè)計 .114.2系統(tǒng)模塊結(jié)構(gòu)設(shè)

6、計 .114.3數(shù)據(jù)庫設(shè)計.124.4代碼設(shè)計.195詳細設(shè)計 .205.1客戶端.205.2服務(wù)器端模塊 .205.3網(wǎng)頁客戶端.286總結(jié) .34參考文獻 .35致謝 .36河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)1引言隨著科技的發(fā)展,移動通訊平臺在不斷地發(fā)展中愈來愈加成熟,預(yù)計 2012 年中國手機市場銷量將達到 3 億部,全球銷量更是會超過 10 億部,其中,在中的發(fā)展最為迅速。2012 年 1 月 20 日,谷歌報告顯示,通過谷歌服務(wù)器激活的 Android 設(shè)備用戶總數(shù)已經(jīng)超過 2.5 億,而 Android 在陸的智能操作系統(tǒng)市場占有率達到

7、了68.4%。以其開放的平臺,眾多、的應(yīng)用,華麗、新鮮的運行界面,簡單、親切的用戶體驗而備受消費者的喜愛。在高校中,由于教師與學(xué)生之間往往只是在上課的時候才能見面,師生之間的交流并不是十分活躍,教師對于簽到,布置作業(yè),學(xué)生們對上課效果的反饋等等很多時候都不能及時解決和處理,而學(xué)生對于的簽到,各個科目布置的作業(yè)題目和以及分數(shù)也往往不能明了,在學(xué)習(xí)上的問題也不地反映給,影響正常的學(xué)習(xí)生活?;贏ndroid 系統(tǒng)的教學(xué)學(xué)習(xí)提供便利,系統(tǒng)則是一款建立在安卓平臺的軟件,致力于為廣大師生工作與傳統(tǒng)交流的時空限制,實現(xiàn)師生之間的方便有效地交流?;?Android 系統(tǒng)的教學(xué)分為兩個部分,一部分為教師客戶

8、端,為教師在對學(xué)生的簽到,作業(yè)的布置評分等處理以及查看學(xué)生的反饋提供方面上便利。另一部分為學(xué)生客戶端,學(xué)生可以通過此客戶端查看簽到狀況,查看作業(yè)題目評分,以及進行反饋。由于考慮到學(xué)生可能不能每人都擁有一部安卓設(shè)備,此系統(tǒng)將會提供網(wǎng)頁客戶端,學(xué)生可以通過網(wǎng)頁實現(xiàn)客戶端內(nèi)容。本將對學(xué)生客戶端,包括安卓客戶端與網(wǎng)頁客戶端的實現(xiàn)進行詳細的闡述,實現(xiàn)系統(tǒng)的 C/S 與 B/S 兩個模式。1河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)2課題背景與可行性分析2.1課題背景隨著移動平臺的成熟以及互聯(lián)網(wǎng)的不斷發(fā)展,等移動設(shè)備已經(jīng)極大地普及,人們可以在隨時隨地用指尖去完成各種以往繁瑣的事情。由于在高校中師生交流的不順

9、暢,嚴重影響著教師的教學(xué)工作和學(xué)生的學(xué)習(xí)生活,因此亟需一款軟件去簡化教師的工作,實現(xiàn)教師與學(xué)生簡單方便地交流??紤]到的迅速發(fā)展和極高的普遍率,以及其平臺的開放性和友好的界面,這款基于 Android 系統(tǒng)的教學(xué)便應(yīng)運而生了。該系統(tǒng)可以很輕松的實現(xiàn)師生間良好的互動,幫助教師完成簽到,布置作業(yè),打分以及查看學(xué)生反饋信息等功能,提高工作效率簡化工作內(nèi)容的同時更好的完成教學(xué)任務(wù),幫助學(xué)生實現(xiàn)查看簽到情況,查看布置的作業(yè)和打分情況以及對教師進行反饋,方便高效的完成學(xué)習(xí)任務(wù)。網(wǎng)頁客戶端可以彌補務(wù)和學(xué)習(xí)任務(wù)。客戶端的缺陷,更好的實現(xiàn)系統(tǒng)功能,幫助師生完成教學(xué)任2.2可行性分析近些年,移動設(shè)備的高速發(fā)展,使得

10、等移動設(shè)備高速智能化,移動網(wǎng)絡(luò)在以前所未有的驚人速度走入人們的生活、工作和學(xué)習(xí)中,提高了工作學(xué)習(xí)的效率,增加了獲取信息的,了相互交流的時空界限。教學(xué)可以基于移動平臺進行開發(fā),幫助師生輕松解決教學(xué)中工作學(xué)習(xí)等問題??尚行苑治黾炔荒芤云?,也不能過于追求細節(jié),必須為決策提供有價值的證據(jù)。軟件領(lǐng)域的可行性分析主要考慮四個因素:技術(shù)可行性分析,、效益分析,法律可行性分析,開發(fā)技術(shù)可行性分析:與進程可行性分析。是基于 Java 編寫的,因此客戶端采用 Eclipse 配上AndroidSDK,完全可以實現(xiàn)系統(tǒng)功能,開發(fā)放性,網(wǎng)上很輕松的可以查看到各種實現(xiàn)代碼,都具有一定 Java 功底,加之安卓平臺開客戶

11、端在技術(shù)上是可行的。網(wǎng)頁客戶端用 ASP.NET (C#)編寫,在 Visual Studio 2005 環(huán)境下實現(xiàn),ASP.NET 運用面向?qū)ο蟮木幊趟枷脒M行 Web 開發(fā),并且是以編譯方式執(zhí)行,具有較高的開發(fā)效率和運行性能。數(shù)據(jù)庫軟件選用微軟公司的大型數(shù)據(jù)庫服務(wù)器 SQL Server 2000。因此在技術(shù)上是可行的。、效益分析:主要進行成本-效益分析。從成本方面看,的實現(xiàn),計算機和網(wǎng)絡(luò)硬件已經(jīng)擁有,由于安卓是個開放的平臺,Eclipse 與 AndroidSDK 都是提供的,網(wǎng)絡(luò)客戶端所用軟件也都已經(jīng)配備,因此成本很低;從效益方面看,本客戶端主要是為廣大師生提供便利,暫時還帶來任何,不過

12、經(jīng)過完善后可以考慮作為產(chǎn)品在上推廣,加上的廣泛應(yīng)用,相信的空間是很大的。法律可行性分析:從法律角度看,Android 是個開放的平臺,代碼是開放的,加上基于 Android 的教學(xué)主要為師生提供便利,作為畢業(yè)設(shè)計,并不以為目的,且是開發(fā)設(shè)計,因此在上引起或其它責(zé)任問題,在法律上是可行的。2河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)開發(fā)與進程可行性分析:開發(fā)都有一定的 Java 開發(fā)功底,并且學(xué)習(xí)能力較強以及指導(dǎo)的悉心教導(dǎo)完全可以勝任此次開發(fā)。由于此系統(tǒng)開發(fā)并不是以為目的,開發(fā)周期可以相對較長,因此開發(fā)進程方面是可行的。2.3結(jié)論意見經(jīng)過幾個不同角度的可行性分析,可以確定該系統(tǒng)能夠開發(fā)。2.4開發(fā)

13、工具簡介2.4.1Android 及SDK 介紹SDK 指是軟件開發(fā)包,被軟件開發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺、操作系統(tǒng)等建立應(yīng)用軟件的開發(fā)工具的集合。因此,Android SDk 指的既是 Android 專屬的軟件開發(fā)工具包。Android 是公司推出的開發(fā)平臺,和相似,Android 使用了 WebKit上可以實現(xiàn)查看電子郵件、瀏覽器引擎,具備觸摸屏、高級圖形顯示和上網(wǎng)功能,在搜索和等功能,較等其他更強調(diào)搜索功能,界面更強大,可以說是一種融入全部 Web 應(yīng)用的單一平臺。Android系統(tǒng)最震撼人心之處在于其開放性和服務(wù)。Android 是一個對第三方軟件完全開放的平臺,

14、開發(fā)者在為其開發(fā)擁有更大的自由度,了等只能添加為數(shù)不多的固定軟件的枷鎖,使得應(yīng)用的安裝更加方便;同時與 Windows Mobile、Symbian 等廠商不同,Android 操作系統(tǒng)向開發(fā)提供,這樣可節(jié)省近三成成本。2.4.2Eclipse 簡介Eclipse 是一個著名的跨平臺的自由集成開發(fā)環(huán)境軟件。最初主要用來Java 語言開發(fā), 現(xiàn)在人們可以通過安裝插件使其作為 C+、Python、PHP 等其他語言的開發(fā)工具。Eclipse的本身只是一個框架平臺,但是隨著眾多插件的產(chǎn)生,使得 Eclipse 擁有很好的靈活性。許多軟件開發(fā)商以 Eclipse 為框架開發(fā)的 IDE。雖然大多數(shù)用戶更

15、加樂于將 Eclipse 當(dāng)作 Java 集成開發(fā)環(huán)境來使用,但 Eclipse 的作用已經(jīng)不僅限于此。Eclipse 還是含有插件開發(fā)環(huán)境,這個組件主希望擴展 Eclipse的軟件開發(fā)構(gòu)建與 Eclipse 環(huán)境無縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)都具有同等的發(fā)揮場所。這種平等和一致性并不僅限于 Java 開發(fā)工具。盡管 Eclipse 是使用 Java 語言開發(fā)的,但它的用途并不限于 Java 語言;例如,支持諸如 C/C+ 和 COBOL 等編程語言的插件已經(jīng)可用,或預(yù)計將會

16、推出。Eclipse 框架還可用來作為與軟件開發(fā)無關(guān)的其他應(yīng)用程序類型的基礎(chǔ),比如內(nèi)容。即通過 Eclipse,添加 Android 做插件,匹配上 AndroidSDK 進行軟件的開發(fā)。3河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)2.4.3ASP.NET 簡介ASP.NET 是.NET 框架的一部分,是一種建立動態(tài) Web 應(yīng)用程序的技術(shù)。.NET 框架(即.NET Framework)是支持生成、運行下一代應(yīng)用程序和 XML Web 服務(wù)的內(nèi)部 Windows 組件,是 Visual Studio.NET 應(yīng)用程序開發(fā)環(huán)境的。它定義了語言之間互操作的規(guī)則,以及如何把應(yīng)用程序編輯為可執(zhí)行代碼,

17、還負責(zé)管理任何 Visual Studio.NET 語言創(chuàng)建的應(yīng)用程序的執(zhí)行。.NET 是 Microsoft 面向 XML Web 服務(wù)的平臺,它使用一的、個性化的方式將信息、設(shè)備和緊密地在一起。ASP.NET 可以使用任何兼容.net 平臺的語言進行開發(fā),具有較強的兼容性。由于ASP.NET 是編譯執(zhí)行,因而比解釋執(zhí)行的 ASP 等開發(fā)方式具有更高的效率,而且在面向?qū)ο笮浴?shù)據(jù)庫連接、大型站點應(yīng)用等方面都體現(xiàn)出較好的性能。此外,ASP.NET 還可以利用.NET 平臺架構(gòu)的諸多優(yōu)越性能,如類型安全以及對 XML、SOAP、WSDL 等 Internent 標(biāo)準的強大支持。在 ASP.NET

18、 頁面中,可以使用 ASP.NET 服務(wù)器端控件來建立常用的用戶接口元素,并對其進行編程;可以使用內(nèi)建可重用組件和自定義組件快速建立 Web Form,從而使代碼大大簡化。相對原有的 Web 技術(shù)而言,ASP.NET 提供的編程模型和結(jié)構(gòu)有助于快速、高效地建立靈活、安全和穩(wěn)定的應(yīng)用程序。ASP.NET 提供了一個統(tǒng)一的 Web 開發(fā)模型,其中包括開發(fā)生成企業(yè)級 Web 應(yīng)用程序所需的各種服務(wù)。ASP.NET 也提供了一種新的編程模型和結(jié)構(gòu),可以生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護。當(dāng)前,ASP.NET 2.0 已逐漸被廣泛使用。采用 C#作為開發(fā)語言,C#是.NET 平臺的通

19、用開發(fā)工具,它能夠建造所有的.NET應(yīng)用。其固有的特性決定了它是一種高效、安全、靈活的現(xiàn)代程序設(shè)計語言。C#與.NET 平臺的結(jié)合足以為畢業(yè)設(shè)計綜合提供完整的解決方案。2.4.4SQL Server 2000 簡介隨著信息化的不斷發(fā)展,人們面對的各種類型的數(shù)據(jù)信息正在呈現(xiàn)出式增長的態(tài)勢,因而對數(shù)據(jù)的安全和高效管理具有越發(fā)明顯的重要性。和管理數(shù)據(jù)需要使用數(shù)據(jù)庫,不但需要數(shù)據(jù)庫對數(shù)據(jù)的安全,而且需要前臺應(yīng)用程序?qū)?shù)的方便高效管理。當(dāng)前的數(shù)據(jù)庫主要有 Acess,MySql 等小型數(shù)據(jù)庫,以及 SQLServer,Oracle 等大型數(shù)據(jù)庫。鑒于畢業(yè)設(shè)計數(shù)據(jù)庫。的數(shù)據(jù)量,可以選擇 SQL Serve

20、r畢業(yè)設(shè)計不但要教師和學(xué)生的基本信息,而且要實現(xiàn)一些重要流程和必要操作,如課題的申請、審批和選擇,畢業(yè)設(shè)計時間表的安排、的評閱答辯以及答疑等。這些除了需要對基本數(shù)據(jù)進行外,還需要開發(fā)專門的數(shù)據(jù)庫系統(tǒng)來幫助對其進行管理。畢業(yè)設(shè)計綜合需要實現(xiàn)數(shù)據(jù)庫的建立和連接、系統(tǒng)界面的設(shè)計以及各個功能模塊的設(shè)計和開發(fā)。該系統(tǒng)的開發(fā)過程主要包括需求分析、系統(tǒng)設(shè)計、數(shù)據(jù)庫設(shè)計、4河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)編碼設(shè)計、軟件測試等。系統(tǒng)采用模塊化開發(fā)方法,每個模塊各自實現(xiàn)相應(yīng)的子功能,最后進行集成,共同實現(xiàn)系統(tǒng)的功能。2.4.5Visual Studio.NET 2005 簡介ASP.NET 的開發(fā)環(huán)境有多

21、種選擇,該系統(tǒng)的開發(fā)選擇 Visual Studio.NET 2005。Visual Studio.NET 2005 是一套完整的開發(fā)工具,用于生成 ASP.NET Web 應(yīng)用程序、XML Web Services、桌面應(yīng)用程序和移動應(yīng)用程序。該環(huán)境提供了常用控件,直接拖動的開發(fā)方式提高了開發(fā)效率。而且可以創(chuàng)建自定義控件,使程序具有更好的擴展性、可維護性以及重用性。此外,Visual Basic.NET、Visual C+.NET、Visual C#.NET 和 Visual J#.NET使用統(tǒng)一的集成開發(fā)環(huán)境,該環(huán)境它們共享并創(chuàng)建混合語言解決方案;這些語言用.NET Framework 的

22、功能,它提供了對簡化 ASP.NET Web 應(yīng)用程序和 XML Web Services開發(fā)的。因此,使用VisualStudio.NET2005作為開發(fā)環(huán)境進行高效開發(fā)乃是最佳選擇。5河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)3需求分析3.1特性需求分析一個好的教學(xué)應(yīng)該具有一下特性:(1)易操作和功能簡單明確不令人誤解。一個良好的教學(xué)應(yīng)該功能明確,沒有二義性,用戶可以很明了的通過界面明白各項功能的實現(xiàn)方法,而不是看到界面不知道各按鈕的具體用途,即操作簡單,界面友好。學(xué)生可以根據(jù)界面或網(wǎng)頁界面很明白的進行對簽到,作業(yè)情況的,并能夠?qū)⒌姆答伡皶r提交給。(2)軟件功能流暢,不拖沓。軟件登陸,連接網(wǎng)

23、絡(luò)不能讓用戶等待時間過長,引起用戶的煩躁。軟件在運行不能發(fā)生,等問題,整個界面操作起來很流暢。(3)系統(tǒng)應(yīng)該容易維護以及更新。系統(tǒng)各個模塊設(shè)計應(yīng)該很明確,代碼處應(yīng)有必要的注釋,使得今后的軟件維護,軟件更新等操作應(yīng)該能夠順利的進行。3.2功能需求分析學(xué)生客戶端教學(xué)業(yè)情況以及評分情況應(yīng)該能完成四種功能包括登錄功能,簽到情況功能,作功能和向教師進行反饋功能,并且能客戶端形式與網(wǎng)頁客戶端兩種形式實現(xiàn)上述功能,保證系統(tǒng)的正常運行。系統(tǒng)用例圖如圖 3-1。系統(tǒng)-*教務(wù)處*-作業(yè)模塊*-*教師學(xué)生圖 3-1教學(xué)信息用例圖6反饋模塊簽到模塊數(shù)據(jù)庫信息河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)(1)登錄功能進行學(xué)

24、生的驗證。客戶端把學(xué)生學(xué)號通過網(wǎng)路傳遞給服務(wù)器,有服務(wù)器進行數(shù)據(jù)庫,如若學(xué)號和匹配,則將學(xué)生信息和數(shù)據(jù)庫內(nèi)容傳遞到端,不匹配則返回錯誤信息提示錯誤。網(wǎng)頁客戶端相似,若學(xué)號統(tǒng),不匹配則拒絕登錄。系統(tǒng)用例圖如圖 3-2。匹配,則進入系輸入用戶名*學(xué)生輸入*圖 3-2登錄功能用例圖(2)簽到情況功能可以提供給學(xué)生相應(yīng)課程的簽到情況,學(xué)生可以選擇的課程名稱,查看各個課程的考勤時間,和相應(yīng)的簽到。用例圖如 3-3。選擇課程*考勤時間*考勤情況學(xué)生圖 3-3簽到功能用例圖(3)作業(yè)內(nèi)容評分情況功能提供給學(xué)生每個課程作業(yè)的情況,學(xué)生通過選擇需要的課程,查看此課程教師留下的作業(yè)的作業(yè)號,日期和作業(yè)題目等內(nèi)容,

25、并可以在此項作業(yè)中得到的分數(shù)。用例圖如圖 3-4 所示。7河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)選擇課程*作業(yè)時間*學(xué)生作業(yè)內(nèi)容*得分圖 3-4作業(yè)功能用例圖(4)反饋功能則是學(xué)生向教師提出意見和建議的平臺,學(xué)生可以通過此平臺,選擇想進行反饋的課程,給課程留言,修改和刪除以往的反饋內(nèi)容,課程可以通過教師客戶端查看學(xué)生留言。用例圖如圖 3-5 所示。選擇課程*添加反饋信息*以往反饋內(nèi)容*學(xué)生*刪除反饋信息修改反饋信息圖 3-5反饋功能用例圖3.3數(shù)據(jù)流圖數(shù)據(jù)流圖描繪信息流和數(shù)據(jù)從輸入移動到輸出的過程中所經(jīng)受的變換,它反映系統(tǒng)必須完成的邏輯功能。從數(shù)據(jù)傳遞和的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到

26、輸出的8河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)移動變換過程。教學(xué)的運行同樣離不開信息流和數(shù)據(jù)流移動變換,數(shù)據(jù)流圖的描繪可以幫助開發(fā)者更好地理清整個程序的運行過程和參數(shù)傳遞。(1)學(xué)生登錄功能主要是在服務(wù)器端進行的。學(xué)生用戶在登錄界面輸入學(xué)號和,客戶端會通過網(wǎng)絡(luò)將學(xué)號和傳送給服務(wù)器,服務(wù)器數(shù)據(jù)庫,驗證學(xué)號和是否與學(xué)生表中相同,如若兩者和數(shù)據(jù)庫中信息正確,則將客戶端需要的數(shù)據(jù)庫文件和信息傳遞過去。登陸功能數(shù)據(jù)流圖如圖 3-6。接收數(shù)據(jù)庫文件登錄數(shù)據(jù)庫輸入學(xué)號學(xué)號數(shù)據(jù)庫文件圖 3-6登陸功能數(shù)據(jù)流圖(2)客戶端中學(xué)生簽到功能通過的數(shù)據(jù)庫文件實現(xiàn)。學(xué)生登陸后,學(xué)號信息會在中,數(shù)據(jù)庫是可以被,進入簽到

27、功能界面,選擇需要查看的課程,選擇完成后,系統(tǒng)會將課程名稱下來,根據(jù)學(xué)號和課程名稱信息此課程學(xué)生用戶的簽到情況。簽到功能數(shù)據(jù)流圖如圖 3-7。學(xué)號課程名稱簽到情況選擇課程數(shù)據(jù)庫圖圖 3-7簽到功能數(shù)據(jù)流圖(3)在進入作業(yè)功能界面時,學(xué)號信息會被下來,學(xué)生選擇的課程,下課程名稱,根據(jù)學(xué)號與課程名稱數(shù)據(jù)庫,顯示出到的作業(yè)信息,學(xué)生選擇某一個作業(yè),通過學(xué)號信息的得分情況。作業(yè)功能數(shù)據(jù)流程如圖 3-8。9學(xué) 生學(xué) 生簽到信息學(xué) 生學(xué)生表河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)數(shù)據(jù)庫選擇作業(yè)數(shù)據(jù)庫學(xué)號作業(yè)信息作業(yè)號學(xué)號課程名稱選擇課程得分作業(yè)信息圖 3-8作業(yè)功能數(shù)據(jù)流圖(4)同簽到功能和作業(yè)功能相同,

28、進入反饋界面時,學(xué)號,姓名信息被,學(xué)生選擇反饋的課程,下課程名稱,根據(jù)學(xué)號和課程名稱數(shù)據(jù)庫,進入反饋界面后,學(xué)生可以選擇直接對課程進行添加反饋,也可以修改和刪除反饋信息,完成相關(guān)操作后,數(shù)據(jù)會上傳數(shù)據(jù)庫,教師端通過數(shù)據(jù)庫查看反饋信息。反饋功能數(shù)據(jù)流圖如圖 3-9。添加反饋信息課程名反饋內(nèi)容反饋內(nèi)容更新數(shù)據(jù)庫選擇課程修改反饋信息學(xué)號課程名反饋刪除反饋信息課程名反饋內(nèi)容圖 3-9作業(yè)功能數(shù)據(jù)流圖10教 師學(xué) 生反饋信息學(xué) 生學(xué) 生作業(yè)評分信息作業(yè)情況河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)4總體設(shè)計總體設(shè)計即對有關(guān)系統(tǒng)全局問題的設(shè)計,也就是設(shè)計系統(tǒng)總的處理方案,又稱系統(tǒng)概要設(shè)計。它包括:硬件配置設(shè)

29、計、系統(tǒng)模塊結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫設(shè)計、代碼設(shè)計等內(nèi)容。軟件功能分解屬于下列軟件開發(fā)中的總體設(shè)計階段。4.1硬件配置設(shè)計(1)客戶端:Android 系統(tǒng)要求:Android 2.3.3 及其以上。配置:內(nèi)存 256M 及其以上。主頻 600HZ 及其以上。(2)網(wǎng)頁客戶端:系統(tǒng)要求:window xp,vista 以及 win7,Linux 等硬件配置:處理器:奔騰 4 處理器及以上;內(nèi)存:1G 及其以上。硬盤:20G 及其以上。4.2系統(tǒng)模塊結(jié)構(gòu)設(shè)計教學(xué)生客戶端主要提供學(xué)生登陸,簽到情況,作業(yè)情況,反饋信息四項功能,因此可以將系統(tǒng)分為四個模塊:登陸模塊,簽到模塊,作業(yè)模塊,反饋模塊??记谙到y(tǒng)學(xué)生

30、客戶端登陸模塊簽到模塊作業(yè)模塊反饋模塊驗證信息功能網(wǎng)絡(luò)傳遞功能選擇課程功能查看簽到信息功能查看作業(yè)內(nèi)容功能查看作業(yè)得分功能添加反饋信息功能修改反饋信息功能刪除反饋信息功能圖 4-1考勤系統(tǒng)結(jié)構(gòu)圖11河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)系統(tǒng)的主要功能概述:(1)登錄模塊包括驗證信息功能和網(wǎng)絡(luò)傳遞功能,學(xué)生可以通過此模塊輸入學(xué)號,通過網(wǎng)絡(luò)將輸入的學(xué)號和傳遞給服務(wù)器,服務(wù)器通過搜索數(shù)據(jù)庫驗證和學(xué)號是否匹配,若不匹配則傳遞提示錯誤信息給相應(yīng)客戶端,若匹配則傳遞給據(jù)庫文件和學(xué)生信息,網(wǎng)頁客戶端則直接進入功能界面??蛻舳诵枰臄?shù)(2)簽到模塊包括選擇課程功能和查看簽到信息功能。學(xué)生進入界面后可以選擇需

31、要的課程,然后通過課程名稱和學(xué)號息,顯示在簽到信息界面。數(shù)據(jù)庫,搜索出登陸學(xué)生和對應(yīng)課程的簽到信(3)作業(yè)模塊包括查看作業(yè)內(nèi)容功能和查看作業(yè)評分內(nèi)容。學(xué)生進入作業(yè)界面后,可以選擇需要的課程,在數(shù)據(jù)庫中搜索對應(yīng)課程的作業(yè)信息,顯示在作業(yè)情況界面,點擊單個作業(yè)情況,可以查看作業(yè)題目的具體內(nèi)容,并生的個人得分情況。數(shù)據(jù)庫,顯示該作業(yè)的登錄學(xué)(4)反饋模塊包括添加反饋信息功能,刪除反饋信息功能和修改反饋信息功能。學(xué)生先選擇需要反饋的課程,然后進入反饋信息界面。在反饋信息可以進行添加,修改和刪除反饋信息功能,添加修改刪除完成后,對數(shù)據(jù)庫進行更改,然后由網(wǎng)絡(luò) 信息使服務(wù)器也進行相應(yīng)更改,使客戶端和數(shù)據(jù)庫端

32、信息實現(xiàn)同步。4.3數(shù)據(jù)庫設(shè)計4.3.1數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計實體-圖,即 E-R 圖,提供了表示實體型、屬性和的方法,現(xiàn)實世界的概念模型,在數(shù)據(jù)庫系統(tǒng)概論中屬于概念設(shè)計階段。E-R 圖的設(shè)計與建立,可以幫助開發(fā)者更加合理的去制定數(shù)據(jù)庫內(nèi)容,使得在開發(fā)過程中對數(shù)據(jù)庫的詢,修改或刪除)變得簡單易行。(添加,查教學(xué)生客戶端的實體圖的實體主要包括學(xué)生,班級,課程,簽到,作業(yè),留言板和教師實體。其中,班級和學(xué)生之間是一對多的關(guān)系;簽到和學(xué)生之間是一對多的關(guān)系;教師與簽到之間是一對多的關(guān)系;課程與教師之間是一對多的關(guān)系;教師與作業(yè)之間是一對多的關(guān)系;課程與作業(yè)之間是一對多的關(guān)系;學(xué)生與留言之間是一對多的關(guān)系

33、;教師與留言之間是一對多的關(guān)系。由于每個課程都可以有很多學(xué)生選,而每個學(xué)生可以選很多課程,所以兩者之間是多對多的關(guān)系;由于每個學(xué)生都要有評分,因此作業(yè)與學(xué)生之間有對應(yīng)關(guān)系,而每個作業(yè)對應(yīng)的是一個班級所有學(xué)生的,而每個學(xué)生可以有很多作業(yè),因此作業(yè)和學(xué)生之間是多對多的關(guān)系。教學(xué)如圖 4-2 所示。的實體圖12河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)簽到點名在N1N1NN1學(xué)生反饋查看MMN1選課課程教1有NNN作業(yè)作業(yè)留圖 4-2E-R 圖教學(xué)部分實體圖如下:(1)學(xué)生實體圖包括四個屬性,其中包括學(xué)號,姓名,以及班級號,學(xué)號兩個屬性可以用來作為驗證,供登錄模塊使用,班級號作為與班級實體對應(yīng),學(xué)號與

34、姓名實現(xiàn)與其他實體連接。學(xué)生實體圖如圖 4-3。學(xué)號班級號圖 4-3學(xué)生實體圖13學(xué)生教師N1留言1簽到N班級1河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)(2)課程實體圖包括兩個屬性,分別為課程名稱與課程號。兩個屬性可以連接學(xué)生實體,教師實體以及作業(yè)實體。課程實體如圖 4-4 所示。課程名課程號圖 4-4課程實體圖(3)班級實體圖包括兩個屬性,分別為班級名稱與班級號。兩個屬性可以連接學(xué)生實體。班級實體如圖 4-5 所示。班級名班級號圖 4-5班級實體圖(4)作業(yè)實體圖包括作業(yè)號,課程號,日期,班級號以及作業(yè)題目五項屬性。作業(yè)題目著作業(yè)的詳細內(nèi)容,日期者作業(yè)的日期,課程號和班級對應(yīng)著哪個班哪個課程

35、留的作業(yè),作業(yè)號著學(xué)生,教師以及課程實體。作業(yè)實體圖如圖 4-6。14班級課 程河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)作業(yè)號日期課程號班級號題 目圖 4-6作業(yè)實體圖(5)留言實體圖包括內(nèi)容編號,學(xué)生編號,班級號,日期,課程號,反饋內(nèi)容六個屬性。學(xué)生號,班級號和課程號著哪個班級的哪個課程的哪個學(xué)生留下的反饋信息,日期對應(yīng)著反饋信息時間,通過內(nèi)容號找出某個留言信息。實體圖如圖 4-7。學(xué)生號反饋內(nèi)容留言班級號內(nèi)容號日期課程號圖 4-7留言實體圖(6)簽到班級名和課程名的時間,到否實體圖包括學(xué)生編號,班級名,日期,課程名,到否五個屬性。學(xué)生號, 著哪個班級的哪個課程的哪個學(xué)生的簽到信息,日期對應(yīng)

36、著學(xué)生簽到該學(xué)生此次考勤是否簽到。實體圖如圖 4-8。15作業(yè)河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)日期到否學(xué)生號簽到課程名班級名圖 4-8簽到實體圖(7)教師實體圖包括教師號,以及教師姓名三項屬性。教師實體主要應(yīng)用于教師客戶端,學(xué)生客戶端不涉及到教師實體。實體圖如圖 4-9。教師號圖 4-9教師實體圖4.3.2數(shù)據(jù)庫的物理結(jié)構(gòu)設(shè)計根據(jù)以上的實體屬性集可以建立相應(yīng)的數(shù)據(jù)庫表結(jié)構(gòu),其中教學(xué)主要用到的數(shù)據(jù)庫表結(jié)構(gòu)如下所示。生客戶端(1)學(xué)生表(student)包括學(xué)號,姓名,與班級號四個字段。教學(xué)生客戶端需要通過學(xué)生表驗證學(xué)生信息,登陸者是否屬于學(xué)校,并將學(xué)生信息的部分內(nèi)容反饋給客戶端。學(xué)生表如

37、表 4-1。16教師河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)表 4-1學(xué)生表(2)班級表(class)包括班級號與班級名兩個字段。教學(xué)無論學(xué)生端還是教師端都需要班級內(nèi)容,將班級內(nèi)容從學(xué)生表和教師表中提取出來可以簡化數(shù)據(jù)庫的相關(guān)操作。班級表如表 4-2 所示。表 4-2班級表(3)課程表(course)包括課程編號與課程名兩個字段。學(xué)生無論是簽到情況,作業(yè)情況還是反饋信息,都需要選擇課程,因此課程表是必須的。課程表如表 4-3。表 4-3課程表(4)選課表(cs)包括學(xué)生編號和課程信息兩個字段。由于學(xué)生與課程之間是多對多的關(guān)系,因此需要在兩個表之間添加一課表兩張表。選課表如表 4-4:表 4-4

38、選課表(5)作業(yè)表(hw)是用來每個班級作業(yè)的具體情況,學(xué)生查看作業(yè)內(nèi)容需要此以為表。作業(yè)表包括作業(yè)編號,課程編號,班級號,日期和題目五個字段其中問題空,hwid 要求每次自增 1。 作業(yè)表如表 4-5。17字段名描述類型長度是否為空是否主鍵studentid學(xué)生編號Varchar10否是courseid課程編號Varchar10否是字段名描述類型長度是否為空是否主鍵courseid課程編號Varchar10否是coursename課程名Varchar20否否字段名描述類型長度是否為空是否主鍵classid班級號Varchar10否是classname班級名Varchar20否否字段名描述類型

39、長度是否為空是否主鍵classid學(xué)號Varchar10否是studentnameVarchar20否否passwordVarchar10否否classid班級號Varchar10否否河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)表 4-5作業(yè)表(6)作業(yè)表(hwdata)包括作業(yè)編號,學(xué)生編號,分數(shù)三個字段,其中分數(shù)采用 5 分制。由于作業(yè)與學(xué)生之間是多對多的關(guān)系,因此需要創(chuàng)建一個作業(yè)表來關(guān)聯(lián)兩個表,學(xué)生可以通過此表來的成績。作業(yè)表如表 4-6。表 4-6作業(yè)表(7)簽到表(signdata)包括五個字段,分別為學(xué)生編號,課程名稱,日期,班級名稱和到否。學(xué)生可以通過這個表來每個課程的簽到情況。簽到

40、表如表 4-7。表 4-7簽到表(8)留言(feedback)包括內(nèi)容編號,學(xué)生編號,課程名稱,日期以及反饋內(nèi)容五個字段,其中反饋內(nèi)容為空,內(nèi)容編號每次自增 1。學(xué)生可以通過增加,修改刪除此表內(nèi)容對教師進行反饋。留言板表如表 4-8。表 4-8留言表18字段名描述類型長度是否為空是否主鍵studentid學(xué)生編號Varchar10否是coursename課程名稱Varchar20否是datetime日期Date0否是classname班級名稱Varchar20否否sign到否Varchar5否否字段名描述類型長度是否為空是否主鍵hwid作業(yè)編號Varchar10否是studentid學(xué)生編號V

41、archar10否是score分數(shù)Integer0否否字段名描述類型長度是否主鍵是否空是否自增 1hwid作業(yè)編號Varchar10是否是courseid課程編號Varchar10否否否classid班級號Varchar10否否否datetime日期Date0否否否question題目Text0否是否河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)以上將教務(wù)處子系統(tǒng)中數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的E-R 圖轉(zhuǎn)換成與 Microsoft SQLServer2000 所支持的數(shù)據(jù)模型相符合的結(jié)構(gòu),只需使用數(shù)據(jù)定義語言將數(shù)據(jù)庫邏輯設(shè)計和物理設(shè)計的結(jié)果嚴格描述出來,再經(jīng)過調(diào)試產(chǎn)生目標(biāo)模式就可以組織數(shù)據(jù)入庫,進行數(shù)據(jù)庫實

42、施。4.4代碼設(shè)計在代碼設(shè)計這部分,將具體設(shè)計整個系統(tǒng)所用的大概邏輯框架,為詳細設(shè)計提供必要的參考,以及各模塊編程的規(guī)范,參數(shù)的傳遞以及函數(shù)的接口。(1)首先,全局變量的傳遞。學(xué)生登陸后要該學(xué)生用戶個人信息,以便完成后續(xù)的功能,因此學(xué)生的學(xué)號信息要傳遞到 studentid 這個全局變量中,其他功能時,接受此變量的值即可使用學(xué)號,學(xué)生姓名傳遞到 studentname 這個全局變量中,學(xué)生所在班級號傳遞到 classid 中。同樣,在每個功能選擇課程的時候,可將課程名稱傳遞到 coursename 這個變量中,其他函數(shù)調(diào)用時,即可接受此變量的值。(2)所有的 Activity 類學(xué)要寫在一個

43、activity 的 package 內(nèi),所有的數(shù)據(jù)庫操作函數(shù)都要寫在一個 DAO 的 package,所有的結(jié)構(gòu)類都要寫在一個 m的 package 中,每個類的名字和函數(shù)的名字都要用易讀的名稱,以便系統(tǒng)的修改,更行等操作。(3)在重要的函數(shù)和類成員旁邊加上注釋,增加可讀性。(4)學(xué)生表儲存在“check.db”的數(shù)據(jù)庫文件,供登陸時。(5) 數(shù)據(jù)庫的其他(6) 每個函數(shù)的代碼應(yīng)讀性。儲存在數(shù)據(jù)庫文件“mydata.db”中,以便調(diào)用。在 50 行以內(nèi),參數(shù)傳遞在三個以內(nèi),以便增加系統(tǒng)可(7)服務(wù)器端接收客戶端請求端號為 4567,向客戶端信息端號為 4568通過總體設(shè)計對軟件的結(jié)構(gòu)框架有了

44、整體的認識,對系統(tǒng)的每個模塊的功能都有了清晰的了解。下面便可以通過詳細設(shè)計來實現(xiàn)整個系統(tǒng)。19字段名描述類型長度是否主鍵是否空是否自增 1fdid內(nèi)容編號Integer10是否是studentid學(xué)生編號Varchar10否否否coursename課程名稱Varchar20否否否datetime日期Date0否否否context反饋內(nèi)容Text0否是否河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)5詳細設(shè)計5.1客戶端5.1.1學(xué)生登陸模塊客戶端首先或更新“mydata.db”更新本地數(shù)據(jù)庫。然后客戶端通過本地數(shù)據(jù)庫檢驗用戶輸入的登錄信息是否正確,如若信息不正確則傳遞提示錯誤信息,由客戶端 Toas

45、t 出錯誤提示(如圖 5-2),若信息正確,提示登陸(如圖 5-3),將學(xué)號傳遞給 studentid,學(xué)生姓名傳遞給 studentname,班級號傳遞給 classid,并進入下界面。能網(wǎng)絡(luò)功能使用 Socket 來傳遞客戶端和服務(wù)器端的信息??蛻舳诵枰?Socket 這個類的對象,而服務(wù)器端同樣需要一個叫 ServerSocket 的類對象,由客戶端一個 Socket 請求,服務(wù)器端的 ServerSocket計算機的某一個端(4567),到客戶端的請求之后,那么服務(wù)器端和客戶端通訊通道就建立起來了,此時客戶端和服務(wù)器端可同時向?qū)Ψ綌?shù)據(jù)及相應(yīng)信息??蛻舳藬?shù)據(jù)需要用到 IO 流里面的 Ou

46、tputStream,通過OutputStream 將數(shù)據(jù)給服務(wù)器端,服務(wù)器端用 InputStream 來客戶端當(dāng)中用OutputStream 所寫入的數(shù)據(jù),同樣,服務(wù)器端想將數(shù)據(jù)庫文件給客戶端時,那么就使用 OutputStream 寫出數(shù)據(jù),在客戶端通過 InputStream 把服務(wù)器端當(dāng)中通過 OutputStream所寫入的數(shù)據(jù)給它出來。圖 5-1登錄界面20河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)圖 5-2登錄失敗提示圖 5-3登錄提示登錄信息的 SQL 語句為:(例如:服務(wù)器端接收的學(xué)號為 sid, Select studentname,passwordFrom student

47、Where studentid = sid為 pword)若數(shù)據(jù)庫中無 sid 對應(yīng)信息,則返回錯誤信息,若有,服務(wù)器端驗證 password=pword,匹配則返回信息,傳遞“mydata.db”,不匹配則返回錯誤信息。5.1.2簽到模塊簽到模塊主要功能是查看登錄學(xué)生的各門課程課程的簽到情況。首先,先搜索該學(xué)生都學(xué)習(xí)了哪些課程,(例如:studentid=001) Select coursename as _id From course,cs課程名稱的 SQL 語句如下:Where studentid=001 and course.courseid=cs.courseid查找到的課程名通過

48、listview 顯示在界面中。21河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)圖 5-4簽到模塊選擇班級界面點擊課程名稱,將執(zhí)行操作:將點擊的 listview 中的課程名傳遞到 coursename,即String coursename=(TextView)view).getText().toString();然后執(zhí)行如下 SQL 語句簽到信息:(例如:點擊為數(shù)據(jù)結(jié)構(gòu)) Select datetime as _id,sign From signdataWhere coursename=數(shù)據(jù)結(jié)構(gòu)便搜索到如圖 5-5:and studentid=001圖 5-5個人簽到情況界面22河北大學(xué) 2012 屆本科畢業(yè)生(設(shè)計)5.1.3作業(yè)模塊作業(yè)模塊主要功能是查看登錄學(xué)生的各個科目的作業(yè)情況情況,學(xué)生可以選擇科目,查看對應(yīng)科目所留作業(yè)的時間內(nèi)容和得到的分數(shù)。首先通過數(shù)據(jù)庫搜索到學(xué)生所學(xué)課程。點擊圖 5-6 界面中的課程:圖 5-6作業(yè)模塊選擇班級界面同簽到模塊一樣,將課程名傳到 coursename 中,然后由課程名稱 coursename 找到課程編號:(例如:coursename=08 信計)Select courseid From courseWhere cour

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論