技術(shù)分享 UML軟件開(kāi)發(fā)的應(yīng)用
UML建模語(yǔ)言在軟件開(kāi)發(fā)中非常實(shí)用,你對(duì)UML軟件開(kāi)發(fā)的應(yīng)用是否熟悉,這里就像大家介紹一下,希望通過(guò)本文的介紹你對(duì)UML軟件開(kāi)發(fā)的應(yīng)用有新的認(rèn)識(shí)。
UML軟件開(kāi)發(fā)的應(yīng)用
1引言
早期的軟件開(kāi)發(fā)沒(méi)有系統(tǒng)的方法可以遵循,開(kāi)發(fā)者只是在大腦中構(gòu)思一個(gè)大體的流程,除了源代碼外沒(méi)有任何文檔。隨著軟件規(guī)模的不斷擴(kuò)大,這種程序設(shè)計(jì)方法的弊端逐漸顯現(xiàn),出現(xiàn)了所謂的“軟件危機(jī)”。1968年,北大西洋公約組織的科學(xué)在德國(guó)召開(kāi)了一次國(guó)際學(xué)術(shù)會(huì)議,提出了“軟件工程”的概念。在“軟件工程”的發(fā)展史上,面向?qū)ο蠹夹g(shù)無(wú)疑是***的功臣。隨著面向?qū)ο蠹夹g(shù)的提出,誕生了各種各樣的建模語(yǔ)言,雖然不同的建模語(yǔ)言大多雷同,但存在著細(xì)微的差別,極大的妨礙了用戶(hù)之間的交流。結(jié)束這種局面的正是UML,UML博采眾長(zhǎng),建立了一個(gè)標(biāo)準(zhǔn)的,統(tǒng)一的建語(yǔ)言。本文對(duì)UML及其及各種框圖進(jìn)行詳細(xì)分析,并通過(guò)一個(gè)實(shí)際的系統(tǒng)闡述其在軟件開(kāi)發(fā)中的應(yīng)用。
2UML及其框圖
UML(UnifiedModelingLanguage),是一種面向?qū)ο蟮慕UZ(yǔ)言。它的主要作用是幫助用戶(hù)對(duì)軟件系統(tǒng)進(jìn)行面向?qū)ο蟮拿枋龊徒?,它可以描述這個(gè)軟件開(kāi)發(fā)過(guò)程從需求分析直到實(shí)現(xiàn)和測(cè)試的全過(guò)程。UML不是程序設(shè)計(jì)語(yǔ)言,而是建模語(yǔ)言;UML不是工具也不是知識(shí)庫(kù)的規(guī)格說(shuō)明,而是一種語(yǔ)言規(guī)格說(shuō)明,是一種表示的標(biāo)準(zhǔn);UML不是過(guò)程和方法,但是允許任何一種過(guò)程和方法使用它。UML的目標(biāo)是以面向?qū)ο蟮膱D的方式來(lái)描述任何類(lèi)型的系統(tǒng)。其中最常用的是建立軟件系的模型。但它同樣可以用于描述非軟件領(lǐng)域的系統(tǒng),如企業(yè)機(jī)構(gòu)、業(yè)務(wù)過(guò)程、機(jī)械系統(tǒng)等。
UML軟件開(kāi)發(fā)共有9種圖形,下面分別進(jìn)行介紹。
1)用例圖(UseCaseDiagram):顯示多個(gè)外部參與者以及他們與系統(tǒng)提供的用例之間的連接。用例圖的用途是列出系統(tǒng)中的用例和參與者,并顯示它們之間的對(duì)應(yīng)關(guān)系。
2)類(lèi)圖(ClassDiagram):類(lèi)圖表示不同的實(shí)體(人、事物和數(shù)據(jù))如何彼此相關(guān),換句話(huà)說(shuō),它顯示了系統(tǒng)的靜態(tài)結(jié)構(gòu)。
3)對(duì)象圖(ObjectDiagram):類(lèi)圖的實(shí)例,幾乎使用與類(lèi)圖完全相同的標(biāo)識(shí)。不同點(diǎn)是對(duì)象圖只顯示類(lèi)的多個(gè)對(duì)象實(shí)例而非實(shí)際的類(lèi)。對(duì)象圖有生命周期,只能在系統(tǒng)某個(gè)時(shí)間段存在。
4)狀態(tài)圖(StateDiagram):狀態(tài)圖表示某個(gè)類(lèi)所處的不同狀態(tài)和該類(lèi)的狀態(tài)轉(zhuǎn)換信息。狀態(tài)的變化稱(chēng)之為轉(zhuǎn)換。
5)時(shí)序圖(SequenceDiagram):顯示多個(gè)對(duì)象之間的動(dòng)態(tài)協(xié)作,重點(diǎn)是顯示對(duì)象之間發(fā)送消息的時(shí)間順序。
6)協(xié)作圖(CollaborationDiagram):使用圖表或網(wǎng)格展示對(duì)象之間的交互,著眼點(diǎn)在于對(duì)象之間的協(xié)作關(guān)系。
7)活動(dòng)圖(ActivityDiagram):是狀態(tài)圖的一個(gè)變體,用來(lái)描述執(zhí)行算法的工作流程中涉及的活動(dòng)。
8)組件圖(ComponentDiagram):組件圖提供系統(tǒng)的物理視圖。它的用途是顯示系統(tǒng)中的軟件對(duì)其他軟件組件(例如,庫(kù)函數(shù))的依賴(lài)關(guān)系。
9)配置圖(DeploymentDiagram):用于顯示系統(tǒng)中的硬件和軟件的物理結(jié)構(gòu)。
3網(wǎng)絡(luò)教學(xué)系統(tǒng)的分析與設(shè)計(jì)
3.1功能需求分析
UML軟件開(kāi)發(fā)中系統(tǒng)的功能需求包括以下幾個(gè)方面:
1)學(xué)生可以登錄網(wǎng)站瀏覽信息、查找信息和下載文件。
2)教師可以登錄網(wǎng)站輸入課程簡(jiǎn)介、上傳課件文件、發(fā)布消息、修改和更新消息。
3)系統(tǒng)管理員可以對(duì)頁(yè)面維護(hù)以及批準(zhǔn)用戶(hù)的注冊(cè)申請(qǐng)。
滿(mǎn)足上述需求的系統(tǒng)主要包括三個(gè)模塊:數(shù)據(jù)庫(kù)管理模塊、基本業(yè)務(wù)模塊和信息瀏覽查詢(xún)模塊。
數(shù)據(jù)庫(kù)管理模塊包括以下部分:
1)教師信息管理。
2)課程簡(jiǎn)介信息管理。
3)文件上傳信息管理。
基本業(yè)務(wù)模塊包括以下部分:
1)文件上傳。
2)文件下載。
3)消息發(fā)布。
4)頁(yè)面維護(hù)。
信息瀏覽查詢(xún)模塊包括以下部分:
1)網(wǎng)頁(yè)信息瀏覽。
2)文件信息搜索。
3.2系統(tǒng)的用例圖
UML軟件開(kāi)發(fā)中創(chuàng)建用例圖之前首先需要確定參與者。在網(wǎng)絡(luò)教學(xué)系統(tǒng)中,需要學(xué)生和教師的參與。學(xué)生可以瀏覽課程簡(jiǎn)介、教學(xué)計(jì)劃、學(xué)習(xí)方法等教師發(fā)布的文章,并可以根據(jù)關(guān)鍵字查詢(xún)文章。此外,學(xué)生還可以從網(wǎng)站上下載課件。教師可以發(fā)布學(xué)習(xí)方法、課程重點(diǎn)等和教學(xué)相關(guān)的文件,以及和課程相關(guān)的通知等,還可以上傳課件。
3.3系統(tǒng)的類(lèi)圖
通過(guò)分析可以得出系統(tǒng)的類(lèi)圖及它們之間的關(guān)系見(jiàn)圖2。
3.4協(xié)作圖
針對(duì)一些對(duì)系統(tǒng)來(lái)說(shuō)比較關(guān)鍵的用例建立協(xié)作圖,這里以“用戶(hù)登錄”為例,所建立的協(xié)作圖如圖3。
4結(jié)束結(jié)
UML融合當(dāng)前一些流行的面向?qū)ο箝_(kāi)發(fā)方法的主要概念和技術(shù),成為一種面向?qū)ο蟮臉?biāo)準(zhǔn)的建模語(yǔ)言,采用圖形來(lái)描述系統(tǒng)的視圖易于理解,為用戶(hù)和開(kāi)發(fā)人員之間起到了橋梁作用,便于程序員理解用戶(hù)的需求。本文通過(guò)實(shí)例,闡述了UML在網(wǎng)絡(luò)教學(xué)系統(tǒng)中的應(yīng)用,從中可以體會(huì)到使用UML開(kāi)發(fā)應(yīng)用系統(tǒng)的方法和過(guò)程,對(duì)開(kāi)發(fā)管理系統(tǒng)有一定的指導(dǎo)作用。
【編輯推薦】
- 深入剖析UML軟件開(kāi)發(fā)的應(yīng)用
- 體驗(yàn)免費(fèi)UML建模工具
- UML面向?qū)ο蠓治雠c設(shè)計(jì)解析
- 教你繪制整潔的UML圖
- UML面向?qū)ο蠼V兴姆N常見(jiàn)開(kāi)發(fā)模式