孫英瑋 張 濤
(新疆信息工程學(xué)校,新疆 烏魯木齊830013)
Unified Modeling Language (UML)又稱統(tǒng)一建模語言或標(biāo)準(zhǔn)建模語言,是始于1997 年一個(gè)OMG 標(biāo)準(zhǔn),它是一個(gè)支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持,包括由需求分析到規(guī)格,到構(gòu)造和配置。
UML 的目標(biāo)是以面向?qū)ο髨D的方式來描述任何類型的系統(tǒng),具有很寬的應(yīng)用領(lǐng)域??梢詫?duì)任何具有靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為的系統(tǒng)進(jìn)行建模。 UML 從考慮系統(tǒng)的不同角度出發(fā),定義了用例圖、類圖、對(duì)象圖、狀態(tài)圖、活動(dòng)圖、序列圖、協(xié)作圖、構(gòu)件圖、部署圖等9 種圖。
此外,UML 適用于系統(tǒng)開發(fā)過程中從需求規(guī)格描述到系統(tǒng)完成后測(cè)試的不同階段。在需求分析階段,可以用用例來捕獲用戶需求。分析階段主要關(guān)心問題域中的主要概念(如抽象、類和對(duì)象等)和機(jī)制,需要識(shí)別這些類以及它們相互間的關(guān)系,并用UML 類圖來描述。在分析階段,只對(duì)問題域的對(duì)象(現(xiàn)實(shí)世界的概念)建模,而不考慮定義軟件系統(tǒng)中技術(shù)細(xì)節(jié)的類(如處理用戶接口、數(shù)據(jù)庫、通訊和并行性等問題的類)。
RationalRose 支持UML 九種圖中的八種標(biāo)準(zhǔn)UML 圖: 用例圖,類圖,序列圖,協(xié)作圖,活動(dòng)圖,狀態(tài)圖,實(shí)現(xiàn)圖(組件)圖,部署圖,和幾種UMLProfiles.如果需要,對(duì)象圖可以使用協(xié)作圖來創(chuàng)建。
Microsoft Visio 不僅僅是一個(gè)功能強(qiáng)大、 簡(jiǎn)單易用的繪圖工具,它還是一個(gè)絕佳的UML 建模工具。 用Visio 可以方便地繪制用例圖、靜態(tài)結(jié)構(gòu)圖、包圖、活動(dòng)圖、狀態(tài)圖、序列圖、協(xié)作圖、組件圖和部署圖。Visio 提供了一個(gè)很好的綜合建模平臺(tái), 可以幫助我們把各種UML 元素組織成模型,并且還可以從模型出發(fā),直接產(chǎn)生框架代碼。
第一,建立全校教學(xué)資源共享數(shù)據(jù)庫;第二,取代傳統(tǒng)落后的手工辦公方式,提高辦公效率;第三,建立基于Web 的在線網(wǎng)絡(luò)教學(xué)系統(tǒng),利用校園網(wǎng)作為教學(xué)媒體,傳送教學(xué)內(nèi)容,網(wǎng)上實(shí)施教學(xué)、管理、測(cè)試和交流等等。 所以該系統(tǒng)是一個(gè)全校范圍內(nèi)的、開放的、分布的、多媒體信息系統(tǒng)。包括綜合信息服務(wù)子系統(tǒng)、教學(xué)管理子系統(tǒng)、行政管理子系統(tǒng)、學(xué)生管理信息子系統(tǒng)等等。這些子系統(tǒng)用戶范圍不同,數(shù)據(jù)組織方式不同,所以采取的技術(shù)方案也不同。
學(xué)校的教務(wù)管理系統(tǒng)通常包括教學(xué)管理、學(xué)生學(xué)籍管理、注冊(cè)、畢業(yè)管理等等,是一個(gè)非常復(fù)雜并且龐大的系統(tǒng)。 所以系統(tǒng)的開發(fā)通常不是由一個(gè)人完成的,會(huì)有多人各類工種的參與者。按照傳統(tǒng)的方法,不同工種的人員工作重點(diǎn)要素不同, 通常不具有整體一致性與連貫性。使用UML 這種基于面向?qū)ο蟮募夹g(shù),求解空間中的要素直接而緊密地反映問題空間中的要素,參與系統(tǒng)設(shè)計(jì)的不同人員可以按照核心線索兼顧其他人員的工作,從而打破大量溝通壁壘,減少溝通障礙。
1)運(yùn)用UML 建立系統(tǒng)的體系結(jié)構(gòu)模型,定義系統(tǒng)的軟硬件結(jié)構(gòu)及通信機(jī)制,使用UML 的組件圖、配置圖。
2)建立需求模型
3)建立系統(tǒng)的對(duì)象模型
4)生成所選開發(fā)語言的代碼框架,由系統(tǒng)設(shè)計(jì)轉(zhuǎn)入開發(fā)階段
在對(duì)教務(wù)管理系統(tǒng)的需求和目標(biāo)的整體把握的基礎(chǔ)上,確立教務(wù)管理系統(tǒng)的軟件體系結(jié)構(gòu),現(xiàn)用功能模塊圖來表達(dá)體系結(jié)構(gòu):
圖1 系統(tǒng)功能模塊圖
4.3.1 定義活動(dòng)者
根據(jù)教學(xué)管理系統(tǒng)的職責(zé)范圍和需求可以確定4 個(gè)活動(dòng)者:教學(xué)管理員、學(xué)生、教師和教學(xué)督導(dǎo),對(duì)每個(gè)活動(dòng)者,應(yīng)當(dāng)明確其業(yè)務(wù)活動(dòng)的內(nèi)容和服務(wù)要求。
4.3.2 定義Use Case
在教學(xué)管理的頂層,可以確定兩個(gè)Use Case:“人員管理”和“課程管理”。 Use Case“人員管理”分解為“教師管理”、“學(xué)生管理”;Use Case“課程管理”分解為“課程管理”、“排課”、“成績(jī)查詢”、“成績(jī)統(tǒng)計(jì)”。
在完成了領(lǐng)域分析、建立了子系統(tǒng)的Use Case 視圖后,緊接著要建立系統(tǒng)的靜態(tài)結(jié)構(gòu)模型和動(dòng)態(tài)行為模型。系統(tǒng)的靜態(tài)結(jié)構(gòu)模型主要由UML 的包圖、 類圖和對(duì)象圖表達(dá), 系統(tǒng)的動(dòng)態(tài)行為模型主要由UML 的順序圖、協(xié)作圖和活動(dòng)圖表達(dá)。
該系統(tǒng)在人事處理方面有“學(xué)生”類、“教師”類;在選課管理方面有“課程”類、“開設(shè)課程”類、“學(xué)生登記”類、“課程登記”類、“選課統(tǒng)計(jì)”類等;在成績(jī)管理方面有“學(xué)生成績(jī)登記”類、“成績(jī)統(tǒng)計(jì)”類。 對(duì)于每一個(gè)類應(yīng)當(dāng)確定其職責(zé)、屬性、主要操作以及其他性質(zhì)說明。
本文就UML 統(tǒng)一建模語言在教務(wù)管理系統(tǒng)中的應(yīng)用步驟做了介紹,受與篇幅所限,本文并未就系統(tǒng)安全策略進(jìn)行闡述,設(shè)計(jì)B/S 結(jié)構(gòu)的程序時(shí)必須認(rèn)真考慮安全問題, 使遭受攻擊的危險(xiǎn)性降到最低,在防止攻擊時(shí)可能起作用的因素都應(yīng)該在設(shè)計(jì)和實(shí)施時(shí)予以考慮。 此外,在系統(tǒng)安全的前提下,當(dāng)訪問量很大時(shí),系統(tǒng)的效率問題本文還未做更深入的研究,這也是本文要解決的后續(xù)問題。
[1][美]Michael Blaha,James Rumbaugh.面向?qū)ο蠼Ec設(shè)計(jì)[M].2 版.車皓陽,楊眉,譯.人民郵電出版社.2011-7.
[2]趙琰,黃婷婷.基于UML 的教務(wù)管理系統(tǒng)的分析與設(shè)計(jì)[J].科技信息,2011-3.
[3]方玉華.基于UML 的教務(wù)管理系統(tǒng)分析與設(shè)計(jì)[J].計(jì)算機(jī)時(shí)代,2010-5.