


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、.科 技 學 院課程設計報告( 2011- 2012年度第2學期)名 稱:軟件工程課程設計 院 系: 信息工程系 班 級: 軟件09K2 學 號: 1 學生姓名: 何少華 指導教師: 宋雨 郭豐娟 設計周數: 2 成 績:日期:2012年 6 月28. v.軟件工程課程設計任務書一、目的、要求通過該課程設計要使學生樹立起強烈的工程化意識,用工程化思想和方法開發軟件。切實體會出用軟件工程的方法開發系統與一般程序設計方法的不同之處,學生在對所開發的系統進行軟件計劃、需求分析、設計的基礎上,實現并測試實際開發的系統。通過一系列規范化軟件文檔的編寫和系統實現,使學生具備實際軟件項目分析、設計、實現和測
2、試的基本能力。二、主要內容要求學生掌握軟件工程的基本概念、基本方法和基本原理,為將來從事軟件的研發和管理奠定基礎。每個學生選擇一個小型軟件項目(內容參照計算機綜合實踐指導,宋雨等編著,清華大學出版社出版),按照軟件工程的生命周期,完成軟件計劃、需求分析、軟件設計、編碼實現、軟件測試及軟件維護等軟件工程工作,并按要求編寫出相應的文檔。具體的方法可以選用傳統的軟件工程方法或者面向對象的方法,開發環境和工具不限。三、進度計劃序號設計(實驗)內容完成時間備注1軟件計劃、軟件需求分析、軟件設計,制定出軟件測試計劃,軟件測試用例第1周第1,2,3天要求上機前做好充分的文檔準備2各模塊錄入、編碼、編譯及單元
3、測試第1周的第4、5天3聯調及整體測試,第2周的第1、2天4驗收,學生講解、演示、回答問題第2周的第3天四、設計成果要求1至少提交4個文檔,包括軟件計劃、軟件需求規格說明書、軟件設計說明書、軟件測試計劃,要求文檔格式規范、邏輯性強(可參考計算機綜合實踐指導中給出的要求及格式)、圖表規范;2獨自實現了系統的某些功能,基本達到了要求的性能,經過了測試,基本能運行。五、考核方式(1)提交的文檔規范,工作量大,文檔邏輯性強、正確,按計算機綜合實踐指導標準考核(附軟件工程課程設計實驗報告評分表)占60%(2)系統驗收、講解、答辯占25%(3)考勤占15%學生姓名:指導教師:2012年6 月17日軟件工程
4、課程設計實驗報告評分表專業班級學號題目標準分數得分()標準分數得分()標準分數得分()報告規范,符合要求20報告較規范,基本符合要求17報告不規范,不符合要求1110169819157614541813321210工作量大,報告完整20工作量適中,報告較完整17工作量較小,報告不完整14191613181512文檔邏輯性強、正確,語言流暢20文檔邏輯性較強,無明顯錯誤,文字表述較流暢16文檔有邏輯性,有明顯錯誤,語言表述不順暢12111915109181487171365實驗報告成績評分教師簽字1 需求分析所謂需求分析是軟件工程數據庫信息管理系統開發的很重要的一步,在軟件工程中,需求分析指的是
5、在建立一個新的或改變一個現存的電腦系統時描寫新系統的目的、范圍、定義和功能時所要做的所有的工作。需求分析是軟件工程中的一個關鍵過程。在這個過程中,系統分析員和軟件工程師確定顧客的需要。只有在確定了這些需要后他們才能夠分析和尋求新系統的解決方法。需求分析階段的任務是確定軟件系統功能,下面重兩個方面來說明試卷管理系統的需求分析。1.1 市場需求分析學校教務管理工作中一項重要的工作是考試管理工作,每學期從各科目考試,從組織出卷到試卷的印刷及試卷的管理等工作非常繁瑣且工作量大,這種組織管理方式不僅工作任務繁重而且試卷的標準化程度、難易程度、題量大小等各方面難以控制,難以形成有效的試題庫,不利于充分發揮
6、歷年來的優秀試題以及試卷的作用,給試題和試卷的管理帶來很多問題和困難。鑒于這種情況,利用計算機進行試卷的自動生成并逐步積累形成有效的試題庫,對試題和試卷的管理將變的高效和快捷,對提高工作效率,使試卷管理逐步走向正規化和自動化將起到十分重要的作用。它解決傳統手動出卷的很多問題。例如:避免了不必要的重復勞動,節約了人力資源及時間;使用科學的衡量、評價及統一試卷難易度、試卷的質量的有效手段;大幅度降低了試卷出現錯漏缺的機率,減少了不必要的麻煩。1.2 功能需求分析題庫管理:根據用戶需求,系統應該能夠維持一個存有數千道以上試題的題庫。系統應當允許教師在獲得權限的情況下隨時能夠進行試題補充且試題的題型可
7、有多種多樣試題難度、區分度也有不同。操作員能夠按照自己的需要,隨時可以對題庫中已有的試題進行修改、刪除,同時還可以查詢和瀏覽試題。出卷管理:根據用戶提出的要求,可以進行人工組卷。另外,從題庫中抽取全部所需的試題之后,要求系統能夠按照一般試卷的編排要求,將抽取的試題進行排版,并以標準的格式輸出到Word文檔中。同時,也應能夠生成試卷的標準答案并輸出到Word文檔中。權限管理:系統管理員可以增加或刪除操作人員并指定操作人員的權限,可對用戶權限進行修改,從而保證系統在實施中的靈活性。該系統已基本滿足教學需要,為實現教學改革,改變傳統的出卷方式,實現教考分離起到了積極的促進作用。但程序仍還有諸多有待完
8、善的地方,程序并未充分優化。隨著計算機技術的不斷發展和普及,將會對教學工作提出更高的要求,該系統必須要不斷地改進,從而使得教學工作更加合理和快捷。具體的功能實現l 試題庫的建立和基本維護,包括試題的錄入、刪除、修改以及查看題庫中試題的基本信息、試題所帶圖形的裝入與維護。l 指定出題,包括試題的手工移入、移出等;l 自動出題,試卷組裝,word編輯,包括選定試題類型后通過隨機函數執行自動出題功能并輸出到word進行編輯;l 系統管理,包括用戶權限的設置和修改,增加和刪除用戶。1) 試題庫管理試題管理的主要目的是維護題庫中的試題及各項參數輸出及題庫查詢。其中包括題庫編輯、試題查詢。題庫編輯;其內容
9、包括創建題庫,題庫中試題的修改和增添、刪除。試題查詢:本模塊的主要功能是按照用戶設置的查詢條件對試題進行快速查詢。用戶可以根據章節號、題型、難度、試題編號等信息來查詢試題的內容及答案等信息。2) 試卷管理該模塊可根據要求實現試卷的自動/人工出卷,自動生成的試卷試題由系統隨機抽取,由于題庫中的試題按照試題的類型分類,故隨機抽出的試題難易適中,既可滿足一般考試的要求又避免了人為因素,增強了試卷的可信度,盡管自動生成試卷符合規范化考試的要求,但為了滿足不同用戶的特殊需要,特設置了手工出卷的操作,這樣就增加了系統的通用性與靈活性。此外,該模塊還可根據用戶的要求生成關于相應試卷的文檔。3) 系統管理可增
10、加刪除系統操作人員,并設定操作人員的權限。通過對用戶進行權限管理范圍設定,減輕操作內容,也可對單個用戶權限及范圍進行修訂,從而保證系統在實施中的靈活性。同時用戶也對密碼進行修改,保證安全性。1.3 技術可行性分析現在計算機幾乎是全國所有公司上班的必備物品,計算機以后和人們的生活工作息息相關了,在加上現在做WEB服務的軟件也越來越成熟,為我能成功的租出這套系統提供很高的硬件環境及技術上的基礎。本系統主要是使用JSP + Servlet+ sqlserver2008實現,Web服務器用tomcat。這些技術都是現在比較發展快而且很成熟的技術,所以也為我能更好更快的做出此系統提供了大量的現成的代碼和
11、思想。1.4 性能分析所開發的系統集試題管理和試卷命題等功能為一體可以使教師便捷地對試卷庫中的試題進行管理。按要求命題生成試卷以及對試卷質量做綜合評價。使每套試卷都具有結構合理性和覆蓋全面性。系統為教師和學生提供了一個功能強大的平臺,通過這個平臺,教師可以根據實際教學狀況來組成相應的試題和試卷,學生可以對課程進行有效的復習。在實際應用中不僅可以減輕教師工作量,而且還為學生提供了一種新的學習途徑。2各子系統的數據流程圖2.1系統管理子系統圖2-1 系統管理子系統的數據流程圖2.2題庫管理子系統圖2-2 題庫管理子系統的數據流程圖23總的流程圖3概要設計和邏輯設計3.1概要設計根據需求分析和數據流
12、圖的結果:由于各個表之間是否具有索引關系,因此得到各E-R圖以及關系模型:圖3-1 用戶的E-R 圖圖3-2 題庫的E-R圖圖3-3 注冊的E-R圖. 圖3-4 系統總的E-R 圖3.2 邏輯設計根據總E-R圖中的實體與實體之間的聯系以及轉換的一般原則,得到如下的關系模型:1. 用戶表(用戶名,用戶密碼,用戶類型)2. 注冊表(用戶名,用戶密碼,用戶證件號,用戶類型)3.題庫表(試題編號,試題科目,試題難度,試題類型,知識點,試題答案,)函數依賴關系分別為:1.圖3-5 用戶表的依賴關系圖3-6 題庫表的依賴關系4數據庫設計數據庫管理系統(DBMS)是指數據庫系統中管理數據的軟件系統。對數據庫
13、的一切操作,包括定義、更新及各種控制,都是通過DBMS進行的。根據數據模型的不同,DBMS可以分成層次型、網狀型、關系型等。SQL server2008就是一種關系型數據庫管理系統。根據概要設計和邏輯設計,數據庫原理試卷庫生成系統后臺數據庫有3張表組成,分別為用戶表,注冊表,題庫表。4.1 用戶表的設計用戶表主要包含系統用戶的基本信息:用戶名、用戶密碼、用戶類型。用戶類型有三種,分別為學生,老師和管理員,不同的用戶身份權限不一樣。如系統管理員可以進入系統管理、題庫管理、試卷管理和輔助功能,但學生只能進入系統管理的修改密碼,試卷管理和輔助功能。考慮到char和varchar的類型的不同。Varc
14、har的字節數可變,而且char的字節數固定,如果輸入的字符少于規定的字節數,會自動填充。因此,選擇了varchar類型,這樣比較容易判斷用戶名和密碼是否正確。表4-1 用戶表列名數據類型允許為空主鍵用戶名Varchar(50)noyes用戶密碼Varchar(50)nono用戶類型Varchar(50)nono4.2 題庫表的設計題庫表主要包含了題目的各項信息,如試題編號,試題難度,章節,類型,試題內容以及答案。考慮到在自動出卷的時候,要根據試題難度進行選題,所以試題難度的數據類型為varchar。試題內容和試題答案都可以插入圖片,因此數據類型為image。試題編號設置為自動編號。試題類型主
15、要為五種,分別為選擇題、填空題、簡答題、設計題和綜合題。試題難度分為難、中、易。試題分值一般規定為選擇題和填空題為3分,后面類型的題目由系統管理員自行定義。表4-2 題庫表的設計列名數據類型可否為空主鍵試題編號int(4)Noyes試題科目char(20)Nono試題難度Varchar(50)Nono試題類型char(10)Nono知識點Image(16)Nono試題答案Image(16)Nono4.3注冊信息表的設計注冊信息表主要是用來注冊新用戶的各項信息。它包含了用戶名,用戶密碼,用戶證件號,用戶類型各項屬性。且信息表號是采用自動編號。表4-3 注冊信息表列名數據類型可否為空主鍵用戶名Va
16、rchar(50)Noyes用戶密碼Varchar(50)Noyes用戶類型Varchar(50)Nono用戶證件號Varchar(50)Nono5.系統的詳細設計和實現該系統設計主要包括五大模塊,分別為登錄模塊、注冊模塊、主界面模塊、系統管理模塊、題庫管理模塊、在與各種數據庫建立連接的時候,用到了通過編寫DB類存儲Web應用所用到常用據庫操作的方法,供Web調用; 代碼:import java.sql.*;public class DBConn Connection conn=null;Statement state=null;String sql="String driverNa
17、me = ".microsoft.sqlserver.jdbc.SQLServerDriver" /加載JDBC驅動String dbURL = "jdbc:sqlserver:/localhost:1433; DatabaseName=PaperManagerDB" /連接服務器和數據庫sampleString userName = "sa" /默認用戶名String userPwd = " /密碼public static Connection getConnection()Connection conn=null;St
18、atement state=null;String driverName = ".microsoft.sqlserver.jdbc.SQLServerDriver" String dbURL = "jdbc:sqlserver:/localhost:1433; DatabaseName=PaperManagerDB" String userName = "sa" /默認用戶名String userPwd = " /密碼try Class.forName(driverName); conn = DriverManager.ge
19、tConnection(dbURL, userName, userPwd); /System.out.println("Connection Successful!"); /如果連接成功 控制臺輸出Connection Successful! catch (Exception e) e.printStackTrace(); return conn;public static void closeStatement(PreparedStatement pstate)tryif(pstate!=null)pstate.close();pstate=null;catch(SQLE
20、xception e)e.printStackTrace();public static void closeConnection(Connection conn)tryif(conn !=null&&!conn.isClosed()conn.isClosed();catch(SQLException e)e.printStackTrace();public static void closeResultSet(ResultSet res)try if (res!=null) res.close();res=null; catch (SQLException e) e.prin
21、tStackTrace();5.1 登錄模塊的設計登錄模塊主要是認證登錄人的身份是否合法,登錄權限也要進行認證。當用戶名用戶密碼錯誤時會進行報錯,當用戶身份合法后會進行權限檢查,根據權限開放或者限制其能使用的功能。根據登錄模塊主要功能,可得流程圖:圖5-2 登錄流程圖登錄模塊: 接受用戶輸入,通過javascript判斷輸入的合法性,若合法,則提交到登錄頁的jsp處理,通過查詢數據庫,判斷是否存在此用戶,或存在,剛進入主功能頁面,并保存登錄信息,若不存在則顯示:密碼錯誤或用戶名不正確。窗體的運行界面:圖5-3 用戶登錄界面相關代碼:function on_submit()if(form1.us
22、ername.value=")alert("用戶名不能為空,請輸入用戶名!");form1.username.focus();return false;if(form1.password.value=")alert("用戶密碼不能為空,請輸入用戶密碼!");form1.password.focus();return false;5.2 主界面模塊設計當輸入密碼驗證成功后,就進入系統主程序界面,主程序界面主要實現如下功能:(1)選擇主界面的菜單,調用相應程序,進行相應的系統操作。(2)顯示用戶名、權限、登錄時間和設計主題。當系統管理員登
23、錄到主界面時,所有的菜單項顯示為可用;以用戶身份登錄時候,系統管理下的用戶管理以及題庫管理不可用。主程序界面如下:圖5-4 主界面窗體5.3注冊模塊的設計注冊用戶的流程圖為:圖5-5 修注冊用戶的流程圖圖5-6 注冊用戶的界面5.4用戶管理模塊的設計用戶管理模塊主要是系統管理員對用戶的管理,包括對用戶的相關信息的修改和刪除用戶。一般用戶不可用。相關流程圖如下:圖5-7 用戶刪除的流程圖5.5查看試題查看試題主要是看試題的難度,知識點等等,相關流程圖如下:圖5-8 查看試題的流程圖圖5-9 查看試卷的界面5.6增加試題主要完成增加試題的功能,相關流程圖如下:圖5-10 增加試題的流程圖圖5-11
24、 增加試題的界面5.7刪除試題主要執行對試題的刪除功能,相關流程圖如下:圖5-12 刪除試題的流程圖圖5-13 刪除試題的界面5.7試卷管理的模塊試卷管理模塊是整個試卷生成系統的核心。試卷生成主要是自動生成試卷。自動出卷是通過用戶選擇的生成試卷的條件,隨機地選擇試題,自動完成試卷的生成。自動生成試卷最重要的是要掌握自動出卷的算法。算法概要:自動組卷得的過程是根據某些約束條件,在試題庫中選擇滿足約束條件試題的過程。這些約束條件一般是指題型、難度、分值、考試所需章節等約束。這些約束條件如果看作是局部約束條件,那么試卷將達到各項指標的均衡,這樣就形成了全局的約束條件。從這個意義上,計算機的自動組卷實
25、際上就是一個約束滿足的過程。在自動出卷過程中,筆者為了排除同一份試卷中出現重復試題。采取方法是將滿足要求試題的試題編號保存到一個數組里面,下次隨機抽取的時候,將試題編號與數組里面的進行比較,如果出現重復,重新進行抽題。如果不同,將該試題編號保存到數組。如此類推,只到完成抽題。在該過程,為了防止死循環,筆者設置了循環次數,如果超過該次數,將顯示沒有滿足該要求的試題。實現自動生成試卷的流程圖:圖5-14 自動出卷的流程圖圖5-15 自動出卷界面5.8 輸出到word當生成試卷后,如果覺得字體或者內容存在問題,筆者可以進行修改。點擊文件中,可以對試卷按照指定的地址以word文檔的形式進行保存。圖5-
26、16輸出到word界面6、軟件測試6.1 軟件功能測試以及方法介紹軟件測試就是為了發現程序中的錯誤而執行的必要過程,它的目標是盡可能多的發現并排除軟件中潛在的錯誤,最終把一個高質量的系統交給用戶使用。測試任何軟件產品都有兩種方法:如果已經知道了產品應該具有的功能,可以通過測試來檢驗是否每個功能都能正常使用;如果知道產品內部工作過程,可以通過測試來檢驗產品內部動作是否按照產品規格說明書的規定正常進行。前一個方法稱為黑盒測試,后一種方法稱為白盒測試。黑盒測試是把程序看成一個黑盒子,可以不考慮程序的內部結構和處理過程。也就是說,黑盒測試是在程序接口處進行測試,它只檢查程序功能是否能按產品規格說明書的
27、規定正常運行。白盒測試可以把程序看成裝在一個透明的白盒里,這種方法按照程序內部的邏輯測試程序,檢驗程序中的每條通路是否能按預定要求正常運行。6.2 本系統的測試在測試主要是通過快捷鍵F4運行,快捷鍵F7進行單步調試。在調試過程中,可以通過看里面參數的變化是否正確。本系統在開發中出現的問題和調試方法如下:(1)在測試登錄界面時,雖然筆者輸入的用戶名和密碼都正確,但是仍然顯示輸入的用戶名和密碼錯誤。最后,發現后臺的數據庫的數據類型定義錯誤。筆者把用戶名和用戶密碼定義為char類型,字符長度為20。而char類型是固定的,如果當輸入的字符長度小于定義的長度,將會以空格填充。例如后臺數據庫中輸入abc,在數據庫中將會保存為“abc ”,因此當用戶名輸入為”abc”,進行字符串比較,就會顯示不相等,因此就不能登錄成功。后來,筆者將數據類型定義為varchar類型。Varchar類型存儲時,只存入數據的實際值。定義的數據長度代表能夠存入的數據的最大長度。(2)在測試試卷自動生成過程中,發現生成的試題存在重復,于是通過定義一個數組存放選中試
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 墻裙飾板行業直播電商戰略研究報告
- 二零二五連帶保證協議
- 二零二五版境外放款協議模板
- 2025廠級員工安全培訓考試試題考試直接用
- 2024-2025新入職工入職安全培訓考試試題含答案【基礎題】
- 25年公司級安全培訓考試試題【突破訓練】
- 農村信用投資合同
- 工資發放周期協議
- 2025-2030中國PC波紋板行業市場發展現狀及發展趨勢與投資策略研究報告
- 2025-2030中國M2M網關市場深度調查及發展策略分析研究報告
- 湖南省示范性高中2024-2025學年高二下學期2月聯考 物理試卷(含解析)
- 2025年《宏觀經濟政策與發展規劃》考前通關必練題庫(含答案)
- 服裝公司品質(質量)管理手冊
- 一年級道德與法治下冊素養教案第10課 相親相愛一家人
- 辦公樓弱電系統設計方案
- 私募投資學試題及答案
- 2025年合肥二模數學試題及答案
- 不要慌太陽下山有月光二部合唱簡譜
- 干凈整潔的個人衛生習慣
- 光伏補貼申請流程
- 小數與單位換算(說課稿)-2023-2024學年四年級下冊數學人教版
評論
0/150
提交評論