軟件體系結構課程設計報告_第1頁
軟件體系結構課程設計報告_第2頁
軟件體系結構課程設計報告_第3頁
軟件體系結構課程設計報告_第4頁
軟件體系結構課程設計報告_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.專業(yè)整理.軟件體系結構課程設計報告學院:揚州大學廣陵學院班級:軟件81301班學號:130047109姓名:顧秀堅2016年07月07日目錄1 .背景 32 .開發(fā)環(huán)境 33 .系統(tǒng)設計 33.1 系統(tǒng)需求分析 33.2 數(shù)據(jù)庫需求分析 43.3 系統(tǒng)可行性分析 44 .數(shù)據(jù)庫設計 55 .代碼設計 65.1 數(shù)據(jù)庫操作的公共類 65.2 Web.config 85.3 登錄界面 Default.aspx.cs 95.4 考試頁面 ViewGrade.aspx.cs 105.5 成績顯示頁面 GridView.aspx.cx 126 .運行界面截圖 137 .經驗教訓 16.學習幫手.1 .

2、背景隨著社會的不斷發(fā)展,對勞動者和技術人員的知識和能力水平的要求 越來越高。考試作為衡量人的能力的重要手段之一,在現(xiàn)代生活中的地位進一步提高,并深入到社會的各個方面。各種各樣的學歷考試、 資格證書考試層出不窮。同時,Internet 技術的發(fā)展使得考試的技 術手段和載體發(fā)生了革命性的變化,使得考試突破了時間和空間的限 制。各大學校已經開始采用課程的上機考核方式, 傳統(tǒng)的考試系統(tǒng)已經不 能滿足我們了,必須要改革,因此在線考試系統(tǒng)應運而生了。我們在 保持原有絕大部分功能的前提下,不僅需發(fā)完善原有功能,加入許多 新的功能,使得題目管理,上機考試,試卷評分,考試分析更加方便 完善。2 .開發(fā)環(huán)境硬件環(huán)

3、境:PC機一臺,臺式電腦軟件環(huán)境:Microsoft visual studio 2010,Microsoft SQL Server 20083 .系統(tǒng)設計3.1 系統(tǒng)需求分析傳統(tǒng)考試要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、 評改試卷、講評試卷和分析試卷。這是一個漫長而復雜的過程,已經越來越不適應現(xiàn)代教學的需要。基于Web勺在線考試系統(tǒng)可以發(fā)揮網絡的優(yōu)勢,建立大型、高效、共享的題庫和實現(xiàn)隨時隨地的考試,降 低考試成本,減少人為干擾,減輕教師負擔,節(jié)約人力、物力和財力。3.2 數(shù)據(jù)庫需求分析針對一般考試系統(tǒng)的需求,設計如下所示的數(shù)據(jù)項和數(shù)據(jù)結構:成績表信息:學號,課程名,成績題庫表信息

4、:課程名,題號,題目,類型,分數(shù),選項 1,選項2,選項3,選項4,解答學生表信息:學號,姓名,密碼本系統(tǒng)應該建立一個穩(wěn)定的后臺數(shù)據(jù)庫系統(tǒng),通過該數(shù)據(jù)庫管理 整個考試系統(tǒng)所需的信息(用戶信息、試題信息、試卷信息、考試信 息等)。3.3系統(tǒng)可行性分析3.3.1 要求與目標:系統(tǒng)的主要功能即學生管理、試卷管理、題庫管理、成績管理等數(shù)據(jù)庫可并發(fā)訪問并具有較大的吞吐量用戶必須有登陸密碼,具有較好的安全保密性系統(tǒng)界面具有一定的人性化和美觀.開發(fā)成員各盡其責,有良好的合作精神分享開發(fā)環(huán)境軟件及項目相關資料,節(jié)省項目成本并提高開發(fā)效率3.3.2 可行性研究方法在學生和老師里使用問卷調查方法, 完善可行性方案

5、。確定軟件的運 行平臺:win98win7xpwin2000 等。在運行時可以直觀的瀏覽、查 詢和掌握學生的考試情況和成績信息,解決了傳統(tǒng)考試中的弊端:工作量大、錯誤率高等。3.3.3 決定可行性的主要因素資金充足、技術能力強、開發(fā)人員的恒心和決心、合作精神3.3.4 技術可行性軟件方面,網絡化考試需要的各種軟件環(huán)境都已具備,數(shù)據(jù)庫服務器方面則有SQL Server,均能夠處理大量數(shù)據(jù),同時保持數(shù)據(jù)的完整 性并提供許多高級管理功能。其靈活性、安全性和易用性為數(shù)據(jù)庫編 程提供了良好的條件。因此,系統(tǒng)的軟件開發(fā)平臺已成熟可行。硬件方面,科技飛速發(fā)展的今天,硬件更新的速度越來越快,容量越 來越大,可

6、靠性越來越高,價格越來越低,其硬件平臺完全能滿足此 系統(tǒng)的需要。3.3.5 經濟可行性資金的流出,將來可以用帶來的效益來平衡。4 .數(shù)據(jù)庫設計成績表XJUJlAN-PCJ&mo - dbQpJ XIUJIAN-PGdma - dba數(shù)據(jù)類型允訃阿II值|nvarchar(50)題號int翹目ntext奧型nvartharflO)分數(shù)smallint選和nvarchar255)選項EnvarctiBr(255)選項3nvardiar(255)選項4nvardiar(255)解答nvardiarfiQ)學生表XlUJlAN-PCdemo - db。薦生 XlUJlAN-PC.deniQ - dbo

7、.儂列名數(shù)據(jù)類型允許Ndl值姓名密碼nvarchflr(lS) nvarchar(lO) nvarchar(5D)5 .代碼設計5.1 數(shù)據(jù)庫操作的公共類類 DBHelper.csusing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Data;using System.Data.SqlClient;public class DBHelper public DBHelper() public static DataSet GetDataSet( string sq

8、l) SqlConnection conn = new SqlConnection (GetConnStr(); SqlDataAdapter da = new SqlDataAdapter (sql, conn);DataSet ds = new DataSet ();da.Fill(ds); return ds; public static SqlDataReader GetReader( string sql) SqlDataReader dr = null ;SqlConnection conn = new SqlConnection (GetConnStr(); SqlCommano

9、tmd = new SqlCommandsql, conn);conn.Open(); try dr = cmd.ExecuteReader(CommandBehaviorCloseConnection);catch conn.Close(); return dr;public static int ExecScalar( string sql) int ret;SqlConnection conn = new SqlConnection (GetConnStr(); SqlCommanotmd = new SqlCommandsql, conn);conn.Open(); try ret =

10、 (int )cmd.ExecuteScalar();finallyconn.Close(); return ret;public static int ExecSql( string sql) int ret;SqlConnection conn = new SqlConnection (GetConnStr();SqlCommandtmd = new SqlCommandsql, conn);conn.Open();tryret = cmd.ExecuteNonQuery();finallyconn.Close(); return ret;public static String GetC

11、onnStr() return System.Configuration. ConfigurationSettings .AppSettings DB; 5.2Web.configcompilationdebug=true targetFramework =4.0 /5.3 登錄界面Default.aspx.csusing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Syst

12、em.Data.SqlClient;public partial class _Default : System.Web.UI. Page protected void Page_Load( object sender, EventArgs e) if (!IsPostBack)lstLesson.DataSource =DBHelper.GetDataSet( select distinct 課程名 from 題庫);lstLesson.DataTextField =課程名;lstLesson.DataBind(); protected void LinkButton1_Click( obj

13、ect sender, EventArgs e) protected void InkEnter_Click( object sender, EventArgs e) string sql, stuName, stuNo, lesson;stuNo = txtNo.Text.Trim();lesson = lstLesson.SelectedValue;sql = String .Format( select * from 學生 where 學號=0 and 密碼=1 , stuNo, txtPwd.Text.Trim();SqlDataReader dr = DBHelper.GetRead

14、er(sql); if (!dr.Read() Response.Write( alert(登錄失敗,請檢查學號和密碼是否正確!);return ; else stuName = dr姓名.ToString();sql = String .Format( select count(*) from 成績 where 學號=0 and 課程名 =1 , stuNo, lesson);int ret = DBHelper.ExecScalar(sql);if (ret 0)Response.Write( alert(你已經參加過這門課的考試!);return ;SessionstuNo = stuN

15、o;Session1stuName = stuName;Session1lesson = lesson;Response.Redirect( exam.aspx);protected void lstLesson_SelectedIndexChanged( object sender, EventArgs e) 5.4 考試頁面 ViewGrade.aspx.csusing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web

16、.UI.WebControls;using System.Data.SqlClient;public partial class Exam: System.Web.UI. Pageprotected void Page_Load( object sender, EventArgs e)if (Session stuNo = null | Session stuNo .ToString()=Response.Redirect(lblLesson.Text = Session lblName.Text = Session lblNo.Text = SessionDefault.aspx);less

17、on .ToString();stuName .ToString();stuNo .ToString();題庫a where 課程名=+SqlDataReader dr = DBHelper.GetReader( select * fromlblLesson.Text + Order By題號);int num = 1; while (dr.Read() Literal Literall = new Literal ();Literall.Text = num.ToString() +. + dr題目.ToString() +( + dr”分數(shù).ToString() +分);PlaceHold

18、erl.Controls.Add(Literall);ListControl list;if (dr”類型.ToString()=單選) list =new RadioButtonList (); else list =new CheckBoxList ();選項 1.ToString();選項 2.ToString();選項 3.ToString();選項 4.ToString();list.Items.Add(Server.HtmlEncode(dr list.Items.Add(Server.HtmlEncode(dr list.Items.Add(Server.HtmlEncode(d

19、r list.Items.Add(Server.HtmlEncode(drPlaceHolder1.Controls.Add(list);num = num + 1;dr.Close();protected void btnSubmit_Click( object sender, EventArgs e)string sql, answer;SqlDataReader dr = DBHelper.GetReader( select* from題庫 where 課程名=+lblLesson.Text + Order By 題號);int j = 0;int sum = 0;while (dr.R

20、ead() ListControl list = ( ListControl )PlaceHolder1.Controls2*j+1; answer =;for ( int i = 0; i list.Items.Count; i+) if (list.Itemsi.Selected)answer+=(i+1).ToString();if (answer = dr解答.ToString()sum = sum +Convert .ToInt32(dr分數(shù).ToString();j=j+1;sql= String .Format( insert into成績(學號,課程名,成績)values(0,

21、1,2)”,lblNo.Text,lblLesson.Text,sum.ToString();DBHelper.ExecSql(sql);Response.Redirect( viewGrade.aspx); 5.5 成績顯示頁面GridView.aspx.cxusing System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;public partial class viewGrade : Sys

22、tem.Web.UI. Pageprotected void Page_Load( object sender, EventArgs e)if (!IsPostBack)if (Session stuNo =null | Session stuNo .ToString()= ) Response.Redirect(Default.aspx);lblName.Text=姓名:+ Session stuName.ToString();lblNo.Text= 學號:+ Session stuNo .ToString();dg.DataSource=DBHelper.GetDataSet( selec

23、t 課程名,成績 from 成績 where 學號=+ Session stuNo .ToString()+ );dg.DataBind(); protected void dg_SelectedIndexChanged( object sender, EventArgs e) 6.運行界面截圖登錄界面截圖在法考試會分析漫X心al h。牝相45/學生X + I卜 I卜痂圈 產上三二 9亞馬遜於黑門影I見人百在線考試系統(tǒng)科目,學號.密碼工數(shù)據(jù)庫 T130047109 *進入考試考試頁面截圖M$nu(5)叵,local h o st: 3 24m. a spxtfl圖F|百度擊醺冽:二,:室的miKVFO fffiKM!圜熱門小第4庭N塊9E顰業(yè)馬,熱I譚程;數(shù)

溫馨提示

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

最新文檔

評論

0/150

提交評論