版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章開發(fā)背景及相關(guān)技術(shù)介紹1.1開發(fā)背景在高校教學(xué)活動(dòng)中,教師的教學(xué)質(zhì)量評(píng)價(jià)是教學(xué)質(zhì)量監(jiān)控的關(guān)鍵環(huán)節(jié),對(duì)提高教學(xué)質(zhì)量和辦學(xué)效益起著至關(guān)重要的作用。因此只有建立完善的教學(xué)質(zhì)量監(jiān)控體系才能客觀公正地評(píng)價(jià)教師教學(xué)工作,激發(fā)教師教學(xué)的質(zhì)量意識(shí),全面提高高校教師教學(xué)業(yè)務(wù)水平和教學(xué)效果。
然而傳統(tǒng)的評(píng)教方式在評(píng)教的時(shí)效性、數(shù)據(jù)處理的直觀和準(zhǔn)確性、可操作性等方面已不能很好地滿足現(xiàn)代學(xué)校的要求。
隨著信息技術(shù)的快速發(fā)展,我們應(yīng)該充分利用其優(yōu)勢(shì),建立教師評(píng)價(jià)系統(tǒng),使學(xué)校對(duì)教學(xué)實(shí)現(xiàn)實(shí)時(shí)監(jiān)控,及時(shí)掌握教學(xué)過程中的問題。與傳統(tǒng)的紙本評(píng)教的做法相比,使用系統(tǒng)進(jìn)行評(píng)教,有以下四個(gè)優(yōu)點(diǎn):1.打破了之前評(píng)教方式的局限,可以更科學(xué)、更準(zhǔn)確地對(duì)教師教學(xué)的工作進(jìn)行客觀的評(píng)價(jià),可以降低評(píng)教打分的個(gè)人主觀性、個(gè)人隨意性。
2.
因?yàn)閱柧碓O(shè)計(jì)了不同的評(píng)教指標(biāo),方便從多個(gè)不同的角度對(duì)學(xué)校評(píng)教的結(jié)果進(jìn)行更客觀分析,提供更科學(xué)與準(zhǔn)確的數(shù)據(jù),大大提高了教學(xué)評(píng)價(jià)的準(zhǔn)確度。
3.
提升了原有紙質(zhì)評(píng)教的地域局限性,若將信息網(wǎng)絡(luò)中心端口對(duì)外開放,整個(gè)校園網(wǎng)甚至互聯(lián)網(wǎng)上的所有用戶都可以訪問本教學(xué)評(píng)教系統(tǒng)。因而就可以在更廣泛的地域、任意時(shí)刻都可以用自己的身份訪問此系統(tǒng)進(jìn)行評(píng)教,大大提高了教學(xué)評(píng)教的靈活性,更對(duì)于遠(yuǎn)程異地的教學(xué)工作尤顯本系統(tǒng)的優(yōu)越性。
4.突破了傳統(tǒng)評(píng)教耗時(shí)、耗力的情況。應(yīng)用系統(tǒng),可大大減低教務(wù)人員及評(píng)價(jià)人員的消耗。使評(píng)教更加便捷、簡(jiǎn)單。1.2開發(fā)目的隨著計(jì)算機(jī)技術(shù),網(wǎng)絡(luò)技術(shù),特別是信息技術(shù)的高速發(fā)展。動(dòng)態(tài)交互式網(wǎng)頁(yè)提供了人們對(duì)最新信息的需求和發(fā)布迫切需要及時(shí)性。本系統(tǒng)就是一個(gè)能夠通過網(wǎng)絡(luò)實(shí)現(xiàn)教師評(píng)教系統(tǒng),能夠大大減輕教工人員的工作量,提高辦事效率;設(shè)計(jì)教師教學(xué)質(zhì)量評(píng)教系統(tǒng)只是一種手段,作為一名即將畢業(yè)的計(jì)算機(jī)學(xué)生,我想通過它使我可以更好的了解計(jì)算機(jī)的工作過程,掌握開發(fā)語(yǔ)言的使用方法,掌握開發(fā)各種項(xiàng)目的工作技能,適應(yīng)迅猛發(fā)展的社會(huì)。1.3教學(xué)質(zhì)量評(píng)價(jià)系統(tǒng)的內(nèi)容教師教學(xué)質(zhì)量評(píng)價(jià)系統(tǒng),包括用戶登陸系統(tǒng)、用戶管理、用戶信息錄入、教師評(píng)價(jià)、統(tǒng)計(jì)分析、系統(tǒng)幫助等基本功能實(shí)現(xiàn)。用戶可根據(jù)需要自行設(shè)計(jì)評(píng)價(jià)及其評(píng)價(jià)項(xiàng)目,給出評(píng)分標(biāo)準(zhǔn)。1.4開發(fā)技術(shù)簡(jiǎn)介1.4.1開發(fā)語(yǔ)言——Java簡(jiǎn)介Java是一門優(yōu)秀的編程語(yǔ)言,具有面向?qū)ο?、與平臺(tái)無(wú)關(guān)、安全、穩(wěn)定和多線程等特點(diǎn),是目前軟件設(shè)計(jì)中極為健壯的編程語(yǔ)言[1]。Java不僅可以用來開發(fā)大型的應(yīng)用程序,而且特別適合于Internet的應(yīng)用開發(fā)[2]。1995年6月SUN公司將Java這種革命性的編程語(yǔ)言引進(jìn)到這個(gè)世界,且在同一年,被美國(guó)的著名雜志《PCMagazine》評(píng)為十大優(yōu)秀科技作品之一[1]。之所以稱Java編程語(yǔ)言具有革命性,是因?yàn)閭鹘y(tǒng)的軟件往往依賴于具體的實(shí)現(xiàn)環(huán)境,環(huán)境一旦有所變化就要對(duì)軟件進(jìn)行相應(yīng)改動(dòng),耗時(shí)費(fèi)力,而Java編寫的軟件能在執(zhí)行碼上實(shí)現(xiàn)兼容。1.4.2SQLServer2005簡(jiǎn)介SQL即StructuredQueryLanguage全稱是結(jié)構(gòu)化查詢語(yǔ)言,SQLServer2005是微軟公司開發(fā)的一個(gè)大型的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng),它為用戶提供了一個(gè)安全、可靠、易管理和高端的客戶/服務(wù)器平臺(tái),而且SQL語(yǔ)言有統(tǒng)一的操作規(guī)范、操作方式集合化、簡(jiǎn)單智能化、功能強(qiáng)大、語(yǔ)句簡(jiǎn)潔和簡(jiǎn)單易學(xué)等特點(diǎn),便于使用者掌握和使用[5]。SQL具有如下的優(yōu)點(diǎn):(1)SQL是一種非過程化的語(yǔ)言,它采用一次一記錄的方式,對(duì)數(shù)據(jù)提供自動(dòng)導(dǎo)航。SQL允許用戶將工作提升到高層的數(shù)據(jù)結(jié)構(gòu)上,可以對(duì)記錄集進(jìn)行操作,并非單個(gè)記錄。SQL的集合特性允許SQL語(yǔ)句采用嵌套查詢的方式,在一條SQL語(yǔ)句中插入另一條語(yǔ)句。SQL不限定數(shù)據(jù)的存放方法,這種特性使用戶更易集中精力于要得到的結(jié)果[11]。(2)統(tǒng)一的語(yǔ)言SQL為許多任務(wù)提供了命令,包括:①查詢數(shù)據(jù)②在表中插入、在表中修改和在表中刪除記錄③建立數(shù)據(jù)表、修改數(shù)據(jù)類型和刪除無(wú)用數(shù)據(jù)④掌控對(duì)數(shù)據(jù)和數(shù)據(jù)對(duì)象的存?、荼WC數(shù)據(jù)庫(kù)的一致性及完整性(3)是所有關(guān)系性數(shù)據(jù)庫(kù)的公共語(yǔ)言因?yàn)樗兄饕年P(guān)系性數(shù)據(jù)庫(kù)管理系統(tǒng)都會(huì)支持SQL語(yǔ)言,用戶完全可以使用SQL的技能從一個(gè)RDBMS轉(zhuǎn)移到其他上。所有用SQL編寫任何程序都是可以移植使用的[11]。1.4.3
TomCat簡(jiǎn)介本系統(tǒng)的Web服務(wù)器選用Apache開元組織提供的TomCat,因?yàn)門omCat是一個(gè)免費(fèi)的開元軟件是SUN公司推薦的web服務(wù)器。它因?yàn)榧夹g(shù)先進(jìn)、性能穩(wěn)定而深受Java開發(fā)者的喜愛和部分軟件開發(fā)商的認(rèn)可,更重要的是它運(yùn)行時(shí)占用的系統(tǒng)資源小,擴(kuò)展性好,支持負(fù)載平衡與郵件服務(wù)等開發(fā)系統(tǒng)常用的功能。另外,TomCat是一個(gè)輕量級(jí)服務(wù)器,在中小型系統(tǒng)和并發(fā)用戶不是很多的情況下被普遍使用,是開發(fā)和調(diào)試JSP程序的首選[7]。1.5JSP技術(shù)簡(jiǎn)介java服務(wù)器頁(yè)面是由SunMicrosystems公司倡導(dǎo)、其他許多公司參與一起建立的一種動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)標(biāo)準(zhǔn)。JSP技術(shù)有點(diǎn)類似ASP技術(shù),它是在傳統(tǒng)的網(wǎng)頁(yè)HTML文件中插入Java程序代碼和JSP標(biāo)記,形成JSP文件,后綴名是(*.jsp)。JSP(JavaServerPages)是一種動(dòng)態(tài)頁(yè)面技術(shù),它的主要目的是將表示邏輯從Servlet中分離出來[6]。JSP頁(yè)面由HTML代碼和嵌入其中的Java代碼所組成。服務(wù)器在頁(yè)面被客戶端請(qǐng)求以后對(duì)這些Java代碼進(jìn)行處理,然后將生成的HTML頁(yè)面返回給客戶端的瀏覽器。JavaServlet是JSP的技術(shù)基礎(chǔ),而且大型的Web應(yīng)用程序的開發(fā)需要JavaServlet和JSP配合才能完成。JSP具備了Java技術(shù)的簡(jiǎn)單易用,完全的面向?qū)ο螅哂衅脚_(tái)無(wú)關(guān)性且安全可靠[6]。1.6JSP工作原理JSP是面向服務(wù)器的,所以支持不同的瀏覽器。當(dāng)Web服務(wù)器或JSP引擎遭到JSP網(wǎng)頁(yè)的請(qǐng)求時(shí),JSP引擎會(huì)將這個(gè)請(qǐng)求對(duì)象發(fā)送給服務(wù)器端的相關(guān)組件,比如JavaBean組件等,之后由服務(wù)器端組件處理傳過來的請(qǐng)求,將會(huì)從數(shù)據(jù)庫(kù)或數(shù)據(jù)存儲(chǔ)中檢索相關(guān)的信息,之后服務(wù)器端組件將會(huì)響應(yīng)對(duì)象的請(qǐng)求返回JSP引擎[6]。JSP引擎再將響應(yīng)的對(duì)象信息傳遞給JSP頁(yè)面,再根據(jù)JSP頁(yè)面的HTML所用的格式完成對(duì)數(shù)據(jù)編排,最后Web服務(wù)器及JSP引擎再將格式化后的JSP頁(yè)面及HTML格式響應(yīng)給客戶瀏覽器[10]。這就是目前流行網(wǎng)站構(gòu)建中廣泛采用的瀏覽器——Web服務(wù)器——后臺(tái)數(shù)據(jù)庫(kù)的三層架構(gòu)模式。因?yàn)镴SP所有的程序操作全部都是在服務(wù)器端執(zhí)行,網(wǎng)絡(luò)上傳送給客戶端的數(shù)據(jù)僅僅是得到的響應(yīng)結(jié)果。1.7系統(tǒng)數(shù)據(jù)庫(kù)連接JDBC技術(shù)是JavaDataBaseConnectivity的縮寫。JDBC是SUN公司提供的一種支持基本SQL語(yǔ)言功能通用的應(yīng)用程序的接口(ApplicationProgrammingInterface)。JDBC能完成下列三件事:同一個(gè)數(shù)據(jù)庫(kù)建立連接;向數(shù)據(jù)庫(kù)建立連接;返回?cái)?shù)據(jù)庫(kù)處理后的結(jié)果。JDBC是JAVA應(yīng)用程序與數(shù)據(jù)庫(kù)的溝通紐帶。JDBC提供了服務(wù)功能:首先與數(shù)據(jù)庫(kù)建立連接。第二將編好SQL語(yǔ)句傳遞數(shù)據(jù)庫(kù)。最后從數(shù)據(jù)庫(kù)獲得SQL語(yǔ)句執(zhí)行結(jié)果。數(shù)據(jù)庫(kù)的連接處理://建立JDBC——ODBC橋sun.jdbc.odbc.JdbcOdbcDriver;//橋建立不成功時(shí)的錯(cuò)誤處理catch(ClassNotFoundExceptionevent){}//建立和數(shù)據(jù)庫(kù)的連接,并發(fā)送SQL查詢語(yǔ)句,將結(jié)果保存到rs對(duì)象中Con=建立JDBC——ODBC橋Sql=SQL查詢語(yǔ)句執(zhí)行查詢Rs=返回結(jié)果//SQL出錯(cuò)處理catch(SQLExceptione1){}第2章系統(tǒng)分析2.1需求分析(1)用戶登錄:該功能提供用戶的登錄服務(wù)。用戶設(shè)置功能只有使用正確的用戶密碼才能進(jìn)入。如果用正確密碼進(jìn)入系統(tǒng),則可具有對(duì)教師教學(xué)質(zhì)量的評(píng)價(jià)權(quán)限。否則提示錯(cuò)誤。(2)用戶管理:該功能是為用戶管理設(shè)置的,主要功能是對(duì)用戶進(jìn)行添加、刪除、修改等。方便用戶的管理。(3)錄入信息:該功能是對(duì)數(shù)據(jù)的錄入。其中包括:學(xué)生信息錄入、院校信息錄入、教師信息錄入。使用戶信息更加完善。(4)教師評(píng)價(jià):該功能是對(duì)教師教學(xué)質(zhì)量進(jìn)行系統(tǒng)的評(píng)價(jià)。主要功能包括:學(xué)生評(píng)價(jià)、院校(領(lǐng)導(dǎo)、同行)評(píng)價(jià)、教師自我評(píng)價(jià)等三個(gè)部分。這也是本系統(tǒng)最重要的組成部分之一。用戶登陸界面后,可自行對(duì)教師進(jìn)行評(píng)價(jià)。(5)統(tǒng)計(jì)分析:該功能是結(jié)合教師評(píng)價(jià)功能而計(jì)算出總評(píng)價(jià)。其中包括:統(tǒng)計(jì)結(jié)果和查詢結(jié)果兩項(xiàng)。在統(tǒng)計(jì)結(jié)果中,用戶可對(duì)前面教師評(píng)價(jià)進(jìn)行系統(tǒng)的評(píng)價(jià),可以得出對(duì)教師的總評(píng)價(jià)。在查詢結(jié)果中,用戶可以瀏覽教師被評(píng)價(jià)的結(jié)果,可對(duì)該教師有個(gè)初步認(rèn)識(shí)。(6)系統(tǒng)功能:該功能讓用戶能了解本系統(tǒng)及其使用方法。其中包括:關(guān)于、幫助、退出三部分功能。關(guān)于:闡述了系統(tǒng)所使用的軟件開發(fā)工具。幫助:系統(tǒng)的介紹了各個(gè)功能模塊的應(yīng)用。退出:退出整個(gè)系統(tǒng)。2.2系統(tǒng)功能設(shè)計(jì)系統(tǒng)要求能夠?qū)崿F(xiàn)以下功能:(1)要求學(xué)生能夠進(jìn)行選課。(2)要求學(xué)生能夠?qū)處熯M(jìn)行教學(xué)質(zhì)量評(píng)估。(3)要求教師能夠查看評(píng)教,以及對(duì)同行進(jìn)行教學(xué)質(zhì)量評(píng)估。(4)要求管理員能夠?qū)W(xué)生,教師信息進(jìn)行插入,刪除等操作(5)要求管理員能夠?qū)虒W(xué)質(zhì)量評(píng)估進(jìn)行統(tǒng)計(jì)。2.3系統(tǒng)設(shè)計(jì)思想本系統(tǒng)存在3種用戶:學(xué)生、教師、管理員。學(xué)生和教師用管理員給定的帳號(hào)、密碼登陸頁(yè)面進(jìn)行操作。登陸判定上首次基于數(shù)據(jù)庫(kù)驗(yàn)證,然后把用戶信息寫進(jìn)session,然后其他頁(yè)面采用session驗(yàn)證。系統(tǒng)結(jié)構(gòu)上采用頁(yè)面鑲嵌程序和語(yǔ)句,工作原理如下圖所示[5]。圖1在系統(tǒng)結(jié)構(gòu)中,用戶界面層通過統(tǒng)一的接口向數(shù)據(jù)庫(kù)存儲(chǔ)層發(fā)送請(qǐng)求,數(shù)據(jù)庫(kù)存儲(chǔ)層收到請(qǐng)求處理之后把數(shù)據(jù)返回到用戶界面層[4]。2.4數(shù)據(jù)庫(kù)分析數(shù)據(jù)庫(kù)各表之間的關(guān)系圖圖2數(shù)據(jù)庫(kù)各表之間的關(guān)系圖圖3課程數(shù)據(jù)表,記錄學(xué)校所開的課程。記錄課程名稱、課程編號(hào)、課程所屬年級(jí)、學(xué)期、班級(jí)以及代課老師的編號(hào)。主鍵c_no,c_flag記錄該課程是否是選修課(0表示正常課,1表示選修課)。圖4教師數(shù)據(jù)表記錄教師的基本信息:姓名、編號(hào)、性別、聯(lián)系方式等。其中d_no對(duì)應(yīng)著院系表的主鍵d_no,記錄教師所屬院系。主鍵t_no。圖5學(xué)生數(shù)據(jù)表是記錄學(xué)生基本信息的一張表。其中g(shù)_no是班級(jí)數(shù)據(jù)表中的主鍵g_no,表示該學(xué)生所屬班級(jí)。主鍵s_no圖6專業(yè)數(shù)據(jù)表記錄著專業(yè)的一些信息,包括專業(yè)名稱、專業(yè)編號(hào)等。其中p_no對(duì)應(yīng)著院系數(shù)據(jù)表中的p_no,表示該專業(yè)所屬院系。主鍵d_no圖7班級(jí)數(shù)據(jù)表記錄著學(xué)校班級(jí)信息。它是一張關(guān)鍵表,是連接院系和學(xué)生的一張表。其中d_no和p_no分別對(duì)應(yīng)著院系表和專業(yè)表的主鍵d_no和p_no。主鍵g_no。圖8評(píng)價(jià)數(shù)據(jù)表是記錄學(xué)生或教師對(duì)教師的評(píng)價(jià)數(shù)據(jù)的一張表。其中t_no表示被評(píng)價(jià)的教師編號(hào),t_no1表示評(píng)價(jià)教師編號(hào),c_no表示評(píng)價(jià)的課程編號(hào)。S_no表示評(píng)價(jià)的學(xué)生編號(hào)。E_flag表示評(píng)價(jià)標(biāo)識(shí)(0表示學(xué)生評(píng)價(jià)代課教師,1表示教師評(píng)價(jià)同行)。圖9院系數(shù)據(jù)表示記錄院系信息的數(shù)據(jù)表。主鍵d_no
第3章系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)3.1系統(tǒng)功能設(shè)計(jì)本系統(tǒng)分為學(xué)生操作界面、教師操作界面和管理員操作界面。學(xué)生界面能完成如下操作[3]。(1)個(gè)人信息:通過該功能模塊,學(xué)生能查看自己的信息。(2)教學(xué)質(zhì)量評(píng)價(jià):通過該功能模塊,學(xué)生對(duì)授課教師進(jìn)行評(píng)教。教師界面能完成如下操作:(1)查看我的評(píng)價(jià):通過該功能模塊,教師查看自己的評(píng)價(jià)分?jǐn)?shù)。管理員界面能完成如下操作:(1)學(xué)生管理:通過該功能模塊,管理員能夠查看學(xué)生信息,以及對(duì)學(xué)生的添加、更新、刪除。(2)教師管理:通過該功能模塊,管理員能夠查看教師信息,以及對(duì)教師的添加、更新、刪除。(3)評(píng)價(jià)一級(jí)指標(biāo):通過該功能模塊,管理員能夠添加和管理一級(jí)指標(biāo)信息。(4)評(píng)價(jià)二級(jí)指標(biāo):通過該功能模塊,管理員能夠添加和管理二級(jí)指標(biāo)信息。3.2用戶登錄流程圖通過系統(tǒng)功能設(shè)計(jì),畫出用戶登陸流程圖如下:圖10該版塊是對(duì)于用戶登陸的管理和操作,其中涉及到登陸的權(quán)限問題,當(dāng)用戶名為admin或教師時(shí),可以對(duì)所有信息進(jìn)行操作,包括更新,查詢,刪除等等。普通用戶只要瀏覽信息的權(quán)限。3.3系統(tǒng)功能流程圖系統(tǒng)的功能流程如下圖:圖11系統(tǒng)登陸實(shí)現(xiàn)如圖:圖12圖13圖14在使用本系統(tǒng)時(shí)均需要登錄后,才可使用,登錄時(shí)會(huì)讓你鍵入用戶名和密碼。用戶名都是管理員分配給用戶的并且具有唯一的標(biāo)示性,用戶不可更改,但是用戶可以更改自己的密碼。登錄時(shí),系統(tǒng)會(huì)根據(jù)你所輸入的用戶名和密碼,給出相應(yīng)的提示,若用戶名及密碼正確,會(huì)進(jìn)入學(xué)生的主頁(yè)面進(jìn)行相應(yīng)的操作,若用戶名及密碼都不正確,會(huì)提示重回登陸的主頁(yè)面再次登陸。其中username和userpassword是利用JSP中request對(duì)象的getParameter方法從表單中讀取的值,同時(shí)在代碼設(shè)計(jì)中將值傳遞給JSP中的session對(duì)象,方便在其他頁(yè)面中使用。3.4登錄模塊登錄模塊的主要功能:用戶可直接進(jìn)行用戶類型的選擇,用戶類型包括:管理員、教師、學(xué)生三種。登錄界面如圖10所示[2]。1.判斷是否輸入了正確的用戶名及正確的密碼,若沒有輸入,則返回,要求用戶輸入;2.判斷當(dāng)前輸入的用戶名是否存在,若不存在,則返回,要求用戶再次輸入;3.若鍵入的用戶名存在,則讀取此用戶的數(shù)據(jù),再將用戶密碼與鍵入的密碼進(jìn)行比較,若密碼錯(cuò)誤,則返回,要求用戶再次輸入;4.關(guān)閉登錄窗體。圖153.5管理員實(shí)現(xiàn)管理設(shè)計(jì)管理員功能模塊的主要功能:院系管理,課程管理,人員管理。圖16圖17院系管理:1.院系添加:功能是添加一個(gè)新的院系操作:輸入院系名稱——輸入院系的簡(jiǎn)介圖18代碼實(shí)現(xiàn):publicintaddDepartment(Departmentdepartment)throwsException{StringBuffersql=newStringBuffer();sql.append("insertintodepartment");sql.append("(");sql.append("d_no,d_name,d_introduction,d_ext1");sql.append(")");sql.append("values");sql.append("(?,?,?,?)");//System.out.println(sql.toString());Stringarr[]={department.getD_no(),department.getD_name(),department.getD_introduction(),"0"};returnExecuteSql(sql.toString(),arr);}2.院系一覽:功能是瀏覽學(xué)校所有院系操作:單擊院系一覽圖19代碼實(shí)現(xiàn):publicList<Department>queryDepartments(intpageSize,intpageNo)throwsException{List<Department>list=newArrayList<Department>();StringBuffersql=newStringBuffer();sql.append("selecttop"pageSize"*");sql.append("fromdepartmentwhereidnotin");sql.append("(selecttop"(pageNo-1)*pageSize"");sql.append("idfromdepartmentorderbyidasc)");sql.append("orderbyidasc");//desc//System.out.println(sql.toString());ResultSetrs=null;try{rs=ExecuteQuerySql(sql.toString());while(rs.next()){Departmentdepartment=newDepartment();department.setId(rs.getInt("id"));department.setD_no(rs.getString("d_no"));department.setD_name(rs.getString("d_name"));department.setD_introduction(rs.getString("d_introduction"));list.add(department);}}catch(Exceptione){throwe;}finally{Close(rs);}returnlist;}3.專業(yè)添加:功能是添加新的專業(yè)操作:選擇所屬院系——輸入專業(yè)名字——輸入專業(yè)介紹代碼實(shí)現(xiàn):publicintaddProfessional(Professionalprofessional)throwsException{StringBuffersql=newStringBuffer();sql.append("insertintoprofessional");sql.append("(");sql.append("p_no,p_name,p_introduction,d_no,d_ext1");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?)");//System.out.println(sql.toString());Stringarr[]={professional.getP_no(),professional.getP_name(),professional.getP_introduction(),professional.getD_no(),"0"};returnExecuteSql(sql.toString(),arr);}4.專業(yè)一覽:功能是瀏覽所有的專業(yè)操作:單擊專業(yè)一覽代碼實(shí)現(xiàn):publicList<Professional>queryProfessionals(intpageSize,intpageNo)throwsException{List<Professional>list=newArrayList<Professional>();StringBuffersql=newStringBuffer();sql.append("selecttop"pageSize"");sql.append("p.id,p_no,p_name,p.d_no,p_introduction,d_name");sql.append("fromprofessionalasp,departmentasd");sql.append("wherep.d_no=d.d_no
andp.idnotin");sql.append("(selecttop"(pageNo-1)*pageSize"");sql.append("idfromprofessionalorderbyidasc)");sql.append("orderbyidasc");//desc//
selecttop5p.id,p_no,p_name,p_introduction,d_name//
fromprofessionalasp,departmentasd//
wherep.d_no=d.d_no
andp.idnotin//
(selecttop10idfromprofessionalorderbyidasc)
orderbyidasc//System.out.println(sql.toString());ResultSetrs=null;try{rs=ExecuteQuerySql(sql.toString());while(rs.next()){Professionalprofessional=newProfessional();professional.setId(rs.getInt("id"));professional.setD_no(rs.getString("d_no"));professional.setP_no(rs.getString("p_no"));professional.setD_ext1(rs.getString("d_name"));professional.setP_name(rs.getString("p_name"));professional.setP_introduction(rs.getString("p_introduction"));list.add(professional);}}catch(Exceptione){throwe;}finally{Close(rs);}returnlist;}圖20課程管理:1.班級(jí)添加:功能是添加新的班級(jí)操作:選擇所屬院系——所屬專業(yè)——所屬年級(jí)——臨時(shí)班級(jí)(是/否)——輸入班級(jí)名稱代碼實(shí)現(xiàn):publicintaddGradeClass(GradeClassgradeClass)throwsException{StringBuffersql=newStringBuffer();sql.append("insertintogradeclass");sql.append("(");sql.append("g_no,g_name,g_flag,p_no,d_no,g_ext1");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?,?)");Stringarr[]={gradeClass.getG_no(),gradeClass.getG_name(),gradeClass.getG_flag()"",gradeClass.getP_no(),gradeClass.getD_no(),gradeClass.getG_ext1()};returnExecuteSql(sql.toString(),arr);}2.課程添加:功能是添加新的課程操作:選擇院系——選擇專業(yè)——選擇班級(jí)——輸入課程名——選擇年級(jí)——學(xué)期——選修(是/否)——輸入課時(shí)——輸入學(xué)分——輸入人數(shù)——選擇代課老師代碼實(shí)現(xiàn)publicintaddCourse(Coursecourse)throwsException{StringBuffersql=newStringBuffer();sql.append("insertintocourse");sql.append("(");sql.append("c_no,c_name,c_grade,c_term,g_no,c_flag,c_hours,");sql.append("c_credit,c_num1,c_num2,t_no1,t_no2");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?,?,?,?,?,?,?,?)");Stringarr[]={course.getC_no(),course.getC_name(),course.getC_grade(),course.getC_term(),course.getG_no(),course.getC_flag()"",course.getC_hours()"",course.getC_credit()"",course.getC_num1()"",course.getC_num2()"",course.getT_no1(),course.getT_no2()};//System.out.print(course.getG_no());returnExecuteSql(sql.toString(),arr);}3.評(píng)價(jià)管理:功能是管理錄入的評(píng)價(jià)操作:單擊評(píng)價(jià)管理;可對(duì)評(píng)價(jià)進(jìn)行查看與刪除代碼實(shí)現(xiàn):publicintaddEvaluation(Evaluationevaluation)throwsException{StringBuffersql=newStringBuffer();sql.append("insertintoevaluation");sql.append("(");sql.append("e_date,s_no,t_no,t_no1,e_flag,c_no,evaluation1,");sql.append("evaluation2,evaluation3,evaluation4,evaluation5,evaluation6,e_content");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?,?,?,?,?,?,?,?,?)");Stringarr[]={evaluation.getE_date(),evaluation.getS_no(),evaluation.getT_no(),evaluation.getT_no1(),evaluation.getE_flag()"",evaluation.getC_no(),evaluation.getEvaluation1()"",evaluation.getEvaluation2()"",evaluation.getEvaluation3()"",evaluation.getEvaluation4()"",evaluation.getEvaluation5()"",evaluation.getEvaluation6()"",evaluation.getE_content()};returnExecuteSql(sql.toString(),arr);//returnExecuteSqlList(list);}圖21人員管理:1.教師添加:功能是添加新的教師操作:輸入教師姓名——選擇院系——性別——聯(lián)系電話——聯(lián)系地址——選擇職稱代碼實(shí)現(xiàn):publicintaddTeacher(Teacherteacher)throwsException{Log.Start(this.getClass().getName()".addTeacher");StringBuffersql=newStringBuffer();sql.append("insertintoteacher");sql.append("(");sql.append("t_name,t_no,t_password,t_sex,t_phone,t_address,g_no1,");sql.append("g_no2,g_no3,d_no,t_title,t_level,t_ext1");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?,?,?,?,?,?,?,?,?)");System.out.println(sql.toString());Stringarr[]={teacher.getT_name(),teacher.getT_no(),teacher.getT_password(),teacher.getT_sex(),teacher.getT_phone(),teacher.getT_address(),teacher.getG_no1(),teacher.getG_no2(),teacher.getG_no3(),teacher.getD_no(),teacher.getT_title(),teacher.getT_level(),teacher.getT_ext1()};Log.End(this.getClass().getName()".addTeacher");returnExecuteSql(sql.toString(),arr);}2.教師一覽:功能是瀏覽所有的教師操作:單擊教師一覽;對(duì)教師進(jìn)行刪除操作代碼實(shí)現(xiàn):publicList<Teacher>queryTeachers(intpageSize,intpageNo)throwsException{List<Teacher>list=newArrayList<Teacher>();StringBuffersql=newStringBuffer();sql.append("selecttop"pageSize"");sql.append("t.id,t_no,t_name,t.d_no,d_name");sql.append("fromteacherast,departmentasd");sql.append("wheret.d_no=d.d_no
andt.idnotin");sql.append("(selecttop"(pageNo-1)*pageSize"");sql.append("idfromteacherorderbyidasc)");sql.append("orderbyidasc");//desc//
selecttop5p.id,p_no,p_name,p_introduction,d_name//
fromprofessionalasp,departmentasd//
wherep.d_no=d.d_no
andp.idnotin//
(selecttop10idfromprofessionalorderbyidasc)
orderbyidascSystem.out.println(sql.toString());ResultSetrs=null;try{rs=ExecuteQuerySql(sql.toString());while(rs.next()){Teacherteacher=newTeacher();teacher.setId(rs.getInt("id"));teacher.setD_no(rs.getString("d_no"));teacher.setT_no(rs.getString("t_no"));teacher.setT_name(rs.getString("t_name"));teacher.setT_ext1(rs.getString("d_name"));list.add(teacher);}}catch(Exceptione){throwe;}finally{Close(rs);}returnlist;}3.學(xué)生添加:功能是添加新的學(xué)生操作:選擇院系——選擇專業(yè)——選擇班級(jí)——輸入名字——輸入學(xué)號(hào)——選擇性別——輸入聯(lián)系號(hào)碼——輸入聯(lián)系地址代碼實(shí)現(xiàn):publicintaddStudent(Studentstudent)throwsException{Log.Start(this.getClass().getName()".addStudent");StringBuffersql=newStringBuffer();sql.append("insertintostudent");sql.append("(");sql.append("s_name,s_no,s_password,s_sex,s_phone,s_address,g_no");sql.append("");sql.append(")");sql.append("values");sql.append("(?,?,?,?,?,?,?)");Stringarr[]={student.getS_name(),student.getS_no(),student.getS_password(),student.getS_sex(),student.getS_phone(),student.getS_address(),student.getG_no()};Log.End(this.getClass().getName()".addStudent");returnExecuteSql(sql.toString(),arr);}4.學(xué)生一覽:瀏覽所有的學(xué)生操作:單擊學(xué)生一覽;可對(duì)學(xué)生進(jìn)行刪除操作代碼實(shí)現(xiàn):publicintqueryStudentCount()throwsException{Stringsql="selectcount(*)fromstudentwhere1=1";intcount=0;ResultSetrs=null;try{rs=ExecuteQuerySql(sql);if(rs.next()){count=rs.getInt(1);}}catch(Exceptione){throwe;}finally{Close(rs);}returncount;}
第4章系統(tǒng)的測(cè)試4.1程序調(diào)試在項(xiàng)目開發(fā)的過程中存在大量的代碼和程序,存在一些錯(cuò)誤是必然的。對(duì)于語(yǔ)句的語(yǔ)法錯(cuò)誤,在程序部署的時(shí)候會(huì)自動(dòng)提示,再次請(qǐng)求立即修正,因此,這類錯(cuò)誤通常比較容易找到。但是其他類錯(cuò)誤在程序運(yùn)行時(shí)由于錯(cuò)誤的操作或者對(duì)某些數(shù)據(jù)的計(jì)算公式的業(yè)務(wù)邏輯錯(cuò)誤引起的錯(cuò)誤結(jié)果。這種錯(cuò)誤隱蔽性比較強(qiáng),有可能會(huì)出現(xiàn),有可能又不出現(xiàn),所以,對(duì)這一類動(dòng)態(tài)發(fā)生的錯(cuò)誤的檢查可謂是非常耗時(shí)的[10]。4.2程序的測(cè)試4.2.1測(cè)試地位的重要性和目的(1)測(cè)試地位的重要性軟件的測(cè)試在軟件生命周期中所占據(jù)的地位很重要,所以在傳統(tǒng)的瀑布模型中,軟件測(cè)試僅僅處在運(yùn)行維護(hù)階段之前,是軟件產(chǎn)品完成且交給用戶使用之前保證軟件運(yùn)行質(zhì)量的必要手段?,F(xiàn)在,軟件工程界已經(jīng)趨向于一種新的觀點(diǎn),認(rèn)為軟件生命周期每一階段中都必須包含軟件測(cè)試,檢驗(yàn)本階段的工作成果接近預(yù)期目標(biāo),盡早的發(fā)現(xiàn)錯(cuò)誤及以修正錯(cuò)誤,若不在早期開發(fā)階段進(jìn)行軟件測(cè)試,錯(cuò)誤的延時(shí)將擴(kuò)散導(dǎo)致最后軟件成品測(cè)試的嚴(yán)重困難。(2)測(cè)試的目的如果測(cè)試的目的是為了盡可能多地查找出成品錯(cuò)誤,測(cè)試就應(yīng)該直接的針對(duì)此成品軟件比較復(fù)雜的部分或是之前出錯(cuò)比較多的位置[7]。①軟件測(cè)試目標(biāo)是找到軟件錯(cuò)誤并執(zhí)行程序全部過程;②測(cè)試目的是為證明程序是否錯(cuò),并不是證明程序一定沒有錯(cuò)誤;③一個(gè)好的測(cè)試用例目的在于是否發(fā)現(xiàn)目前為止未發(fā)現(xiàn)的程序錯(cuò)誤;④一個(gè)成功的好的測(cè)試是為了找到至今并未發(fā)現(xiàn)的程序的錯(cuò)誤的測(cè)試。這種觀點(diǎn)可以提醒人們測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。但是僅憑字面意思理解這一觀點(diǎn)可能會(huì)產(chǎn)生誤導(dǎo),認(rèn)為發(fā)現(xiàn)錯(cuò)誤是軟件測(cè)試的唯一目,查找不出錯(cuò)誤的測(cè)試就是沒有價(jià)值的,事實(shí)并非如此。第一,測(cè)試并不僅僅是為了要找出錯(cuò)誤。通過分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的分布特征,可以幫助項(xiàng)目管理者找到當(dāng)前所使用的軟件過程的缺陷,更加方便改進(jìn)[8]。與此同時(shí),這種分析能幫助工程師設(shè)計(jì)出更有針對(duì)性地檢測(cè)方法,改進(jìn)測(cè)試有效性。第二,即使是沒有發(fā)現(xiàn)錯(cuò)誤的測(cè)試也是有價(jià)值的,完整的有效的測(cè)試是評(píng)定測(cè)試質(zhì)量的一種方法。4.2.2測(cè)試的步驟和開發(fā)過程的類似,測(cè)試過程應(yīng)該分步的驟進(jìn)行,每一步在邏輯上都是前一個(gè)的繼續(xù)。大型的軟件系統(tǒng)一般由若干個(gè)小的系統(tǒng)組成,每個(gè)小的系統(tǒng)又由若干個(gè)小模塊組成。因此,大型軟件系統(tǒng)的測(cè)試可以分三個(gè)步驟組成:(1)模塊測(cè)試在模塊測(cè)試步驟中發(fā)現(xiàn)的一般是編碼和詳細(xì)的設(shè)計(jì)錯(cuò)誤。(2)系統(tǒng)測(cè)試在系統(tǒng)測(cè)試步驟中發(fā)現(xiàn)的一般是軟件業(yè)務(wù)邏輯的錯(cuò)誤,也可發(fā)現(xiàn)業(yè)務(wù)需求中的錯(cuò)誤。(3)驗(yàn)收測(cè)試在驗(yàn)收測(cè)試步驟中發(fā)現(xiàn)的一般是本系統(tǒng)需求說明書中的錯(cuò)誤。4.2.3系統(tǒng)的測(cè)試系統(tǒng)測(cè)試采用的是黑盒測(cè)試,黑盒測(cè)試目的在于測(cè)試軟件是否能滿足功能需求它主要診斷以
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年北師大版九年級(jí)生物上冊(cè)階段測(cè)試試卷
- 2025年人教版(2024)九年級(jí)地理下冊(cè)月考試卷含答案
- 2025年教科新版高一地理上冊(cè)階段測(cè)試試卷含答案
- 2025年粵人版九年級(jí)地理下冊(cè)階段測(cè)試試卷含答案
- 2025年中圖版八年級(jí)歷史上冊(cè)月考試卷
- 2025年蘇人新版九年級(jí)歷史下冊(cè)月考試卷
- 2025年人教版(2024)九年級(jí)歷史下冊(cè)階段測(cè)試試卷
- 2025年粵教新版選擇性必修3歷史下冊(cè)階段測(cè)試試卷含答案
- 2025年人教A新版九年級(jí)歷史上冊(cè)階段測(cè)試試卷含答案
- 2025版牛舍智能化溫控系統(tǒng)安裝工程承包合同4篇
- 2025年上半年江蘇連云港灌云縣招聘“鄉(xiāng)村振興專干”16人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- DB3301T 0382-2022 公共資源交易開評(píng)標(biāo)數(shù)字見證服務(wù)規(guī)范
- 人教版2024-2025學(xué)年八年級(jí)上學(xué)期數(shù)學(xué)期末壓軸題練習(xí)
- 江蘇省無(wú)錫市2023-2024學(xué)年八年級(jí)上學(xué)期期末數(shù)學(xué)試題(原卷版)
- 俄語(yǔ)版:中國(guó)文化概論之中國(guó)的傳統(tǒng)節(jié)日
- 2022年湖南省公務(wù)員錄用考試《申論》真題(縣鄉(xiāng)卷)及答案解析
- 婦科一病一品護(hù)理匯報(bào)
- 哪吒之魔童降世
- 2022年上海市各區(qū)中考一模語(yǔ)文試卷及答案
- 2024年全國(guó)統(tǒng)一高考數(shù)學(xué)試卷(新高考Ⅱ)含答案
- 我國(guó)無(wú)菌包裝行業(yè)消費(fèi)量已超千億包-下游需求仍存擴(kuò)容潛力
評(píng)論
0/150
提交評(píng)論