唐建豪 武漢學(xué)院
UML在軟件工程中的應(yīng)用
唐建豪 武漢學(xué)院
隨著軟件系統(tǒng)越來越復(fù)雜,要求我們必須實(shí)現(xiàn)從需求到詳細(xì)設(shè)計(jì)的模型化規(guī)劃,這是一個(gè)非常重要的環(huán)節(jié),后續(xù)的編碼、測試、維護(hù)都只是按照前面的規(guī)劃計(jì)劃進(jìn)行,一個(gè)非常詳細(xì)的設(shè)計(jì),利用UML幾乎能將整個(gè)系統(tǒng)架構(gòu)和代碼架構(gòu)通過UML表示出來,不但簡化了復(fù)雜系統(tǒng)的開發(fā)難度,也規(guī)范了系統(tǒng)的軟件開發(fā)過程,使系統(tǒng)更加可控可靠可實(shí)現(xiàn)!
UML 網(wǎng)絡(luò)教學(xué)系統(tǒng)分析與設(shè)計(jì) 面向?qū)ο?軟件工程。
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)造和配置。面向?qū)ο蟮姆治雠c設(shè)計(jì)(OOA&D,OOAD)方法的發(fā)展在80年代末至90年代中出現(xiàn)了一個(gè)高潮,UML是這個(gè)高潮的產(chǎn)物。它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對其作了進(jìn)一步的發(fā)展,并最終統(tǒng)一為大眾所接受的標(biāo)準(zhǔn)建模語言。UML的最大用途是用圖形來描述真實(shí)世界各個(gè)對象。UML定義了一系列圖形工具,以對現(xiàn)實(shí)世界進(jìn)行面向?qū)ο蠼!?/p>
系統(tǒng)的功能需求包括以下幾個(gè)方面:
(1)學(xué)生可以登錄網(wǎng)站瀏覽信息、查找信息和下載文件。
(2)教師可登錄網(wǎng)站輸入課程簡介、上傳課件文件、發(fā)布消息、修改和更新消息。
(3)系統(tǒng)管理員可以對頁面維護(hù)以及批準(zhǔn)用戶的注冊申請。
滿足上述需求的系統(tǒng)主要包括三個(gè)模塊:數(shù)據(jù)庫管理模塊、基本業(yè)務(wù)模塊和信息瀏覽查詢模塊。
數(shù)據(jù)庫管理模塊包括以下部分:(1)教師信息管理。(2)課程簡介信息管理。(3)文件上傳信息管理。
基本業(yè)務(wù)模塊包括以下部分:(1)文件上傳。(2)文件下載。(3)消息發(fā)布。(4)頁面維護(hù)。
信息瀏覽查詢模塊包括以下部分:(1)網(wǎng)頁信息瀏覽。(2)文件信息搜索。
創(chuàng)建用例圖之前首先需要確定參與者。在網(wǎng)絡(luò)教學(xué)系統(tǒng)中,需要學(xué)生和教師的參與。學(xué)生可以瀏覽課程簡介、教學(xué)計(jì)劃、學(xué)習(xí)方法等教師發(fā)布的文章.并可以根據(jù)關(guān)鍵字查詢文章。此外,學(xué)生還可以從網(wǎng)站上下載課件。教師可以發(fā)布學(xué)習(xí)方法、課程重點(diǎn)等和教學(xué)相關(guān)的文件.以及和課程相關(guān)的通知等,還可以上傳課件。
使用UML進(jìn)行建模過程是:首先從功能需求出發(fā)建立用案模型,得到系統(tǒng)的功能;其次對用案模型和功能需求進(jìn)行分析得到系統(tǒng)的整個(gè)結(jié)構(gòu),即建立靜態(tài)模型;然后將整個(gè)系統(tǒng)要完成的功能在類之間進(jìn)行分配,得到各個(gè)對象的責(zé)任,即類的操作;再建立系統(tǒng)的動(dòng)態(tài)模型,描述各個(gè)對象是如何完成這些功能的;最后是檢查模型之間的一致性.歸納地說,UML的建模過程為:初始階段→細(xì)化階段→構(gòu)造階段→移交階段,它與軟件工程的生存期可以有如圖3的映射。
圖3 軟件生存期與UML的映射關(guān)系
UML的一個(gè)目標(biāo)是以面向?qū)ο髨D的方式來描述任何類型的系統(tǒng),具有很寬的應(yīng)用領(lǐng)域,可以對任何具有靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為的統(tǒng)進(jìn)行建模。其中最常用的是對各類軟件系統(tǒng)的建模,從應(yīng)用系統(tǒng)到計(jì)算機(jī)系統(tǒng)支持軟件,從一般的企業(yè)信息管理系統(tǒng)到基于Web的分布式用系統(tǒng),甚至實(shí)時(shí)系統(tǒng),但它還可以用于描述不帶任何軟件的機(jī)械系統(tǒng)、一個(gè)企業(yè)的機(jī)構(gòu)或企業(yè)過程等。UML適用于系統(tǒng)開發(fā)的不同階段,從需求規(guī)格描述到系統(tǒng)完成后的測試。
目前,UML已成功應(yīng)用于電信、金融、政府、電子、國防、航天航空、制造與工業(yè)自動(dòng)化、醫(yī)療、交通、電子商務(wù)等領(lǐng)域中。在這些領(lǐng)域中,UML的建模包括大型、復(fù)雜、實(shí)時(shí)、分布式、集中式數(shù)據(jù)或者計(jì)算,以及嵌入式系統(tǒng)等,而且還用于軟件再生工程、質(zhì)量管理、過程管理、配置管理的各方面。在軟件無線電技術(shù)中,UML的應(yīng)用是可行的,而且具有優(yōu)勢。
綜合來看,UML作為一種最合適的建模語言,其應(yīng)用于軟件無線電之中是可實(shí)現(xiàn)的,也是非常有前途的。UML在軟件無線電中得以應(yīng)用,必將極大地促進(jìn)軟件無線電技術(shù)的發(fā)展。
[1]殷峰.軟件工程[M].天津科學(xué)技術(shù)出版社,2011
[2]張海藩,倪寧.軟件工程[M].人民郵電出版社,2010