版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、46/46摘要隨著現(xiàn)代計算機信息技術、互聯(lián)網(wǎng)技術的迅猛發(fā)展,現(xiàn)代化的計算機技術與網(wǎng)絡技術已經(jīng)逐步開始深入應用到各個領域。傳統(tǒng)考試需要老師編寫試卷、安排考試、安排監(jiān)考、收取試卷、評改試卷、講評試卷和分析試卷。這個過程漫長而復雜,已經(jīng)越來越不適合當今現(xiàn)代教學的需要。隨著計算機及網(wǎng)絡技術的發(fā)展,計算機專業(yè)英語在線考試應運而生。本系統(tǒng)采用ASP.NET 技術作為創(chuàng)建應用程序的方式,以C#作為編程語言,采用SQL Server 數(shù)據(jù)庫作為后臺數(shù)據(jù)庫。它是基于Browser/Server結構下形成的數(shù)據(jù)驅動的Web應用程序。遵循了軟件工程方法論進行系統(tǒng)分析、總體設計、詳細設計和軟件測試。實現(xiàn)了試題庫管理、
2、試卷生成、評卷管理、成績管理等功能。關鍵詞: 軟件工程;C#;ASP.NET;考試系統(tǒng)AbstractWith the rapid development of modern computer information technology, Internet technology, modern computer technology and network technology has gradually begun in-depth applied to various fields. Traditional test requires teachers to write papers,
3、examination arrangements, arrangements for examiners to collect papers, marking papers, critique papers and analysis papers. This process is long and complex, has less and less suitable for the needs of todays modern teaching. With the development of computer and network technology, Computers online
4、 exam came into being. The system uses ASP.NET technology as a way to create applications to C # as a programming language, using the SQL Server database as the backend database. It is based on the data under the Browser / Server structure formation driven Web applications. Follow the software engin
5、eering methodology for system analysis, design, detailed design, and software testing. Achieve a test library management, paper production, marking management, performance management and other functions. Keywords: software engineering; C #; ASP.NET; examination system目錄 TOC o 1-3 h z u HYPERLINK l _
6、Toc388567048 1 概述 PAGEREF _Toc388567048 h 4 HYPERLINK l _Toc388567049 1.1 開發(fā)背景 PAGEREF _Toc388567049 h 4 HYPERLINK l _Toc388567050 1.2 項目提出的意義 PAGEREF _Toc388567050 h 4 HYPERLINK l _Toc388567051 1.3 課題研究現(xiàn)狀 PAGEREF _Toc388567051 h 5 HYPERLINK l _Toc388567052 1.4 初步設計方法與實施方案 PAGEREF _Toc388567052 h 5
7、HYPERLINK l _Toc388567053 2 系統(tǒng)開發(fā)環(huán)境介紹 PAGEREF _Toc388567053 h 6 HYPERLINK l _Toc388567054 2.1 ASP.NET 簡介 PAGEREF _Toc388567054 h 6 HYPERLINK l _Toc388567055 2.2 .NET Framework PAGEREF _Toc388567055 h 6 HYPERLINK l _Toc388567056 2.3 C#介紹 PAGEREF _Toc388567056 h 7 HYPERLINK l _Toc388567057 2.4 SQL Serv
8、er數(shù)據(jù)庫簡介 PAGEREF _Toc388567057 h 8 HYPERLINK l _Toc388567058 2.5 B/S架構 PAGEREF _Toc388567058 h 8 HYPERLINK l _Toc388567059 3 系統(tǒng)分析 PAGEREF _Toc388567059 h 12 HYPERLINK l _Toc388567060 3.1 可行性分析 PAGEREF _Toc388567060 h 12 HYPERLINK l _Toc388567061 3.2 系統(tǒng)需求分析 PAGEREF _Toc388567061 h 13 HYPERLINK l _Toc3
9、88567062 3.3 系統(tǒng)重要流程 PAGEREF _Toc388567062 h 13 HYPERLINK l _Toc388567063 4 系統(tǒng)總體設計 PAGEREF _Toc388567063 h 15 HYPERLINK l _Toc388567064 4.1 系統(tǒng)結構圖 PAGEREF _Toc388567064 h 15 HYPERLINK l _Toc388567065 4.2 數(shù)據(jù)庫總體設計 PAGEREF _Toc388567065 h 16 HYPERLINK l _Toc388567066 4.2.1 用戶個人信息設計 PAGEREF _Toc388567066
10、h 16 HYPERLINK l _Toc388567067 4.2.2 數(shù)據(jù)庫中表的設計 PAGEREF _Toc388567067 h 16 HYPERLINK l _Toc388567068 4.2.3 數(shù)據(jù)庫邏輯設計ER圖 PAGEREF _Toc388567068 h 17 HYPERLINK l _Toc388567069 5 詳細設計 PAGEREF _Toc388567069 h 19 HYPERLINK l _Toc388567070 5.1 數(shù)據(jù)庫連接設計 PAGEREF _Toc388567070 h 19 HYPERLINK l _Toc388567071 5.2 登錄
11、模塊詳細設計 PAGEREF _Toc388567071 h 19 HYPERLINK l _Toc388567072 5.3 功能模塊實現(xiàn) PAGEREF _Toc388567072 h 21 HYPERLINK l _Toc388567073 5.3.1 試題庫管理模塊實現(xiàn) PAGEREF _Toc388567073 h 21 HYPERLINK l _Toc388567074 5.3.2 試卷生成功能實現(xiàn) PAGEREF _Toc388567074 h 23 HYPERLINK l _Toc388567075 5.3.3 評卷管理功能實現(xiàn) PAGEREF _Toc388567075 h
12、30 HYPERLINK l _Toc388567076 5.3.4 成績管理功能實現(xiàn) PAGEREF _Toc388567076 h 30 HYPERLINK l _Toc388567077 6 軟件測試 PAGEREF _Toc388567077 h 36 HYPERLINK l _Toc388567078 6.1 軟件測試的意義 PAGEREF _Toc388567078 h 36 HYPERLINK l _Toc388567079 6.2 軟件測試的重要性 PAGEREF _Toc388567079 h 36 HYPERLINK l _Toc388567080 6.3 軟件測試的范圍
13、PAGEREF _Toc388567080 h 37 HYPERLINK l _Toc388567081 6.4 軟件測試的方法 PAGEREF _Toc388567081 h 37 HYPERLINK l _Toc388567082 6.5 軟件測試的目的和原則 PAGEREF _Toc388567082 h 37 HYPERLINK l _Toc388567083 5.4測試用例 PAGEREF _Toc388567083 h 38 HYPERLINK l _Toc388567084 7 結束語 PAGEREF _Toc388567084 h 41 HYPERLINK l _Toc3885
14、67085 參考文獻 PAGEREF _Toc388567085 h 42 HYPERLINK l _Toc388567086 致 謝 PAGEREF _Toc388567086 h 441 概述1.1 開發(fā)背景隨著現(xiàn)代計算機信息技術、互聯(lián)網(wǎng)技術的迅猛發(fā)展,現(xiàn)代化的計算機技術與網(wǎng)絡技術已經(jīng)逐步開始深入應用到各個領域1。傳統(tǒng)考試需要老師編寫試卷、安排考試、安排監(jiān)考、收取試卷、評改試卷、講評試卷和分析試卷。這個過程漫長而復雜,已經(jīng)越來越不適合當今現(xiàn)代教學的需要。隨著計算機及網(wǎng)絡技術的發(fā)展,計算機專業(yè)英語在線考試應運而生。 計算機專業(yè)英語在線考試課題產(chǎn)生的背景是當今教育信息化的趨勢及我國高校教育信息
15、化系統(tǒng)的建設;是為了充分利用學?,F(xiàn)有的計算機軟、硬件資源和網(wǎng)絡資源實現(xiàn)無紙化考試,以避免傳統(tǒng)考試的不足。本課題使用B/S架構來開發(fā)淮陰工學院計算機英語在線考試,該系統(tǒng)中包含了:學生端和教師端。我所負責的是教師端的設計與實現(xiàn),該子系統(tǒng)包括如下功能:“試卷生成”、“成績管理”、“試題庫管理”、“答案管理”。網(wǎng)絡考試系統(tǒng)是傳統(tǒng)考場的延伸,它可以利用網(wǎng)絡的無限廣闊空間,隨時隨地的對學生進行考試,加上Web數(shù)據(jù)庫技術的利用,大大簡化了傳統(tǒng)考試的過程。通過網(wǎng)絡來實現(xiàn)網(wǎng)上在線考試,是當今現(xiàn)代教育科技的一個具體實現(xiàn),有著重要的現(xiàn)實意義。1.2 項目提出的意義課題目的:用信息化的方式實現(xiàn)學生計算機專業(yè)英語計算機
16、專業(yè)英語在線考試系統(tǒng),把試題、電腦閱卷、成績查詢的部分管理工作集成到一個統(tǒng)一的平臺,各管理者相互配合、分工協(xié)作,確保及時了解學生在校學習情況。以減輕教師的工作負擔,提高教師的工作效率,激發(fā)學生對學習興趣。課題意義:1)將教師從繁重的出卷、閱卷、評卷的工作中解脫出來,大幅度提高教師的工作效率,減少人為主觀意向對學生成績的影響,有效提高教育質(zhì)量。2)學生在平時的學習中,及時的在網(wǎng)上進行自我測試,在學習上 能夠查缺補漏,激發(fā)學生的學習興趣,為學生的學習帶來更多的方便。 3)系統(tǒng)實現(xiàn)自動組卷、自動評分,使在線考試做到正真的公平、客觀、公正,實現(xiàn)考教分離。1.3 課題研究現(xiàn)狀隨著教育信息化的推進,計算機
17、專業(yè)英語在線考試系統(tǒng)技術也在不斷的發(fā)展。國內(nèi)外很多專門的考試機構均采用計算機輔助測試來進行測評。例如,國際上CISCO的CCNA、CCNP;微軟的MCSE、MDBA;SUN的Java、SolarisUNIX;HP的IT等各類信息技術認證考試。這些信息技術網(wǎng)絡計算機專業(yè)英語在線考試系統(tǒng)具有使用方便、安全可靠、題庫量大、自動組卷、界面友好、適應個性等特點。多年來在業(yè)界具有深遠影響。在我國,近幾年隨著國家的大力推廣,計算機信息化普及程度也在大大提高。而在教委考試管理中心的推動下,計算機考試系統(tǒng)的理論研究和實踐活動也開始蓬勃發(fā)展。在1993年的“上海市計算機應用能力考核(初級)”的考試中已開始嘗試這種
18、新穎的考試方法。當時是在DOS系統(tǒng)下的應用程序,由于功能較少。隨著操作系統(tǒng)由DOS向Windows的升級,應用程序成功地升級到基于Windows平臺3。從考試系統(tǒng)結構模式來劃分,主要有以下兩種結構:C/S結構,基于Cliend/Server(客戶端/服務器)結構的考試系統(tǒng),在每臺計算機(客戶端)需要安裝必要的客戶端軟件才能與服務器端相互通信。因此其在發(fā)布、移植、維護、管理相對較復雜,靈活性較差。B/S結構,基于B/S結構的考試系統(tǒng),每臺計算機(客戶端)使用通用的瀏覽器訪問服務器上的考試系統(tǒng),所有操作在服務器端完成,考試結果保存在服務器上4。國外在線考試系統(tǒng)的研究處于領先水平,而我國在這一領域也
19、取得了一定的成果。王邯等為計算機水平考試中普遍采用的程序填空類試題,探討計算機程序自動糾正填空題實現(xiàn)的設計。該系統(tǒng)的基本思想是匹配學生答案與標準答案是否語義相符。雖然系統(tǒng)基本實現(xiàn)了自動批改填空題,但問題在于主觀題的批改會帶來歧義。因為計算機編寫的程序設計語言書寫的語句或表達式跟自然語言語法相比規(guī)則嚴格且無歧義,所以主觀題不適合基于計算機的程序設計語言來批改。李輝陽等研究了有限領域中簡述文字的自動判讀問題,提出以基于關系的帶權匹配技術來實現(xiàn)計算機輔助教學中的簡單論述正誤的判定。該系統(tǒng)在一定程度上模擬了老師閱卷過程,針對計算機自動批改簡述題、簡答題、列舉題等主觀題有相當大的借鑒意義。針對當今高校對
20、在線考試的重視程度,以及如今在線考試系統(tǒng)的完善程度,和學校考試部門的一些聯(lián)系,認為計算機專業(yè)英語在線考試系統(tǒng)值得開發(fā)推廣。1.4 初步設計方法與實施方案軟件體系結構方案:采用B/S模式。B/S結構(Browser/Server結構)即瀏覽器服務器結構。采用B/S結構是因為該結構在功能拓展和維護方面簡單、方便,只需要增加或更改網(wǎng)頁,并且B/S結構是以瀏覽為主,錄入簡單。而汽車銷售系統(tǒng)網(wǎng)站就是通過web瀏覽器訪問,選用B/S模式最為合適。操作系統(tǒng)方案:Windows 7(旗艦版)操作系統(tǒng),該系統(tǒng)可以兼容需要的軟件,并且具有良好的運行速度,界面良好。后臺數(shù)據(jù)庫:選用Microsoft SQL Ser
21、ver 2005。由于涉及汽車、客戶等信息,數(shù)據(jù)量巨大且復雜,故選用SQL Server數(shù)據(jù)庫。并且該數(shù)據(jù)庫具有良好的安全性。開發(fā)工具:選用Microsoft Visual Studio 2005。因為該系統(tǒng)受眾為前臺用戶和后臺管理員兩個方面,需要利用網(wǎng)絡登錄編輯信息,故利用該軟件開發(fā)。開發(fā)語言:C#語言。開發(fā)技術:ASP.NET技術。2 系統(tǒng)開發(fā)環(huán)境介紹2.1 ASP.NET 簡介ASP.Net2.0是把基于通用語言的程序在服務器上運行。不像以前的ASP即時解釋程序,而是將程序在服務器端首次運行時進行編譯。ASP.Net2.0構架是可以用Microsoft(R)公司最新的產(chǎn)品 Visual
22、S開發(fā)環(huán)境進行開發(fā),WYSIWYG(What You See Is What You Get所見即為所得)的編輯。這些僅是ASP.Net2.0強大化軟件支持的一小部分。因為ASP.Net2.0是基于通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在Web應用軟件開發(fā)者的幾乎全部的平臺上。通用語言的基本庫,消息機制,數(shù)據(jù)接口的處理都能無縫的整合到ASP.Net2.0的Web應用中。ASP.Net2.0同時也是language-independent語言獨立化的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經(jīng)支持的有C#(C+和Java的結
23、合體),VB,Jscript。將來,這樣的多種程序語言協(xié)同工作的能力保護您現(xiàn)在的基于COM+開發(fā)的程序,能夠完整的移植向ASP.Net2.0。ASP.NET的優(yōu)點主要體現(xiàn)在效率高、可重用性高、代碼量少這三方面。在使用ASP進行程序設計的時候,由于ASP使用的是腳本語言,所有的代碼都嵌入到HTML代碼中,所以當編制功能復雜的網(wǎng)頁時,就需要編寫大量的代碼,而且會導致程序代碼的可讀性差的問題。另外,由于所有的代碼都是解釋執(zhí)行的,所以相對速度較慢,并且無法有效地利用機器硬件的各種性能。ASP.NET與ASP相比較效率更高,提供了很高的可重用性,對于實現(xiàn)同樣功能的程序,ASP.NET使用的代碼量比ASP
24、要少得多。ASP.NET采用全新的編程環(huán)境,代表了技術發(fā)展的主流方向。2.2 .NET Framework.NET Framework是.NET戰(zhàn)略的核心。.NET Framework分為以下幾個部分:MS中間語言、CLR、.NET Framework類庫、.NET語言、ASP.NET和Web服務。MS中間語言是.NET的通用語言。無論使用哪一種.NET語言編寫的程序代碼,在執(zhí)行之前,都會把它編譯成為MS中間語言。CLR(Common Language Runtime,公共語言運行時刻庫)用于執(zhí)行MS中間語言。.NET Framework類庫中包含了大量可以實現(xiàn)重要功能的代碼庫。用戶在編寫程序
25、的時候可以很方便地把這些庫調(diào)用到應用程序中,實現(xiàn)更加復雜的功能。由于這些類庫的存在,使得編寫功能強大的程序更加容易。.NET語言是指可以將使用其編寫的代碼編譯成為MS中間語言的的編程語言。常見的語言有VB.NET和C#等。Web服務是指可以通過Web訪問的組件。 2.3 C#介紹C#是.NET的關鍵性語言,c#是一種簡單的,類型安全的,現(xiàn)代的,和面向對象的程序開發(fā)語言。C#使用了很多C+的功能,如語句,表達式和操作符,另外C#參考了許多Java的技術規(guī)則。C#使用命名空間來組織,不同的命名空間可以包含不同類的相同名字,降低了名字的沖突性。C#有一個虛擬機(CLR)-公用語言運行環(huán)境,其對象具有
26、層次性。C# 與Windows的體系結構相似,可以使用全部的Win32 API,因而是C#很容易被開發(fā)人員所熟悉。使用c#語言設計的組件能夠用于Web服務,通過Internet可以被運行于任何操作系統(tǒng)上任何編程語言所調(diào)用。C#是專門為.NET應用而開發(fā)出的語言,他具有語法簡潔,面向對象,面向Web,功能強大,靈活性與兼容性,完整的安全性與錯誤處理等特點。 語法簡潔C#的代碼沒有了指針和關鍵字(如OLE_COLOR,VARIANT_BOOL,DISPID_XXXXX等)使用起來很方便。 面向對象C#是面向對象的語言,所以具有封裝性,多態(tài)性和單繼承性。C#中常量和變量還有函數(shù)等被封裝在類中,提高了
27、代碼的可讀性,降低了沖突。 面向WebC#可以將大多數(shù)組件轉換為Web服務,并允許他們通過Internet被運行在任何操作系統(tǒng)上的任何語言所調(diào)用。 功能強大C#可以開發(fā)控制程序,圖形程序NT服務程序,普通組件,Web組件,Web頁面,Web服務等 靈活性和兼容性C#是一種既靈活又高效的開發(fā)語言,為開發(fā)人員提供了靈活而快速的開手段,C#遵守.NET公用語言規(guī)范,保證了C#組件與其它語言組件之間的相互操作。2.4 SQL Server數(shù)據(jù)庫簡介SQL Server 2005 是建立在SQL Server 7.0 在可伸縮性、可用性、可管理性和數(shù)據(jù)倉庫成功的基礎上,并且引入了針對電子商務的重要新功能
28、。在高性能和企業(yè)級可伸縮性領域,SQL Server 2005 設計成利用Windows2005 對更多處理器、更大的系統(tǒng)內(nèi)存的支持,最終達到支持64 位硬件平臺。在不斷提升可用性的努力過程中,SQL Server 2005 采用Windows 2005 四路群集,提供了大大改進的群集支持。SQL Server 7.0 已經(jīng)在可管理性和易用性方面在行業(yè)內(nèi)領先,SQL Server 2005 通過與Windows 2005 活動目錄緊密結合進一步改進了這些功能。而且,SQL Server 2005 還包含對現(xiàn)有管理工具和實用程序的重大改進,并引入更具自我調(diào)節(jié)和自我管理的引擎功能。SQL Serv
29、er 2005 按照設計可以為部署和維護強大的、易于管理、支持商務活動的Web 站點提供最好的性能,這些站點可以從事商家和商家之間或商家與客戶之間的交易。在尋求一個支持您的電子商務解決方案的數(shù)據(jù)庫時,需要考慮的項目包括:可用性、性能、可管理性和價格 SQL Server為用戶提供了完整的數(shù)據(jù)庫解決方案,該軟件功能強大、使用方便,已為越來越多的人所信賴。SQL Server支持并發(fā)連接,允許多個用戶同時訪問數(shù)據(jù),完全能夠滿足用戶的需求。SQL提供了強大的數(shù)據(jù)存儲功能,高效率的數(shù)據(jù)查詢技術、方便易用的向導和工具,友好親切的用戶界面,是制作該系統(tǒng)后臺的很好的UY工具。 SQL Server 特點 真
30、正的客戶機/服務器體系結構。豐富的編程接口工具,為用戶進行程序設計提供了更大的選擇余地。 SQL Server與Windows NT完全集成,利用了NT的許多功能. SQL Server也可以很好地與Microsoft BackOffice產(chǎn)品集成。 SQL Server 具有很好的伸縮性,提供數(shù)據(jù)倉庫功能。 對Web技術的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上 ,圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單。2.5 B/S架構B/S 結構是 Browser/Server 的縮寫,漢語中指的是瀏覽器以及服務器結構。B/S的基礎是 C/S,經(jīng)過對 C/S 的修改、升級
31、得到的。在 B/S 下,具有三層結構:首先,用戶的操作界面通過瀏覽器實現(xiàn);其次,大部分事務邏輯的實現(xiàn)基于服務器端;最后,少部分的事務邏輯的實現(xiàn)由前端完成。采用這種結構,不但使整體成本下降,而且將電腦的負載大大降低,從而減少工作量與工作強度。在現(xiàn)階段,采用B/S 模式結構,是很容易實現(xiàn)的。這種技術屬于一次性開發(fā),允許不同的工作人員從不同的地點,以不同的接入方式,隨時隨地的對數(shù)據(jù)庫進行管理,還能有效的保護數(shù)據(jù)平臺和管理訪問權限,保證有關數(shù)據(jù)的安全。圖2-2 B/S架構B/S 架構軟件的優(yōu)點和缺點(1) 容易,升級方便。隨著技術的進步,一般來講,對于軟件的修改原來越多,軟件的升級周期越來越短。而采用
32、 B/S 結構就能夠很容易避免這方面的麻煩。對于一般的結構而言,在一個企業(yè)中,若電腦數(shù)量較多,維修人員會因維修與軟件升級而來會奔波,工作強度極其巨大。而對于采用 B/S 結構的軟件來講,由于客戶端(電腦)僅起到瀏覽器的作用,因此維修人員只需要維護好服務器就可以了。無論客戶端多么龐大,都絲毫不會增加工作強度。另外,B/S 結構支持異地協(xié)助,可以實現(xiàn)異地的軟件升級、維護。采用 B/S 結構會大大降低所需的人力物力,從而提升工作效率。(2) 低成本,更多的選擇。由于最常使用的操作系統(tǒng)是 windows,因此瀏覽器似乎成了必不可少的。然而在服務器操作系統(tǒng)競爭中,微軟公司的產(chǎn)品未必是最好的?,F(xiàn)在逐漸形成
33、新的模式,即用 B/S 結構與 Linux 服務器進行匹配,這樣帶來的好處是更為安全可靠,另外還有一點非常重要,即 Linux 的數(shù)據(jù)庫也是不收費的。這也說明了 B/S 結構對操作系統(tǒng)的選擇不唯一,而是支持多種操作系統(tǒng)的。(3) 應用服務器的運行數(shù)據(jù)負荷重。根據(jù)分析我們知道,B/S 的三層結構分工明確,即絕大多數(shù)的事務邏輯由服務器端處理,另外客戶端只起到瀏覽器的作用。這樣雖然優(yōu)勢很多,但是也具有一定的缺點:即應用服務器上的負荷比較大,若服務器稍微出現(xiàn)問題,就會導致非常嚴重的后果,為了避免這種現(xiàn)象的出現(xiàn),一般采取保護措施配備專門的數(shù)據(jù)庫服務器。2. C/S 與 B/S 結構在技術上的比對C/S
34、結構軟件客戶機/服務器模式可以分為兩層:首先是客戶機,其次是服務器??蛻魴C不但承擔著對數(shù)據(jù)的輸入、輸出,而且在一定程度上要對相關數(shù)據(jù)進行處理、分析,還要對數(shù)據(jù)進行判斷,合理分配,從而將通信的數(shù)據(jù)量、服務器上進行的計算量進行減輕。然而,服務器在連接數(shù)量上一級通信信息量上不是沒有上限的,所以 C/S 結構僅適用于連接量較小的情況,比如財務軟件等。B/S瀏覽器/服務器模式是在 C/S 的基礎上發(fā)展起來的,要想完成軟件應用業(yè)務的處理,僅需通過瀏覽器就能很容易的實現(xiàn),是一種全新的軟件系統(tǒng)構造技術。采用 B/S 結構是今后的趨勢,一般來講,e 通管理軟件就采用了 B/S 結構。(1) 在數(shù)據(jù)安全性方面的對
35、比。對于采用 C/S 結構的軟件而言,C/S 的結構決定了要求在各地都安裝服務器,還要實現(xiàn)服務器間的數(shù)據(jù)同步,一旦某一點出現(xiàn)安全問題,勢必造成整個系統(tǒng)的安全受到嚴重影響。因此,C/S 結構不適用于服務器較多的類型。而采用 B/S 結構恰恰可避免這一缺點,因為 B/S 結構的數(shù)據(jù)存放在專門的服務器內(nèi),客戶端不保存任何業(yè)務數(shù)據(jù)和數(shù)據(jù)庫連接信息,并且無需數(shù)據(jù)同步,因此不存在安全上的問題。(2)在數(shù)據(jù)實時性上的對比。由于 C/S 結構無法保證隨時隨地的看到當前業(yè)務發(fā)生情況,因此得到的都是已經(jīng)存在的數(shù)據(jù),不是即時數(shù)據(jù)。而 B/S 結構則可以得到當前發(fā)生所有業(yè)務的實時數(shù)據(jù),可以以此進行即時決策,有效地避免
36、了企業(yè)的損失。(3) 在數(shù)據(jù)一致性上的對比。要實現(xiàn)異地經(jīng)營,對于 C/S 結構軟件,需要安裝區(qū)域級服務器,并實現(xiàn)數(shù)據(jù)上的同步,在服務器完成同步后總部才能得到最終數(shù)據(jù)。首先這就要求所以的服務器必須正常運行,其次由于存在的微小差異,在理論上無法實現(xiàn)數(shù)據(jù)同步。而采用 B/S 結構,這種結構的數(shù)據(jù)屬于集中存放,無不同步問題,數(shù)據(jù)始終一致。(4)在服務響應及時性方面的對比。企業(yè)的業(yè)務流程、業(yè)務模式不是一成不變的,由于要適應市場的需求,這就要求企業(yè)要實時進行調(diào)整、改革,業(yè)務的流程也在發(fā)生大大小小的變化,為了使企業(yè)正常運行,就必須對相關軟件進行即時更新、維護。對于采用 C/S 結構的軟件,由于所有的客戶端都
37、需要進行更新、維護,因此工作量巨大,很難做到所有的程序版本一致,所需要很長的時間重新部署。而對于采用 B/S 結構一類軟件,服務器的作用與瀏覽器相當,所以軟件的更新、維護只需在總部進行即可,大大節(jié)省了時間,很容易實現(xiàn)版本的一致性。(5)在數(shù)據(jù)溯源性上的比對。對于 C/S 結構,由于數(shù)據(jù)不是采用集中存放模式,僅僅上傳中間報表數(shù)據(jù),因此很難查找原始數(shù)據(jù)的出處。而我們知道在 B/S 結構中,數(shù)據(jù)屬于集中存放,因此便于總部對數(shù)據(jù)的來源進行查詢,可以很詳細地查詢所有原始數(shù)據(jù)的來源。(6)在網(wǎng)絡應用限制上的對比。采用 C/S 結構的軟件對網(wǎng)絡要求較高:適用于局域網(wǎng)以及寬帶(要求帶寬不低于 1 兆)。對于采
38、用 B/S 結構的軟件而言,對網(wǎng)絡要求很低,適應范圍很廣,甚至可以不采用寬帶。3 系統(tǒng)分析3.1 可行性分析在實施一個項目之前,首先要對將要實施的項目進行可行性分析,確定項目是否值得進行。并不是所有的問題都有簡單明顯的解決辦法,事實上,許多問題不可能在預定的系統(tǒng)規(guī)模之內(nèi)解決。如果問題沒有可行解的話,那么花費在這項工程上的任何時間、資源、人力和經(jīng)費都是浪費的??尚行苑治龅哪康木褪怯米钚〉拇鷥r在盡可能短的時間內(nèi)確定問題能否解決??尚行匝芯康哪康牟皇墙鉀Q問題,而是確定問題是否值得去解。如果是正確的就加以肯定??尚行苑治龅膶崿F(xiàn),不能靠主觀猜想,只能客觀分析達到這個目的,所以就必須分析幾種方法解決可能的
39、弊端,從而判斷原定的系統(tǒng)目標和規(guī)模是否實現(xiàn),系統(tǒng)完成后所能帶來的價值是否大于開發(fā)這個系統(tǒng)的投資價值。因此,可行性研究實質(zhì)上是要進行一次大大的壓縮簡化了系統(tǒng)分析和設計的過程。我們應該給出系統(tǒng)的邏輯模型,然后從系統(tǒng)邏輯模型出發(fā),尋找可供選擇的解法,研究每一種解法的可行性。一般說來,應從技術可行性、經(jīng)濟可行性、操作可行性等方面進行研究。技術可行性是最難決斷和最關鍵的問題。根據(jù)客戶提出的系統(tǒng)功能、性能及實現(xiàn)系統(tǒng)的各項約束條件,從技術的角度研究系統(tǒng)實現(xiàn)的可行性。本系統(tǒng)采用的是.NET家族的ASP.NET技術和ADO.NET 技術。眾所周知,.NET現(xiàn)在已經(jīng)日趨成熟、穩(wěn)定,被認為是計算機領域最有前途的技術
40、之一。同時數(shù)據(jù)庫采用的是SQL Server 2005,繼SQL Server 2000之后的SQL Server 2005 更加可視化、穩(wěn)定化,并且安全化。將ASP.NET,ADO.NET以及SQL Server 2005結合起來開發(fā)一套家具企業(yè)網(wǎng)站系統(tǒng),必定是可行并且高效的。經(jīng)濟可行性研究主要進行成本效益分析,包括估計項目的開發(fā)成本,估算開發(fā)成本是否會高于項目預期的全部利潤??窜浖軒淼慕?jīng)濟效益與開發(fā)設計所需要的投資相比,是否相適宜,同時還要看此軟件能否真正給用戶帶來足夠的經(jīng)濟效益,我們開的這套系統(tǒng)正是考慮為用戶提高工作效率,節(jié)省工作時間,方便操作與管理而設計。本系統(tǒng)的開發(fā)在經(jīng)濟上是完
41、全可行的。開發(fā)此軟件不需要大量的經(jīng)費,而且是個人獨立設計的,可以節(jié)省許多費用,同時也可提高個人的實際動手能力。由于現(xiàn)在的科技的飛速發(fā)展,計算機早已普及世界的方方面面,便利的科技條件,給人們帶來優(yōu)越的工作環(huán)境,這也使人們對工作效率及可操作性都有了更高的要求。因此,管理形式的計算機是社會發(fā)展的必然趨勢,各種智能化的軟件層出不窮,減少了原來人工操作的費時費力的狀況,從而提高了工作效率和準確度。本系統(tǒng)用戶平臺直接面向管理員和普通用戶,界面簡單、明了,采用可視化界面,普通用戶只需用鼠標和鍵盤就可以查看信息;多數(shù)的數(shù)據(jù)輸入與數(shù)據(jù)維護是由管理員完成的。由于該系統(tǒng)的操作簡便、易懂,對于初次使用此系統(tǒng)的用戶,不
42、必經(jīng)過復雜的培訓和學習就可以掌握系統(tǒng)的操作流程。由此可見,開發(fā)此軟件在操作上是可行的。3.2 系統(tǒng)需求分析該系統(tǒng)是專門用于在線考試、登錄、試題查詢和自動組卷的應用web程序。它應該具有開放性、方便性和靈活性。本系統(tǒng)主要分為教師、管理員、學生三個角色,不同的角色擁有不同的功能。教師可以輕松地向題庫添加、修改和刪除試題。實現(xiàn)了試題庫管理、試卷生成、評卷管理、成績管理等功能。其中試題庫管理模塊包括選擇題、填空題、判斷題、翻譯題、專業(yè)作文等功能子模塊;成績管理模塊包括成績查看、成績統(tǒng)計、成績排序等功能子模塊。管理員登錄系統(tǒng)實現(xiàn)了用戶管理和退出系統(tǒng)功能,其他用戶管理模塊包括教師管理、學生管理兩部分功能子
43、模塊。學生登錄系統(tǒng)實現(xiàn)了我的考試、我的賬戶等功能模塊,其中我的考試模塊包括參加考試、歷史考試、我的成績、痕跡保留等功能子模塊;我的賬戶模塊包括個人資料、修改密碼兩個功能子模塊。3.3 系統(tǒng)重要流程系統(tǒng)登錄模塊的流程圖如圖3.1。圖3.1系統(tǒng)登錄流程圖學生考試的流程圖如圖3.2。圖3.2 學生考試流程圖4 系統(tǒng)總體設計4.1 系統(tǒng)結構圖該系統(tǒng)是專門用于在線考試、登錄、試題查詢和自動組卷的應用web程序。它應該具有開放性、方便性和靈活性。本系統(tǒng)主要分為教師、管理員、學生三個角色,不同的角色擁有不同的功能。教師可以輕松地向題庫添加、修改和刪除試題。實現(xiàn)了試題庫管理、試卷生成、評卷管理、成績管理等功能
44、。其中試題庫管理模塊包括選擇題、填空題、判斷題、翻譯題、專業(yè)作文等功能子模塊;成績管理模塊包括成績查看、成績統(tǒng)計、成績排序等功能子模塊。管理員登錄系統(tǒng)實現(xiàn)了用戶管理和退出系統(tǒng)功能,其他用戶管理模塊包括教師管理、學生管理兩部分功能子模塊。學生登錄系統(tǒng)實現(xiàn)了我的考試、我的賬戶等功能模塊,其中我的考試模塊包括參加考試、歷史考試、我的成績、痕跡保留等功能子模塊;我的賬戶模塊包括個人資料、修改密碼兩個功能子模塊。網(wǎng)絡考試系統(tǒng)的結構圖如下:圖3.1 系統(tǒng)結構圖4.2 數(shù)據(jù)庫總體設計詳細設計是整個設計過程中,最重要的步驟之一。下面就分如下幾個部分對系統(tǒng)進行詳細設計:(1) 用戶個人信息設計(2)數(shù)據(jù)庫中表的
45、設計(3)數(shù)據(jù)庫邏輯ER圖設計(4)功能模塊的詳細設計(5)主要模塊的流程圖顯示。4.2.1 用戶個人信息設計用戶個人信息設計,首先應該實現(xiàn)用戶名和密碼的設計。用戶名要求不能為空、重復,密碼輸入的兩次信息應該一致,然后應該實現(xiàn)用戶名密碼的修改,最后要求管理員對用戶的維護操作。4.2.2 數(shù)據(jù)庫中表的設計數(shù)據(jù)庫部分表如下所示:序號字段名標識主鍵類型1Idint2XzScorefloat4PdScorefloat5FyScorefloat6ZwScorefloat7TkScorefloat8ZScorefloat9SjI10SjNamenvarchar11StuIdnvarchar12StuNam
46、envarchar序號字段名標識主鍵類型1Idint2Namenvarchar3Namenvarchar4Difficultynvarchar序號字段名標識主鍵類型1Idint2UserIdnvarchar3Namenvarchar4Passwordnvarchar5Phonenvarchar6Addressnvarchar7UserTypenvarchar4.2.3 數(shù)據(jù)庫邏輯設計ER圖實體與屬性之間的關系E-R模型的組成元素有:實體、屬性、聯(lián)系。E-R模型用E-R圖表示。實體是用戶工作環(huán)境中所涉及的事務,屬性是對實體特征的描述。(1)模型中的實體相當于實體集、一個表,而不是單個實體或表中的
47、一行。實體用矩形框表示,實體名稱標注在矩形框內(nèi)。用菱形表示實體間的聯(lián)系,菱形框內(nèi)寫上聯(lián)系名,用無向邊把菱形分別與有關實體相連接,在無向邊旁標上聯(lián)系的類型。(2)屬性是實體的性質(zhì)。用橢圓框表示,與實體之間用一條線相連表的主碼是關鍵屬性,關鍵屬性項加下劃線。(3)各子系統(tǒng)模塊中主鍵相同的字段之間存在著相互關聯(lián)的關系。(4)在程序中實現(xiàn)對他們的完整性和一致性控制。 數(shù)據(jù)庫的ER圖圖3.2 ER圖5 詳細設計本系統(tǒng)采用技術進行開發(fā),系統(tǒng)架構采用B/S架構進行架構,開發(fā)工具采用VS2005進行開發(fā),數(shù)據(jù)庫采用Sql2005數(shù)據(jù)庫進行數(shù)據(jù)的存儲。5.1 數(shù)據(jù)庫連接設計數(shù)據(jù)庫連接實現(xiàn)代碼: 5.2 登錄模塊
48、詳細設計用戶登錄實現(xiàn)的過程主要有幾個步驟,首先對用戶輸入的信息進行保存然后利用ASP.NET程序從數(shù)據(jù)庫中進行檢索看是不是有用戶輸入的信息在數(shù)據(jù)庫中是否存在如果存在就返回正確的結果,如果不正確就返回錯誤的結果。如果結果數(shù)據(jù)庫中存在就顯示登錄成功,如果數(shù)據(jù)庫不存在就顯示失敗請重新登錄。系統(tǒng)登錄的運行效果如圖5.1。圖5.1 用戶登錄模塊用戶登錄模塊實現(xiàn)代碼如下:public ActionResult Login(string userId, string password, string userType, string returnUrl) if (ValidateUser(userId, p
49、assword, userType) if (userType = 教師) return RedirectToAction(Index, Home); else if (userType = 管理員) return RedirectToAction(AdminIndex, Home); else return RedirectToAction(StuIndex, Home); ModelState.AddModelError(, 賬號或密碼錯誤!); return View(); /驗證 private bool ValidateUser(string userId, string passw
50、ord, string userType) var user = (from p in db.Users where p.UserId = userId & p.Password = password & p.UserType = userType select p).FirstOrDefault(); if (user != null) Sessionuser = user; return true; else return false; /退出 public ActionResult Quit() return RedirectToAction(Login, User); 5.3 功能模塊
51、實現(xiàn)本系統(tǒng)主要分為教師、管理員、學生三個角色,不同的角色擁有不同的功能。由于本系統(tǒng)功能模塊較多,本文選擇教師模塊功能進行介紹。教師模塊實現(xiàn)了試題庫管理、試卷生成、評卷管理、成績管理等功能。具體功能介紹如下所示。5.3.1 試題庫管理模塊實現(xiàn)試題庫管理模塊包括選擇題、填空題、判斷題、翻譯題、專業(yè)作文等功能子模塊。試題庫管理模塊界面效果如圖5.2所示。圖5.2 試題庫管理模塊界面效果5.3.2 試卷生成功能實現(xiàn)試卷生成模塊實現(xiàn)了試卷的自動生成功能。試卷生成功能界面效果圖如圖5.3所示。圖5.3試卷生成功能界面效果圖實現(xiàn)代碼如下:namespace MvcEnglishTest.Controller
52、s public class ShijuanController : BaseController public ActionResult Index() return View(db.Shijuans.ToList(); public ActionResult Add() return View(); /智能組卷 HttpPost public ActionResult Add(Shijuan fu) List xzlist = db.Xuanzes.ToList(); List tklist = db.Tiankongs.ToList(); List pdlist = db.Panduan
53、s.ToList(); List fylist = db.Fanyis.ToList(); List zwlist = db.Zuowens.ToList(); int num; /單選題 num = int.Parse(fu.Dx); fu.Dx = ; for (int i = 0; i num; i+) int r = new Random().Next(xzlist.Count); fu.Dx += xzlistr.Id; fu.Dx += ; xzlist.RemoveAt(r); /填空題 num = int.Parse(fu.Tk); fu.Tk = ; for (int i =
54、 0; i num; i+) int r = new Random().Next(tklist.Count); fu.Tk += tklistr.Id; fu.Tk += ; tklist.RemoveAt(r); /判斷 num = int.Parse(fu.Pd); fu.Pd = ; for (int i = 0; i num; i+) int r = new Random().Next(pdlist.Count); fu.Pd += pdlistr.Id; fu.Pd += ; pdlist.RemoveAt(r); /翻譯 num = int.Parse(fu.Fy); fu.Fy
55、= ; for (int i = 0; i num; i+) int r = new Random().Next(fylist.Count); fu.Fy += fylistr.Id; fu.Fy += ; fylist.RemoveAt(r); /作文 num = int.Parse(fu.Zw); fu.Zw = ; for (int i = 0; i num; i+) int r = new Random().Next(zwlist.Count); fu.Zw += zwlistr.Id; fu.Zw += ; zwlist.RemoveAt(r); db.Shijuans.Add(fu
56、); db.SaveChanges(); return new HttpStatusCodeResult(System.Net.HttpStatusCode.OK); /編輯 public ActionResult Edit(int id) var fu = (from p in db.Shijuans where p.Id = id select p).FirstOrDefault(); return View(fu); /編輯 HttpPost public ActionResult Edit(Shijuan fu) var yezhu = (from p in db.Shijuans w
57、here p.Id = fu.Id select p).FirstOrDefault(); yezhu.Id = fu.Id; db.SaveChanges(); return new HttpStatusCodeResult(System.Net.HttpStatusCode.OK); /刪除 public ActionResult Delete(int Id) var bean = (from p in db.Shijuans where p.Id = Id select p).FirstOrDefault(); db.Shijuans.Remove(bean); db.SaveChang
58、es(); return new HttpStatusCodeResult(System.Net.HttpStatusCode.OK); /試卷詳情 public ActionResult Info(int Id) string temp; int t_id; List xuanzes = new List(); List tiankongs = new List(); List panduans = new List(); List fanyis = new List(); List zuowens = new List(); var shijuan = (from p in db.Shij
59、uans where p.Id = Id select p).FirstOrDefault(); /選擇 temp = shijuan.Dx.Split(;); for (int i = 0; i temp.Length - 1; i+) t_id = int.Parse(tempi); var xz = (from p in db.Xuanzes where p.Id = t_id select p).FirstOrDefault(); xuanzes.Add(xz); /填空 temp = null; temp = shijuan.Tk.Split(;); for (int i = 0;
60、i temp.Length - 1; i+) t_id = int.Parse(tempi); var tk = (from p in db.Tiankongs where p.Id = t_id select p).FirstOrDefault(); tiankongs.Add(tk); /判斷 temp = null; temp = shijuan.Pd.Split(;); for (int i = 0; i temp.Length - 1; i+) t_id = int.Parse(tempi); var tk = (from p in db.Panduans where p.Id =
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 冶金設備銷售透視-揭秘年度銷售與市場趨勢
- 強電流架空電纜產(chǎn)業(yè)鏈招商引資的調(diào)研報告
- 人造灌木產(chǎn)業(yè)鏈招商引資的調(diào)研報告
- 債務清償談判服務行業(yè)市場調(diào)研分析報告
- 心理學研究行業(yè)經(jīng)營分析報告
- 硬幣包裝紙項目運營指導方案
- 醫(yī)療設備維護服務行業(yè)營銷策略方案
- 5G直播行業(yè)相關項目經(jīng)營管理報告
- 冷鏈運輸設備行業(yè)營銷策略方案
- 雙層床產(chǎn)業(yè)鏈招商引資的調(diào)研報告
- 中國航空學會-2024低空經(jīng)濟場景白皮書
- 學生會干部培訓課件
- 期中試卷(試題)-2024-2025學年六年級上冊數(shù)學蘇教版
- 二十屆三中全會精神測試題(含答案共600道題)(可編輯)
- 歐洲文明與世界遺產(chǎn)智慧樹知到期末考試答案2024年
- 鐵路箱梁運架施工準備驗收標準
- 中國大唐集團公司安全生產(chǎn)責任制管理辦法
- 壓力容器爆炸應急演練記錄
- 武藤系列寫真機簡明操作手冊18頁
- fob與cifcfr 的區(qū)別及信用證
- 我的引路人中考滿分作文600字5篇
評論
0/150
提交評論