摘要:統(tǒng)一建模語(yǔ)言UML是當(dāng)今世界最有效的面向?qū)ο蟮目梢暬9ぞ?。使用UML建模對(duì)軟件的開發(fā)、系統(tǒng)的解釋,在高職院校學(xué)生信息管理系統(tǒng)中具有重要的現(xiàn)實(shí)意義??梢栽陂_發(fā)周期初期,及時(shí)的檢測(cè)到錯(cuò)誤,改變系統(tǒng)模型,使軟件開發(fā)周期更直觀。
關(guān)鍵詞:UML;統(tǒng)一建模語(yǔ)言;學(xué)生信息管理系統(tǒng);模型
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 15-0000-02
1 引言
本文使用統(tǒng)一建模語(yǔ)言UML,將學(xué)生信息管理系統(tǒng)與RUP方法和建模工具相結(jié)合,制定了系統(tǒng)框架和功能圖,建立了系統(tǒng)模型。
根據(jù)UML進(jìn)行了用例建模,靜態(tài)建模,建立了動(dòng)態(tài)模型和物理模型,并對(duì)系統(tǒng)的進(jìn)行分析和設(shè)計(jì),創(chuàng)建類圖、狀態(tài)圖、活動(dòng)圖、序列圖、組件圖、UML部署圖,從多個(gè)角度對(duì)系統(tǒng)進(jìn)行建模。
2 UML統(tǒng)一建模語(yǔ)言
2.1 UML概述
一個(gè)企業(yè)的網(wǎng)絡(luò)系統(tǒng)如果要和世界上其他系統(tǒng)相互合作、支持,以達(dá)到相輔相成、相互溝通交流的目的。但是不同地域的兩個(gè)系統(tǒng)可能是由互不認(rèn)識(shí)的人編寫的,如果他們沒有遵守一套標(biāo)準(zhǔn)的規(guī)范來編寫和開發(fā),就無法達(dá)到雙方溝通的目的。因此一套標(biāo)準(zhǔn)的系統(tǒng)定義語(yǔ)言就顯得格外重要了。
二十世紀(jì)七十年代中期到九十年代中期,軟件開發(fā)的技術(shù)與方法逐漸由結(jié)構(gòu)化分析與設(shè)計(jì)發(fā)展到了面向?qū)ο蟮姆治龊驮O(shè)計(jì)。而在1089年到1994年期間,發(fā)展出了各種差別極小,但缺乏統(tǒng)一規(guī)劃的軟件建模語(yǔ)言。從1994年開始,在Rational公司的主持下,形成了最初的UML?,F(xiàn)在,IBM已經(jīng)并購(gòu)了Rational公司,推出的UML最新版本為2.0版[1]。
2.2 UML的圖
UML的圖,是事物的分類,元素的圖形表示,事物、關(guān)系和行為。UML定義了兩個(gè)大類、五個(gè)子類,共九種最基本的圖形。
(1)第一類為用例圖。使用例圖可以用來描述系統(tǒng)做了什么,而不用去考慮系統(tǒng)的功能是怎么實(shí)現(xiàn)的,有助于讓外部人員更容易了解整個(gè)系統(tǒng)模型。
(2)第二類為靜態(tài)圖,包含類圖和對(duì)象圖。類圖:類圖是一種用來描述靜態(tài)的結(jié)構(gòu),其主要的目的是用來說明系統(tǒng)類中概括性的名稱與模式、描述類與類間的合作關(guān)系以及詳細(xì)說明設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí)的大綱。是設(shè)計(jì)面向?qū)ο筌浖到y(tǒng)時(shí),最常用也是最重要的一種UML圖形。
對(duì)象圖:對(duì)象圖是具有特定的屬性值的類圖的實(shí)例,來描述一組對(duì)象和對(duì)象的關(guān)系。對(duì)象圖主要是用來設(shè)計(jì)系統(tǒng)的靜態(tài)設(shè)計(jì)視圖和靜態(tài)進(jìn)程視圖,是針對(duì)實(shí)體實(shí)例和原型實(shí)例來做設(shè)計(jì)的。
(3) 第三類為實(shí)現(xiàn)圖,包含組件圖和部署圖。組件圖:是一種用來設(shè)計(jì)系統(tǒng)的靜態(tài)實(shí)現(xiàn)視圖的圖形,可以很容易地了解顯示在圖表組件之間的關(guān)系,一個(gè)組件的變化也影響其他部分。
部署圖:用于模擬系統(tǒng)環(huán)境模型視圖,顯示計(jì)算機(jī)系統(tǒng)的物理結(jié)構(gòu),部署圖是一種用來顯示運(yùn)行時(shí)處理節(jié)點(diǎn)和節(jié)點(diǎn)上存在的組件的圖形。
(4)第四類是行為圖,包含狀態(tài)圖和活動(dòng)圖。狀態(tài)圖:狀態(tài)圖是用來設(shè)計(jì)系統(tǒng)動(dòng)態(tài)角度的圖形之一,利用狀態(tài)圖可以從動(dòng)態(tài)的角度來進(jìn)行系統(tǒng)設(shè)計(jì)。它實(shí)際上是用來描述系統(tǒng)的動(dòng)態(tài)外觀的狀態(tài)機(jī)。
活動(dòng)圖:活動(dòng)圖可以說是狀態(tài)圖的一種特例,在活動(dòng)圖中的狀態(tài)大多是活動(dòng)狀態(tài),而轉(zhuǎn)換大多是由來源狀態(tài)活動(dòng)的完成所驅(qū)動(dòng)的。
(5)第五類是交互圖,包含序列圖和協(xié)作圖。序列圖:是UML里兩種交互圖的一種。主要用途為設(shè)計(jì)系統(tǒng)的動(dòng)態(tài)視圖,強(qiáng)調(diào)的是消息的時(shí)間順序。主要用來描述對(duì)象之間動(dòng)態(tài)的交互關(guān)系,著重體現(xiàn)對(duì)象間消息傳遞的時(shí)間順序。序列圖存在兩個(gè)軸:水平軸表示不同的對(duì)象,垂直軸表示時(shí)間。
協(xié)作圖:合作圖是用來描述對(duì)象與對(duì)象之間消息連接關(guān)系的,側(cè)重于說明哪些對(duì)象之間有消息傳遞。
從應(yīng)用的角度看,當(dāng)采用面向?qū)ο蠹夹g(shù)設(shè)計(jì)系統(tǒng)時(shí),首先是需求描述,其次是根據(jù)需要建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu),第三步是描述系統(tǒng)的行為。
其中前兩個(gè)步驟建立的模型都是靜態(tài)的,包含用例圖、類圖、對(duì)象圖、構(gòu)件圖和配置圖等六種圖。這些圖構(gòu)成了標(biāo)準(zhǔn)建模語(yǔ)言UML的靜態(tài)建模機(jī)制。第三步中所建立的模型可以表示執(zhí)行時(shí)的時(shí)序狀態(tài)或交互關(guān)系,它包括狀態(tài)圖、活動(dòng)圖、順序圖和合作圖等四種圖。這些圖構(gòu)成了UML的動(dòng)態(tài)建模機(jī)制。因此,UML的主要內(nèi)容也可以歸納為靜態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制兩大類[2]。
3 UML建模在學(xué)生信息管理系統(tǒng)中的應(yīng)用
3.1 學(xué)生信息管理系統(tǒng)需求分析
高職院校學(xué)生管理工作比較復(fù)雜,和學(xué)校的各個(gè)職能部門有非常緊密的聯(lián)系。所以在設(shè)計(jì)系統(tǒng)以前,必須對(duì)各個(gè)部門的工作環(huán)節(jié)和運(yùn)作流程進(jìn)行調(diào)研。在了解用戶需求之后,確定學(xué)校的行政管理機(jī)構(gòu)由三個(gè)平臺(tái)組成:
教育平臺(tái):學(xué)生處是負(fù)責(zé)全校學(xué)生招生、就業(yè)、教育管理、資助、軍訓(xùn)和心理健康教育工作的職能部門。
教學(xué)平臺(tái):其職能部門是教務(wù)處,具體負(fù)責(zé)教學(xué)管理的組織和運(yùn)作的一個(gè)重要部門,負(fù)責(zé)學(xué)科與專業(yè)建設(shè)、教學(xué)計(jì)劃制訂實(shí)施、課程建設(shè)組織管理、教學(xué)過程組織管理、教材建設(shè)與供應(yīng)、實(shí)驗(yàn)實(shí)習(xí)實(shí)訓(xùn)管理、教學(xué)改革與研究。
后勤保障平臺(tái):其職能部門是總務(wù)處,是學(xué)校或教育機(jī)構(gòu)的后勤管理機(jī)構(gòu)。主要負(fù)責(zé)學(xué)校工程、財(cái)產(chǎn)、維修、保障、生活起居等服務(wù)的管理工作。
學(xué)生管理工作,包括各方面的內(nèi)容。由于篇幅所限,本文只設(shè)計(jì)和探討學(xué)生管理系統(tǒng)的部分功能。
3.2 創(chuàng)建用例圖
用例是參與者與系統(tǒng)的相互作用。用例是學(xué)生管理系統(tǒng)中的一個(gè)子系統(tǒng)或者說一個(gè)獨(dú)立的完整的功能。
一個(gè)角色可以運(yùn)行幾個(gè)用例,對(duì)于學(xué)生而言,用例可以有:登陸系統(tǒng),退出系統(tǒng)、問卷調(diào)查,訪問個(gè)人信息,選擇課程信息,修改密碼等。
對(duì)于教師而言,用例可以有:登陸系統(tǒng)、添加學(xué)生信息、檢索信息、添加課程、添加班級(jí)、更改密碼等。
繪制用例圖,首先必須確定角色,創(chuàng)建用例。用例圖用來設(shè)計(jì)系統(tǒng)的靜態(tài)使用案例視圖,其主要用途為獲取系統(tǒng)需求并表達(dá)案例與動(dòng)作者間的相互關(guān)系;其主要目的為詳細(xì)說明系統(tǒng)內(nèi)容、取得開發(fā)設(shè)計(jì)系統(tǒng)的需求、獲得系統(tǒng)結(jié)構(gòu)以及控制與測(cè)試案例的執(zhí)行。
3.3 建立靜態(tài)模型
標(biāo)準(zhǔn)建模語(yǔ)言UML和其他所有建模語(yǔ)言一樣,以靜態(tài)建模機(jī)制為基礎(chǔ)。為了構(gòu)建學(xué)生信息管理系統(tǒng),就必須對(duì)系統(tǒng)的靜態(tài)結(jié)構(gòu)有所了解。在進(jìn)行完系統(tǒng)的分析,建立好用例模型后,開始進(jìn)入系統(tǒng)設(shè)計(jì)階段。在這個(gè)階段,通過需求分析的結(jié)果,構(gòu)建系統(tǒng)模型的邏輯結(jié)構(gòu)來構(gòu)建系統(tǒng)之間的靜態(tài)關(guān)系[3]。
經(jīng)過分析學(xué)生管理系統(tǒng)頂層用例圖后得出,系統(tǒng)中應(yīng)該包含“學(xué)生客戶端”和“教師客戶端”這兩個(gè)用戶類,這兩個(gè)類根據(jù)系統(tǒng)需求添加屬性和操作,識(shí)別出來的類最后會(huì)生成Java類文件,最后得到學(xué)生管理系統(tǒng)的類圖。
3.4 建立動(dòng)態(tài)模型
要開發(fā)軟件系統(tǒng),除了要了解軟件對(duì)象的整個(gè)生命周期的變化和其對(duì)象之間關(guān)系的變化之外,還要知道其靜態(tài)結(jié)構(gòu)[4]。
在知道了對(duì)象之間的靜態(tài)結(jié)構(gòu)后,需要了解動(dòng)態(tài)模型,即對(duì)象之間用于實(shí)現(xiàn)用例中詳細(xì)路徑的交互。UML以圖的形式提供了了狀態(tài)圖、活動(dòng)圖、序列圖、協(xié)作圖這四種動(dòng)態(tài)模型,它們從不同的角度反映了應(yīng)用程序的動(dòng)態(tài)特性。每個(gè)圖的視角都有自己的重點(diǎn),根據(jù)應(yīng)用程序的需要使用在不同的地方。
4 結(jié)束語(yǔ)
標(biāo)準(zhǔn)建模語(yǔ)言UML是一種強(qiáng)大的面向?qū)ο蟮慕UZ(yǔ)言,它描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為。本文以學(xué)生信息管理系統(tǒng)的開發(fā)為背景,根據(jù)面向?qū)ο蠼5脑O(shè)計(jì)思路,利用UML統(tǒng)一建模語(yǔ)言的建模思想與RUP方法和建模工具研究制定了系統(tǒng)的框架和功能圖,并實(shí)現(xiàn)了該系統(tǒng)的建模[5]。
通過UML建立系統(tǒng)模型,有效的降低了系統(tǒng)的復(fù)雜性,增強(qiáng)了軟件的可重用性、提高了系統(tǒng)開發(fā)、維護(hù)、升級(jí)的質(zhì)量和效率,界面友好,操作簡(jiǎn)單,能直觀地用科學(xué)的方法來管理學(xué)生,提高了學(xué)生管理效率,實(shí)現(xiàn)了學(xué)校的信息化管理,具有一定的現(xiàn)實(shí)意義。
參考文獻(xiàn):
[1]邵維忠,梅宏.統(tǒng)一建模語(yǔ)言UML述評(píng)[J].計(jì)算機(jī)研究與發(fā)展,1999,36(4):385-394
[2]李治鵬,張春晏.面向?qū)ο蠹夹g(shù)——UML在學(xué)生綜合測(cè)評(píng)管理系統(tǒng)中的應(yīng)用[J].科技信息,2010,2:257-258
[3]梁柱森.基于RUP的UML建模方法在人事招聘系統(tǒng)開發(fā)中的應(yīng)用[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2009,6:122-124
[4]王雙明.UML在高校學(xué)生選課系統(tǒng)中的應(yīng)用研究[J].福建電腦,2012,28(3):97-98
[5]朱勇.UML在高校教務(wù)管理系統(tǒng)中的應(yīng)用[J].科技廣場(chǎng),2011,9:123-126
[作者簡(jiǎn)介]魏松(1978-),男,安徽巢湖人,高校講師,碩士學(xué)位,主要從事計(jì)算機(jī)OA教學(xué)及數(shù)據(jù)庫(kù)應(yīng)用方向研究。