999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于UML的精品課程遠程教育網站模型設計

2011-01-01 00:00:00陽西述劉琳劉懷玉單志武
計算技術與自動化 2011年3期

摘 要:UML是面向對象的統一建模語言,所設計的軟件模型具有可重用性的特點。使用UML新方法開發精品課程網站,用UML用例圖做需求分析,用UML類圖和順序圖進行系統靜態和動態設計,最終用PHP程序語言和MYSQL數據庫來實現網站軟件。經UML建模后的精品課程遠程教育網站模型可以多次應用,從而提高網站軟件的開發效率。

關鍵詞:UML;用例;類;PHP

中圖分類號: TP311 文獻標識碼:A

1 引 言

精品課程是二十一世紀“高等學校教學質量和教學改革工程”的重要內容[1], 當前各高校正在建設校級、省級和國家級精品課程,遠程教育網站是實現精品課程資源共享的有效途徑。

UML(Unified Modeling Language)是著名軟件工程專家Grady Booch、Ivar Jacobson和James Rumbaugh共同合作創建的面向對象的統一建模語言[2]。UML用圖形化的模型來描述系統的結構、靜態特征和動態特征,UML圖分為靜態圖(用例圖、類圖、對象圖、組件圖和部署圖)和動態圖(狀態圖、順序圖、協作圖和活動圖)2類共9種,它們分別從不同的視角為系統建立模型。采用UML設計好軟件模型以后,可以方便地轉換為面向對象程序語言代碼,使用UML設計的軟件模型具有很好的可重用性[2]。

在面向對象占主流的軟件時代,軟件工程師們越來越多地使用UML來設計各種軟件[3-5],但目前還很少有采用UML來設計精品課程網站模型的。用UML來設計高校精品課程網站模型,具有直觀形象、可重用、方便地轉換為程序等優點,為不斷增加的精品課程服務。

2 需求分析

需求分析是軟件功能的獲取、分析、建立模型的過程。UML用例圖(Use Case Diagram)是從參與者的角度來描述整個系統所要實現的功能,可以用UML用例圖來建立軟件需求分析模型[2]。從用戶方面來看,精品課程網站用戶必須有學生、課程教師,以及管理員三類;從功能方面來看,精品課程網站應有用戶管理(教師管理、學生管理)、課程生成、課程管理(欄目管理、內容管理、考試管理)、網站瀏覽,以及網站留言等功能。通過分析,可畫出如圖1所示的UML用例圖模型。圖中人形圖表示用戶角色;每個橢圓都是一個用例,表示系統的一個功能[2]。在該UML用例圖中有3種用戶、12個用例。用戶與用例之間用實箭線相連,表示用戶對用例的使用關系;用例之間用虛箭線相連,表示用例之間的依賴關系,虛箭線上的“<>”表示擴展依賴,外圍大方框則表示了軟件系統(system)的邊界。

3 系統設計

做好了軟件需求分析——UML用例圖模型以后,再對軟件系統進行設計。系統設計包括靜態設計和動態設計。靜態設計主要是要設計出系統中的類(或對象)及類之間的關系、系統組成部件及它們之間的關系,可采用UML類圖(對象圖)、組件圖等來設計。動態設計主要是要設計完成某一功能(用例)的時序、某一對象的狀態變化等動態變化情況,可采用UML順序圖、狀態圖等來設計。

3.1 UML類圖

面向對象技術將具有相同屬性和操作的對象歸納為一“類”,類是面向對象技術中最基本、也最重要的概念,類具有封裝性、繼承性和多態性,類的成員分為數據(屬性)成員和函數(操作/方法)成員兩種,類成員有公有(public)、私有(private)和保護(protected)三種不同性質,分別表示全局可見、本類內成員可見、本類成員及子類成員(或友元)可見。

UML類圖(Class Diagram)是用來定義系統里的類,描述類之間的關系(如關聯、依賴、泛化、聚合等)[6]的方法。每個類都有一個類名稱、一些類屬性(類的數據成員)和一些類操作/方法(類的函數成員)。用UML類圖可以較好地描述系統的靜態結構。

根據需求分析的要求,精品課程網站系統應有如下這些類。①用戶類User,該類具有UserID、UserName等屬性和Login()、Logout()等方法;User派生出教師子類Teacher、學生子類Student和管理員子類Manager,這些子類除具有父類User所有的屬性和方法外,還有自己特有的一些屬性和方法。②課程表類CourseTable,用于記錄已存在的精品課程,該類應有userID、courseID等屬性和Edit()方法。③精品課程結點用CourseNode類來表示,該類應有courseID、courseName等屬性和Create()、Destroy()等方法;課程結點下有不同形式的欄目,如列表欄、單頁內容、考試欄目和答問欄目等,所以還要設計相應的ListNode類(列表型結點)、PageNode類(單頁型結點)、Test類(考試結點)和BBS類(論壇節點)等,這幾個類可以看成是課程類CourseNode的組成部分。通過以上分析,可畫出精品課程網站系統的類圖,如圖2所示。圖中每一個方框表示一個類,框內有三格分別用于注明類名稱、類屬性(數據成員)和類方法(函數成員),屬性或方法名稱前的“+”、“-”和“#”符號,分別表示public(公有)、private(私有)和protected(保護)性質。類與類之間用實線相連接時,表示它們是相互關聯的,實線上注明的“1..1”表示一對一的關系,如courseNode類與BBS類是一對一的;“1..n”表示一對多的關系,如Teacher類與Student類的關系;類與類之間用虛箭線相連接時,表示依賴關系,如CourseNode類依賴于Manager類;類與類之間用空心三角箭頭實線相連接時,表示泛化的關系,這是一般與特殊的關系,特殊類具有一般類的屬性與方法,此外還有自己特有的屬性和方法,例如圖2中User類是Manager、Teacher和Student類的泛化,Manager、Teacher和Student則是User類的子類,除具有User類的屬性與方法外,還有各自特有屬性與方法;類ListNode、PageNode、TestNode與BBS分別用一根空心小棱形頭實線與CourseNode相連,這是表示聚合關系,即整體與部分的關系,這是弱組合關系,圖2中CourseNode類是ListNode、PageNode、TestNode和BBS類的聚合;User DB和Course DB分別表示用戶數據庫和課程數據庫。

3.2 UML順序圖

對系統進行靜態建模以后,還需要對系統的動態行為建模。系統的動態行為包括對象之間傳遞消息的交互時序、對象的狀態轉換等。UML描述軟件動態特性的有順序圖、狀態圖、協作圖、活動圖等。類的實例就是對象,也叫類對象,UML順序圖可以很好地描述出類對象之間進行交互時信息傳遞的時序[7]。下面對圖1中“課程管理”用例涉及的類對象,以及類對象間進行信息交互的時序進行分析,然后畫出該用例的順序圖。“課程管理”用例相關的類對象有Manager(管理員)、Teacher(課程教師)、CourseTable(課程表)、CourseNode(課程)、LinstNode(列表結點)、PageNode(單頁型結點),此外還要對課程數據庫courseDB進行操作。進行課程管理前,先要創建新課程,這是由管理員負責的,再在課程表中建立有關課程ID管理者ID等記錄。課程教師管理某一門課程時,先查詢課程表查得知自己要管理的課程,再訪問和管理相應的課程,包括創建或修改各個欄目(包括列表型欄目、單頁型欄目等),往各欄目里添加/刪除內容等。

根據如上分析,可畫出“課程管理”用例的順序圖,如圖3所示。圖中:Manager(管理員)、:Teacher(課程教師)、:CourseTable、:CourseNode、:LinstNode、:PageNode分別是圖2類圖中各個類的實例(對象)。對象下的虛線表示對象的生命線,生命線上的窄矩形條表示該對象的存活期;水平實箭線表示操作,水平線上的字符串表示操作方法以及傳遞的消息,每一條水平箭線前的序號(1、2、3……)表示對象傳遞消息的先后順序。3.3 數據庫設計

模型設計離不開數據庫設計,我們采用關系型數據庫MySQL來設計本系統的數據庫表[8]。根據圖2所示類圖和圖1所示用例圖,擬為該系統建立六張數據庫表:Users、loginSession、Courses、Content、Test和BBS,分別用來存放用戶信息、登錄信息、精品課程主要信息、課程內容信息、考試題庫和留言板信息等。六張數據表及其相互關系如圖4所示,圖中已將各表內的字段名略去。

4 系統實現

網站模型建立好以后,要用程序語言將其代碼化。本系統最終結果是Web網站系統,選擇支持面向對象的PHP5.0作為程序語言[8],選擇MySQL數據庫管理系統來實現。

精品課程網站總體架構為B/S(Browser/Server)模式,其中Server(服務器)由WWW服務器和數據服務器組成,網站系統分為PHP程序組和MySql數據庫兩部分,PHP程序組運行在WWW服務器上,MySql運行在數據庫服務器上,如圖5所示。當用戶通過瀏覽器(Browser)來訪問精品課程網站時,WWW服務器里的PHP程序會從MySql數據庫服務器中獲取數據,服務器程序對PHP程序和MySql數據編譯后產生靜態網頁,發送給用戶。為使PHP程序和MYSQL發揮較高的性能,WWW服務器與數據庫服務器都使用Linux操作系統。

按照本文所述方法,先設計出UML精品課程網站模型,再將其程序代碼化,已經在湖南第一師范精品課程遠程教育網站中實現,并已成功地為十多門精品課程建立了遠程教育網站(jpkc.hnfnu.edu.cn)。由于有了統一的UML網站模型,每當要建立新的精品課程遠程教育網站時,只須重用這個UML模型生成一個網站即可。比不采用UML建模、每一門精品課程遠程教育網站都單獨開發,節省了很多的開發時間,提高了開發的效率,同時也為精品課程遠程教育網站的維護帶來了更多方便。

5 結束語

現在的網站程序語言大多已支持面向對象技術,UML是面向對象統一建模語言,采用UML為網站開發建立模型,是一種新的趨勢。先建立網站模型再代碼化,可以避免網站軟件開發的盲目性和局限性,使網站軟件的開發更加科學、系統、規范和靈活。精品課程模型建立好以后,可根據不同條件而采用不同語言和數據庫系統來實現它。由于UML模型可重用,建模后的網站系統可多次使用,從而提高了精品課程遠程教育網站的開發效率、降低了成本。

采用先UML建模再代碼化的方法,不僅能提高精品課程遠程教育網站的開發、維護效率,也可以為各類網站的開發與維護效率,相信越來越多的網站開發人員會使用這種方法來設計各類網站。

參考文獻

[1] 教育部財政部.關于實施高等學校本科教學質量與教學改革工程的意見[M],2007.

[2] Grady Booch, James Rumbaugh, Ivar Jacobson.The Unified Modeling Language User Guide Second Edition[M].Publisher: Addison Wesley Professional, Pub Date: May 19,2005.

[3] 范金磊,季海波.基于UML的通用3D飛行仿真平臺的設計與實現[J].系統仿真學報,2010,22(12):2834-2847.

[4] 馬蘇拉,許錦興.校友通信錄的UML建模和C#實現[J].計算機與數字工程,2008,12(12):195-200.

[5] 許波,陳曉龍.UML結合軟件工程教學改革探討[J].計算機教育,2011(2):34-37.

[6] Ma ZM,Zhang F,Yan L. Fuzzy information modeling in UML class diagram and relational database models, APPLIED SOFT COMPUTING,2011,11(6):4236-4245.

[7] 張其文,童格明,李明.UML2.0順序圖的時序描述邏輯語義[J].計算機工程, 2011(2):52-54.

[8] Luke Welling,Laura Thomson. PHP and MySQL Web Development(Fourth Edition)[M].北京:機械工業出版社,2009.

主站蜘蛛池模板: 自拍偷拍欧美日韩| 最新亚洲人成网站在线观看| 日韩大片免费观看视频播放| 亚洲成人精品在线| a亚洲天堂| 欧美精品一二三区| 久久香蕉国产线| 在线观看亚洲人成网站| a毛片在线播放| 国产精品女人呻吟在线观看| 久久国产免费观看| 99久久国产自偷自偷免费一区| 久热99这里只有精品视频6| 国产亚洲欧美在线视频| 成人免费黄色小视频| 久久99久久无码毛片一区二区 | 激情综合激情| 91免费片| 亚洲午夜国产片在线观看| 日韩免费毛片| 久久中文电影| 人妻少妇久久久久久97人妻| 大乳丰满人妻中文字幕日本| 亚洲乱码视频| 亚洲欧洲日韩综合色天使| 红杏AV在线无码| 国产香蕉在线视频| 亚洲综合九九| 99热这里只有精品在线观看| 第九色区aⅴ天堂久久香| 国产成人精品第一区二区| 91视频区| 亚洲熟女中文字幕男人总站| 99国产在线视频| 日本亚洲欧美在线| 日本在线欧美在线| 亚洲天堂网在线观看视频| 国产精品成人一区二区不卡| 色窝窝免费一区二区三区 | 亚洲欧美日韩综合二区三区| 亚洲视频a| 无码在线激情片| 婷婷伊人五月| 免费国产福利| 99在线观看国产| 欧美激情一区二区三区成人| 国产sm重味一区二区三区| 中文字幕在线看| 久热精品免费| 日本午夜影院| 日韩久草视频| 小说 亚洲 无码 精品| 日韩福利在线观看| 亚洲a免费| 极品性荡少妇一区二区色欲| 精品伊人久久大香线蕉网站| 亚洲国产精品无码久久一线| 极品尤物av美乳在线观看| 国产精品美乳| 91在线中文| 国产视频a| 无码免费视频| 久久亚洲黄色视频| 国产第八页| 无码免费视频| 久久亚洲黄色视频| 欧美精品成人一区二区视频一| 亚洲综合久久一本伊一区| 九色视频在线免费观看| 国产精品福利尤物youwu| 尤物精品视频一区二区三区| 久久国产精品无码hdav| 久久久久人妻精品一区三寸蜜桃| 最新亚洲人成无码网站欣赏网 | 999国内精品久久免费视频| 亚洲视频免费播放| 伊人久久影视| 日韩第九页| 国产福利拍拍拍| 久久久久亚洲Av片无码观看| 全免费a级毛片免费看不卡| 中文字幕在线一区二区在线|