網上選課系統(tǒng)—數(shù)據(jù)庫原理與應用_第1頁
網上選課系統(tǒng)—數(shù)據(jù)庫原理與應用_第2頁
網上選課系統(tǒng)—數(shù)據(jù)庫原理與應用_第3頁
網上選課系統(tǒng)—數(shù)據(jù)庫原理與應用_第4頁
網上選課系統(tǒng)—數(shù)據(jù)庫原理與應用_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、高校網上選課系統(tǒng)數(shù)據(jù)庫原理與應用目錄1引言31.1編寫目的31.2定義31.3參考資料32需求分析32.1功能模塊分析32.2數(shù)據(jù)流圖3221頂層流圖3222第二層流圖32.3數(shù)據(jù)字典33結構設計43.1概念結構設計4311局部E-R圖4312 整體E-R圖43.2邏輯結構設計4321基本表43.3物理結構設計44運用設計44.1安全保密設計44.2數(shù)據(jù)庫實施5421創(chuàng)建數(shù)據(jù)庫5422創(chuàng)建數(shù)據(jù)表5423添加完整性約束、觸發(fā)器5424添加索引、視圖5425 存儲過程54.3數(shù)據(jù)庫測試55結束語51引言1.1編寫目的 學生選課系統(tǒng)是一個學校不可缺少的部分,它的內容對于學校的決策者和管理者來說都至關

2、重要,所以學生選課系統(tǒng)應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產生大量的文件和數(shù)據(jù),這對于查找、更新和維護都帶來了不少的困難。 隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。 作為計算機應用的一部分,使用計算機對選課信息進行管理,有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學化、正規(guī)化管

3、理,與世界接軌的重要條件。因此,開發(fā)這樣一套軟件成為很有必要的事情,1.2定義學生選課系統(tǒng)需要滿足來自三方面的需求,這三個方面分別是學生、教師和管理員。學生的需求是查詢院系的課程、學生選課情況及學生信息的修改;教師對選課系統(tǒng)學生選課情況進行操作,同時形成學生選課查看確認;選課管理員的功能最為復雜,包括對學生、教師、選課進行管理和統(tǒng)計,及系統(tǒng)狀態(tài)的查看、維護并生成選課報表。學生可以直接查看選課情況,學生可以根據(jù)本人學號和密碼登錄系統(tǒng),還可以進行本人學科成績情況的查詢和維護部分個人信息。一般情況下,學生只應該查詢和維護本人的選課情況和個人信息,若查詢和維護其他學生的選課及成績查詢信息,就要知道其他

4、學生的學號和密碼。這些是很難得到的,特別是密碼,所以不但滿足了學生的要求,還保護了學生的個人隱私。學校工作人員有修改學生選課的權限,所以需對工作人員登陸本模塊進行更多的考慮。在此系統(tǒng)中,學校工作人員可以為學生加入選課或是登陸記錄,并打印生成相應的報表給用戶查看和確認院系管理人員功能的信息量大,數(shù)據(jù)安全性和保密性要求最高。本功能實現(xiàn)對選課信息、教師信息、總體選課情況信息的查詢和統(tǒng)計、工作人員和管理人員信息查看及維護。學校管理員可以瀏覽、查詢、修改、統(tǒng)計選課的基本信息;瀏覽、查詢、統(tǒng)計和修改學生選課的基本信息,瀏覽、查詢、統(tǒng)計學生信息,但不能添加刪除和修改學生的信息,這部分功能應該由院系工作人員執(zhí)

5、行,但是,刪除某條學生選課基本信息記錄時,應實現(xiàn)對該學生選課的級聯(lián)刪除。并且還應具有生成選課報表,并打印輸出的功能。設計不同用戶的操作權限和登陸方法對所有用戶開放的學生選課查詢和個人部分信息維護查看個人情況信息維護學生個人密碼根據(jù)選課情況對數(shù)據(jù)庫進行操作并生成報表根據(jù)選課情況對數(shù)據(jù)庫進行操作并生成報表查詢及統(tǒng)計各種信息維選課信息維護工作人員和管理員信息維護學生信息處理信息的完整性。 本系統(tǒng)主要實現(xiàn)教師信息管理、學生信息管理、課程信息管理和系信息管理,其中教師信息管理有教師姓名、教師工號、教師職稱、教師所屬系;學生信息管理有學生姓名、學生學號和學生所在系;課程信息管理有課程名稱、學分、上課地點、

6、已選人數(shù)、課程性質、開課系、課程人數(shù);系信息管理有系號和系名。1.3參考資料列出有關的參考資料:張劍平.學校管理信息系統(tǒng).北京:中國鐵道出版社,1997吳開軍.選課系統(tǒng)的設計與實現(xiàn),電腦開發(fā)與應用育.西南師大出版社,1999吳晨,ASP.NET+SQL Server-數(shù)據(jù)庫開發(fā)與實例,清華大學出版社,出版2006年7月2需求分析2.1功能模塊分析管理員界面的功能模塊如圖2-1所示:管理員登錄系統(tǒng)管理專業(yè)管理系統(tǒng)院系管理系統(tǒng)課程管理學生管理教師管理查看專業(yè)添加專業(yè)修改專業(yè)刪除專業(yè)查看院系添加院系修改院系刪除院系查看課程修改課程添加課程刪除課程查看學生添加學生修改學生刪除學生查看教師添加教師刪除教

7、師修改教師圖2-1 管理界面的系統(tǒng)功能模塊圖教師界面的功能模塊如圖2-2所示:學生界面的功能模塊如圖2-3所示:學生登錄課 程個人信息管理查看個人信息修改個人信息添加選課刪除選課查看選課信息學生信息查看選課信息教師登錄選課學生信息教師信息擔任學生課表添加選課課程如圖2-2教師界面的功能模塊 如圖2-3學生界面的功能模塊2.2數(shù)據(jù)流圖221頂層流圖222第二層流圖2.3數(shù)據(jù)字典3結構設計3.1概念結構設計311局部E-R圖管理員信息實體E-R圖如圖2-5所示教師用戶實體E-R圖如圖2-6所示學生用戶信息實體E-R圖如圖2-7所示院系信息實體E-R圖如圖2-8所示教師姓名所屬院系教師工號教 師管理

8、員 密 碼用戶名 圖2-5 管理員信息實體E-R圖 如圖2-6 教師用戶實體E-R圖院 系所屬專業(yè)學 生性 別所屬院系 用戶編號院系名稱學生姓名圖2-7 學生用戶信息實體E-R圖 圖2-8 院系信息實體E-R圖專業(yè)信息實體E-R圖如圖2-9所示課程信息實體E-R圖如圖2-10所示課 程所屬專業(yè)學生姓名所屬院系用戶編號管理員院系名稱專業(yè)名稱圖2-9 專業(yè)信息實體E-R圖 圖2-10 課程信息實體E-R圖312 整體E-R圖 課 程教 師院 系專 業(yè)學 生選 課 3.2邏輯結構設計321基本表包括users、teacherinfo、studentinfo、deptinfo、majorinfo、ma

9、jorinfo、stucourse。其中每個表與邏輯設計中一種的關系模式相對應。下面是每個數(shù)據(jù)表中的屬性,包括屬性列的名稱、數(shù)據(jù)類型是否可以為空等內容。Users為用戶表,記錄用戶的登錄信息,包括管理員、教師和學生的登錄帳戶。本系統(tǒng)默認用戶為admin,其他可由管理員添加,默認密碼都為123。其中userID為主鍵,其詳細信息請看表2-1表2-1 Users(用戶表)Teacherinfo為教師信息列表,以TeacherID為主鍵,記錄教師相關的信息。其詳細信息請看表2-2表2-2 Teacherinfo(教師信息列表)Studentinfo為學生信息列表,以StudentID為主鍵,記錄學生

10、相關的信息。其詳細信息請看表2-3表2-3 Studentinfo(學生信息列表)Deptinfo為院系列表,以DeptID為主鍵,記錄院系的相關信息。其詳細信息請看表2-4表2-4 Deptinfo(院系列表)majorinfo為專業(yè)信息列表,以majorID為主鍵,記錄專業(yè)相關的信息。其詳細信息請看表2-5表2-5 majorinfo(專業(yè)信息列表)courseinfo為課程信息列表,以courseID為主鍵,記錄課程相關的信息。其詳細信息請看表2-6表2-6 courseinfo(課程信息列表)stucourse為學生和課程的關系表,因為學生和課程多對多關系,所以用表建立以courseI

11、D為主鍵的多對對關系。其詳細信息請看表2-7表2-7 stucourse(學生和課程的關系表)3.3物理結構設計建立系統(tǒng)程序員視圖,包括:a 數(shù)據(jù)在內存中的安排,包括對索引區(qū)、緩沖區(qū)的設計;b 所使用的外存設備及外存空間的組織,包括索引區(qū)、數(shù)據(jù)塊的組織與劃分;c 訪問數(shù)據(jù)的方式方法。4運用設計4.1安全保密設計說明在數(shù)據(jù)庫的設計中,將如何通過區(qū)分不同的訪問者、不同的訪問類型和不同的數(shù)據(jù)對象,進行分別對待而獲得的數(shù)據(jù)庫安全保密的設計考慮。4.2數(shù)據(jù)庫實施421創(chuàng)建數(shù)據(jù)庫create database 學生選課庫on primary(name=學生選課庫,filename=g:學生選課庫學生選課.

12、mdf)422創(chuàng)建數(shù)據(jù)表create table 課程(課程號 char(10)primary key, 課程名 char(10)not null, 任課老師 char(20), 課程類別 char(20)constraint c1 check (課程類別 in (管理類,經濟類,電子類,計算機類)create table 學生(學號 char(10) primary key, 姓名 char(10) not null, 性別 char(2) check (性別 in (男,女), 系別 char(10);create table 選課(學號 char(10), 課程號 char(10), 成

13、績 smallint default 60constraint c2 primary key (學號,課程號),constraint c3 foreign key (學號) references 學生(學號),constraint c4 foreign key (課程號) references 課程(課程號);423添加完整性約束、觸發(fā)器create trigger 學生信息 on 學生 for delete as if (select count(*) from 選課,deleted where 選課.學號=deleted.學號)0 rollback transaction424添加索引、視

14、圖創(chuàng)建索引create unique index 學生 on 學生(學號);create unique index 課程 on 課程(課程號);create index 選課 on 選課(學號,課程號);創(chuàng)建視圖create view 學生成績(學號,姓名,系別,課程號,課程名,成績) as select 學生.學號,學生.姓名,學生.系別,課程.課程號,課程.課程名,選課.成績 from 學生,課程,選課 where 學生.學號=選課.學號 and 課程.課程號=選課.課程號425 存儲過程create procedure 課程查詢1 課程類別1 char(20), 任課老師1 char(2

15、0) as select * from 課程 where 課程類別=課程類別1 and 任課老師=任課老師1go4.3數(shù)據(jù)庫測試作為一個完整的系統(tǒng),聯(lián)機文檔是其中不可缺少的部分也是相當重要的部分。好的文檔能夠使用戶快速了解并準確的使用系統(tǒng)的各項功能。減少誤操作,減少錯誤產生的可能,這對用戶和開發(fā)人員都有很多的好處。所以在開發(fā)本系統(tǒng)中,也加入了不少的文檔,除了對于四大模塊的詳細說明外,對于易出錯和不易操作的地方(如多條件查詢部分)又作了詳細的說明。 由于本身能力的局限性,所以做編寫的代碼,即使經過反復檢查也難免出錯所以在本階段力求使用有限的時間找出盡可能多的錯誤,力求系統(tǒng)盡量正確。我們在本系統(tǒng)的

16、測試中使用了黑盒法(即不關心程序內部的邏輯結構,而是根據(jù)程序的功能來設計是檢測)請一位不熟悉本系統(tǒng)的人來進行隨意性的操作,打破習慣的操作順序,從中發(fā)現(xiàn)錯誤,在此階段系統(tǒng)的大量錯誤得到了改正。 信息管理系統(tǒng)所涉及的數(shù)據(jù)庫設計的重要步驟加載測試。加載測試工作貫穿于程序測試工作的全過程,整個錄入、修改、查詢、處理工作均可視為對數(shù)據(jù)庫的加載測試工作。要設計出一個好的信息管理系統(tǒng)數(shù)據(jù)庫,除滿足系統(tǒng)所要求的功能外,還必須遵守下列原則:1)基本表的個數(shù)越少越好。2) 主鍵的個數(shù)越少越好。鍵是表間連接的工具,主鍵越少,表間的連接就越簡單。3)字段的個數(shù)越少越好。4) 所有基本表的設計均應盡量符合第三范式。數(shù)據(jù)

17、庫的設計中,如何處理多對多的關系和如何設計主鍵,是兩個有著較大難度、需要重點考慮的問題。 5、總結這次的軟件工程課程設計,我們做的是“網上課管理系統(tǒng)”,通過幾個星期對其各階段任務的分析實驗操作(確定課題、可行性研究與計劃、需求分析、設計等),使我們對這門課程有了更深層次的了解,同時也學到了很多東西。首先確定課題,弄清選題依據(jù)后,進行了可行性研究,可行性研究的主要任務不是具體解決系統(tǒng)中的問題,而是以最小的代價在盡可能短的時間內確定問題是否值得解決,是否能夠解決,因此我們考慮了經濟、技術與操作上的可行。接著是需求分析階段,這部分任務用了較長的時間,因為除了用傳統(tǒng)的結構化分析方法外,還用了面向對象的

18、分析方法。剛開始用結構化的方法時,由于對系統(tǒng)的了解程度不夠,有很多方面都考慮的不周全。通過進行數(shù)據(jù)流程圖的劃分,使功能模塊的實現(xiàn)看起來更具體。我們總共劃分到第二次數(shù)據(jù)流,按照“自定而下,逐層分解”的總原則劃分,逐層到每一層的復雜度。比較有難度的就是用面向對象的方法分析了,這種方法以前自己沒有使用過,只是通過課程來了解其含義,理解起來也很空洞。一開始我們都覺得很難上手,在建立用例模型的時候,如何確定執(zhí)行者、用例、用例之間的關系;在建立動態(tài)模型的時候,狀態(tài)圖、順序圖、協(xié)作圖、活動圖等都是如何定義與細化的;在建立靜態(tài)模型的時候,如何分析確定類、確定類與類之間的關系等等都阻礙著分析的前行。為了解決這些問題,我們也不乏做了很多工作,比如把書上的各小節(jié)的例子與案例分析都仔細的研究了幾遍,然后通過借鑒其它書本及網上搜索的資料,并根據(jù)我們所選系統(tǒng)定義的功能以及操作過程再反復斟酌,進一步對系統(tǒng)進行了較好的分析。同時通過兩人之間的討論配合,也是問題難度有了一定減弱。然后我們又花了兩周進行設計階段的工作,這部分我們熟悉了一個軟件開發(fā)工具Rational Rose。用word來畫模型圖還是比較復雜,至少說很花時間的,用rose工具大大節(jié)約了時間并且減少了出錯率,同時也使得我們對UML建模有了一個專業(yè)上的認知。之后根據(jù)需要對系統(tǒng)進行了數(shù)據(jù)結構的設計,這部分內容比較簡潔,因為我們平時就有用到選課系

溫馨提示

  • 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

提交評論