摘 要: 利用面向?qū)ο蟮慕UZ言UML對選課系統(tǒng)的各個環(huán)節(jié)進行分析、設(shè)計,,通過.NET Framework平臺之上的ASP.NET,、SQL Server等技術(shù)實現(xiàn)了網(wǎng)上選課系統(tǒng)的研發(fā)工作,。
關(guān)鍵詞: UML,;選課系統(tǒng);ASP.NET,;SQL server
1 基于UML的選課系統(tǒng)的需求建模
1.1 選課系統(tǒng)的用例分析及用例模型[1]
(1)學(xué)生用例需求
學(xué)生用例需求如圖1所示,。此用例圖給出了學(xué)生用戶的需求,主要包括學(xué)生根據(jù)用戶名和密碼登錄系統(tǒng),,學(xué)生用戶進入系統(tǒng)后能夠查詢教師,、課程的相關(guān)信息,,并能進行選課,,且在選課時段內(nèi)能夠進行退課,,并且學(xué)生能夠隨時更改自己的密碼信息,。
(2)教務(wù)管理員用例需求
教務(wù)管理員的用例圖如圖2所示,。它描述了選課系統(tǒng)中教務(wù)管理員用戶的需求,主要包括:根據(jù)密碼登錄系統(tǒng),能夠?qū)φn程信息進行設(shè)置,,能夠?qū)W(xué)生用戶和教師用戶的信息進行管理,,能夠?qū)Π嗉夁M行設(shè)置和管理,,能夠添加學(xué)生信息,,能夠?qū)Ω鞣N信息進行統(tǒng)計并生成統(tǒng)計圖表,。
(3)教師用例需求
教師用例圖如圖3所示。它描述了教師用戶的需求,,主要包括:根據(jù)用戶名和密碼登錄系統(tǒng),,對密碼進行修改,對夠查詢教師授課的學(xué)生,、課程信息,能夠?qū)€人課表,、授課學(xué)生名單進行打印,,能夠?qū)W(xué)生的成績進行錄入、修改,。
1.2 選課系統(tǒng)的主要類圖
選課系統(tǒng)的主要類圖如圖4所示,。
2 選課系統(tǒng)設(shè)計
2.1 主要功能設(shè)計
根據(jù)前面的需求分析,可設(shè)計出系統(tǒng)的主要功能模塊如圖5所示,。
2.2 主要數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(E-R圖)[3]如圖6所示,。
通過學(xué)生-課程-教師的E-R圖可知:學(xué)生和課程之間的關(guān)系是多對多(M-N),也就是一名學(xué)生可選多門課程,;課程與學(xué)生之間的關(guān)系也是多對多(N-M),,也就是一門課程可以有多名學(xué)生選擇。同樣,,教師和課程之間的關(guān)系也是多對多(N-M),課程與教師之間的關(guān)系也是多對多(M-N),也就是一位教師可以選多門課程,,一門課程也可以由多位不同的教師來講授。學(xué)生和教師之間通過課程進行聯(lián)系,,三者圍繞選課活動產(chǎn)生多種不確定需求,,這些需求由課程安排來體現(xiàn)。
2.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計
將數(shù)據(jù)庫的概念設(shè)計,,即將E-R圖的實體關(guān)系轉(zhuǎn)換成邏輯關(guān)系模型,,結(jié)合濮陽職業(yè)技術(shù)學(xué)院的實際需要設(shè)計本選課系統(tǒng)數(shù)據(jù)庫,,本系統(tǒng)設(shè)計了14張數(shù)據(jù)表和2個視圖,。
(1)院系信息表DeptInfo(院系編號,、院系名稱)。
(2)教學(xué)樓信息表BuildingInfo(教學(xué)樓編號、教學(xué)樓名稱),。
(3)排課表Arrange(排課編號,、上課教室號,、上課時間、課程設(shè)置號),。
(4)備份排課記錄表BackUpArrangeList(列表號,、備份排課記錄表ID),。
(5)教室信息表ClassRoomInfo(教室編號,、教室名稱、 教學(xué)樓編號,、教室屬性),。
(6)選課時段表CourseSelectInterval(開始選課時間,、終止選課時間)。
(7)選課通知表CourseSelectNotice(通知編號,、通知標題,、通知內(nèi)容、通知時間,、是否為“熱點”)。
(8)課程信息表CourseInfo(課程編號,、課程名稱、課程介紹),。
(9)開課信息表CourseSettingInfo(課程編號,、面向?qū)I(yè)號,、學(xué)分、限選性質(zhì),、教師編號,、考察方式、備注,、最大選課人數(shù),、課程編號,、開課院系編號,、面向的年級),。
(10)選課信息表CourseSelect(排課編號、學(xué)生學(xué)號),。
(11)反饋信息表FeedBack(反饋信息標題、反饋信息內(nèi)容,、用戶ID,、反饋時間)。
(12)學(xué)生信息表Student Info(學(xué)號,、姓名,、性別、所屬院系編號,、專業(yè)號),。
(13)教師信息表TeacherInfo(教師編號、教師姓名,、所屬院系編號)。
(14)用戶信息表UserInfo(用戶類型(教師,、學(xué)生,、管理員)、用戶編號,、用戶名,、用戶密碼)。
上面列出的是數(shù)據(jù)庫的基本表,,在使用過程中,,若全部直接從基本表查詢,,需建立多重的聯(lián)合查詢,使用很不方便,,易出錯,,效率也不高。故建立了兩個視圖,,以便查詢,。
(1)排課信息視圖(VIEW_Arrange),包括課程編號,、課程名稱,、教師編號、教師姓名,、限選性質(zhì),、學(xué)分、考察方式,、面向?qū)I(yè)編號,、最大選課人數(shù)、教室編號,、教室名稱,、教室屬性、開課院系名稱,、教學(xué)樓編號,、教學(xué)樓名稱、上課時間,、課程設(shè)置編號、排課號等,。
(2)選課信息視圖(VIEW_Select),包括排課號,、課程編號,、課程名稱,、教師編號、教師姓名,、面向?qū)I(yè)編號,、學(xué)生學(xué)號,、學(xué)生姓名,。
3 開發(fā)和運行環(huán)境設(shè)計[4]
(1)開發(fā)平臺搭建:由于開發(fā)的是服務(wù)器端的程序,計算機安裝的網(wǎng)絡(luò)操作系統(tǒng)采用微軟公司的Windows server2003,,配置IIS6.0,,并安裝.NET Framework為ASP.NET應(yīng)用程序提供運行平臺。開發(fā)環(huán)境采用微軟開發(fā)的Visual Studio.NET 2005,,數(shù)據(jù)庫管理系統(tǒng)采用SQL server 2005。
(2)運行環(huán)境:該系統(tǒng)運行的硬件環(huán)境主要有Web服務(wù)器,、數(shù)據(jù)庫服務(wù)器、客戶機,;軟件環(huán)境有在Web服務(wù)器上安裝的Windows Server 2003網(wǎng)絡(luò)操作系統(tǒng)及其Internet信息服務(wù)組;數(shù)據(jù)庫服務(wù)器上安裝SQL Server2005數(shù)據(jù)庫,;Web客戶端安裝Windows 2000,、Windows XP,、Vista,、Windows 7等Windows系列的操作系統(tǒng);客戶端瀏覽器安裝Internet Explore,、遨游等瀏覽器并能上互聯(lián)網(wǎng)。
本文詳細介紹了在UML建模語言為指導(dǎo)下的一種基于.NET框架的網(wǎng)上選課系統(tǒng)的分析,、設(shè)計的全過程,。用UML對選課這一特定需求的應(yīng)用進行了建模,給出了軟件開發(fā)各階段的模型,,使軟件系統(tǒng)的開發(fā)更加高效,。從選課系統(tǒng)數(shù)據(jù)庫的概念結(jié)構(gòu)(E-R圖),、邏輯結(jié)構(gòu)(表結(jié)構(gòu))及物理實現(xiàn)(表、視圖及其連接)進行了詳細闡述,。隨著高校教學(xué)的不斷改革,,會出現(xiàn)新的教學(xué)模式,,因此,更先進的選課系統(tǒng)也會隨之開發(fā)出來,。
參考文獻
[1] 張龍詳.UML與系統(tǒng)分析設(shè)計[M].北京:人民郵電出版社,,2001.
[2] BLAHA M, RUMBAUGH J. UML面向?qū)ο蠼Ec設(shè)計[M].車皓陽,,楊眉譯.北京:人民郵電出版社,2007.
[3] 趙杰,,李濤,,朱慧.SQLServer數(shù)據(jù)庫管理,、設(shè)計與實現(xiàn)[M].北京:清華大學(xué)出版社,2004.
[4] 白兆慶.基于B/S模式的選課系統(tǒng)的設(shè)計與實現(xiàn)[D].青島:中國海洋大學(xué),,2009.