摘 要:UML是一個通用的標(biāo)準(zhǔn)建模語言,是面向?qū)ο蠓治雠c設(shè)計(jì)方法的表現(xiàn)手段。以學(xué)生綜合管理信息系統(tǒng)建模為例,介紹了UML在該系統(tǒng)中的應(yīng)用和系統(tǒng)的建模過程,給出了系統(tǒng)的主要用例圖、部分類圖、狀態(tài)圖供使用UML建模人員參考。
關(guān)鍵詞:UML;面向?qū)ο螅还芾硇畔⑾到y(tǒng)
中圖分類號:U692;N945.12 文獻(xiàn)標(biāo)志碼:A
Application of UML At Management Information System
Analysis and Design
LIU Zhen-hua
(Department of Computer Science,Binzhou Vocational College,256603 Binzhou Shandong)
Abstract:UML is an uniformed standard model language which has the ability of exhibiting OOA and OOD. This paper presents main use case diagram, part class diagram and statechart diagram after introducing how to use UML in the system and modeling process.
Key words:Unified Modeling Language (UML); Object-Oriented; Management Information System
UML(Unified Modeling Language),即統(tǒng)一建模語言,它是在綜合了著名的Booch方法、OMT 方法和OOSE方法的基礎(chǔ)上,吸收了其它00開發(fā)思想,進(jìn)一步發(fā)展并抽象出的標(biāo)準(zhǔn)的圖形化建模語言,是面向?qū)ο蠓治雠c設(shè)計(jì)方法的表現(xiàn)手段。UML是一個通用的標(biāo)準(zhǔn)建模語言,可用于任何具有靜態(tài)結(jié)構(gòu)和動態(tài)行為的系統(tǒng)建模,并且適用于系統(tǒng)開發(fā)過程中從需求規(guī)格描述到系統(tǒng)完成后測試的不同階段。UML具有表達(dá)力強(qiáng)、清晰和一致的特點(diǎn),消除了不同建模方法在表示法和術(shù)語上的差異,避免了符號表示和理解上不必要的混亂,已成為在軟件工業(yè)中占支配地位的建模語言,并在許多領(lǐng)域的軟件開發(fā)中得到應(yīng)用。
UML 規(guī)定了一整套建模元素和相應(yīng)的可視化描述,用于描述、說明、可視化地構(gòu)造軟件開發(fā)各個階段的產(chǎn)品。本文以信息管理系統(tǒng)——學(xué)生綜合管理信息系統(tǒng)為例,介紹UML技術(shù)的應(yīng)用和系統(tǒng)建模過程[1-2]。
1 基于UML的系統(tǒng)分析設(shè)計(jì)過程
系統(tǒng)采用面向?qū)ο蠹夹g(shù)設(shè)計(jì),首先通過需求調(diào)查、分析,繪制出系統(tǒng)的靜態(tài)模型,然后通過對系統(tǒng)的行為進(jìn)行描述,即建立系統(tǒng)的動態(tài)模型。模型建立好后,接受用戶和專家的嚴(yán)格審查,通過多次修改,不斷完善,從而為后續(xù)的設(shè)計(jì)和實(shí)現(xiàn)奠定基礎(chǔ)。
整個系統(tǒng)采用用例驅(qū)動方式下的軟件開發(fā)過程,用用例描述系統(tǒng)的功能需求,從分析、設(shè)計(jì)、實(shí)現(xiàn)到測試都是以用例實(shí)現(xiàn)作為最終目標(biāo)。
1.1 用例建模
用戶需求通常包括功能需求、性能需求、安全可靠性需求等多個方面。基于UML分析設(shè)計(jì)系統(tǒng)時(shí),在需求分析階段,用用例圖來描述捕獲用戶功能需求。通過對用例建模,描述對系統(tǒng)感興趣的外部角色(Actor)及其對系統(tǒng)的功能需求。用例圖(Use case diagram)是首先需要建立的模型,它定義了系統(tǒng)的主要功能和系統(tǒng)邊界,完全是從系統(tǒng)的外部觀看系統(tǒng)功能,并不描述系統(tǒng)內(nèi)部對功能的具體實(shí)現(xiàn),是其它視圖的核心和基礎(chǔ)。在用例圖中,角色代表觸發(fā)系統(tǒng)功能的用戶或其它系統(tǒng),用例代表具體的功能描述。
1.1.1 確定系統(tǒng)角色
角色(Actor)是指與系統(tǒng)直接交互的人或者物,向系統(tǒng)輸入或使用系統(tǒng)的某些功能,但是不屬于系統(tǒng),角色可能是某個系統(tǒng)或一類人等。本系統(tǒng)的角色主要有系統(tǒng)管理員、學(xué)工處、教務(wù)處、校醫(yī)院、學(xué)生等。
1.1.2 獲取用例
用例描述的是系統(tǒng)的功能實(shí)現(xiàn),它揭示了人們?nèi)绾问褂孟到y(tǒng)。目前高校中的MIS大多按部門業(yè)務(wù)開發(fā),歸各個部門管理,信息共享度低,形成了一個個“信息孤島”,不僅浪費(fèi)了人力物力,而且很容易出現(xiàn)因更新不同步而導(dǎo)致的數(shù)據(jù)不一致的情況的發(fā)生。為了減少“信息孤島”,消滅數(shù)據(jù)冗余和數(shù)據(jù)不一致的現(xiàn)象,提高數(shù)據(jù)共享度,實(shí)現(xiàn)信息的整體規(guī)范管理,根據(jù)用戶需求把學(xué)籍管理、系部管理、專業(yè)管理、班級管理、教務(wù)管理和健康管理等功能進(jìn)行集成,設(shè)計(jì)一個B/S和C/S相結(jié)合的體系結(jié)構(gòu)的管理信息系統(tǒng)。圖2-1是系統(tǒng)頂層用例圖,含有14個用例和6個活動者,系統(tǒng)的功能包括:用戶管理、學(xué)生基本信息管理、系部專業(yè)管理、班級管理、學(xué)生干部管理、學(xué)生黨團(tuán)組織管理、獎懲管理、課程管理、成績考試管理和健康管理等,是一個功能相對全面的管理系統(tǒng)。
1.1.3 繪制用例圖
上圖中的每個用例又可細(xì)化為更為詳細(xì)的用例圖。限于篇幅不再累述。
1.2 靜態(tài)建模
任何建模語言都是以靜態(tài)建模機(jī)制為基礎(chǔ)的,UML也不例外。UML的靜態(tài)建模機(jī)制包括類圖、組件圖和配置圖。其中,類圖表達(dá)了系統(tǒng)中類與類之間的關(guān)系,是UML中最重要、最基本的靜態(tài)模型。構(gòu)成類圖最主要的元素是類和類之間的關(guān)系,包括關(guān)聯(lián)(Association)、泛化(Generalization)、組合(Composition)、聚合(Aggregation)等)。類圖描述的是一種靜態(tài)關(guān)系,在系統(tǒng)的整個生命周期內(nèi)都是有效的。進(jìn)行類圖建模時(shí)首先要分析與系統(tǒng)功能相關(guān)的對象,進(jìn)行類的區(qū)分、確定類的屬性和方法,然后分析各種類之間的關(guān)系,并用建模元素描述出來。在本系統(tǒng)中定義了許多類,如:學(xué)生、系部、班級、專業(yè)等。這里將給出系統(tǒng)中部分類的關(guān)系和具體描述,其中,系部類和專業(yè)類之間,專業(yè)類和班級類之間,班級類和學(xué)生類之間都是一對多的關(guān)系。以下是系統(tǒng)的部分類圖。
1.3 動態(tài)建模
系統(tǒng)的靜態(tài)模型不能清晰地描述對象的行為和職責(zé),不能全面的反映系統(tǒng)的情況,要描述系統(tǒng)的動態(tài)行為,必須建立系統(tǒng)的動態(tài)模型。系統(tǒng)動態(tài)模型有:狀態(tài)圖、順序圖、協(xié)作圖和活動圖四類。其中順序圖表示一組對象之間的動態(tài)協(xié)作關(guān)系,反映對象之間發(fā)送消息的時(shí)間順序;協(xié)作圖由對象(Object)、聯(lián)系(Link)和消息(Message)三種元素組成,用于描述用例的實(shí)現(xiàn);活動圖反映系統(tǒng)中從一個活動到另一個活動的流程,強(qiáng)調(diào)對象間的控制流程。下面以增加用戶狀態(tài)圖為例建立系統(tǒng)的動態(tài)模型。
1.3.1 狀態(tài)圖(Statechart diagram)
狀態(tài)圖是系統(tǒng)分析的一種常用工具,用于描述類的對象所有可能的狀態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移條件。通常,狀態(tài)圖是對類圖的補(bǔ)充。實(shí)際應(yīng)用中并不需要為所有的類畫狀態(tài)圖,僅為那些有多個狀態(tài)其行為受外界環(huán)境影響并且發(fā)生改變的類畫狀態(tài)圖。狀態(tài)圖由表示狀態(tài)的節(jié)點(diǎn)和表示狀態(tài)之間的轉(zhuǎn)移線組成,增加用戶狀態(tài)圖如圖2-3所示。
2 結(jié)束語
UML已成為在軟件工業(yè)中占支配地位的建模語言,并在許多領(lǐng)域的軟件開發(fā)中得到應(yīng)用。應(yīng)用UML對管理信息系統(tǒng)進(jìn)行建模,有利于開發(fā)人員之間在各個開發(fā)環(huán)節(jié)間確立溝通的標(biāo)準(zhǔn),便于系統(tǒng)文檔的制定和項(xiàng)目的管理,提高了系統(tǒng)的可靠性和穩(wěn)定性。
本文作者創(chuàng)新點(diǎn):采用面向?qū)ο蠹夹g(shù)將UML 用于管理信息系統(tǒng)-學(xué)生信息管理系統(tǒng)建模,采用用例驅(qū)動方式下的軟件開發(fā)過程,用用例描述系統(tǒng)的功能需求,從分析、設(shè)計(jì)、實(shí)現(xiàn)到測試都是以用例實(shí)現(xiàn)作為最終目標(biāo);介紹了用UML進(jìn)行系統(tǒng)建模的過程和步驟,給出了系統(tǒng)的部分用例圖、類圖、狀態(tài)圖供使用UML建模人員者參考。
參考文獻(xiàn)
[1]馮 霄.教育信息化的思考與探索[J].浙江中醫(yī)學(xué)院學(xué)報(bào),2004,28(4):70-71.
[2]凌蘇湘.基于UML的MIS開發(fā)方法研究[J].計(jì)算機(jī)工程與科學(xué),2003,,25(3):101-103.
[3]蔡雪蛟,王益民,蔡長安,等.基于UML的報(bào)刊發(fā)行分析設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2004, 24(1):155-157.
[4]Wendy Boggs,邱仲潘譯,UML with Rational Rose 從入門到精通[M].北京:電子工業(yè)出版社,2000.
[5]Booch G, Rumbaugh J, Jacobson I.姚淑珍,唐發(fā)根,譯.UML參考手冊[M].北京:機(jī)械工業(yè)出版社,2001.