




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGEPAGE38哈爾濱工業大學畢業設計(論文)I-摘要隨著計算機的飛速發展,對于學生而言,能夠及時的獲取到自己想要的課程才是最需要的,雖然網絡上存在著很多的網絡課程,但是由于管理不當等因素,也使得網絡上的課程存在著各種各樣的問題,使得學生在進行移動網絡學習的時候總是需要花費大量的時間和精力。該金課系統在設計在開發上主要使用的是Java、JSP、Android技術等技術,使用Eclipse、AndroidStudio以及Mysql數據庫等開發工具開發,通過微課程的設計思路,在設計上主要是分為三種用戶,一是管理員,其作用就是實現在整體上管理整個金課系統的數據,主要涉及到的功能有學生管理、教師管理、課程管理等功能;二是教師用戶,主要涉及到的功能有:教師登錄系統后擁有查看選擇自己所教授的課程的學生,以及給現在自已教授的課程的學生打分情況,以及回復學生的問題,日常預留作業,日常批改作業,對學生成績的管理,課堂簽到、考勤等;三是學生用戶,主要涉及到的功能有:學生登錄系統后可以進行課程選擇,并且可以查看授課教師和對老師對其提問進行的回答,對所學習的課程進行評分和評價,日常的課堂簽到,對課程的選擇,進行隨堂考試和作業的完成等,通過最后系統的測試,整個金課系統和后臺服務器端是正常運行的。關鍵字:移動網絡;Mysql數據庫;金課系統AbstractWiththerapiddevelopmentofcomputer,itisthemostnecessaryforstudentstogetthecoursestheywantintime.Althoughtherearemanynetworkcoursesonthenetwork,duetoimpropermanagementandotherfactors,therearevariousproblemsinthecoursesonthenetwork,whichmakesstudentsalwaysspendalotoftimeandtimeinmobilenetworklearningEnergy.Inthedesignanddevelopmentofthegoldencoursesystem,Java,JSP,Androidtechnologyandothertechnologiesaremainlyused,andeclipse,Androidstudio,mysqlDBandotherdevelopmenttoolsareused.Throughthedesignideaofthemicrocourse,thedesignismainlydividedintothreetypesofusers,oneistheadministrator,whoseroleistomanagethedataofthewholegoldencoursesystemasawhole,andthemainfunctionsinvolvedarelearningStudentmanagement,teachermanagement,curriculummanagementandotherfunctions;second,teacherusers,mainlyrelatedtothefollowingfunctions:teachershavetheabilitytocheckthestudentswhochoosetheirowncoursesafterlogginginthesystem,andtogradethestudentswhonowteachtheirowncourses,aswellasreplytostudents'questions,dailyreservationofhomework,dailycorrectionofhomework,managementofstudents'scores,classroomattendance,attendance,etc.;third,studentusers,mainlyrelatedtothefollowingfunctions:studentscanselectcoursesafterlogginginthesystem,andcanviewtheteachersandanswertheirquestions,gradeandevaluatethecoursestheyhavelearned,dailyclassroomattendance,courseselection,inclassexaminationandhomeworkcompletion,etc.,andpassthefinalsystemtest,Thewholegoldencoursesystemandbackgroundserverarerunningnormally.Keywords:MobileNetworkMysqlDBGoldenclasssystem目錄TOC\o"1-3"\u摘要 IAbstract II第1章緒論 11.1課題背景 11.2目的和意義 11.2.1課題目的 11.2.2課題意義 21.3國內外研究現狀 21.4課題研究內容及論文結構 3第2章可行性分析 42.1經濟可行性 42.2技術可行性 52.3業務流程分析 5本章小結 6第3章需求分析 73.1系統需求分析 73.2數據流分析 73.3數據字典 93.3.1數據項表 93.3.2數據流 10本章小結 11第4章系統設計 124.1系統模塊總體設計 124.2數據庫關系實體設計 134.3數據庫表的設計 14本章小結 16第5章系統實現 175.1系統實現環境 175.2學生用戶的實現 175.2.1學生用戶登錄注冊功能 175.2.2所有課程查看功能 205.2.3查看作業功能 215.2.4個人信息管理功能 225.3教師模塊功能 235.3.1登錄注冊功能 235.3.2查看學生模塊功能 245.3.3作業模塊管理功能 255.3.4學生成績管理功能 265.3.5個人信息管理功能 285.4管理員模塊功能 295.4.1登錄功能 295.4.2學生管理功能 305.4.3教師管理功能 315.4.4課程管理功能 32本章小結 33第6章系統測試 346.1系統測試目的 346.2測試方法 346.3本系統測試 346.3.1測試計劃 346.3.2測試用例 356.3.3測試結果 35本章小結 37結論 38第1章緒論1.1課題背景 隨著計算機發展,網絡給每一個人都帶來了巨大的改變,這里重點說的是網絡對于學生或者需要學習的人群,對于這類人群而言,如果要學習一門新技術或者補充新的知識,在這個網聯網如此發達的時代,而且網絡課程如此豐富,很少人會想到通過書本的形式來學習,大部分人都通過在網絡上查找相關的課程教程來進行學習,但是隨著網絡的發展,尤其是最近幾年,移動互聯網的迅速發展,由于缺少合理的網絡監管和控制,使得網絡上的課程都是魚龍混雜,使得學生等人群在尋找學習課程的時候,總是會浪費大量的時間和精力來尋找,往往也尋找不到好的學習課程。除了上面介紹的尋找課程的問題,是目前大部分人的一大困惑,除了這個困惑外,還有另外一個困惑,那就是當遇到問題了,不能及時的獲取到幫助,這也是目前學生經常遇到的麻煩,如在學習的時候,如果遇到問題時,只能通過自己在網絡這個海洋中獨自尋找答案,可想而知,尋找到的答案是什么樣的結果,對于這樣的問題,目前網絡上還不能進行解決。網絡發展是必然的,但是在發展的過程中,由于發展的不完善,或者是由于我國互聯網發展速度太快,相應的完善制度還沒有健全,造成了相應的困難也是避免不了的,目前隨著的不斷發展,最近推出了金課系統,而這種形式的軟件是目前網絡發展的趨勢,主要就是借助移動互聯網,通過這個載體,完成移動學習。1.2目的和意義1.2.1課題目的金課系統是一個學生學習精品課程的程序,主要用于學生更好的學習更多精品課程,不止局限于本學校老師的課程,隨著移動互連技術的迅速發展,移動學習逐漸成為一種新的無線學習模式。作為一個全新的搜索領域,移動學習是一種在移動設備的支持下隨時可以在任何地方進行的學習。隨著網絡教育的發展,也為農村教育發展提供了新的解決方案。通過互聯網,可以彌補農村教育的不足,使邊遠地區的青少年通過教育改變命運成為可能,為我國各地教育均衡發展提供條件。而且學生作為一個特殊的群體,不同于其他群體。一般來說,他們更容易接觸和嘗試新事物,而手機在日常生活中不可或缺,其中移動端的學習平臺將是首選對象。基于安卓的金課管理系統的構建具有較高的實用價值和可行性。1.2.2課題意義系統的發展目標是基于安卓的金課管理系統的開發具有很高的研究價值和發展潛力。本文主要研究基于安卓的金課管理系統的設計與實現。在線課程資源和移動學習的結合使學生能夠獨立地安排他們的教學時間。安置學習的內容既能促進學生的自主學習能力,又能提高教育水平。另一方面,移動學習也為傳統的學習方式開辟了新的思路。隨著信息時代的到來,學生在學習過程中占據了主導地位。學習也將越來越受到學生的歡迎。作為一種新的學習方式,學習是可以允許的。人們可以隨時隨地獲得所需的知識和信息,體會到真正的自學感受,最終實現教育的社會化和全民化。1.3國內外研究現狀在國外,移動學習一直受到公共服務和教育工作者的關注,而移動學習是泛在學習和數字化學習的延伸,甚至是終身學習的未來方向。作為移動學習的先驅,國外對移動學習的研究經歷了不同的階段。研究方向也相當廣泛,發展迅速。移動學習在國外被稱為M-learning。它通過移動設備隨時隨地學習,從而實現終身學習。目前,這還不是一個完整的體系。在對實驗數據進行詳細分析后,一些研究者對移動網絡學習的概念進行了詳細的描述,并給出了移動網絡學習的定義。數字化學習系統、移動可用性和無線技術,移動學習理論及其系統開發自提出以來,經歷了幾十年的發展,其應用目標甚至內涵都發生了變化。然而,其最重要的研究仍停留在這三個領域,至今仍是移動通信系統發展的指導原則。移動學習在中國起步較晚,從2002年高等教育部頒布的建設開始。經過十幾年的努力,移動學習平臺的理論和實踐已經達到了預期的目標。在資源建設理論和學科研究方面取得了可喜的成績。在理論研究方面,我們有了自己的關于移動學習平臺和相應的教育模式,并進行了相應的研究。在資源建設方面,基于移動學習平臺建設的案例百花齊放,如手機閱讀系統、移動圖書館、微型課件等。移動電話移動圖書館系統、計算機輔助教學等。應用群體從初中到大學生、從農村到城市人群,跨越了年齡、職業和社會地位的限制,并得到了有效的提升學習平臺的發展。截至2019年6月,中國網民規模達到8.54億人,比2018年底增加2598萬人,互聯網普及率達到61.2%。中國網民規模達到8.47億人,比2018年底增加2984萬人;網民使用手機的比例達到99.1%。移動互聯網接入流量消費553.90億GB,比去年同期增長107.3%。其中,中國網絡教育用戶達到2.32億,比2018年底增加3122萬,占網民總數的27.2%。2019年,政府工作報告明確提出發展“互聯網+教育”,促進優質資源共享。1.4課題研究內容及論文結構本課題以金課管理系統為研究對象,使用安卓技術通過代碼編寫,完成一個網上課程日常管理。設計實現了一套基于安卓平臺的金課管理系統。該系統在設計上主要設計了三種用戶權限,分別是管理員、教師和學生,其中管理員負責管理整個系統的數據。管理員主要是負責后臺管理,其中涉及到的功能包括:登錄、個人信息的管理、課程管理、教師管理以及學生等功能。教師通過在App端可以查看自己的課程以及選擇自己課程的學生,進而完成相應的功能,主要包括:給學生打分、回復學生問題、預留作業以及考勤等;學生也是通過在App端進的功能包括:選擇課程、對應向課程老師提問、對所學課程進行評價、日常的課程簽到,查看作業等功能。本論文的結構如下所示。第1章緒論:概括該程序的課題背景,目的意義,國內外研究現狀。第2章可行性分析:決定設計本系統前對其進行合理化分析,判斷系統的落成是否能滿足預期的要求。第3章需求分析:從需求開始結構化分析,從數據的流向進行分析論證。第4章系統設計:系統進行總體設計,從功能模塊到數據庫設計,完后系統的構建。第5章系統實現:對金課系統進行功能模塊的演示,將各個功能按照流程進行處理。第6章系統測試:針對系統的實現進行系統化測試,確保系統能正常滿足系統需求分析的要求內容。
第2章可行性分析可行性分析的目的在于在做之前明確為什么要做,有沒有做的必要,如果在做可行性分析的時候,覺得這個系統有做的必要,則此系統值得一做;否則如果覺得這個系統沒有做的必要,則此系統就不值得一做。2.1經濟可行性該系統在開發過程中是基于畢設角度上進行設計的,在實現時,主要是基于本地測試的,前期的需求整理以及后期的程序的運維都是通過本人來進行實現的,所以總體來說,這款軟件不會耗費太多資金,因為使用的技術很成熟,是開源的,因此不需要考慮版權的問題,在短期內的開發很初級。當初級的項目被開發完成之后,我們再來進一步分析是否可以做進一步的推廣,因此在創建初級項目的時候,我們不需要太多糾結于經費的問題,所以說設計此系統在經濟上來說是可行的。以下針對能涉及到的經濟方面做出了分析,證明經濟可行。本系統是基于安卓平臺的金課管理系統的初期投資表,如表2-1所示。表2-1金課管理系統初期投資序號項目人工(人·日)單價(元)合計(元)1可行性研究5100050002需求分析8100080003總體設計5100050004后臺模塊詳細設計4100040005管理員模塊詳細設計4100040006教師端模塊詳細設計4100040007學生端模塊詳細設計41000400010編碼實現1010001000011單元測試51000500012系統綜合測試31000300013說明手冊編制21000200014合計540002.2技術可行性本系統是安卓平臺開發的,現在安卓的快速發展已經影響到了每個人的日常生活。安卓是一種基于Linux的、開放源代碼的操作系統,主要適用于移動設備,如智能手機和平板電腦,是符合我們所想的金課管理系統在移動學習方面的設計要求。本系統主要通過Java語言來實現,Java語言在現在的各個系統的開發以及App的開發都是應用相當的廣泛,Java語言在設計系統方面有顯而易見的優勢,所以如今用Java語言來設計系統見怪不怪。JSP技術是Java系列技術的一部分。Jsp頁面在Servima中組裝,可以在服務器端處理上稱為JavaBeans(PASULJ)組件或JavaBeans企業(bean)組件。因此,Jsp技術在構建基于Web的最新應用程序方面發揮著重要作用。JSP頁面不限于任何特定的平臺或Web服務器。Jsp的規格在業內具有廣泛的適應性。我們使用的服務器是Tomcat服務器。Tomcat服務器是一個開放和免費的Web應用程序服務器,它是一個輕量級的服務器應用程序。它是開發Java系統或Jsp系統的項目或公司的首選。從本質上講,Tomcat是Apache服務器的擴展,但它在運行時獨立工作,因此當您運行Tomcat時,它實際上運行起來就像Apache獨立進程一樣,而且方便快捷。我們使用的服務器是Tomcat服務器,Tomcat服務器是一個向所有人開放的并且是免費的Web應用的服務器,而且是屬于輕量級的應用服務器,對于開發java系統或者是Jsp系統的項目或者公司的首要選擇。實際上Tomcat是Apache服務器的擴展,但運行時它是獨立運行的,所以當你運行Tomcat時,它實際上是作為一個與Apache獨立的進程單獨運行的,并且方便、快捷。以上技術和開發工具都是開源的,并且現在網絡中存在著大量的技術社區以及問題解決方案,當在程序開發的過程中,遇到不會的知識點或者是程序中遇到Bug時,可以選擇直接在網上自行百度查詢,由此會加快軟件發的速度,所以從技術可行性分析的角度上可行的。2.3業務流程分析業務流程分析主要是針對業務展開,可以使分析人員直觀的發現工作中的錯誤與瑕疵,維護整體業務流向,這是分析業務流程的重要步驟。本次設計開發的系統是基于Eclipse下平臺的B/S模式系統。前端軟件使用Android技術開發,通過在服務器端下載的方式使客戶端運行,根據分析系統確定的功能以及目標,采用逐步求精、自頂到底的設計結構化方法,系統進行了結構設計。系統業務流程圖,如圖2-2所示。圖2-2金課管理系統業務流程圖本章小結本章主要進行了可行性分析,首先從軟件的角度說明了所使用的軟件,其次了解了相關技術的可行性,可以從根本上降低了開發的成本。產生的業務流程分析簡述了金課管理系統的業務流向。最后通過本章的介紹,可以了解系統的可行性。
第3章需求分析需求分析是開發人員對用戶提出的要求進行解析,根據用戶提出的需求,從而解析該系統所要完成哪些功能點。這里面包括了用戶想要輸入什么樣的數據信息,內部的流程是怎么完成,最后得到的結果是如何展示的,這些都是在需求分析中要明確的約束條件。3.1系統需求分析該系統在設計上是分為三種用戶權限,對應每種用戶權限所進行的操作權限是不同的,對于這種設計方案的選擇,主要是結合現實生活中人們的需求。首先對于管理員角色的設定,就是對整個系統數據的管理,如果沒有管理員角色,那么系統中所有的數據都是散亂的,沒有一定的順序和規則,因而,主要為管理員設計了課程管理、教師管理以及學生管理等。其次就是教師和學生兩種用戶權限,也是該系統的主要用戶,其中教師完成的就是查看選擇自己課程的學生、發布作業以及為學生打分等一系列的操作,而學生則是與教師的功能相一致的,學生就是查看系統課程,并進行選擇對應的課程、查看對應課程的作業、向對應課程的教師進行提問以及查看自己的成績等功能。最后,通過整體系統的設計,從管理員、教師和學生三種用戶身份的設計,使得整體更加的合理。3.2數據流分析數據流分析是一種用于收集計算機程序在不同點計算的值的信息的技術。一個程序的控制流圖,被用來確定對變量的一次賦值可能傳播到程序中的哪些部分。這些信息通常被編譯器用來優化程序。數據流分析的一個典型的例子就是可到達定義的計算。進行數據流分析的最簡單的一種形式就是對控制流圖的某個節點建立數據流方程,然后通過迭代計算,反復求解,直到到達不動點。在整個結構化分析中,采用自頂向下的分析方式,通過確定外部實體關系,歸納處理過程,尋找數據流向,使功能逐次分解,降低模塊的復雜度。金課系統在設計時,外部實體主要是教師和學生,實現系統數據的提交,管理員則是實現對整個系統數據的維護。金課管理系統數據流零層圖,如圖3-1所示。圖3-1金課管理系統數據流零層圖根據對零層數據流圖分析得到金課管理系統數據流一層圖。金課管理系統數據流一層圖,如圖3-2所示。圖3-2金課管理系統數據流一層圖根據對一層數據流圖得到金課管理子系統的數據流圖,在本子系統中,管理員審核管理課程信息、教師發布課程信息、學生選擇課程信息,最后上傳至課程信息表。金課管理子系統數據流二層圖,如圖3-3所示。圖3-3金課管理子系統數據流二層圖3.3數據字典3.3.1數據項表數據項是指模板表樣中需要填寫內容的那些空白單元格。若干相關的數據項可以組成一個數據表。數據項表,如表3-1所示。表3-1數據項表編號數據項名數據類型長度Z-01管理員IDInt20字節Z-02管理員名稱Varchar225字節Z-03管理員密碼Varchar100字節Z-04管理員電話Varchar100字節Z-05課程IDInt20字節Z-06課程名稱Varchar100字節Z-07課時Varchar100字節Z-08課程起止時間Varchar100字節續表3-1Z-09課程描述Varchar100字節Z-10課程教師IDInt120字節Z-11課程狀態Int20字節Z-12學生選課IDInt20字節Z-13學生IDInt20字節Z-14課程IDInt20字節Z-15添加時間Datetime8字節Z-16學生IDInt20字節Z-17學生名稱Varchar100字節Z-18學生密碼Varchar100字節Z-19學生電話Varchar100字節Z-20學生所在學校Varchar100字節Z-21學生在線時間Datetime8字節Z-22教師IDInt20字節Z-23教師名稱Varchar100字節Z-24教師密碼Varchar100字節Z-25教師電話Varchar100字節Z-26教師身份證Varchar100字節Z-27教師所在學校Varchar100字節Z-28教師在線時間Datetime8字節Z-29教師擅長領域Varchar100字節3.3.2數據流數據流是指一組有順序的、有起點和終點的字節集合,程序從鍵盤接收數據或向文件中寫數據,以及在網絡連接上進行數據的讀寫操作,都可以使用數據流來完成。在數據流圖中,數據流用“F”來表示。數據字典設計中應包括實體、數據流、存儲、處理。數據流編號:F1數據流名稱:成績信息數據流來源:教師數據流去向:學生數據流組成:Z-05+Z-06+Z-10+Z-16數據流編號:F2數據流名稱:課程信息數據流來源:教師數據流去向:學生數據流組成:Z-05+Z-06+Z-07+Z-08+Z-09+Z-10+Z-11+Z-12+Z-13+Z-14數據流編號:F3數據流名稱:作業信息數據流來源:教師數據流去向:學生數據流組成:Z-05+Z-06+Z-10+Z-11+Z-12+Z-13+Z-14數據流編號:F4數據流名稱:評價信息數據流來源:學生數據流去向:教師數據流組成:Z-05+Z-06+Z-07+Z-08+Z-09+Z-10+Z-11+Z-12+Z-13+Z-14本章小結在本章中完成需求分析,首先著重表現在整體模塊設計,數據字典和數據流圖的設計,其次充分的分析了金課系統的系統構成和模塊分析,列出清晰可見的數據庫圖表,最后達到了一眼就能了解。第4章系統設計通過前三章的設計,我們對系統的了解又深入了一步,接下來我們要進行系統設計。系統設計是在需求分析的基礎上繼續深度挖掘,了解各個模塊的功能,完成相應的程序開發,使業務與數據分離,減少開發復雜度。4.1系統模塊總體設計根據以往研究的需求分析,可以總結系統整體的功能模塊設計。功能模塊圖能夠直觀地展現出金課管理系統的各個功能模塊。管理員主要是負責后臺管理,其中涉及到的功能包括:登錄、個人信息的管理、課程管理、教師管理以及學生等功能。教師通過在App端可以查看自己的課程以及選擇自己課程的學生,進而完成相應的功能,主要包括:給學生打分、回復學生問題、預留作業以及考勤等。學生也是通過在App端進的功能包括:選擇課程、對應向課程老師提問、對所學課程進行評價、日常的課程簽到,查看作業等功能。本系統功能模塊圖,如圖4-1所示。圖4-1金課管理系統功能模塊圖4.2數據庫關系實體設計完善的系統必須有良好的數據庫設計,該系統采用Mysql作為后臺的數據庫。數據庫中包括課程表、選擇課程表、學生表、教師表、作業表、成績表、問題回復表等數據。金課管理系統的E-R圖,如圖4-2所示。圖4-2金課管理系統關系實體圖1.本系統的實體及其屬性。教師,其屬性為用戶名、密碼、身份證、電話、所在學校、領域等;學生,其屬性為用戶名、密碼、電話、所在學校等;課程,其屬性為課程名稱、課時、開課時間、課程類型、課程介紹、課程文件、教師Id等;選擇課程,其屬性為學生Id、課程Id、添加日期等;成績,其屬性為學生Id、教師Id、添加日期等;作業,其屬性為作業內容、課程Id、教師Id、作業Id、批改狀態、簡介等;問題回復,其屬性為問題內容、教師Id、課程Id、學生Id、填裝類型、日期等。2.實體都不會單獨的存在,各個實體間的關系具體如下所示。(1)教師與作業、課程、問題回復、成績之間關系都是1:n。(2)課程與作業、問題回復之間關系都是m:n。(3)學生與選擇課程、問題回復、成績之間關系都是1:n。(4)課程與選擇課程之間關系是1:1。4.3數據庫表的設計根據對金課管理系統的設計要求,需要設計以下數據庫表,用來存儲本系統中需要用到的相關數據。1.管理員表主要是記錄了管理員信息,用于信息的判別。管理員表作為系統的主表之一,用來維護系統的信息,在權限、上傳課程、教師管理、學生管理中都需要管理員表的支持。管理員表如表4-1所示。表4-1管理員(Admin)字段名稱數據類型主/外鍵字段描述AidInt主鍵用戶IdAnameVarchar(255)--姓名ApwdVarchar(100)--密碼AtelVarchar(100)--電話2.課程表主要是記錄了課程的基本信息,是用來轉載系統全部的課程信息,在教師端和學生端之間不斷地傳送課程信息數據。課程表如表4-2所示。表4-2課程(Kechengs)字段名稱數據類型主/外鍵字段描述KidInt主鍵IdKnameVarchar(100)--課程名稱KkeshisVarchar(100)--課時續表4-2KstarttimeVarchar(100)--課程起止時間KcontVarchar(100)--課程描述KtidInt--教師IdKtypeInt--課程狀態3.學生選擇課程表主要是記錄了學生選課的基本信息。學生選擇課程表是用來在全部的課程信息中篩選出學生所選的課程信息。課程表如表4-3所示。表4-3學生選擇課程(Selectkechengs)字段名稱數據類型主/外鍵字段描述SKidInt主鍵IdSKsidInt--學生IdSKdateDatetime--添加時間SKkidInt--課程Id4.學生表主要是記錄學生信息,用于信息的甄別。學生表作為系統的主表之一,用來查看學生信息,在學生管理中都需要學生表的支持。學生表如表4-4所示。表4-4學生(Stus)字段名稱數據類型主/外鍵字段描述SidInt主鍵IdSnameVarchar(100)--學生姓名SpwdVarchar(100)--密碼StelVarchar(100)--電話SschoolnameVarchar(100)--所在學校SdateDatetime--時間5.教師表主要是記錄教師的信息,用于信息的甄別。教師表作為系統的主表之一,用來查看教師信息,在教師管理中都需要教師表的支持。教師表如表4-5所示。表4-5教師(Teas)字段名稱數據類型主/外鍵字段描述TidInt主鍵IdTnameVarchar(100)--姓名TpwdVarchar(100)--密碼TtelVarchar(100)--電話TshenVarchar(100)--身份證TschoolVarchar(100)--所在學校TdateDatetime--時間TteakechengVarchar(100)--擅長領域本章小結系統設計階段首先是對系統功能模塊的繪制工作,并進行了簡單的描述。其次制作出對應的數據庫,建立表之間的依存關系。數據庫在設計中有非常重要的作用,因此最后提供了系統數據庫E-R圖,并對本系統使用到的數據庫結構進行了詳盡的敘述,列出了使用到的數據庫表的表結構。
第5章系統實現系統實現主要對系統功能的實現進行流程化描述,通過文字與圖片的介紹,達到見圖知意的效果。系統實現是對系統功能的操作的說明,按照系統的流程完成系統的實現。5.1系統實現環境本系統采用的硬件環境與軟件環境如下。1.硬件環境筆記本電腦一臺,運作環境硬件配置表,如表5-1所示。表5-1運作環境硬件配置表硬件配置處理器IntelCorei5以上內存2G以上硬盤空間500G以上2.軟件環境Windows10操作系統,數據庫Myspl,開發工具AndroidStudio、Eclipse。5.2學生用戶的實現5.2.1學生用戶登錄注冊功能該功能的實現主要是從用戶端獲取到對應的用戶信息,此時在App端主要是使用的<EditText>控件來完成獲取用戶所輸入的相關信息,完成Xml布局頁面后,此時就要在RegistActivity中通過XUtils技術獲取對應控件Id,進而創建對應的控件,完成Xml布局頁面的初始化操作。接著就是對應Button控件的點擊事件處理,通過SetOnClickListener方法完成對應的事件邏輯處理,最終通過UserRegist方法實現將App中輸入的數據傳遞到后臺,此時執行的是Http請求,通過將用戶信息通過Request請求傳遞到后臺中,在后臺中進行執行對應的Insert操作,然后將對應的數據插入到數據庫中,從而完成用戶的注冊,學生注冊程序流程圖,如圖5-1所示。圖5-1學生注冊程序流程圖注冊首先輸入用戶名、密碼、手機號、所在學校等信息,查看是否存在重復,重復返回上層,不重復完成注冊。程序運行界面截圖,如圖5-2所示。圖5-2程序運行界面截圖在完成注冊功能后,此時就會直接通過$.startActivity方法跳轉到登錄頁面中,在該頁面中完成登錄功能。在實現登錄功能時,首先也是要創建Activity_login布局頁面,在設計時,主要使用Edittext和Button控件來完成,在完成對應的布局樣式后,在對應的Activiry類中首先要引入對應的控件,完成初始化操作,接著點擊登錄時,通過執行LoginUsers方法將用戶輸入的用戶名和密碼通過Http請求傳遞到后臺中。經過后臺處理后,如果返回的Json數據中的Result為True,則表明用戶信息驗證正確,此時就將用戶的登錄信息存儲到SharedPreferences中,并直接的跳轉到主界面中,完成登錄功能,否則登錄失敗。學生登錄程序流程圖,如圖5-3所示。圖5-3學生登錄程序流程圖首先,輸入手機號、密碼和驗證碼等信息,選擇"學生"按鈕,單擊"登錄",等待驗證,檢查數據庫中是否存在用戶信息,檢查手機號碼是否為重復,檢查密碼在后臺數據庫中是否滿足用戶的相同密碼,并在驗證后,如果重復返回上層,不重復且密碼正確,則完成登錄。登錄成功后直接跳轉至主界面。程序運行界面截圖,如圖5-4所示。圖5-4程序運行界面截圖5.2.2所有課程查看功能登錄成功后,就會進入到主界面中,在主界面中是設計了3個Fragment,其中用戶第一時間看到的頁面就是OneFragment,也就是對應的所有課程的展示頁面。所有課程的展示功能實現,也是先要創建Fragment_one布局頁面,在該頁面中展示的控件是自定義的PullToRefreshListView控件以及頂部使用了Edittext以及Button控件,完成課程對應的搜索功能,通過該控件展示列表數據以及完成對應下拉刷新效果功能。接下來就是實現對應的功能,首先通過GetAllKechengsForApp方法通過Http請求數據庫中的課程數據,并返回ArrayList對象數據,然后通過自定義MyAdapter適配器將對應數據循環顯示完成,在完成初始化后,通過對SetOnRefreshListener方法重寫完成列表的下拉刷新功能,使用SsetOnItemClickListener方法完成單個Iitem列表的點擊事件并進入到詳情頁面KechengDetailsActivity中,通過將對應課程Id通過Intent傳遞,然后從后臺中獲取到對應Id的課程信息,并顯示到頁面上,從而完成課程詳情功能。在課程的詳情頁面中,學生還可以進行課程學習簽到功能以及向對應課程的教師進行提問,并通過InsertAskQuestionByStuForApp方法將其傳遞到后臺中完成數據庫的存儲。查看課程首先點擊查看課程,頁面顯示現在所有課程,下拉刷新,刷新成功顯示新加入課程,刷新失敗顯示原來課程界面。其對應的程序運行界面截圖,如圖5-5所示。圖5-5程序運行界面截圖5.2.3查看作業功能點擊底部導航“作業模塊”后,此時就會直接進入到TwoFragment頁面中,在該頁面中完成對應我的作業查詢操作。該頁面的布局顯示與OneFragment頁面基本上一樣的,也是通過PullToRefreshListView自定義控件來完成的。在事件處理方法中通過GetStuKeHomeworksByStelForApp方法獲取到當前登錄用戶的作業數據通過MyAdapter適配器完成列表數據顯示,以及完成列表刷新以及通過SetOnItemClickListener事件方法和Intent類實現由列表頁跳轉到MyStuKeHomeWorksDetailsActivity作業詳情頁面中,在該類中,通過GetTeaKeHomeworksByHidForApp方法獲取到后臺中的作業詳情信息并在頁面中進行顯示。查看作業功能首先點擊查看課程按鈕,頁面會顯示現在所有的作業,點擊刷新,刷新成功則顯示帶有新發布的作業的全部作業,刷新失敗則只顯示原來作業界面。其對應的程序運行界面截圖,如圖5-6所示。圖5-6程序運行界面截圖5.2.4個人信息管理功能個人信息修改功能實現主要是從UpdatePwdActivity中實現,主要的在于進入到StuUpdateInfoActivity類中,首先通過SharedPreferences類中存儲的用戶登錄名獲取到當前用戶信息,然后再將新的信息封裝到UsersBean類中,通過UpdateStuUserInfo方法實現將對應用戶的信息進行Update操作。其對應的程序運行界面截圖,如圖5-7所示。圖5-7程序運行界面截圖5.3教師模塊功能5.3.1登錄注冊功能教師端也是通過App登錄注冊的,其邏輯實現與學生登錄注冊的原理是差不多的,但是教師在注冊的時候有一個特別之處,那就是選擇對應的擅長教育領域,也就是通過Spinner控件實現的下拉框功能。當教師注冊的時候,要進行選擇對應的擅長領域,最終也是通過封裝到UsersBean類并作為UserRegist方法參數,通過Http請求傳遞到后臺中進行與數據庫中存儲的數據進行對比驗證,如果數據庫中沒有對應的數據,那么表示注冊成功,否則則是注冊失敗。失敗后需要重新開始輸入用戶名、密碼、手機號、所在學校、教學領域等信息。教師注冊程序流程圖,如圖5-8所示。圖5-8教師注冊程序流程圖教師注冊首先輸入用戶名、密碼、手機號、所在學校、教學領域等信息,與學生注冊不同的是,教師擁有教學領域的選擇,選擇自己所教授的領域。之后點擊注冊,查看以上數據是否存在重復,如果重復返回上層,如果不重復完成注冊。其對應的程序運行界面截圖,如圖5-9所示。圖5-9程序運行界面截圖5.3.2查看學生模塊功能當注冊成功后,便可以通過用戶賬號與密碼登錄到app的TeaMainActivity類中,在該頁面中,首先看到的則是對應的學生模塊,也就是查看對應教師的課程的學生選擇情況。首先,該功能再設計時,在Fragment_teaone布局頁面中,使用的是ListView控件,接著通過GetMySelectKeStusByTtelForApp方法,從后臺數據庫中查詢出對應課程的學生列表數據,并賦值到對應的List集合中,最后通過適配器適配到ListView控件中,完成數據的初始化操作。完成數據的初始化操作后,接下來就是通過下拉選擇對應的課程然后匹配對應的學生信息,此時也是通過是Spinner控件實現的,通過點擊對應的課程信息賦值到FnameStr變量中,然后通過GetTeaStusByKechengsByTeaForApp方法從后臺查詢出對應課程信息的學生數據,然后賦值到對應的ListView控件上,從而完成對應的功能。教師點擊課程界面,顯示課程簡介和所選課程的學生,可下拉刷新,查看該課程是否有人選擇,刷新成功顯示所有選課學生,刷新失敗則顯示無學生選課。其對應的程序運行界面截圖,如圖5-10所示。圖5-10程序運行界面截圖5.3.3作業模塊管理功能點擊底部導航中的作業模塊后,便進入到ZTeaTwoFragment頁面中,在該頁面中主要實現的功能是查看對應課程的作業信息、發布作業信息以及通過下拉選擇對應的課程查看對應該課程下的作業信息。首先是通過GetAllTeaKeHomeworksByTtelForApp方法查詢出對應登錄教師發布的其對應作業信息,然后通過適配器適配到ListView上,完成數據的初始化操作。接下來就是通過下拉選擇對應的課程然后匹配對應的作業信息,通過點擊對應的課程信息賦值FnameStr變量中,然后通過從后臺查詢出對應課程信息的作業數據,然后賦值到對應的ListView控件上,從而完成對應的功能。接著就是點擊添加作業按鈕后,通過執行BtnAddKesHwSearch控件的點擊事件,直接的跳轉到TeaAddKesHomeworksActivity類,完成對應的課程作業的上傳功能。教師點擊預留課程作業,顯示編輯頁面選擇課程、作業簡介、作業內容,點擊添加按鈕,添加成功自動退出,添加失敗顯示添加失敗。此時程序運行界面截圖,如圖5-11所示。圖5-11程序運行界面截圖5.3.4學生成績管理功能查看學生的成績是在個人中心模塊中,點擊查看學生成績后,便進入到MyStuChengjisActivity類中,并通過GetStuChengjisByTtelForApp方法查詢出選擇該教師課程的學生信息。當需要刪除學生成績時,就可以直接通過長按方法中的DeleteStuGradesByGidForApp方法,直接將對應數據庫中的學生成績從數據庫中進行刪除。刪除學生成績程序流程圖,如圖5-12所示。圖5-12刪除學生成績程序流程圖點擊查看學生成績后,顯示該教師課程的學生信息。當需要刪除對應的學生成績時,此時就可以直接通過長按,直接將對應數據庫中的學生成績從數據庫中進行刪除。其對應的程序運行界面截圖,如圖5-13所示。圖5-13程序運行界面截圖5.3.5個人信息管理功能個人信息修改功能實現主要是從UpdatePwdActivity中實現,其功能主要是與注冊功能是相似的,主要的差別就是在于,進入到TeaUpdateInfoActivity類中,首先需要通過SharedPreferences類中的存儲的用戶的登錄名獲取到當前的用戶信息,然后再將新的用戶信息封裝到UsersBean類中,通過UpdateTeaUserInfo方法就可以實現完成將對應的用戶的信息進行Update操作。而教師的個人信息修改比學生的多了幾項,在代碼方面也相對變長,但基本相同。教師修改信息程序流程圖,如圖5-14所示。YYNN圖5-14修改信息程序流程圖在教師的個人信息修改中,首先輸入需要修改的用戶名、密碼、身份證號、手機號、所在學校等信息,當然教師的教學領域一旦選擇就無法更改,然后驗證所填寫的信息是否與數據庫中已經存在的信息存在重復,如果驗證所填寫的信息與原來數據庫中已經存在的信息重復就返回上層,重新修改信息或退出,如果驗證所填寫的信息與原來數據庫中已經存在的信息不重復,則完成修改并系統自動退出登錄,重新登錄。其對應的程序運行界面截圖,如圖5-15所示。圖5-15程序運行界面截圖5.4管理員模塊功能5.4.1登錄功能該登錄功能的實現最開始管理員的手機號和密碼都已在代碼中設計完成,所以可以通過GoLogin方法直接進行驗證登錄,如果驗證正確,則管理員登錄成功,否則管理員登錄失敗。管理員登錄程序流程圖,如圖5-16所示。圖5-16管理員登錄程序流程圖后臺登錄首先需要管理員輸入手機號和密碼,然后通過身份驗證進行驗證登錄,如果驗證正確,則登錄成功,否則登錄失敗。其對應的程序運行界面截圖,如圖5-17所示。圖5-17程序運行界面截圖5.4.2學生管理功能點擊左側菜單中的學生管理功能后,此時執行GetAllStusListPage.do對應的Action,在該類中,首先通過FindAll方法獲取到當前數據庫中所有的學生信息,并通過Request對象傳遞到前臺Jsp頁面上,最后通過For循環形式在頁面上進行顯示完成。點擊刪除按鈕后,此時首先要獲取到對應用戶的Id,然后通過該Id執行DeleteStusById方法,將對應Stus表中的Id進行刪除,從而完成刪除操作。點擊左側菜單中的學生管理功能后,就可以看到當前數據庫中所有的學生信息,點擊刪除按鈕后,顯示是否刪除,刪除成功就沒有該學生信息,失敗則該學生信息還存在。對應的程序運行界面截圖,如圖5-18所示。圖5-18程序運行界面截圖5.4.3教師管理功能教師管理的功能設計與學生管理的邏輯是相似的,這里重點闡述教師信息的模塊查詢功能。通過教師姓名來查詢對應的教師信息,需要從兩部分進行設計。首先是在Jsp頁面中進行輸入框和Button控件布局頁面,當頁面布局完成,接著就是通過Button控件的點擊事件完成獲取輸入框中的教師姓名關鍵字,然后通過Http請求傳遞到后臺中的SelectAllTeasKeByTname方法,在該方法方法中,最終是通過FindTeasByTname方法完成教師姓名的模糊查詢操作。查詢教師程序流程圖,如圖5-19所示。圖5-19查詢教師程序流程圖通過教師姓名來查詢對應的教師信息,點擊教師姓名輸入框后,輸入查找教師姓名的關鍵字,用來完成教師姓名的模糊查詢操作,如果查詢結果成功,則下方會顯示該教師的全部信息,如果查詢結果失敗,則下方顯示查詢結果為空,可以重新查詢。對應的程序運行界面截圖,如圖5-20所示。圖5-20程序運行界面截圖5.4.4課程管理功能點擊左側課程管理,就會進入到KechengssList頁面中,通過FindAll方法獲取到對應的所有的課程信息,這里重點說一下課程的審核功能的設計。這里主要設計了兩個方法,分別是ShenheKechengsById和NoshenheKechengsById,通過Jsp頁面的不同的點擊事件直接調用對應的后臺方法,完成對課程的審核成功和審核失敗的操作。審核課程程序流程圖,如圖5-21所示。圖5-21審核課程程序流程圖點擊左側課程管理,通過不同的點擊事件直接調用對應的后臺方法,完成對課程的審核成功和審核失敗的操作。其對應的程序運行界面截圖,如圖5-22所示。圖5-22程序運行界面截圖本章小結本章首先闡述系統的所有功能模塊,并詳細說明了每一個功能模塊所涉及到的界面設計和程序流程。其次通過本章節的介紹可以讀者了解系統的操作流程和程序流程,并能夠進一步的了解到系統各功能模塊的相關信息。最后可以看出該系統是可以實現的,并且主要功能都已經完成,其中包括管理員模塊,學生模塊和教師模塊,都已不同方式完成。
第6章系統測試軟件系統測試是軟件設計的保障。它用于檢查軟件的質量、性能、可靠性等要求是否符合用戶需求。完善的測試過程將大大提高軟件的安全,降低軟件的故障。對系統進行全方位的檢測,將系統的Bug在這一階段盡可能的找出來,以保證系統的穩定性。6.1系統測試目的在進行軟件開發的過程中的時候,可能因為或多或少的原因都將會在系統中留下一定的問題,如Sql注入問題的存在,該問題對于一般的數據都使得程序是正常運行的,但是此時的程序是存在的潛在的問題的,該問題不是通過一般數據進行測試出來的,但是對于像特殊數據一旦被刻意攻入的話,將會造成系統的癱瘓,對于這樣的問題或者漏洞在程序的開發中是很容易出現的,特別是對于開發程序經驗不足的程序員來說的是避免不了的,因此在程序開發完成后,必須要進行充分的測試,以免程序中出現嚴重的問題。6.2測試方法在對該系統的測試的時候,主要測試的是對于該系統的Bug測試和對應的業務流程的測試,在測試的時候,首先采用的是整體測試,主要測試的是否存在Bug,以及對應的整個系統中在運行的而過程中,是否存在業務流程行不通的問題等,在整體測試沒有問題的清苦下,進行局部測試,在進行局部測試的時候,主要采用的是黑盒測試。6.3本系統測試6.3.1測試計劃因為本系統是基于安卓平臺的金課管理系統,所以在測試是要分為兩部分,一部分是電腦端的后臺測試和管理員測試,另一部分是手機端上的學生端和教師端的測試,本系統功能較多,測試時要注意相關功能和有可能出現的相關問題。測試計劃進度表,如表6-1所示。表6-1測試計劃進度表序號測試活動周期開始時間結束時間實施者1后臺測試4個工作日2019.11.092019.11
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 怎管理企業文化培訓
- 2025年車間職工安全培訓考試試題答案考試直接用
- 25年公司安全管理員安全培訓考試試題附參考答案【培優B卷】
- 開平初一中段試卷及答案
- 教培店長培訓系列
- 護士崗前培訓心得體會匯報
- 旅游行業培訓部工作職責指南
- 環境友好的英語教學計劃
- 勞動合同法下的職工企業培訓
- 人教版數學二次函數單元綜合性學習計劃
- 有理數的加法說課課件2024-2025學年人教版數學七年級上冊
- GB/T 18655-2025車輛、船和內燃機無線電騷擾特性用于保護車載接收機的限值和測量方法
- 2025年江蘇南通蘇北七市高三二模語文作文分析
- 吉林省吉林市2024-2025學年高三下學期3月三模試題 生物 含答案
- 遼寧省協作校2024-2025學年度下學期高三第一次模擬考試語文+答案
- 2025年03月中央社會工作部所屬事業單位公開招聘11人筆試歷年參考題庫考點剖析附解題思路及答案詳解
- 2025年中高端女裝市場趨勢與前景深度分析
- 2025北京清華附中高三(下)統練一數學(教師版)
- 重慶市南開中學高2025屆高三第七次質量檢測化學試題及答案
- 華能霞浦核電限公司2025年上半年應屆畢業生招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 2025春人教版歷史七年級下冊《第一單元 隋唐時期 繁榮與開放的時代》大單元整體教學設計2022課標
評論
0/150
提交評論