

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 《軟件工程》課程設(shè)計</p><p><b> 學(xué)生管理系統(tǒng)</b></p><p><b> 系統(tǒng)概述:</b></p><p><b> 1、架構(gòu)分析</b></p><p> 學(xué)生管理是學(xué)校管理中不可少的一部分。而基于B/S架構(gòu)的學(xué)生管理系統(tǒng)
2、是方便學(xué)校管理。Web展示層的每個頁面都可以直接對數(shù)據(jù)庫進行訪問,而不用過多的實現(xiàn)數(shù)據(jù)庫連接和操作接口。數(shù)據(jù)庫是系統(tǒng)的最底層。數(shù)據(jù)訪問模塊包含在Web展示層中。Web展示層通過數(shù)據(jù)庫訪問模塊訪問數(shù)據(jù)庫。數(shù)據(jù)庫訪問模塊一般封裝數(shù)據(jù)庫的查詢、添加、更新、刪除等操作,同時還為Web展示層提供訪問數(shù)據(jù)庫的接口。兩層架構(gòu)模式的各層功能:</p><p><b> 2、主要模塊</b></p&g
3、t;<p> 本系統(tǒng)包括5個模塊:用戶管理模塊、班級管理模塊、課程管理模塊、選課管理模塊和成績管理模塊。</p><p> ?。?)、用戶管理模塊:主要功能是對用戶屬性和權(quán)限進行管理,是系統(tǒng)的基礎(chǔ)模塊。由管理員添加的用戶默認密碼和用戶名稱相同,修改密碼只能由本人或在數(shù)據(jù)庫中修改完成。</p><p> ?。?)、課程管理模塊:管理員具有對課程的增加、刪除和修改權(quán)限。課程分為
4、基礎(chǔ)課、專業(yè)課和選修課3種類型。課程管理模塊制約選課模塊。管理員在課程管理中添加課程信息后,學(xué)生才能進行選課。分配課程主要是制定該課程的任課教師和授課班級(基礎(chǔ)課才需要指定班級)。</p><p> ?。?)、選課管理模塊:主要功能是刪除和統(tǒng)計選課信息,既可對選修課程進行管理,也可統(tǒng)計選修課人數(shù),并根據(jù)學(xué)生選課時間決定最終選修此課的學(xué)生。</p><p> ?。?)、成績管理模塊:管理員可
5、以錄入和統(tǒng)計學(xué)生成績;學(xué)生可以自己查詢自己課程的名稱、學(xué)分、成績。當(dāng)學(xué)生成績不及格時,將無法獲得本課程的學(xué)分。</p><p><b> 3、主要負責(zé)模塊:</b></p><p> 甄邊梓:主體框架設(shè)計、學(xué)生數(shù)據(jù)庫管理模塊、選課管理模塊、成績管理模塊</p><p> 張彩娟:登錄權(quán)限驗證、數(shù)據(jù)庫與ASP.NET的連接、用戶管理模塊、課
6、程管理模塊</p><p><b> 系統(tǒng)設(shè)計</b></p><p><b> 2.1系統(tǒng)需求分析</b></p><p> 在該系統(tǒng)中主要對學(xué)生的基本信息、學(xué)生成績等進行管理,系統(tǒng)主要功能如下:</p><p> 學(xué)生信息管理:用來管理學(xué)生基本信息,包括查詢、添加、修改和刪除。學(xué)生基本信
7、息包括:學(xué)號、姓名、性別、出生年月、籍貫、班級、學(xué)院。</p><p> 課程信息管理:一門課程有一個上課班級,也可能有幾個上課班級,因此課程信息里的授課教師是不確定的。課程信息管理包括:瀏覽、查詢、添加、修改和刪除。</p><p> 成績信息管理:用來管理學(xué)生成績,包括瀏覽、查詢、添加、修改和刪除。成績基本信息包括自動編號、學(xué)生學(xué)號、上課班級號、課程成績、</p>&
8、lt;p> 權(quán)限管理:對于不同層次的使用者應(yīng)該開放不同的權(quán)限。</p><p> 管理者:維護學(xué)生基本信息,管理院系、課程、成績各種數(shù)據(jù)。</p><p> 教師:可以錄入學(xué)生成績信息,查詢學(xué)生基本和成績統(tǒng)計信息。</p><p> 學(xué)生:可以查詢學(xué)生成績信息和成績統(tǒng)計信息。</p><p> 2.2數(shù)據(jù)庫需求分析:</
9、p><p> 學(xué)生管理系統(tǒng)的要求是要準(zhǔn)確快捷的管理學(xué)生信息。學(xué)生隸屬班級,班級又由教師指導(dǎo);學(xué)生需要有課程、成績、學(xué)分,而這些又都要靠教師或者管理人員來完成添加。由此總結(jié)出如下需求信息:用戶分為管理員用戶、教師用戶和學(xué)生用戶。其中,管理員和教師用戶是屬于相同權(quán)限等級的用戶。一個班級里有多個學(xué)生,班級組成院系。一個學(xué)生有多門課,一門課對應(yīng)多個學(xué)生。一位教師指導(dǎo)多個班級。一位教師可以教授多門課程,一門課程可以有多個教師
10、來教授。經(jīng)過對上述系統(tǒng)功能的分析和需求總結(jié),設(shè)計如下所示的數(shù)據(jù)項:</p><p> 用戶信息:用戶ID、用戶名、密碼、權(quán)限。</p><p> 班級信息:班級ID、名稱、所屬院系、班主任.</p><p> 學(xué)生信息:學(xué)生ID、姓名、性別、民族、生日、入學(xué)時間、班級、籍貫和備注。</p><p> 教師信息:教師ID、姓名、所屬院系
11、。</p><p> 課程信息:課程ID、名稱、學(xué)時、學(xué)分、類型及描述。</p><p><b> 總體設(shè)計</b></p><p><b> 1、實體及其屬性圖</b></p><p> 由上面的數(shù)據(jù)項可以設(shè)計出能夠滿足用戶需求的各種實體以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計打下基礎(chǔ)。這
12、些實體包含各種具體信息,通過相互之間的作用形成數(shù)據(jù)之間的流動。本系統(tǒng)設(shè)計的實體有:學(xué)生實體、教師實體、課程實體和班級實體。</p><p><b> 2、功能模塊圖</b></p><p><b> 3、數(shù)據(jù)流圖</b></p><p><b> 頂層數(shù)據(jù)流:</b></p>&l
13、t;p><b> 總體ER圖:</b></p><p> 4、數(shù)據(jù)庫的表間關(guān)系</p><p><b> 5、流程分析</b></p><p><b> 學(xué)生登錄流程圖:</b></p><p><b> 管理員登錄流程圖:</b><
14、/p><p><b> 6、用例圖</b></p><p><b> 7、測試用例</b></p><p> 用戶登錄模塊的測試:輸入信息不正確,系統(tǒng)會提示重新輸入。當(dāng)輸入信息正確后,會自動進入學(xué)生管理模塊。</p><p> 測試學(xué)生登錄:此模塊中可以查看個人信息、課程信息、成績查詢、修改密碼
15、、選課瀏覽。</p><p> 選課管理模塊的測試:</p><p> 成績管理模塊的測試:</p><p><b> 課程設(shè)計的感想:</b></p><p> 1、所學(xué):通過一周課程設(shè)計,學(xué)到了很多知識,能夠基于對話框應(yīng)用程序?qū)?shù)據(jù)庫和ASP.NET連接。將以前學(xué)到的零星知識通過系統(tǒng)設(shè)計融會貫通:在ASP.N
16、ET中建立面向?qū)ο蟮那芭_設(shè)計,對控件的靈活使用、控件的動態(tài)構(gòu)建及與數(shù)據(jù)表關(guān)聯(lián)的數(shù)據(jù)方法,討論了復(fù)雜SQL語句的構(gòu)造方法。對數(shù)據(jù)庫表的建立、還原、附加、分離數(shù)據(jù)庫、在IIS搭建站點和站點的運行。使用本系統(tǒng)對學(xué)生成績進行信息管理和成績測評,在查找、可靠性、存儲量等方面有著手工管理無法比擬的優(yōu)點。這些優(yōu)點能夠極大地提高學(xué)校對學(xué)生成績管理和測評的效率。根據(jù)“軟件工程”的思想,分析學(xué)生管理系統(tǒng)的構(gòu)建需求,系統(tǒng)概念結(jié)構(gòu)設(shè)計。數(shù)據(jù)庫邏輯設(shè)計及總體框架
17、結(jié)構(gòu)。采用ASP,Access數(shù)據(jù)庫等技術(shù),構(gòu)建了一個基于Web的在線考試系統(tǒng)。具有一定的使用價值。</p><p> 2、所想:學(xué)習(xí)培養(yǎng)的是一種能力,不僅要學(xué)以致用,還要力爭舉一反三。求知道路上沒有捷徑,勤奮和好學(xué)是遨游的翅膀。遇到問題要思考原因還要動手解決,惰性和知難而退是最大的絆腳石。在設(shè)計過程中,遇到過很多問題,例如在系統(tǒng)中添加成員總是失敗,在尋求幫助是獲得了解決辦法,給每個表創(chuàng)建了存儲過程,存儲過程對
18、數(shù)據(jù)庫表的信息選擇、添加和更新帶來了優(yōu)化,可以加快操作數(shù)據(jù)庫的速度和效率。ST學(xué)生管理系統(tǒng)使用了五個存儲過程。設(shè)計雖然完成了,但我還要感謝我的老師李典尉,她以獨特的人格魅力感染和影響著我,以淵博的學(xué)識教育和引導(dǎo)著我,讓我認識到自身能力的不足,體會到學(xué)習(xí)的可貴;感謝我的合作伙伴,在困難中幫助我,讓我感受到友誼的珍貴和團隊的力量;感謝生活它給了我種種磨練使我成長、使我堅強,我才有那么多的體會。</p><p> 3
19、、不足:由于能力有限,加上時間倉促,本系統(tǒng)出現(xiàn)一些不足。例如,系統(tǒng)只適合提供數(shù)據(jù)輸入,但沒有提供數(shù)據(jù)導(dǎo)入功能;系統(tǒng)對數(shù)據(jù)庫還原備份設(shè)計沒有采用交互性,采用自動備份和還原。</p><p><b> 參考文獻</b></p><p> 張樹亮、李超《ASP.NET2.0+SQL Server》清華大學(xué)出版社2006.9</p><p> 張
20、海蕃《軟件工程導(dǎo)論》清華大學(xué)出版社2009.10</p><p> 張玉平《ASP.NET+SQL組建動態(tài)網(wǎng)站》電子工業(yè)出版社2006.3</p><p><b> 附錄A</b></p><p><b> 用戶數(shù)據(jù)表結(jié)構(gòu)</b></p><p> ?。?)用戶表ST-users記錄用戶的用戶
21、名和密碼。用戶權(quán)限為1或0。1代表管理員權(quán)限,0代表學(xué)生權(quán)限。在頁面中顯示為“管理員”和“學(xué)生用戶”,具有管理員權(quán)限的用戶添加新的管理員時,默認密碼與添加的用戶名相同。之后用戶可以自行修改密碼。</p><p> (2)學(xué)生表ST-student,用來記錄學(xué)生信息。此記錄的信息會詳細的顯示在學(xué)生登錄后的頁面上。此信息不允許學(xué)生自己修改,只能由管理員更改。</p><p> ?。?)教師表
22、ST-teacher用來記錄教師信息</p><p> ?。?)班級表ST-class用來記錄班級信息</p><p> (5)課程表ST-course用來記錄課程信息,該表和下面的表都是中間表,對應(yīng)E-R圖中的多對多關(guān)系,即一個學(xué)生選多門課程,一門課程被多個學(xué)生選。</p><p> ?。?)教師課表ST-teacher-course,中間表實現(xiàn)多對多關(guān)系,即一
23、位教師教多門課,一門課被多名教師教。</p><p><b> 附錄B</b></p><p><b> 查看個人信息源代碼</b></p><p> public class ST_query : System.Web.UI.Page</p><p><b> {</b&g
24、t;</p><p> protected System.Web.UI.WebControls.Repeater st_rp_information;</p><p> private void Page_Load(object sender, System.EventArgs e)</p><p><b> {</b></p>
25、;<p> // 在此處放置用戶代碼以初始化頁面</p><p> //獲取數(shù)據(jù)庫連接字符串</p><p> string st_connstr= ConfigurationSettings.AppSettings["st_dbconn"];</p><p><b> //建立連接</b></p
26、><p> SqlConnection st_conn=new SqlConnection(st_connstr);</p><p> string st_sqlstr="select * from ST_student where ST_Student_id=@id";</p><p> SqlCommand st_comm=new Sql
27、Command(st_sqlstr,st_conn);</p><p> st_comm.Parameters.Add(new SqlParameter("@id",SqlDbType.VarChar,50));</p><p> //在數(shù)據(jù)庫相應(yīng)的表中查詢session中的值</p><p> st_comm.Parameters[&qu
28、ot;@id"].Value=Session["user_id"].ToString();</p><p><b> //打開連接</b></p><p> st_conn.Open();</p><p> SqlDataReader st_dr=st_comm.ExecuteReader();</p&
29、gt;<p> st_rp_information.DataSource=st_dr;</p><p><b> //綁定到控件</b></p><p> st_rp_information.DataBind();</p><p><b> //關(guān)閉連接</b></p><p>
30、; st_conn.Close();</p><p><b> }</b></p><p> #region Web Form Designer generated code</p><p> override protected void OnInit(EventArgs e)</p><p><b>
31、; {</b></p><p> // CODEGEN:該調(diào)用是 ASP.NET Web 窗體設(shè)計器所必需的。</p><p> InitializeComponent();</p><p> base.OnInit(e);</p><p><b> }</b></p><p&g
32、t; /// <summary></p><p> /// 設(shè)計器支持所需的方法 - 不要使用代碼編輯器修改</p><p> /// 此方法的內(nèi)容。</p><p> /// </summary></p><p> private void InitializeComponent()</p>
33、<p><b> { </b></p><p> this.st_rp_information.ItemCommand += new System.Web.UI.WebControls.RepeaterCommandEventHandler(this.st_rp_information_ItemCommand);</p><p> this.Lo
34、ad += new System.EventHandler(this.Page_Load);</p><p><b> }</b></p><p> #endregion</p><p> private void st_rp_information_ItemCommand(object source, System.Web.UI.Web
35、Controls.RepeaterCommandEventArgs e)</p><p><b> {</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p>
36、<p> 學(xué)生選課管理后臺源代碼</p><p> public void ST_BindGrid()</p><p><b> {</b></p><p> //查詢 sql語句字符串</p><p> string st_sqlstr="select ST_student_course.
37、ST_ID,ST_student.ST_Student_id,ST_student.ST_Student_classid from ST_student_course,ST_student,ST_teacher_course where ST_student_course.ST_Course_id='"+st_ddl_course.SelectedItem.Value+"' and ST_studen
38、t_course.ST_Course_year=ST_teacher_course.ST_Course_year and ST_student_course.ST_Course_year='"+st_tbx_year.Text+"'and ST_teacher_course.ST_Teacher_id='"+st_ddl_teacher.SelectedItem.Value+&quo
39、t;'and ST_student_course.ST_Course_id=ST_teacher_course.ST_Course_i</p><p> SqlDataAdapter st_da=new SqlDataAdapter(st_sqlstr,st_conn);</p><p> //生成一個數(shù)據(jù)集的一個實例</p><p> DataSet
40、 st_ds=new DataSet();//填充數(shù)據(jù)集</p><p> st_da.Fill(st_ds);</p><p> st_dtg_sort.DataSource=st_ds;//綁定到控件</p><p> st_dtg_sort.DataBind();//查詢語句</p><p> string strsq=&quo
41、t;select COUNT(*) from ST_student_course,ST_student,ST_teacher_course where ST_student_course.ST_Course_id='"+st_ddl_course.SelectedItem.Value+"' and ST_student_course.ST_Course_year=ST_teacher_course.S
42、T_Course_year and ST_student_course.ST_Course_year='"+st_tbx_year.Text+"'and ST_teacher_course.ST_Teacher_id='"+st_ddl_teacher.SelectedItem.Value+"'and ST_student_course.ST_Course_id=S
43、T_teacher_course.ST_Course_id and ST_student.ST_Student_id=ST_student_course.ST_Student_id";</p><p> SqlCommand st_comm1=new SqlCommand(strsq,st_conn);//打開連接 st_conn.Open();</p><p&g
44、t; SqlDataReader dr=st_comm1.ExecuteReader();</p><p> if(dr.Read())</p><p><b> {</b></p><p> st_lbl_all.Text="選課總?cè)藬?shù)為:"+dr[0].ToString();</p><p&g
45、t;<b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> st_lbl_all.Text="無人選此課";</p><p><b> }//關(guān)閉連接</b>&
46、lt;/p><p> st_conn.Close();</p><p><b> }</b></p><p> private void st_btn_exit_Click(object sender, System.EventArgs e)</p><p><b> {</b></p&g
47、t;<p> Response.Redirect("default.aspx");</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> 附錄C
48、 </p><p><b> 設(shè)計工具簡介</b></p><p><b> ASP技術(shù)</b></p><p> 由于系統(tǒng)的操作界面都是Web頁面形式,而且需要對各種用戶的具體請求進行動態(tài)處理并返回結(jié)果,所以采用動態(tài)網(wǎng)頁技術(shù)。目前動態(tài)網(wǎng)頁技術(shù)有很多,本設(shè)計采用ASP技術(shù)。 Microsoft Activ
49、e Server Pages 即我們所稱的ASP,其實是一套微軟開發(fā)的服務(wù)器端腳本環(huán)境。Active Server Page 是創(chuàng)建動態(tài)網(wǎng)頁的一個很好的工具,它起一種編程語言的作用,可以利用它編寫產(chǎn)生動態(tài)網(wǎng)頁的HTML程序代碼。因此,只要用戶瀏覽Web站點并請求一個ASP頁,Web服務(wù)器就可以處理相應(yīng)的ASP代碼,生成HTML代碼,然后將它傳遞到用戶瀏覽器并顯示出網(wǎng)頁。ASP內(nèi)含于IIS之中,通過ASP我們可以結(jié)合HTML網(wǎng)頁、ASP指
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件工程課程設(shè)計--學(xué)生管理系統(tǒng)
- 軟件工程課程設(shè)計——學(xué)生管理系統(tǒng)
- 學(xué)生學(xué)籍管理系統(tǒng)-軟件工程課程設(shè)計
- 軟件工程課程設(shè)計---學(xué)生成績管理系統(tǒng)
- 軟件工程課程設(shè)計---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計-學(xué)生信息管理系統(tǒng)
- 軟件工程導(dǎo)論課程設(shè)計-學(xué)生學(xué)籍管理系統(tǒng)
- 軟件工程課程設(shè)計--學(xué)生成績管理系統(tǒng)
- 軟件工程課程設(shè)計管理系統(tǒng)
- 學(xué)生選課系統(tǒng)《軟件工程》課程設(shè)計
- 軟件工程課程設(shè)計---學(xué)生信息管理系統(tǒng)
- 軟件工程課程設(shè)計-學(xué)生宿舍管理系統(tǒng)
- 軟件工程課程設(shè)計---學(xué)生公寓管理系統(tǒng)
- 軟件工程課程設(shè)計學(xué)生信息管理系統(tǒng)
- 學(xué)生選課系統(tǒng)《軟件工程》課程設(shè)計
- 軟件工程課程設(shè)計----學(xué)生選課系統(tǒng)
- 軟件工程課程設(shè)計---學(xué)生信息管理系統(tǒng) (2)
評論
0/150
提交評論