課程設(shè)計--學(xué)生選課系統(tǒng)_第1頁
課程設(shè)計--學(xué)生選課系統(tǒng)_第2頁
課程設(shè)計--學(xué)生選課系統(tǒng)_第3頁
課程設(shè)計--學(xué)生選課系統(tǒng)_第4頁
課程設(shè)計--學(xué)生選課系統(tǒng)_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、裝訂線長 春 大 學(xué) 課程設(shè)計紙學(xué)生選修課程管理系統(tǒng)第9小組學(xué)號姓名具體模塊成績備注041140336蔡忠文老師操作模塊組長041140337李梓郡學(xué)生操作模塊組員041140338王超課程操作模塊組員041140339張暢數(shù)據(jù)庫設(shè)計組員目 錄1 可行性分析31.1 經(jīng)濟上的可行性31.2 技術(shù)上的可行性31.3 操作上的可行性32 需求分析42.1需求陳述42.2分析建模43 分析設(shè)計103.1系統(tǒng)功能結(jié)構(gòu)設(shè)計103.3系統(tǒng)軟件架構(gòu)設(shè)計144 詳細設(shè)計165 實現(xiàn)206 測試316.1測試方法316.2測試用例327 總結(jié)347.1小組總結(jié)347.2個人總結(jié)341 可行性分析1.1 經(jīng)濟上的

2、可行性 界面友好,操作簡單,系統(tǒng)實現(xiàn)可行,因此經(jīng)濟可行。該系統(tǒng)可以容易實現(xiàn)學(xué)生、老師和教學(xué)系統(tǒng)管理員與學(xué)校之間的聯(lián)系,在Internet上實現(xiàn)完成部分教務(wù)工作,提高辦事效率。1.2 技術(shù)上的可行性隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,越來越多的機構(gòu)將科研管理與Internet融合到一起,以方便個高校管理。在這樣一個社會背景下,基于Windows和SQL Server 2005設(shè)計出數(shù)據(jù)庫 ,運用先進的ASP.NET技術(shù)、先進的C#語言,采用B/S模式開發(fā)的大學(xué)生選修課管理系統(tǒng),將學(xué)生、老師、管理員有機地結(jié)合在一起,有效地提高管理水平和效率。隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,基于以上的技術(shù)在現(xiàn)今比較容

3、易實現(xiàn)。 1.3 操作上的可行性該系統(tǒng)操作方便,簡單。 2 需求分析2.1需求陳述系統(tǒng)功能模塊基本將本系統(tǒng)劃分為三大模塊,即學(xué)生選課模塊、教師開課模塊以及管理員管理模塊。 (1)學(xué)生選課模塊:在這個模塊中,允許學(xué)生修改個人信息,瀏覽基本的課程;并實現(xiàn)主要的選課功能,包括填寫選課信息、查看已選課程、修改選課等。(2)教師開課模塊:這個模塊主要是讓教師申請教課,同時教師可以修改個人信息、瀏覽基本課程以及查看學(xué)生的選課情況等。(3)管理員管理模塊:這個模塊的功能比較多,主要包括創(chuàng)建課程的指定任課老師、設(shè)定課程人數(shù)、統(tǒng)計學(xué)生選課信息、發(fā)通知等等。(4)通用功能模塊:即用戶登錄、密碼修改等功能的實現(xiàn)。2

4、.2分析建模根據(jù)系統(tǒng)需求角色確定,外部參與者如下:管理員:對學(xué)生和教師基本資料維護,對課程基本資料進行添加、 刪除、 更新或查詢等;學(xué)生:進行課程預(yù)覽,選課信息查詢,進行選課,成績查詢等;教師:查詢課程,申請教課及課程報名人數(shù)情況,進行成績評定等;確定用例與管理員有關(guān)的用例:發(fā)布通知、分配帳號密碼、注銷或修改用戶狀態(tài)、創(chuàng)建課程,定任課老師、設(shè)定課程人數(shù)、統(tǒng)計學(xué)生選課信息;與學(xué)生有關(guān)的用例:修改個人信息、選課操作、修改選課、瀏覽課程、查詢成績與教師有關(guān)的用例:申請教課、瀏覽課題、查詢學(xué)生選課情況、成績評定建立系統(tǒng)用例圖此系統(tǒng)用例圖包括:學(xué)生選課系統(tǒng)的高層用例圖,管理員管理子系統(tǒng)用例圖,教師管理子

5、系統(tǒng)用例圖以及學(xué)生選課子系統(tǒng)的用例圖。系統(tǒng)用例大學(xué)生選修課用例描述管理員:管理員負責整個選修課系統(tǒng)的全面工作管理員使用子系統(tǒng)“選課管理”中的教學(xué)大綱信息和“科室分配管理”中的教師信息,制定選課表管理員點擊子系統(tǒng)“課程信息管理” 對學(xué)生和教師基本資料維護,課程基本資料進行添加、刪除、更新或查詢等相關(guān)操作學(xué)生:進行課程預(yù)覽,選課信息查詢,進行選課,成績查詢等;教師:查詢課程,申請教課及課程報名人數(shù)情況,進行成績評定等;成績查詢:登錄選課系統(tǒng)選擇用戶“學(xué)生”輸入密碼,提交提示登錄成功或錯誤信息選擇“選修課成績查詢”,選擇學(xué)期查到對應(yīng)成績。成績管理:教師進行操作,包括教師錄入和維護學(xué)生的成績,統(tǒng)計成績

6、查詢成績,也可進行學(xué)生成績的刪除和修改工作。詳細描述如下:登錄:通過用戶名及密碼登錄學(xué)生選課系統(tǒng)驗證當前用戶權(quán)限。課程信息瀏覽:讓學(xué)生可以詳細的了解課程情況。選課:學(xué)生可以選擇要選修的課程 。選課概述:前提條件(正確登錄、同一選課選修兩次第二次不計學(xué)分)點擊選課項提交按鈕提示選課情況修改選課:由于主觀或客觀原因要求退課。修改選課概述:前提條件(限定的課程開設(shè)人數(shù)已滿,或是不足規(guī)定人數(shù)取消該課程安排的信息,以及個人在規(guī)定日期前可以修改選課等)成績查詢:登錄選課系統(tǒng)選擇用戶“學(xué)生”輸入密碼,提交提示登錄成功或錯誤信息選擇“選修課成績查詢”,選擇學(xué)期查到對應(yīng)成績。學(xué)生選課系統(tǒng)的高層用例圖如圖2-1所

7、示圖2-1 學(xué)生選課系統(tǒng)的高層用例圖管理子系統(tǒng)用例(1)用戶登錄獲取用戶輸入的用戶名及密碼;若出現(xiàn)用戶名、密碼錯誤或不匹配現(xiàn)象,反饋錯誤提示;在用戶名及密碼都正確的前提下,支持密碼修改。(2)選課系統(tǒng)首先發(fā)布選課通知,即先對教師發(fā)出通知(教師得到通知后才可申請教課),然后對學(xué)生發(fā)出通知(此時已安排完有關(guān)選修課的所有信息)創(chuàng)建課程指定任課教師設(shè)定課程的人數(shù)和開課時間安排分配賬號及密碼(由于是管理員操作此部分)。(3)教師教課申請獲取教師申請教課的信息,包括教師信息及其所要教的課程課程信息;提供教師瀏覽課程的功能,即課程時間、教室等的安排;并提供查詢學(xué)生選課情況的功能,即選此門課程的名單等;處理和

8、統(tǒng)計教師對學(xué)生成績的評定。(4)學(xué)生選課提供學(xué)生修改個人信息的功能;提供學(xué)生瀏覽全部選修課信息的功能,然后接受學(xué)生的選課操作;獲取學(xué)生及其所選課程的信息后,提供學(xué)生瀏覽自己所選課程的安排情況;得到選課系統(tǒng)的指令,在相應(yīng)時間內(nèi)可以讓學(xué)生修改自己的選課;將選課系統(tǒng)統(tǒng)計好的成績信息反饋給學(xué)生供其瀏覽。管理員管理子系統(tǒng)用例詳細描述如下:發(fā)放通知:此用例包含兩種情況,一是相對于教師的,二是相對于學(xué)生的。相對于教師,即對于選課信息錄入后發(fā)放給教師的通知,相對于學(xué)生即是在安排完選課相應(yīng)的教師、選課限定人數(shù)等規(guī)則后發(fā)放給學(xué)生的通知。學(xué)生及教師列表:對于學(xué)生的個人信息、選課信息,教師的個人信息、對應(yīng)教受的課程信

9、息等的查詢、刪除、修改等操作??蛇x課程列表:在限定人數(shù)已滿或是人數(shù)不夠不進行課程開設(shè)等情況下對于課程選擇的限定。學(xué)生已選課程列表:在課程修完教師評定相應(yīng)成績后,對于學(xué)生已選課程的成績統(tǒng)計以及錄入發(fā)放。管理員添加及密碼修改:根據(jù)實際情況進行添加、修改等。管理員管理子系統(tǒng)用例圖如圖2-2所示:圖2-2 管理員管理子系統(tǒng)用例圖教師進行查詢課程,申請教課及課程報名人數(shù)情況,進行成績評定等工作。主要是學(xué)生選課操作提供學(xué)生修改個人信息的功能;提供學(xué)生瀏覽全部選修課信息的功能,然后接受學(xué)生的選課操作;獲取學(xué)生及其所選課程的信息后,提供學(xué)生瀏覽自己所選課程的安排情況;得到選課系統(tǒng)的指令,在相應(yīng)時間內(nèi)可以讓學(xué)生

10、修改自己的選課。學(xué)生選課子系統(tǒng)如圖2-3所示圖2-3學(xué)生選課子系統(tǒng)用例圖3 分析設(shè)計3.1系統(tǒng)功能結(jié)構(gòu)設(shè)計首先輸入用戶名和密碼登錄系統(tǒng),系統(tǒng)給出提示,若登錄成功后則進行課程信息查詢。然后對信息進行詳細查看,例如選課時間安排、教師安排、人數(shù)安排等,之后可點擊選擇課程并提交確認,此時系統(tǒng)也會給出提示,若成功選擇給出課程詳細信息,否則將提示人數(shù)已滿的限制信息。修改所選課程,也必須找到自己已選課程列表并進行刪除,然后再按相同方法進行選課,最終完成選課。當然修改課程過程中,也要注意修改時間的限定,因為管理員也要統(tǒng)計學(xué)生及其所選課程的信息,所以必須在規(guī)定時間進行修改。經(jīng)過活動如圖3-1所示圖3-1 學(xué)生選

11、課操作的活動圖順序圖如圖3-2所示圖3-2學(xué)生選課操作順序圖學(xué)生選課操作的協(xié)作圖3-3所示:圖3-3學(xué)生選課操作的協(xié)作圖 參與交互的對象有課程信息模塊、課程安排模塊及面向教師、學(xué)生。此圖主要考慮通過對象之間的交互共同完成選課操作的過程,各信息流向及標明的順序更好詮釋出管理員進行管理時所需對象及時間上的配合。管理員管理操作的協(xié)作圖如下所示:參與的交互對象有課程信息模塊、成績評定模塊、成績管理模塊以及學(xué)生。首先教師進入課程信息模塊,選擇自已所教授的選修課,進而得到所有學(xué)生信息。然后通過反饋的信息及自己記錄的考勤情況(如特定安排取消的課時等)進入成績評定模塊。一般是將所有學(xué)生進行統(tǒng)一打分,若不是統(tǒng)一

12、的情況或是有修改等情況都可進入成績管理模塊進行相應(yīng)操作。在規(guī)定日期前上交評定成績信息后再反饋給學(xué)生。如圖3-4所示:圖3-4教師評定成績的協(xié)作圖 學(xué)生在選課操作中其生存周期中所處的不同狀態(tài)、轉(zhuǎn)換時的條件,雖然看似較為簡單,但并不可忽視。對于此信息的詳細設(shè)計,可進一步用于用類狀態(tài)的設(shè)計和編制類。如圖3-5所示:圖3-5學(xué)生登錄選課的狀態(tài)圖3.2.系統(tǒng)硬件結(jié)構(gòu)設(shè)計類模型是面向?qū)ο蠓椒ǖ暮诵?,類模型從對象的角度描述系統(tǒng)的組成,描述對象及相互間的關(guān)系。系統(tǒng)已在前面進行過簡單描述,通過檢查問題陳述中的所有名詞短語和代詞,得到初始類:學(xué)生 教師 管理員 選課操作 選課管理 申請教課成績管理 成績查詢 用戶

13、管理 課程信息 可選課程 學(xué)生已選課程經(jīng)過分析最后得到教師、學(xué)生、管理員、課程信息及系統(tǒng)維護這幾個類。并標識出類的名稱及屬性。如下圖3-6所示:圖3-6類名稱及屬性3.3系統(tǒng)軟件架構(gòu)設(shè)計 3.3.1功能要求:(1) 設(shè)計數(shù)據(jù)對象(表、視圖、規(guī)則、函數(shù)等),完成學(xué)生自主選課,實現(xiàn)對于數(shù)據(jù)庫完整性的檢查; (2) 根據(jù)用戶不同,指派不同權(quán)利:管理員具有dbo權(quán)限,學(xué)生具有插入選課表、退課表權(quán)限,查詢課程表權(quán)限,確保數(shù)據(jù)庫的安全性; (3) 能夠?qū)崿F(xiàn)對于學(xué)生選課信息、課程信息、授課教師信息、教室使用信息的查詢; (4) 設(shè)計觸發(fā)器/存儲過程,優(yōu)化數(shù)據(jù)庫查詢、沖突檢測、擴展數(shù)據(jù)庫完整性和數(shù)據(jù)操縱功能;

14、 (5) 設(shè)計選課時間段,在指定時間段內(nèi),允許選課、退課。(6) 完成數(shù)據(jù)庫的備份等事務(wù)處理,保證數(shù)據(jù)庫的一致性,可靠性。3.3.2 實現(xiàn)要求(1) 根據(jù)系統(tǒng)的功能要求,建立了概念模型,設(shè)計各功能塊的E-R圖,對其合并,形成系統(tǒng)總E-R圖, 如圖3-1所示。(2) 利用T-SQL實現(xiàn)數(shù)據(jù)庫,關(guān)系表,視圖,數(shù)據(jù)類型,存儲過程及其他數(shù)據(jù)對象的建立、更新、修改及數(shù)據(jù)庫完整性檢查。4 詳細設(shè)計蔡忠文設(shè)計內(nèi)容:老師操作模塊:1)增加老師2)根據(jù)教師號碼修改教師信息3)根據(jù)教師號碼刪除教師信息4)根據(jù)教師號碼查詢教師的信息5)查詢所有教師的信息李梓郡設(shè)計內(nèi)容:學(xué)生操作模塊1)增加學(xué)生2)根據(jù)學(xué)號修改學(xué)生信

15、息3)根據(jù)學(xué)號刪除學(xué)生信息4)根據(jù)學(xué)號查詢學(xué)生信息5)查詢所有學(xué)生信息王超設(shè)計內(nèi)容:課程操作模塊1)增加課程2)根據(jù)課程號修改課程信息3)根據(jù)課程號刪除課程的信息4根據(jù)課程號查詢課程的信息5)查詢所有課程張暢設(shè)計內(nèi)容:系統(tǒng)的數(shù)據(jù)庫設(shè)計:本系統(tǒng)設(shè)計的是一個以班級為單位的選課數(shù)據(jù)庫,能夠?qū)崿F(xiàn)學(xué)生自主選課功能,并能實現(xiàn)學(xué)生信息、課程信息、學(xué)生選課信息、教室信息、授課教師信息等的創(chuàng)建、更新、刪除、修改,數(shù)據(jù)庫完整性檢查、沖突檢測、查詢優(yōu)化以及數(shù)據(jù)庫角色、權(quán)限的分配,實現(xiàn)數(shù)據(jù)庫的備份等事務(wù)處理以保證數(shù)據(jù)的完整性、一致性、安全性、可靠性。E-R圖如4-1所示nn111mmmmm學(xué)生學(xué)號姓名性別專業(yè)班級密碼

16、出生日期學(xué)院組成編號學(xué)院名稱學(xué)習(xí)課程課程號類型學(xué)分學(xué)時教師課程名稱教師組成教授開設(shè)姓名工號性別密碼聯(lián)系電話院部圖4-1 學(xué)生選課系統(tǒng)總E-R圖表4-1教師表字段名字段類型字段長度是否為空是否為主鍵描述tnovarcher10是教師號teacher pesswordvarcher10是密碼tnamevarcher10是姓名tsexvarcher5是性別dnovarcher10否系別cnumbervarcher10否所帶課程號4-2課程表字段名字段類型字段長度是否為空是否為主鍵描述cnamevarcher10否否課程名cnovarcher10否是課程號csoredouble否否課程的學(xué)分dnova

17、rcher10否否課程的系別4-3成績表字段名字段類型字段長度是否為空是否為主鍵描述cnovarcher10否課程號sonvarcher10否學(xué)號scorevarcher10是成績4-4學(xué)生表字段名字段類型字段長度是否為空是否為主鍵描述snovarcher10是學(xué)號snamevarcher10否姓名ssexvarcher5否性別dnovarcher10否系別sageint否年齡spasswordvarcher10否密碼4-5管理員表字段名字段類型字段長度是否為空是否為主鍵描述managervarcher10是賬號managerpasswordvarcher10否密碼4-6系表字段名字段類型字段

18、長度是否為空是否為主鍵描述dnovarcher10是系號dnamevarcher10否系名5 實現(xiàn)1管理員底層代碼: package xiangmu.dao;import java.util.List;import xiangmu.po.course;import xiangmu.po.manager;import xiangmu.po.student;import xiangmu.po.teacher;public interface ManagerDao /管理員登錄public boolean inToSystem(manager m); /增加學(xué)生public boolean addS

19、tudentforManager(student s);/根據(jù)學(xué)生的學(xué)號修改學(xué)生的信息public boolean updateStudentforManager(String sno,student s);/根據(jù)學(xué)號刪除學(xué)生的全部信息public boolean deleteStudentforManager(String sno);/根據(jù)學(xué)號查詢學(xué)生的信息public student selectStudentforManager(String sno);/查詢所有學(xué)生的信息public List selectAllStudent();/增加老師public boolean addTeac

20、herforManager(teacher t);/根據(jù)教師號修改教師的信息public boolean updateTeacherforManager(String tno,teacher t);/根據(jù)教師號刪除教師的信息public boolean deleteTeacherforManager(String tno);/根據(jù)教師號查詢教師的信息public teacher selectTeacherforManager(String tno);/查詢所有教師的信息public List selectAllTeacher();/增加課程public boolean addCoursefor

21、Manager(course c);/根據(jù)課程號修改課程的信息public boolean updateCourseforManager(String cno,course c);/根據(jù)課程號刪除課程的信息public boolean deleteCourseforManager(String cno);/根據(jù)課程號查詢課程的信息public course selectCourseforManager(String cno);/查詢所有課程的信息public List selectAllCourse();/退出系統(tǒng)public void backSystem();2.學(xué)生模塊底層代碼:pack

22、age xiangmu.dao;import java.util.List;import xiangmu.po.StuChengJi;import xiangmu.po.course;import xiangmu.po.score;import xiangmu.po.student;public interface StudentDao /登錄系統(tǒng)public boolean inToSystembyStudent(String sno,String spassword);/選課public boolean xunKebyStudent(String sno,String cno); /查詢所

23、有已選課程public List xunAllKeChengbyStudent(String sno);/查詢自身的信息public student xunStudent(String sno);/查詢所選課程的成績public List xunChengJibyStudent(String sno,score s);/退課public boolean deleteCoursebyStudent(String sno,course c);/退出系統(tǒng)public void backSystembyStudent();3.老師模塊底層代碼:package xiangmu.dao;import ja

24、va.util.List;import xiangmu.po.student;import xiangmu.po.teacher;public interface TeacherDao /登錄系統(tǒng)public boolean inToSystembyTeacher(String tno,String tpassword);/查詢所有自身所帶課程的所有學(xué)生的信息public List xunAllStudentbyStudent(String tno);/輸入成績(在上一步的結(jié)果上,輸入成績)public boolean chengjibyTeacher(String sno,String ss

25、core,String cno);/查詢自身的信息public teacher xunTeacherbyTeacher(String tno);/退出系統(tǒng)4.主界面的servlet代碼如下:package xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;impor

26、t javax.servlet.http.HttpServletResponse;public class main extends HttpServletprivate static final long serialVersionUID = 1L;Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException req.setCharacterEncoding(utf-8);resp.setContentType(text/ht

27、ml;charset=utf-8);PrintWriter out = resp.getWriter();String username = req.getParameter(username);String password = req.getParameter(password);String yonghu = req.getParameter(yonghu);if(yonghu.equals(student)req.getRequestDispatcher(/studentcaozuo).forward(req, resp);else if(yonghu.equals(teacher)r

28、eq.getRequestDispatcher(/teachercaozuo).forward(req, resp);else if(yonghu.equals(manager)req.getRequestDispatcher(/managercaozuo).forward(req, resp);Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException this.doGet(req, resp);5、管理員界面的代碼: p

29、ackage xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import xiangmu.daoimpl.ManagerDaoimpl;import xiangmu.po

30、.manager;public class managercaozuo extends HttpServlet private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);public void doPost(HttpServletRequest request, HttpSe

31、rvletResponse response)throws ServletException, IOException PrintWriter out = response.getWriter(); String username = request.getParameter(username); String password = request.getParameter(password); manager m = new manager(username,password); ManagerDaoimpl mipml = new ManagerDaoimpl(); if(mipml.in

32、ToSystem(m) request.getRequestDispatcher(managergongneng.jsp).forward(request, response); else request.getRequestDispatcher(/managerdengluerror).forward(request, response); out.println(username); out.println(password);6.學(xué)生模塊界面的代碼: package xiangmu.gongneng;import java.io.IOException;import java.io.Pr

33、intWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import xiangmu.daoimpl.StudentDaoimpl;public class studentcaozuo extends HttpServlet

34、private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOExcept

35、ion PrintWriter out = response.getWriter(); String sno = request.getParameter(username); String spassword = request.getParameter(password); StudentDaoimpl simpl = new StudentDaoimpl(); String sname = simpl.chaSnameforSno(sno); HttpSession sessionsno = request.getSession(); HttpSession sessionsname =

36、 request.getSession(); sessionsno.setAttribute(sno, sno); sessionsname.setAttribute(sname, sname); if(simpl.inToSystembyStudent(sno, spassword) request.getRequestDispatcher(student/studentgongneng.jsp).forward(request, response); else request.getRequestDispatcher(/managerdengluerror).forward(request

37、, response); out.println(sno); out.println(spassword);7.老師界面的servlet代碼:package xiangmu.gongneng;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.Htt

38、pServletResponse;import xiangmu.daoimpl.TeacherDaoimpl;public class teachercaozuo extends HttpServlet private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException this.doPost(request, response);public

39、void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException PrintWriter out = response.getWriter(); String tno = request.getParameter(username); String tpassword = request.getParameter(password); TeacherDaoimpl timpl = new TeacherDaoimpl(); String tname

40、= timpl.chaTnameforTno(tno); if(timpl.inToSystembyTeacher(tno, tpassword) request.getRequestDispatcher(teacher/teachergongneng.jsp?tname=+tname+).forward(request, response); else request.getRequestDispatcher(/managerdengluerror).forward(request, response); out.println(tno); out.println(tpassword); o

41、ut.flush(); out.close(); 8、數(shù)據(jù)庫設(shè)計的代碼: /創(chuàng)建課程表create table t_course(cno varchar(10) primary key ,cname varchar(10) ,cscore varchar(5) ,dno varchar(10) foreign KEY (dno) REFERENCES t_dept(dno)/創(chuàng)建系表create table t_dept(dno varchar(10) primary key,dname varchar(10)/創(chuàng)建學(xué)生表create table t_student(sno varchar(1

42、0) primary key,spassword varchar(10),sname varchar(10),ssex varchar(5),sage int ,dno varchar(10) foreign KEY (dno) REFERENCES t_dept(dno),)/創(chuàng)建教師表create table t_teacher(tno varchar(10) primary key,tpassword varchar(10) ,tname varchar(10),tsex varchar(5) ,dno varchar(10) foreign KEY(dno) REFERENCES t_

43、dept(dno),cno varchar(10) foreign KEY(cno) REFERENCES t_course(cno)/創(chuàng)建成績表create table t_score(cno varchar(10) foreign KEY(cno) REFERENCES t_course(cno),sno varchar(10) foreign KEY(sno) REFERENCES t_student(sno),sscore varchar(5),primary KEY(sno,cno)/創(chuàng)建管理員表create table t_manager(managerid varchar(10)

44、 primary KEY,managerpassword varchar(10) )程序的部分界面:1 學(xué)生界面如圖5-1和 5-2所示:圖5-1圖5-22.老師操作界面的部分截圖如圖5-3和5-4所示: 圖5-3圖5-43.管理員操作界面的部分截圖5-5和5-6所示: 圖5-5圖5-66 測試6.1測試方法黑盒測試選取測試用例的原則:1、所設(shè)計出的測試用例能夠減少為達到合理測試所需要設(shè)計的附加測試用例數(shù)目2、所設(shè)計出的測試用例能夠告訴我們,是否存在某些類型的錯誤,而不是僅僅指出與特定測試相關(guān)的錯誤是否存在3、正確的劃分等價類,已根據(jù)等價類設(shè)計測試方案,以滿足所有的測試都能追溯到用戶需求盡量避免含糊的測試用例。盡量將具有相類似功能的測試用例抽象并歸類。盡量避免冗長和復(fù)雜的測試用例。6.2測試用例表編號預(yù)期輸入操作輸出結(jié)果測試功能1添加成功張三 01213234點擊添加添加成功添加2請輸入學(xué)生姓名01001141點擊添加請輸入學(xué)生姓名添加3請輸入學(xué)生學(xué)號張三點擊添加請輸入學(xué)生學(xué)號添加4刪除成功張三點擊確定刪除成功刪除5學(xué)生不存在張

溫馨提示

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

評論

0/150

提交評論