MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)_第1頁
MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)_第2頁
MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)_第3頁
MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)_第4頁
MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄摘要:1Abstract:21 緒論31.1 系統(tǒng)的研究背景31.2 系統(tǒng)的研究目標(biāo)31.3 MVC概述31.3.1 MVC簡(jiǎn)介31.3.2 MVC的優(yōu)點(diǎn)41.3.3 JSP+Servlet+JavaBean技術(shù)簡(jiǎn)介42 系統(tǒng)規(guī)劃42.1 需求分析52.1.1 系統(tǒng)功能概述52.1.2 需求分析的方法簡(jiǎn)介52.1.3 用例圖描述72.1.4 系統(tǒng)活動(dòng)描述102.1.5 非功能性需求112.2 可行性分析112.2.1 開發(fā)的必要性122.2.2 開發(fā)的可能性123 系統(tǒng)分析123.1業(yè)務(wù)流程分析123.3 數(shù)據(jù)流程分析134 系統(tǒng)設(shè)計(jì)164.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)164.2 數(shù)據(jù)庫設(shè)計(jì)185系統(tǒng)

2、主要功能的實(shí)現(xiàn)錯(cuò)誤!未定義書簽。5.1 登錄和個(gè)人信息維護(hù)的實(shí)現(xiàn)205. 2學(xué)生功能頁面的實(shí)現(xiàn)245. 3教師功能頁面的實(shí)現(xiàn)26結(jié)論28謝辭29參考文獻(xiàn)30基于MVC架構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘要: 近年來,由于高校在校人數(shù)的增多以及對(duì)學(xué)生信息統(tǒng)一管理的需要,學(xué)生選課面臨著巨大的工作量。學(xué)校每學(xué)期的學(xué)生選課都需要進(jìn)行綜合統(tǒng)計(jì),但是每次的選課工作都是人工收集和統(tǒng)計(jì)選票,這樣既花費(fèi)大量的時(shí)間,還容易出現(xiàn)誤差。為解決這些問題,本文設(shè)計(jì)了一個(gè)基于MVC架構(gòu)的網(wǎng)上選課系統(tǒng),實(shí)現(xiàn)學(xué)生選課的計(jì)算機(jī)化,這樣不僅處理效率高,而且能夠避免出錯(cuò)。本文首先對(duì)MVC進(jìn)行了簡(jiǎn)要的描述,說明了使用MVC的優(yōu)越之處;之后

3、通過用例圖和活動(dòng)圖對(duì)系統(tǒng)進(jìn)行需求分析,并闡述了本系統(tǒng)實(shí)施的可行性;在系統(tǒng)分析過程中,在分析了本系統(tǒng)的業(yè)務(wù)流程;然后進(jìn)行系統(tǒng)設(shè)計(jì),設(shè)計(jì)出本系統(tǒng)的總體結(jié)構(gòu)和后臺(tái)數(shù)據(jù)庫;最后說明了如何實(shí)現(xiàn)本系統(tǒng)的各功能模塊的用戶體驗(yàn),并由上述一系列的分析得出本系統(tǒng)的結(jié)論。關(guān)鍵詞: MVC;網(wǎng)上選課;用例圖;活動(dòng)圖Abstract:In recent years, with the increase of students in university and the necessary of Unified management of students information, selecting course fo

4、r student is facing giant work load. Every semester selecting for student needs to carry on the synthesis statistic in university, however, each selection is collecting and counting voting through manual work which not only spends massive time, but also present errors easily. In order to solve these

5、 problems, this paper designs a on-line course selcection management which based on MVC ,and realizes computerizable course selection for student which not only has high processing efficiency, but also can avoid mistakes. Firstly, this paper describes MVC briefly, and shows the advantage of using MV

6、C; then we analyze system demand with the Use Case Diagram and Activity Diagram, and explain the feasibility of this systems implementation; in the process of analysis, we obtain the meliorative operation flow after analyzing the limitation of traditional synthesis evaluation operation flow; afterwa

7、rd we put up system design, and design the gross structure and Database of this system; finally this paper shows how to experience to users in every function module of this system, and draws the conclusion by a series of analysis above.Keywords: MVC ; on-line course selection; Use Case Diagram ;Acti

8、vity Diagram1 緒論1.1 系統(tǒng)的研究背景學(xué)校使用人工的方式管理學(xué)生選課信息,效率低、保密性差,隨著計(jì)算機(jī)和網(wǎng)絡(luò)技術(shù)的發(fā)展,使用計(jì)算機(jī)來管理學(xué)生的選課信息已經(jīng)成為發(fā)展趨勢(shì)。網(wǎng)上選課系統(tǒng),能為使用者提供充足的信息和快捷的查詢手段,提高了選課的效率和靈活性,節(jié)省了大量的時(shí)間和人力,同時(shí)也為課程的信息化管理提供了有效的工具,對(duì)提高教學(xué)工作效率和完善教學(xué)管理能起到非常重要的作用。基于MVC架構(gòu)采用JSP+Servlet+JavaBean和SQL Server2000相結(jié)合的網(wǎng)上選課系統(tǒng),能較安全,快捷的實(shí)現(xiàn)網(wǎng)上選課功能。1.2 系統(tǒng)的研究目標(biāo)開發(fā)高校學(xué)生網(wǎng)上選課系統(tǒng)的目標(biāo)是為了方便學(xué)生的選

9、課操作、教師的評(píng)選操作,提高選課的效率和靈活性,實(shí)現(xiàn)對(duì)選課數(shù)據(jù)進(jìn)行統(tǒng)一的管理,較易維護(hù)。1.3 MVC概述1.3.1 MVC簡(jiǎn)介為了能有效的控制開發(fā), MVC模式成為分析和設(shè)計(jì)Web應(yīng)用程序最常用的模式, 它為軟件的分層及實(shí)現(xiàn)提供了一種穩(wěn)定而成熟的結(jié)構(gòu)方案和開發(fā)方法。MVC是英文Model、View、Controller的縮寫,它不是一種技術(shù),而是一種系統(tǒng)框架。MVC包含:a.模型(Model)代表企業(yè)數(shù)據(jù)和業(yè)務(wù)規(guī)則,用來控制訪問和數(shù)據(jù)更新;b.視圖(View)代表模型的內(nèi)容,它通過模型訪問企業(yè)數(shù)據(jù)并指定這些數(shù)據(jù)的顯示。視圖負(fù)責(zé)模型狀態(tài)改變后呈現(xiàn)給用戶的數(shù)據(jù)也相應(yīng)改變; c.控制(Contro

10、ller)把與視圖交互轉(zhuǎn)化成模型執(zhí)行的動(dòng)作。 1.3.2 MVC的優(yōu)點(diǎn)MVC架構(gòu)有如下優(yōu)點(diǎn):a. 多視圖使用同一模型。模型與視圖分離允許多視圖使用同一企業(yè)模型。b. 容易支持新類型的客戶端。支持一個(gè)新類型的客戶端,只需寫一個(gè)視圖和控制,然后把它連接到現(xiàn)存的企業(yè)模型中。c. 有利于開發(fā)中的分工。在MVC模式中,由于按層把系統(tǒng)開,那么就能更好的實(shí)現(xiàn)開發(fā)中的分工。網(wǎng)頁設(shè)計(jì)人員可以進(jìn)行開發(fā)視圖層中的JSP,對(duì)業(yè)務(wù)熟悉的開發(fā)人員可開發(fā)業(yè)務(wù)層JavaBean,而其它開發(fā)人員可開發(fā)控制層Servlet。 d. 有利于組件的重用。分層后更有利于組件的重用。如控制層可獨(dú)立成一個(gè)能用的組件,視圖層也可做成通用的操

11、作界面。1.3.3 JSP+Servlet+JavaBean技術(shù)簡(jiǎn)介JSP是一種實(shí)現(xiàn)普通靜態(tài)HTML和動(dòng)態(tài)HTML混合編碼的技術(shù)。JSP設(shè)計(jì)的目的在于簡(jiǎn)化表示層的表示。在JSP中編寫靜態(tài)的HTML更加方便,不必再用Println語句來輸出每一行HTML代碼。更重要的是借助內(nèi)容和外觀的分離,頁面制作中不同性質(zhì)的任務(wù)可以方便地分開。Servlet是一種獨(dú)立于操作系統(tǒng)平臺(tái)和網(wǎng)絡(luò)傳輸協(xié)議的服務(wù)器端的Java應(yīng)用程序,它用來擴(kuò)展服務(wù)器的功能,可以生成動(dòng)態(tài)的Web頁面。Servlet與傳統(tǒng)Java應(yīng)用程序最大的不同在于:它不是從命令行啟動(dòng)的,而是由包含Java虛擬機(jī)的Web服務(wù)器進(jìn)行加載。它最大的用途是通

12、過動(dòng)態(tài)響應(yīng)客戶機(jī)請(qǐng)求來擴(kuò)展服務(wù)器功能。其基本的工作流程如下:a. 客戶機(jī)將請(qǐng)求發(fā)送到服務(wù)器。b. 服務(wù)器上的Web容器實(shí)例化(裝入)Servlet,并為Servlet進(jìn)程創(chuàng)建線程。JavaBean組件是一些可移植、可重用,并可以組裝到應(yīng)用程序中的Java類??梢酝ㄟ^在JavaBean中封裝事務(wù)邏輯、數(shù)據(jù)庫操作等,然后將JavaBean與JSP語言元素一起使用,可以很好地實(shí)現(xiàn)后臺(tái)業(yè)務(wù)邏輯和前臺(tái)邏輯的分離,使得JSP頁面更加可讀、以維護(hù)。2 系統(tǒng)規(guī)劃2.1 需求分析2.1.1 系統(tǒng)功能概述基于項(xiàng)目的總體規(guī)劃,可以將本系統(tǒng)劃分為以下4個(gè)模塊:用戶登陸模塊:負(fù)責(zé)驗(yàn)證系統(tǒng)中各級(jí)別用戶的登錄信息。并根據(jù)登

13、陸用戶的不同級(jí)別轉(zhuǎn)向不同的頁面。學(xué)生功能模塊:負(fù)責(zé)學(xué)生的選課、查看課程成績(jī)和更改學(xué)生信息的操作。教師功能模塊:負(fù)責(zé)審批學(xué)生選課、公布學(xué)生成績(jī)和更改學(xué)生信息的操作。管理員功能模塊:負(fù)責(zé)課程、班級(jí)和學(xué)生信息的添加、修改和刪除等維護(hù)操作。其中,用戶登陸模塊中涉及到用戶身份級(jí)別的處理:不同身份的用戶對(duì)系統(tǒng)的使用權(quán)限有所不同。系統(tǒng)管理員登錄后可以對(duì)學(xué)生、教師,課程、班級(jí)等系統(tǒng)信息進(jìn)行管理和維護(hù),教師登陸后可以查看學(xué)生選課情況并給出所帶學(xué)生課程成績(jī),學(xué)生登錄后可以進(jìn)行選課并查看自己某門課程的成績(jī)。在功能實(shí)現(xiàn)方面,基于MVC的思想,用JSP實(shí)現(xiàn)系統(tǒng)的首頁,提供用戶登錄信息輸入接口;Servlet實(shí)現(xiàn)驗(yàn)證用戶

14、登陸信息(若正確則根據(jù)用戶級(jí)別轉(zhuǎn)向不同的頁面);JavaBean實(shí)現(xiàn)負(fù)責(zé)整個(gè)系統(tǒng)與數(shù)據(jù)庫的連接和關(guān)閉操作。學(xué)生登錄模塊功能分析:學(xué)生登錄以后,可以選報(bào)課程:系統(tǒng)會(huì)根據(jù)學(xué)生所在系及課程的先修課列出該生滿足選報(bào)條件的課程;可以查看自己的成績(jī),包括該生每門課程的名稱、學(xué)分以及總學(xué)分。如果教師還未給出成績(jī),則系統(tǒng)會(huì)有相關(guān)提示;可以更改自己的個(gè)人信息,包括密碼、電話號(hào)碼,其中要求密碼不能為空。在功能實(shí)現(xiàn)方面,基于MVC的思想,用JSP實(shí)現(xiàn)學(xué)生登陸成功后顯示的功能頁面以及相關(guān)信息查詢、更新學(xué)生注冊(cè)信息頁面;Servlet實(shí)現(xiàn)學(xué)生選課和查看成績(jī)等操作;JavaBean實(shí)現(xiàn)學(xué)生選擇課程。教師登錄模塊功能分析:

15、教師登陸以后,可以對(duì)學(xué)生選課申請(qǐng)進(jìn)行審核,以及給自己所帶的學(xué)生進(jìn)行打分。教師可以查看有哪些學(xué)生選擇了自己所教授的課程,其中系統(tǒng)列出了該教師所帶課程的班級(jí)以及選報(bào)了該課程的所有學(xué)生信息,當(dāng)該課程結(jié)束時(shí)教師可以給出所有選擇該課程學(xué)生的成績(jī),此時(shí)系統(tǒng)會(huì)分析教師的輸入是否符合要求(即是否為阿拉伯?dāng)?shù)字),否則系統(tǒng)提示相關(guān)錯(cuò)誤信息。當(dāng)教師給出了學(xué)生某門課程的成績(jī)之后,系統(tǒng)會(huì)根據(jù)成績(jī)來判斷該生是否通過了該課程,如果該成績(jī)大于或等于60分,則在該生的學(xué)分上加上該課程的學(xué)分。在功能實(shí)現(xiàn)方面,基于MVC的思想,用JSP實(shí)現(xiàn)教師登陸成功后顯示的功能頁面以及查看相關(guān)信息、給學(xué)生打分的頁面;Servlet實(shí)現(xiàn)執(zhí)行批準(zhǔn)學(xué)

16、生選課和給學(xué)生打分等操作;JavaBean實(shí)現(xiàn)批準(zhǔn)學(xué)生選課和打分等邏輯方法。 管理員模塊功能分析:管理員在本系統(tǒng)中擁有最高權(quán)限,可以對(duì)學(xué)生、教師、課程、班級(jí)等信息進(jìn)行管理和維護(hù)。其中在班級(jí)管理系統(tǒng)中“新增班級(jí)”是該模塊的關(guān)鍵環(huán)節(jié),其中班級(jí)號(hào)不能為空且輸入的班級(jí)號(hào)未曾注冊(cè),同時(shí)還要保證同一教師不能在同一時(shí)間上兩門課程,否則系統(tǒng)提示相關(guān)錯(cuò)誤信息。在功能實(shí)現(xiàn)方面,基于MVC的思想,用JSP實(shí)現(xiàn)管理員成功登陸后的功能頁面、以及添加、查看、更新相關(guān)信息的頁面;Servlet實(shí)現(xiàn)執(zhí)行添加、刪除、修改班級(jí)信息、課程信息、學(xué)生信息、教師信息等操作;JavaBean實(shí)現(xiàn)封裝關(guān)于班級(jí)信息、課程信息、學(xué)生信息、教師

17、信息的業(yè)務(wù)邏輯方法。2.1.2 需求分析的方法簡(jiǎn)介本系統(tǒng)采用例驅(qū)動(dòng)的分析方法進(jìn)行需求分析。下面簡(jiǎn)要介紹一下此方法:UML(統(tǒng)一建模語言,Unified Modeling Language)是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的可視化建模語言。它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程。用例建模是UML建模的一部分,也是UML里最基礎(chǔ)的部分。用例建模的最主要功能就是用來表達(dá)系統(tǒng)的功能性需求或行為。用例建??煞譃橛美龍D和用例描述。用例圖由參與者(Actor)、用例(Use Case)、系統(tǒng)邊界、箭頭組成,用

18、畫圖的方法來完成。用例描述用來詳細(xì)描述用例圖中每個(gè)用例,用文本文檔來完成?;顒?dòng)圖是UML的另一個(gè)組成部分,活動(dòng)圖描述了滿足用例要求所要進(jìn)行的活動(dòng)以及活動(dòng)間的約束關(guān)系,活動(dòng)圖有利于識(shí)別并發(fā)活動(dòng)。在進(jìn)行用例建模的同時(shí)可以輔以活動(dòng)圖進(jìn)行詳細(xì)說明系統(tǒng)所進(jìn)行的并發(fā)活動(dòng)。當(dāng)用例圖和活動(dòng)圖結(jié)合起來時(shí),系統(tǒng)的功能性需求就能夠被完整地表達(dá)出來,并且簡(jiǎn)單明了。2.1.3 用例圖描述采用用例驅(qū)動(dòng)方法分析需求,首先識(shí)別出系統(tǒng)的參與者主要有系統(tǒng)管理員、教師和學(xué)生,每一種參與者都有不同的權(quán)限,其中系統(tǒng)管理員權(quán)限最大,負(fù)責(zé)整個(gè)系統(tǒng)的維護(hù)。下面就對(duì)整個(gè)系統(tǒng)建立用例模型來表達(dá)需求:1. 系統(tǒng)管理員:主要負(fù)責(zé)對(duì)教師、學(xué)生、班級(jí)、

19、課程的信息進(jìn)行維護(hù)等。 圖2.1 用例圖系統(tǒng)管理員對(duì)以上用例圖中的用例進(jìn)一步描述如下:a. 添加學(xué)生:錄入學(xué)生的基本信息,并設(shè)置初始密碼。b. 刪除學(xué)生:對(duì)于已畢業(yè)或不其他情況不屬于本學(xué)校的學(xué)生信息進(jìn)行刪 除操作。c. 修改學(xué)生:對(duì)學(xué)生的信息有誤之處進(jìn)行修改。d. 添加教師:錄入教師的基本信息,并設(shè)置初始密碼。e. 刪除學(xué)生:對(duì)于已退休或不其他情況不屬于本學(xué)校的教師信息進(jìn)行刪 除操作。f. 修改教師:對(duì)教師的信息有誤之處進(jìn)行修改。g. 添加班級(jí):錄入班級(jí)的基本信息。h. 刪除班級(jí):對(duì)于已不開設(shè)的班級(jí)信息進(jìn)行刪除操作。i. 修改班級(jí):對(duì)班級(jí)的信息有誤之處進(jìn)行修改。j. 添加課程:錄入課程的基本信

20、息。k. 刪除課程:對(duì)于已不開設(shè)的課程信息進(jìn)行刪除操作。l. 修改課程:對(duì)課程的信息有誤之處進(jìn)行修改。2. 學(xué)生:從系統(tǒng)管理員處獲得密碼進(jìn)入系統(tǒng),主要完成選修課程、查看學(xué)分、更改信息等。其用例圖如下:圖2.2 用例圖學(xué)生對(duì)以上用例圖中的用例進(jìn)一步描述如下:a. 選修課程:學(xué)生登錄進(jìn)入系統(tǒng)之后可以選修自己的喜歡的課程。b. 查看學(xué)分:系統(tǒng)根據(jù)學(xué)生信息列出該生的課程學(xué)分及總學(xué)分。c. 更改信息:學(xué)生登陸進(jìn)入該功能頁面后,可以修改密碼以及其他個(gè)人信息。3. 教師:主要完成挑選學(xué)生及公布成績(jī)等功能。其用例圖如下:圖2.3 用例圖教師對(duì)以上用例圖中的用例進(jìn)一步描述如下:a. 挑選學(xué)生:登陸系統(tǒng)后,進(jìn)入挑

21、選學(xué)生的功能頁面,根據(jù)選修該課程的情況,挑選并批準(zhǔn)學(xué)生選課。b. 公布成績(jī):對(duì)于選修該課程的學(xué)生給出成績(jī)。2.1.4 系統(tǒng)活動(dòng)描述1學(xué)生選課的活動(dòng)描述圖2.5 活動(dòng)圖學(xué)生選課學(xué)生登陸以后,可以選報(bào)課程,系統(tǒng)會(huì)根據(jù)學(xué)生在系及課程的先修課等信息來判斷學(xué)生是否具備條件,如果具備條件,學(xué)生可以注冊(cè)課程進(jìn)行選報(bào);教師根據(jù)提交的選報(bào)該課程的學(xué)生信息情況進(jìn)行審核及挑選,最后在結(jié)束該課程時(shí)給出所有學(xué)生的成績(jī)。2管理員對(duì)各種信息進(jìn)行維護(hù)的活動(dòng)描述管理員登陸以后,可以對(duì)學(xué)生、教師信息進(jìn)行添加、修改和刪除等操作,并將結(jié)果保存在數(shù)據(jù)庫中。圖2.6 活動(dòng)圖信息維護(hù)以管理員身份登錄后,管理員負(fù)責(zé)對(duì)學(xué)生、教師、課程、班級(jí)的

22、信息進(jìn)行管理及維護(hù),管理員對(duì)于畢業(yè)或其他原因不屬于本校的學(xué)生信息進(jìn)行刪除,對(duì)于錄入有誤的學(xué)生信息進(jìn)行更新,同時(shí)對(duì)于新增的學(xué)生進(jìn)行信息增添;對(duì)于退休或其他原因不屬于本校的教師信息進(jìn)行刪除,對(duì)于錄入有誤的教師信息進(jìn)行更新,同時(shí)對(duì)于新增的教師進(jìn)行信息增添。2.1.5 非功能性需求學(xué)生網(wǎng)上選課系統(tǒng)的非功能性需求如下:1. 使用簡(jiǎn)單。用戶使用單一的Browser軟件(如微軟公司的Internet Explorer 簡(jiǎn)稱IE 和網(wǎng)景公司的Net scape Navigator) ,通過鼠標(biāo)即可訪問數(shù)據(jù)信息。2. 易于維護(hù)。用戶端無需專用軟件, 系統(tǒng)的維護(hù)工作簡(jiǎn)單。3. 信息共享度高。實(shí)現(xiàn)系統(tǒng)內(nèi)的信息傳遞,

23、加快運(yùn)轉(zhuǎn)速度。4. 擴(kuò)展性好。可直接接入Intranet 和Internet , 具有良好的擴(kuò)展性。5. 可在局域網(wǎng)或廣域網(wǎng)上運(yùn)行。2.2 可行性分析在網(wǎng)上選課系統(tǒng)的目標(biāo)及需求確定之后,就可以對(duì)這個(gè)系統(tǒng)的可行性進(jìn)行分析,從該系統(tǒng)開發(fā)的必要性和可能性兩個(gè)方面進(jìn)行討論。2.2.1 開發(fā)的必要性隨著計(jì)算機(jī)應(yīng)用的不斷深入,信息產(chǎn)業(yè)的興起,互聯(lián)網(wǎng)的發(fā)展及應(yīng)用,網(wǎng)上辦公的作用日益明顯。各行各業(yè)幾乎都與計(jì)算機(jī)都有密切的聯(lián)系,都實(shí)現(xiàn)了不同程度的自動(dòng)化操作。網(wǎng)上選課系統(tǒng)對(duì)學(xué)生選修課程進(jìn)行了規(guī)范、科學(xué)的設(shè)計(jì),快捷有效地實(shí)現(xiàn)了學(xué)生對(duì)課程的選修。同時(shí),該系統(tǒng)也錄入了學(xué)生、教師、課程等的基本信息,可以為學(xué)校的管理帶來方

24、便。2.2.2 開發(fā)的可能性1. 技術(shù)可行性:使用現(xiàn)如今已經(jīng)成熟的MVC架構(gòu),系統(tǒng)數(shù)據(jù)庫選擇SQL Server2000 ,在系統(tǒng)中的核心部分使用Servlet+JavaBean技術(shù),實(shí)現(xiàn)JSP+Servlet+JavaBean和SQL Server 2000的有機(jī)集合。2. 經(jīng)濟(jì)可行性:開發(fā)高校學(xué)生的網(wǎng)上選課系統(tǒng)屬于高校的信息化建設(shè),開發(fā)過程所需要的經(jīng)濟(jì)費(fèi)用是極其少的,在使用過程中也只需要瀏覽器的支持,其他環(huán)節(jié)并不涉及到經(jīng)濟(jì)問題,所以其在經(jīng)濟(jì)上是非常可行的,可以使整個(gè)選課的管理更高效快捷。3. 社會(huì)可行性:學(xué)校的各級(jí)人員都對(duì)學(xué)校的信息化建設(shè)持支持的態(tài)度,并積極地為信息化建設(shè)的開展而做自己能做

25、的事;學(xué)校的組織管理制度已經(jīng)非常成熟,暫時(shí)不會(huì)有大的變動(dòng);學(xué)校的工作人員文化水平都相對(duì)較高,這對(duì)信息化建設(shè)是非常有利的。3 系統(tǒng)分析3.1業(yè)務(wù)流程分析通過調(diào)查,以滁州學(xué)院計(jì)算機(jī)系為例,可以分析學(xué)生網(wǎng)上選課的整個(gè)過程,得到如圖3-1的業(yè)務(wù)流程圖:圖3.1網(wǎng)上選課系統(tǒng)的業(yè)務(wù)流程圖a. 系統(tǒng)管理員對(duì)學(xué)生、教師、課程、班級(jí)信息進(jìn)行管理和維護(hù)并存入系統(tǒng)數(shù)據(jù)庫。b. 學(xué)生對(duì)選修的課程進(jìn)行注冊(cè)、修改個(gè)人的信息并存入數(shù)據(jù)庫,同時(shí)學(xué)生可以查看自己的課程學(xué)分情況,這些信息當(dāng)被查看時(shí)自動(dòng)以列表形式顯示給學(xué)生。c. 教師在系統(tǒng)中對(duì)選報(bào)其所帶課程的學(xué)生進(jìn)行審核并對(duì)修完所帶課程的學(xué)生進(jìn)行打分,系統(tǒng)自動(dòng)根據(jù)該教師所帶班級(jí)及

26、課程信息列出選報(bào)并需審核的學(xué)生信息,在公布成績(jī)時(shí),系統(tǒng)自動(dòng)根據(jù)該教師所帶班級(jí)及課程信息列出選報(bào)并需打分的學(xué)生信息,并要求其輸入需符合要求,否則系統(tǒng)給出錯(cuò)誤信息提示,有效地避免了輸入錯(cuò)誤的產(chǎn)生。d. 系統(tǒng)根據(jù)教師給學(xué)生的成績(jī)自動(dòng)在該生的原始學(xué)分上加分并計(jì)算出其總學(xué)分,同時(shí)將結(jié)果存入系統(tǒng)數(shù)據(jù)庫,從而避免了大量的手工輸入工作量以及會(huì)產(chǎn)生的失誤。3.3 數(shù)據(jù)流程分析由圖3-1中的業(yè)務(wù)流程圖,可以得到本網(wǎng)上選課系統(tǒng)的數(shù)據(jù)流程圖,如圖3-3所示:圖3.2 網(wǎng)上選課系統(tǒng)的數(shù)據(jù)流程圖4 系統(tǒng)設(shè)計(jì)4.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)通過對(duì)業(yè)務(wù)流程的分析以及業(yè)務(wù)流程的改造,結(jié)合現(xiàn)實(shí)情況,可以設(shè)計(jì)出整個(gè)學(xué)生網(wǎng)上選課系統(tǒng)的總體結(jié)構(gòu)。

27、由于本系統(tǒng)存在三種不同權(quán)限的用戶,每種權(quán)限的用戶進(jìn)入系統(tǒng)后是其權(quán)限對(duì)應(yīng)的不同頁面,所以在進(jìn)行系統(tǒng)結(jié)構(gòu)設(shè)計(jì)時(shí)要分別考慮。1. 系統(tǒng)管理員的頁面結(jié)構(gòu)設(shè)計(jì) 圖4.1 系統(tǒng)管理員頁面的結(jié)構(gòu)圖系統(tǒng)管理員有四個(gè)模塊可以操作,分別是學(xué)生信息管理模塊、教師信息管理模塊、課程信息管理模塊和班級(jí)信息管理模塊。學(xué)生信息管理模塊的下層模塊分別是添加學(xué)生信息、刪除學(xué)生信息、更新學(xué)生信息;教師信息管理模塊所包含的模塊分別是添加教師信息模塊、刪除教師信息模塊、更新教師信息模塊;課程信息管理模塊所包含的模塊分別是添加課程信息模塊、刪除課程信息模塊、更新課程信息模塊;班級(jí)信息管理模塊所包含的模塊分別是添加班級(jí)信息模塊、刪除班級(jí)

28、信息模塊、更新班級(jí)信息模塊。2. 學(xué)生功能頁面結(jié)構(gòu)設(shè)計(jì) 圖4.2學(xué)生功能頁面的結(jié)構(gòu)圖 學(xué)生功能頁面有三個(gè)模塊可以操作,分別是選修課程模塊、修改信息模塊和查看學(xué)分管理模塊。以學(xué)生身份登錄后進(jìn)入選修課程功能頁面:系統(tǒng)根據(jù)學(xué)生信息情況給出該生可以選報(bào)的課程;修改信息功能頁面:修改個(gè)人密碼和編輯個(gè)人資料;查看學(xué)分:可以查看各科已獲學(xué)分及總學(xué)分。3. 教師功能的頁面結(jié)構(gòu)設(shè)計(jì)圖4.3 教師功能頁面的結(jié)構(gòu)圖 教師功能頁面有兩個(gè)模塊可以操作,分別是挑選學(xué)生模塊、公布成績(jī)模塊。挑選學(xué)生管理模塊完成教師對(duì)申請(qǐng)?jiān)撜n程學(xué)生的查看及批準(zhǔn)操作;公布成績(jī)模塊完成給學(xué)生打分的操作。4.2 數(shù)據(jù)庫設(shè)計(jì)根據(jù)以上的分析可以設(shè)計(jì)出本

29、系統(tǒng)的數(shù)據(jù)庫,所用到的數(shù)據(jù)庫表說明如下:表4.1管理人員表admin序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1管理人員IDidvarchar50是2姓名namevarchar503密碼passwordvarchar504聯(lián)系電話telvarchar505電子郵箱e_mailvarchar50表4.2學(xué)生基本信息表student序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1學(xué)號(hào)idvarchar50是2姓名namevarchar503密碼passwordvarchar104籍貫jiguanvarchar1005所屬專業(yè)departmentvarchar1006性別sexvarchar1007學(xué)分mark

30、int48聯(lián)系電話telvarchar509電子郵箱e_mailvarchar50表4.3教師信息表teacher序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1教師號(hào)idvarchar50是2姓名namevarchar503職稱titlevarchar504密碼passwordvarchar505聯(lián)系電話telvarchar506電子郵箱e_mailvarchar50表4.4課程信息表course序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1課程號(hào)idvarchar50是2課程名稱namevarchar503課程學(xué)分markvarchar504課程先修課preparevarchar505課程所屬專業(yè)dep

31、varchar50表4.5班級(jí)信息表classes序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1班級(jí)號(hào)idvarchar502教師號(hào)tea_idvarchar50是3課程號(hào)cour_idvarchar504教室號(hào)room_idvarchar505課程時(shí)間cour_timevarchar50是表4.6選課信息表enrol序號(hào)字段說明字段名字段類型長(zhǎng)度主鍵備注1選課的學(xué)生ID號(hào)idvarchar50是2選課學(xué)生所屬班級(jí)ID號(hào)class_idvarchar50是3選課成功標(biāo)識(shí)位acceptbit14總評(píng)成績(jī)scorevarchar505平時(shí)成績(jī)pingshivarchar506實(shí)驗(yàn)成績(jī)shiyanvarc

32、har507期末成績(jī)qimovarchar505系統(tǒng)主要功能的實(shí)現(xiàn)5. 1 登錄和個(gè)人信息維護(hù)的實(shí)現(xiàn)圖5.4 登錄界面登錄的實(shí)現(xiàn)。用戶選擇用戶類型并輸入用戶名、密碼,系統(tǒng)根據(jù)用戶選擇的類型到數(shù)據(jù)庫相對(duì)應(yīng)的表中將用戶輸入的用戶名和密碼與name,id字段進(jìn)行驗(yàn)證,只有各項(xiàng)信息正確才能夠進(jìn)入系統(tǒng),如果信息出錯(cuò)將提示出錯(cuò)的原因。在進(jìn)行信息驗(yàn)證時(shí)系統(tǒng)將獲得該用戶的權(quán)限從而將對(duì)應(yīng)的系統(tǒng)功能開放給用戶。圖5.5 管理員功能頁面以管理員的身份登錄進(jìn)入系統(tǒng)后可以對(duì)學(xué)生、教師、課程、班級(jí)信息等進(jìn)行管理、維護(hù)。圖5.6學(xué)生信息管理界面在學(xué)生信息管理模塊中可以查看所有學(xué)生的基本信息。這個(gè)時(shí)候,管理員用戶可以刪除、更

33、新以及添加學(xué)生信息,在添加學(xué)生信息時(shí),學(xué)號(hào)、姓名、密碼、籍貫、所屬專業(yè)、性別和學(xué)分,各項(xiàng)均不能為空,否則會(huì)提示出錯(cuò)信息當(dāng)點(diǎn)擊提交后,系統(tǒng)會(huì)將各項(xiàng)內(nèi)容錄入到Student表中;當(dāng)刪除學(xué)生時(shí),系統(tǒng)會(huì)根據(jù)該生的學(xué)號(hào)到student表中找到該條記錄并刪除;當(dāng)更新學(xué)生信息時(shí),系統(tǒng)會(huì)根據(jù)該生的學(xué)號(hào)到Student表中找到該條記錄并更新相應(yīng)的字段內(nèi)容。圖5.7教師信息管理界面在教師信息管理模塊中查看所有教師的基本信息。這個(gè)時(shí)候,管理員用戶可以刪除、更新以及添加教師信息,在添加教師信息時(shí),教師號(hào)、姓名、職稱和登錄密碼,各項(xiàng)均不能為空,否則會(huì)提示出錯(cuò)信息,系統(tǒng)會(huì)將各項(xiàng)內(nèi)容錄入到teacher表中;當(dāng)刪除教師信息

34、時(shí),系統(tǒng)會(huì)根據(jù)教師號(hào)到teacher表中找到該條記錄并刪除;當(dāng)更新教師信息時(shí),系統(tǒng)會(huì)根據(jù)教師號(hào)到teacher表中找到該條記錄并更新相應(yīng)的字段內(nèi)容。圖5.8課程信息管理界面在課程信息管理模塊中查看所有課程的基本信息。這個(gè)時(shí)候,管理員用戶可以刪除、更新以及添加課程信息,在添加課程信息時(shí),課程號(hào)、課程名稱、課程學(xué)分、課程先修課和課程所屬專業(yè),各項(xiàng)均不能為空,否則會(huì)提示出錯(cuò)信息,系統(tǒng)會(huì)將各項(xiàng)內(nèi)容錄入到course表中;當(dāng)刪除課程信息時(shí),系統(tǒng)會(huì)根據(jù)課程號(hào)到course表中找到該條記錄并刪除;當(dāng)更新課程信息時(shí),系統(tǒng)會(huì)根據(jù)課程號(hào)到course表中找到該條記錄并更新相應(yīng)的字段內(nèi)容。圖5.9班級(jí)信息管理界面在

35、班級(jí)信息管理模塊中查看所有班級(jí)的基本信息。這個(gè)時(shí)候,管理員用戶可以刪除、更新以及添加班級(jí)信息,在添加教師信息時(shí),班級(jí)號(hào)、教師號(hào)、課程號(hào)、教室號(hào)和課程時(shí)間,各項(xiàng)均不能為空,否則會(huì)提示出錯(cuò)信息,系統(tǒng)會(huì)將各項(xiàng)內(nèi)容錄入到classes表中;當(dāng)刪除班級(jí)信息時(shí),系統(tǒng)會(huì)根據(jù)班級(jí)號(hào)到classes表中找到該條記錄并刪除;當(dāng)更新班級(jí)信息時(shí),系統(tǒng)會(huì)根據(jù)班級(jí)號(hào)到classes表中找到該條記錄并更新相應(yīng)的字段內(nèi)容。5. 2 學(xué)生功能頁面的實(shí)現(xiàn)圖5.10 學(xué)生功能界面以學(xué)生的身份登錄進(jìn)入系統(tǒng)后可以進(jìn)行選修課程、查看學(xué)分、更改信息等操作。圖5.11學(xué)生選修課程界面查看可以選修的課程信息。圖5.11列出了所有滿足該生系別(

36、該門課程所屬系別和該生所在系別相同,即course表的dep字段和Student表中的department字段相同)以及該生還未選報(bào)的課程,和先修課為public公共課程或者已通過其先修課的課程。學(xué)生可以對(duì)這些課程進(jìn)行注冊(cè)。當(dāng)點(diǎn)擊注冊(cè)時(shí),系統(tǒng)會(huì)將該生學(xué)號(hào)以及班級(jí)號(hào)錄入到enrol表中,并將注冊(cè)信息標(biāo)志位置0.圖5.12學(xué)生查看學(xué)分界面查看各科已獲學(xué)分,以及所獲總學(xué)分。當(dāng)點(diǎn)擊查看學(xué)分時(shí),從StudentLoginSvlt中調(diào)用getScore(String stu_id)方法獲取enrol、course、classes表中的課程名稱、學(xué)分以及成績(jī)。圖5.12列出了該生所修課程的學(xué)分,以及現(xiàn)在所獲

37、的總學(xué)分。圖5.13學(xué)生更改信息界面更改密碼、電話、E_mail等信息。圖5.13要求輸入新密碼以及對(duì)新密碼的確認(rèn)、電話、E_mail等信息,在修改信息時(shí),新密碼以及對(duì)新密碼的確認(rèn)信息,均不能為空,否則會(huì)提示出錯(cuò)信息,當(dāng)點(diǎn)擊提交后,系統(tǒng)會(huì)根據(jù)該生學(xué)號(hào)到student表中找到該條記錄并更新相應(yīng)的字段內(nèi)容。5. 3 教師功能頁面的實(shí)現(xiàn)圖5.14教師功能界面以教師的身份登錄進(jìn)入系統(tǒng)后可以進(jìn)行挑選學(xué)生、公布成績(jī)等操作。查看申請(qǐng)所帶課程的學(xué)生信息以及班級(jí)信息。圖5.15列出了所帶的課程號(hào)及班級(jí)號(hào)。這個(gè)時(shí)候教師可以選擇選報(bào)該課程的學(xué)生。圖5.15挑選學(xué)生界面查看所帶學(xué)生信息以及班級(jí)信息。當(dāng)點(diǎn)擊挑選學(xué)生時(shí),

38、系統(tǒng)通過MarkSvlt中doChoose(String tea_id)方法調(diào)用determine中的getClass(tea_id)方法獲取教師所帶的班級(jí)號(hào)、課程名稱等信息。當(dāng)點(diǎn)擊選擇時(shí),系統(tǒng)通過MarkSvlt中doAccept(String class_id)方法調(diào)用determine中的getStudents(class_id)方法獲取選報(bào)該門課程的所有學(xué)生信息。圖5.16公布學(xué)生成績(jī)界面圖5.16列出了所帶的課程號(hào)及班級(jí)號(hào)。當(dāng)點(diǎn)擊學(xué)生時(shí),教師可以為所有選報(bào)該門課程的學(xué)生打分,系統(tǒng)通過MarkSvlt中doAccept2(tea_id)方法調(diào)用determine中的getStudent

39、2(class_id)方法獲取所有選報(bào)該門課程還未給出成績(jī)的學(xué)生信息。當(dāng)點(diǎn)擊score時(shí),系統(tǒng)將進(jìn)入打分(marking.jsp)頁面,分別給出總評(píng)成績(jī)、平時(shí)成績(jī)、實(shí)驗(yàn)成績(jī)、期末成績(jī)等。并將各項(xiàng)內(nèi)容錄入到數(shù)據(jù)庫enrol表,同時(shí),系統(tǒng)會(huì)根據(jù)成績(jī)來判斷該生是否通過了該課程,如果該成績(jī)大于或等于60分,則在該生的學(xué)分上加上該課程的學(xué)分,以供學(xué)生進(jìn)行查看學(xué)分等操作。結(jié)論 本系統(tǒng)的開發(fā)基本完成了預(yù)期的目標(biāo),較為成功的實(shí)現(xiàn)了網(wǎng)上選課并對(duì)學(xué)生、教師、課程、班級(jí)信息進(jìn)行處理的功能。同時(shí)也深入了解了JSP+Servlet+JavaBean的相關(guān)知識(shí),利用其優(yōu)點(diǎn)提高了該系統(tǒng)的運(yùn)行效率并是該系統(tǒng)具有很好的交互性。

40、本系統(tǒng)的開發(fā)可以實(shí)現(xiàn)一個(gè)學(xué)校的網(wǎng)上選課工作,從學(xué)生注冊(cè)課程到教師審核以及批準(zhǔn),最終完成學(xué)生選課操作,所有數(shù)據(jù)處理都是有計(jì)算機(jī)程序?qū)崿F(xiàn)。使用該系統(tǒng)具有如下好處:a.使用計(jì)算機(jī)統(tǒng)計(jì)處理數(shù)據(jù),既提高了效率,又保證不容易出錯(cuò)。b.所有學(xué)生都使用的同一系統(tǒng),并且都要經(jīng)過教師的審核,這樣得到的結(jié)果公開、公平。c.系統(tǒng)中使用了JSP+Servlet+JavaBean技術(shù),用戶的操作更加直觀方便。d.與以往的人工選課相比,使用該系統(tǒng)我們不需再使用專門的表格進(jìn)行匯總統(tǒng)計(jì),可以節(jié)約不少資源。但是由于時(shí)間有限,本系統(tǒng)也還存在一些不足的地方,比如公平性方面,每個(gè)學(xué)生都有選報(bào)滿足條件的課程的權(quán)利,但每個(gè)教師所需學(xué)生有限,該系統(tǒng)在對(duì)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論