




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上數據庫系統概論綜合實驗報告 (20132014學年 第1學期)項目名稱 學生選課管理系統 學 院 學 號 姓 名 授課教師 填表日期: 目 錄1、 需求分析 032、 概念設計 183、 邏輯設計 214、 物理設計 275、 數據庫實施296、 總結 38學校學生選課系統 一、需求分析階段 需求分析分為三個部分:需求的文字表述、數據流圖、數據字典。一、 需求分析第一部分 調查用戶需求現在,隨著各大高校的擴招及信息化社會的到來,學校為了合理規劃人力資源的利用,保證學生信息安全性,對信息化處理數據的要求也越來越高。學生選課系統就是為了減少學校對信息管理的工作量,增強學生
2、選課以及成績信息管理系統的安全性的雙重要求下出現的。學生選課排課系統用于根據教學計劃、教師資源、教師資源等,制定每學期的課程表及相關信息,面對的用戶包括系統管理員、教師和學生。因此該系統的功能模塊應分為系統管理員需求、教師需求、學生需求三個部分。管理員可以通過超級用戶身份登錄,對系統進行全面的管理維護。老師、學生以不同用戶的身份進入不同的界面,執行不同的操作。1.學校的組織結構情況學校下面的結構可分為各個處理學校事物的職能部門、各種群團組織、教輔單位、直屬單位以及各個學院。而職能部門中的教務處這一管理機構以下又分為招生辦、教學管理科、學籍管理科以及辦公室。其中教學管理科主要負責學生的選課工作以
3、及其他教務系統的管理。學校負責選課的這一組織機構為三類用戶服務:管理員、教師、學生。由于目前的大學學生基數越來越龐大,而每一學期學生需要選修課程攻讀,若是學校沒有一個很好的選課系統,那么上千上萬的學生資料整理歸納起來都會是一個非常巨大非常困難的項目。為了方便教師和學生,建立一個好的選課系統是十分有必要的。學校組織結構圖如下:2.關于選課的業務活動情況當學期末快到時,學校教務處會下放通知學生選擇下學期要選修的課程。在學生選課之前負責選課這一模塊工作的教務處的管理員就要整理出學校提供的所有可選課程供同學們選擇,并在每一次選課之后做出調整和資料整理。到下一學期的學期末,由任課老師給出每個學生選修課程
4、的成績,并將成績匯報給管理員,管理員再進一步整理匯總以及將成績通知到學生。以下是關于管理員、教師、學生三者之間的關系。3用戶對系統的要求信息要求:由上面的分析我們可以知道該系統主要用于學生選課和教師錄入成績,因此關于信息要求可以分為以下幾方面:(1)學生信息包括學生的學號、姓名、性別、出生日期、所在班級、專業,除了這些基本信息之外還包括學生選修課程的成績。(2)課程信息包括課程號、課程名稱。(3)選課信息包括學生的學號、姓名以及選修的課程號、課程名稱和成績(4)教師信息包括教師號、姓名、性別、聯系電話、所授課程(5)管理員信息包括工號、姓名、性別、聯系電話處理要求:系統應當完成以下的信息處理:
5、(1)系統管理員管理員維護整個系統,設置選課階段:選課前:學生不可登錄,同時發布教師的基本情況。選課時:a.限制最大選課人數,防止系統崩潰; b.發布選課信息; c.數據備份和恢復等;選課后:a.學生只可查詢,管理員對選課結果進行統計; b.管理員查詢選課情況,對學生的選課申請進行處理,進行用戶管理。(2)教師查詢課程的基本情況、學生情況。(3)學生 在選課系統中查詢課程、教師信息,提交選課申請,撤銷申請,查詢選課情況,登錄系統,進行個人信息修改等于選課有關的活動。安全性與完整性要求:安全性要求:(1)系統應設置訪問用戶的標識以鑒別是否是合法用戶,并要求合法用戶設置其密碼,保證用戶身份不被盜用
6、;(2)系統應對不同的數據設置不同的訪問級別,限制訪問用戶可查詢和處理數據的類別和內容;(3)系統應對不同用戶設置不同的權限,區分不同的用戶。如區分學生(只能查詢管理員發布的課程基本信息和選修課程的限制人數及當前選擇人數,只能修改自己的個人信息,如密碼。)教師(只能查詢選修該課程的學生基本情況以及發布成績。)管理員(只可以發布課程信息匯總選課情況)完整性要求:(1)各種信息記錄的完整性,信息記錄內容不能為空;(2)各種數據間相互的聯系的正確性;(3)相同的數據在不同記錄中的一致性。4確定系統的邊界經對前面的需求調查和初步的分析,確定由計算機完成的工作時對數據進行各種管理和處理,具體的工作內容見
7、第二部分, 由手工完成的工作主要有對原始數據的錄入;不能由計算機生成的,各種數據的更新,包括數據變化后的修改,數據的增加,失效數據或無用數據的刪除等;以及系統的日常維護。第二部分 系統功能的設計和劃分系統功能模塊基本將本系統劃分為三大模塊,即學生選課模塊、教師開課模塊以及管理員管理模塊。 (1)學生選課模塊:在這個模塊中,允許學生修改個人信息,瀏覽基本的課程;并實現主要的選課功能,包括填寫選課信息、查看已選課程、修改選課等。(2)教師開課模塊:這個模塊主要是讓教師申請教課,同時教師可以修改個人信息、瀏覽基本課程以及查看學生的選課情況等。(3)管理員管理模塊:這個模塊的功能比較多,主要包括創建課
8、程的指定任課老師、設定課程人數、統計學生選課信息、發通知等等。(4)通用功能模塊:即用戶登錄、密碼修改等功能的實現。 以下是系統功能圖總體的功能需求圖二、數據流圖頂層DFD在數據流圖的基礎上再進行分解,對系統功能需求做進一步分解:1.用戶登錄獲取用戶輸入的用戶名及密碼;若出現用戶名、密碼錯誤或不匹配現象,反饋錯誤提示;在用戶名及密碼都正確的前提下,支持密碼修改。2.選課系統首先發布選課通知,即先對教師發出通知(教師得到通知后才可申請教課),然后對學生發出 通知(此時已安排完有關選修課的所有信息);創建課程指定任課教師;設定課程的人數和開課時間安排;分配賬號及密碼(由于是管理員操作此部分)。3.
9、教師開課獲取教師申請教課的信息,包括教師信息及其所要教的課程課程信息;提供教師瀏覽課程的功能,即課程時間、教室等的安排;并提供查詢學生選課情況的功能,即選此門課程的名單等;處理和統計教師對學生成績的評定。4.學生選課提供學生修改個人信息的功能;提供學生瀏覽全部選修課信息的功能,然后接受學生的選課操作;獲取學生及其所選課程的信息后,提供學生瀏覽自己所選課程的安排情況;得到選課系統的指令,在相應時間內可以讓學生修改自己的選課;將選課系統統計好的成績信息反饋給學生供其瀏覽。通過以上分析,根據不同用戶給出以下數據流圖: 以下是整體結構數據流圖:三、數據字典根據數據流程分析,對系統數據分析和匯總,建立系
10、統數據字典1. 數據項(如下數據結構中)2數據結構學生信息屬性名存儲代碼類型長度備注學號snochar10例 :,12代表入學年份,14代表學院,第一個01代表專業名稱,第二個01代表班級,26代表學號(不能為空)姓名snamechar10描述學生的姓名性別ssexchar2描述學生的性別(只允許填寫“男”或“女”)出生日期sdatechar10例:1992-12-4班級sclasschar10例:(取學號的前8位)專業sdeptchar20例:信息管理與信息系統課程信息數據字典屬性名存儲代碼類型長度備注課程號cnochar10例:T001,T代表所屬類別,001代表課程編號(不為空)課程名c
11、namechar20描述課程名信息。例:數據庫原理與應用任課老師jnochar10任課老師的教師號學時chourint描述每門科目需要學習的時間。例:42學分creditint描述修完某個科目所得學分選課成績屬性名存儲代碼類型長度備注學號snochar10不能為空姓名snamechar10描述學生姓名信息課程號cnochar10不能為空課程名cnamechar20描述課程名信息分數gradeint描述某一科目通過考試所獲得的成績教師信息屬性名存儲代碼類型長度備注教師號jnochar10描述教師的代號信息,例:001(不為空)教師姓名jnamechar10描述教師姓名信息性別jsexchar2描
12、述教師性別。例:“男”或“女”聯系電話jtelvarchar20描述教師的聯系方式所授課程號cnochar10描述教師所教課程信息管理員信息屬性名存儲代碼類型長度備注姓名namechar10描述管理員性別sexchar2描述管理員性別。例:“男”或“女”職工號nochar10描述管理員代號。聯系電話telvarchar20描述管理員的聯系方式3數據流編號數據流名來源組成去向數據流量備注1賬號密碼用戶登錄處理賬號+密碼統計分析處理小用戶輸入賬號和密碼2教師信息管理員錄入教師信息教師教師查詢信息大在教師權限范圍內查詢信息3課程信息管理員錄入課程信息課程查詢課程信息大錄入學生選擇的課程4學生信息管理
13、員錄入學生信息學生學生查詢信息大在學生權限范圍內查詢信息5查詢結果用戶查詢分析學生、教師、選課查詢信息小查詢老師權限范圍內的數據6學生成績管理員錄入學生成績選課學生成績表大錄入學生的選課成績信息4數據存儲編號存儲名稱輸入的數據流輸出的數據流組成備注1教師教師信息教師信息教師存儲教師信息2學生學生信息學生信息學生存儲學生信息3課程課程信息課程信息課程存儲課程信息4成績學生成績學生成績學生、選課存儲成績信息5處理過程處理過程說明輸入輸出處理錄入教師信息將教師信息錄入系統信息錄入教師信息管理員將教師信息錄入系統,供用戶查詢及修改錄入學生信息將學生信息錄入系統信息錄入學生信息管理員將學生信息錄入系統,
14、供用戶查詢及修改錄入課程信息將課程信息錄入系統課程安排課程信息管理員將教師信息錄入系統錄入學生成績將成績信息錄入系統信息錄入學生成績選課系統提供選課信息及課程安排查詢成績信息用戶查詢學生成績賬號密碼成績信息用于學生查詢自己的成績查詢課程信息查詢課程信息賬號密碼課程信息學生將自己的信息輸入后,會顯示出自己當前選課進程查詢學生信息用戶查詢學生信息賬號密碼學生信息用戶登錄后可以查看修改個人信息查詢教師信息用戶查詢教師信息賬號密碼教師信息用戶登錄后可以查看修改個人信息學生選課學生進行網上選課賬號密碼課程信息,選課進度選課系統提供選課信息及課程安排,學生進行選課發布課程信息教師管理員發布課程信息提供給管
15、理員課程信息教師將所開啟的課程交由選課系統,管理員進行匯總整理 二、概念設計階段 一、數據抽象(聚集法)二、E-R初步E-R圖改進后的E-R圖(合并分E-R) 三、修改過程1.合并分E-R圖,生成總E-R圖由于各個實體和實體的屬性之間的沖突,合并時必須消除這些沖突:(1)屬性沖突:因為設計分E-R圖前有過充分討論,所以沒有屬性沖突。(2)命名沖突:教師中的所授課程即為課程中的課程號(3)結構沖突:“選課”是一個實體,但是在E-R圖中卻成了關系,所以在制作數據庫時要把“選課”作為一個實體。2.消除不必要的冗余 由于某些聯系可以導出其它的聯系,這種聯系可以被消除。 三、邏輯結構設計階段 一、概念模
16、型向關系模型轉換及依賴關系分析根據總E-R圖中的實體與實體之間的聯系以及轉換的一般原則,如下的關系:學生(學號、姓名、性別、出生日期、班級、專業)課程(課程號、課程名、任課老師、學時、學分)教師(教師號、姓名、性別、電話、所授課程)選課(學號、課程號、課程名、成績)一對多關系(1:n)的轉換教師(教師號、姓名、性別、電話、所授課程)學生(學號、姓名、性別、出生日期、班級、專業)學生(學號、姓名、性別、出生日期、班級、專業)課程(課程號、課程名、任課老師、學時、學分)學生(學號、姓名、性別、出生日期、班級、專業)課程(課程號、課程名、任課老師、學時、學分)選課(學號、課程號、成績)教師(教師號、
17、姓名、性別、電話、所授課程)課程(課程號、課程名、任課老師、學時、學分)二、數據模型的優化1.確定數據依賴2.消除冗余的聯系3.確定所屬范式4.按照需求分析階段得到的各種應用對數據處理的要求,分析對于這樣的應用環境這些模式是否合適,確定是否要對它們進行合并或分解。(1)在關系模式學生(學號、姓名、性別、出生日期、班級、專業)中,每一個屬性都不能再分,故屬于1NF;在關系模式學生(學號、姓名、性別、出生日期、班級、專業)中,主鍵為學號,所以,姓名,性別,專業,出生日期,班級都是非主屬性。根據候選鍵定義可知,學號完全決定姓名,姓名,性別,專業,出生日期,班級,即每一個非主屬性完全依賴于候選鍵,故,
18、該關系模式屬于2NF;在關系模式學生(學號、姓名、性別、出生日期、班級、專業)中,姓名、性別、出生日期、班級、專業,都是非主屬性,且每一個非主屬性不傳遞函數依賴于候選鍵學號,即,學號決定姓名,但姓名不決定性別,不決定出生日期、班級、專業。故,該關系模式屬于3NF;在關系模式學生(學號、姓名、性別、出生日期、班級、專業)中,候選鍵為學函數依賴為學號>姓名,學號>性別,學號>出生日期,學號>班級,學號>專業,故,該關系模式屬BCNF; 由于在關系模式學生(學號、姓名、性別、出生日期、班級、專業)中不存在多值依賴,故該關系模式不屬于4NF。
19、0;綜上所述,關系模式學生(學號、姓名、性別、出生日期、班級、專業)為BCNF。(2)在關系模式課程(課程號、課程名、任課老師、學時、學分)和教師(教師號、姓名、性別、電話、所授課程)中,每一個屬性都不能再分,故,屬于首先滿足1NF.主鍵分別為編號和課程號,每一個非主屬性完全依賴于候選鍵,故,這兩個關系模式首先屬于2NF。且每一個非主屬性不傳遞函數依賴于候選鍵學號,故屬于3NF。而且,候選鍵編號和課程號決定一切非主屬性,故,該關系模式屬于BCNF。 由于關系模式中不存在多值依賴,故,不屬于4NF。所以這兩個關系模式屬于BCNF。(3)在關系模式選課(學號、課程號、課程名、成績)中,每
20、一個屬性都不能再分,故,屬于首先滿足1NF. 在關系模式選課(學號、課程號、課程名、成績)中,主鍵分別為學號和課程號碼,每一個非主屬性完全依賴于候選鍵,故,這兩個關系模式首先屬于2NF。且每一個非主屬性不傳遞函數依賴于候選鍵學號,故屬于3NF。 綜上所述,關系模式選課(學號、課程號、課程名、成績)為3NF。5.按照需求分析階段得到的各種應用對數據處理的要求,對關系模式進行必要的分解,以提高數據操作的效率和存儲空間的利用率三、設計用戶子模式1.對于關系模式學生(學號,姓名,性別,出生日期,班級,專業),為學生和管理員建立視圖:學生1(學號,姓名,性別,出生日期,班級,專業)為
21、非學生建立視圖:學生2(學號,姓名,班級,專業)2.對于關系模式教師(教師號,姓名,性別,電話,所授課程),為教師和管理員建立視圖:教師1(教師號,姓名,性別,電話,所授課程)為學生建立視圖:教師2(教師號,姓名,所授課程)3.對于關系模式選課(學號,課程號,課程名,成績),為教師學生和管理員建立視圖:選課1(學號,課程號,課程名,成績)4.對于課程(課程號,課程名,任課老師,學時,學分),為教師和管理員建立視圖:課程1(課程號,課程名,任課老師,學時,學分)為學生建立視圖:課程2(課程號,課程名,任課老師,學分) 四、物理設計階段 數據庫在物理上的存儲結構與存儲方法稱為數據庫的物理結構,它依
22、賴于選定的數據庫管理系統。為一個給定的邏輯數據模型選取一個最適合應用要求的物理結構的過程,就是物理結構設計。數據庫的物理結構設計通常分為兩步:(1)確定數據庫的物理結構,在關系數據庫中主要指存取方法和存儲結構;(2)對物理結構進行評價,評價的中的是時間和空間效率。索引表學生信息表的索引表:索引列名數據類型長度主SnoChar10無SnameChar10無SsexChar2無SdateChar10無SclassChar10無Sdeptchar20課程信息表的索引表:索引列名數據類型長度主Cnochar10無CnameChar20無JnoChar10無ChourInt無creditint選課信息表
23、:索引列名數據類型長度主Sno Char10CnoChar10無cnameChar20無gradeint無snameChar10教師信息表的索引表:索引列名數據類型長度主JnoChar10無JnameChar10無JsexChar2無JtelChar20(1) 在Student表的Sname(姓名)列上建立一個聚簇索引,可以提高查詢效率(2) Student表按學號升序建唯一索引(3) Course表按課程號升序建唯一索引(4) SC表按學號升序和課程號降序建唯一索引 五、數據庫實施階段 數據庫實施建立數據庫ST:-建立數據庫STcreate database ST;-建立表studentcr
24、eate table student(sno char(10) primary key not null,sname char(10),ssex char(2) check(ssex in('男','女'),sdate varchar(10) check(sdate<getdate(),sclass char(10),sdept char(10);-建立表teachercreate table teacher(jno char(10) primary key not null,jname char(10),jsex char(2) check(jsex i
25、n('男','女'),jtel char(11);-建立表coursecreate table course(cno char(10) primary key not null,cname char(20),jno char(10),chour int,credit int,foreign key(jno) references teacher(jno);-建立表sccreate table sc(sno char(10) not null,sname char(10) not null,cno char(10),cname char(10),grade int
26、,primary key(sno,cno),foreign key(sno) references student(sno),foreign key(cno) references course(cno);插入數據-向student表中插入數據insertinto studentvalues('','喬一','男','1987-10-15','','電子數控');insertinto studentvalues('','鄭二','男','198
27、9-06-22','','中國學專業');insertinto studentvalues('','歐三','男','1992-10-13','','表演');insertinto studentvalues('','王四','女','1992-12-04','','信管');insertinto studentvalues('','沈五
28、39;,'女','1994-02-09','','信管');insertinto studentvalues('','湯六','女','1994-03-30','','信管');insertinto studentvalues('','李七','女','1994-09-15','','信管');-向teacher表中插入數據insertint
29、o teachervalues('1001','喬小一','男','');insertinto teachervalues('1002','鄭小二','男','');insertinto teachervalues('1003','樸小三','女','');insertinto teachervalues('1004','歐小四','男',''
30、;);-向course表中插入數據insertinto coursevalues('T001','中國學','1002','42','6');insertinto coursevalues('K001','數控原理','1001','30','3');insertinto coursevalues('G001','表演技巧','1003','32','5');insertinto coursevalues('F001','信息管理','1004','27','4');-向sc表中插入數據insertinto scvalues('','喬一',
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 住宅衛生設施兒童友好設計考核試卷
- 網絡市場調查的隱私保護與合規性研究考核試卷
- 內陸養殖與水產品加工產業鏈協同效應研究考核試卷
- 火電土建工程質量監督檢查記錄典型表式
- 書籍閱讀心得
- 法制大會活動方案
- 法律講座活動方案
- 水餃店新年活動方案
- 水果訂貨會活動方案
- 棋牌客戶活動方案
- GB/T 1355-2021小麥粉
- GB/T 11446.9-2013電子級水中微粒的儀器測試方法
- 外科護理學題庫及答案
- 電能質量概念課件
- 涉爆粉塵目錄
- 木蘭詩教學設計一等獎5篇
- 2023-浙江信息技術-學考總復習-知識點總結
- 集中控制中心建設(指揮中心建設)
- 施工導流圍堰工程實例講義課件(117頁配圖豐富)
- 排水系統PLC控制及組態設計說明書
- 自考西方政治制度復習重點筆記資料整理(共30頁)
評論
0/150
提交評論