《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 基于UML建模的選課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
基于UML建模的選課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
來源:微型機(jī)與應(yīng)用2011年第13期
李玲選
(濮陽職業(yè)技術(shù)學(xué)院,河南 濮陽 457000)
摘要: 利用面向?qū)ο蟮慕UZ言UML對選課系統(tǒng)的各個(gè)環(huán)節(jié)進(jìn)行分析、設(shè)計(jì),通過.NET Framework平臺(tái)之上的ASP.NET、SQL Server等技術(shù)實(shí)現(xiàn)了網(wǎng)上選課系統(tǒng)的研發(fā)工作。
Abstract:
Key words :

摘  要: 利用面向?qū)ο蟮慕UZ言UML選課系統(tǒng)的各個(gè)環(huán)節(jié)進(jìn)行分析、設(shè)計(jì),通過.NET Framework平臺(tái)之上的ASP.NET、SQL Server等技術(shù)實(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é)生用戶進(jìn)入系統(tǒng)后能夠查詢教師、課程的相關(guān)信息,并能進(jìn)行選課,且在選課時(shí)段內(nèi)能夠進(jìn)行退課,并且學(xué)生能夠隨時(shí)更改自己的密碼信息。

 (2)教務(wù)管理員用例需求
 教務(wù)管理員的用例圖如圖2所示。它描述了選課系統(tǒng)中教務(wù)管理員用戶的需求,主要包括:根據(jù)密碼登錄系統(tǒng),能夠?qū)φn程信息進(jìn)行設(shè)置,能夠?qū)W(xué)生用戶和教師用戶的信息進(jìn)行管理,能夠?qū)Π嗉?jí)進(jìn)行設(shè)置和管理,能夠添加學(xué)生信息,能夠?qū)Ω鞣N信息進(jìn)行統(tǒng)計(jì)并生成統(tǒng)計(jì)圖表。

 (3)教師用例需求
    教師用例圖如圖3所示。它描述了教師用戶的需求,主要包括:根據(jù)用戶名和密碼登錄系統(tǒng),對密碼進(jìn)行修改,對夠查詢教師授課的學(xué)生、課程信息,能夠?qū)€(gè)人課表、授課學(xué)生名單進(jìn)行打印,能夠?qū)W(xué)生的成績進(jìn)行錄入、修改。


1.2 選課系統(tǒng)的主要類圖
 選課系統(tǒng)的主要類圖如圖4所示。

2 選課系統(tǒng)設(shè)計(jì)
2.1 主要功能設(shè)計(jì)

 根據(jù)前面的需求分析,可設(shè)計(jì)出系統(tǒng)的主要功能模塊如圖5所示。

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

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。