解析軟件工程的UML建模方法與技術
本節(jié)和大家一起學習一下軟件工程的UML建模方法與技術,主要包括UML統(tǒng)一建模的概念,UML的發(fā)展,UML的組成與優(yōu)勢。相信通過本節(jié)的學習你對UML建模一定會有深刻的認識。
軟件工程的UML建模方法與技術
論文分析了UML的概念,特點以及組成,指出了UML在應用中的特點。通過UML可以很好的應用其圖形化的特征,輔助進行系統(tǒng)的建模與分析,介紹了兩種開發(fā)應用的建模工具,***指出應用學習UML的難點,使用UML應該注意的地方,可以起到很好的借鑒作用。
0引言
UML這三個字母的全稱是Unified Modeling Language,即統(tǒng)一建模語言,簡單地說就是一種有特殊用途的語言。其實有很多內容文字是無法表達的。比如建筑界有一套標準來描述,來輔助表達清楚建筑的設計,就是建筑設計圖紙。同樣的情況在軟件開發(fā)過程中,特別是當前的數(shù)據(jù)庫看軟件工程方面,也需要一套標準來輔助軟件開發(fā)工作。UML就是其中的一種標準,(注意并不是唯一標準,只是UML是比較推崇的一種標準)雖然UML并不是官方的標準,也沒有法律規(guī)定在軟件開發(fā)中一定要用UML,但是通過妥善使用UML在內的各種標準,往往能夠提高軟件開發(fā)的水平。UML可以實現(xiàn)大型復雜系統(tǒng)各種成分描述的可視化、說明并構造系統(tǒng)模型,以及建立各種所需的文檔,它是一種定義良好、易于表達、功能強大且普遍適用的建模語言。
1統(tǒng)一建模的概念
現(xiàn)代的軟件開發(fā)采用面向對象的觀點進行建模。按照這種方法,所有軟件系統(tǒng)都用對象或類作為其主要構造塊。對象通常是從問題空間或解空間的詞匯中抽取出來的東西;類是對具有共同性質的一組對象(從建模者的視角)的描述。而UML正式這種面向對象統(tǒng)一建模的方法。UML合并了許多面向對象方法中被普遍接受的概念,對每一種概念它都給出了清晰的定義、表示法和有關術語。使用UML可以對已有的用各種方法建立的模型進行描述,并比原來的方法描述得更好。
(1)在應用領域方面。UML適用于各種應用領域的建模,包括大型的、復雜的、實時的、分布式的、集中式數(shù)據(jù)或計算的、嵌入式的系統(tǒng)。
(2)在實現(xiàn)的編程語言和開發(fā)平臺方面。UML可應用于運行各種不同的編程實現(xiàn)語言和開發(fā)平臺的系統(tǒng)。其中包括程序設計語言、數(shù)據(jù)庫、4GL、組織文檔及固件等。
(3)在開發(fā)全過程方面。UML是一個建模型語言,不是對開發(fā)過程的細節(jié)進行描述的工具。就像通用程序設計語言可以用于許多風格的程序設計一樣,UML適用于大部分現(xiàn)有的或新出現(xiàn)的開發(fā)過程。尤其適用于迭代式增量開發(fā)過程。
2UML建模的發(fā)展
從二十世紀八十年代初期開始眾多的方法學家都在嘗試用不同的方法進行面向對象的分析與設計。有少數(shù)幾種方法開始在一些關鍵性的項目中發(fā)揮作用包括Booch OMTShlaer/Mellor Odell/Martin RDD OBA 和Objectory。到了二十世紀九十年代中期出現(xiàn)了第二代面向對象方法,著名的有Booch'94 OMT的沿續(xù)以及Fusion等。此時面向對象方法已經成為軟件分析和設計方法的主流。這些方法所做的最重要的嘗試是在程序設計藝術與計算機科學之間尋求合理的平衡,來進行復雜軟件的開發(fā)。由于Booch 和OMT 方法都已經獨自成功地發(fā)展成為世界上主要的面向對象方法,因此Jim Rumbaugh 和Grady Booch 在1994 年10 月共同合作把他們的工作統(tǒng)一起來。到1995 年成為統(tǒng)一方法Unified Method 版本0.8 隨后Ivar Jacobson 加入并采用。
UML 版本1.0 被提交給OMG 組織作為軟件建模語言標準化的候選其后的半年多時間里一些重要的軟件開發(fā)商和系統(tǒng)集成商都成為UML 伙伴,如Mircrosoft IBM HP等。它們積極地使用UML 并提出反饋意見。***于1997 年9 月再次提交給OMG 組織于1997 年11 月7 日正式被OMG 采納作為業(yè)界標準?,F(xiàn)在OMG 已經把UML 作為公共可得到的規(guī)格說明,提交給國際標準化組織ISO 進行國際標準化。
3 UML建模的組成與優(yōu)勢
UML由圖和元模型組成。在這里圖是語法,元模型是語義。UML主要地包括了三個基本構造塊:事物(Things)、關系(Relationships)和圖(Diagrams)。UML在系統(tǒng)模型分析與設計中有著良好的優(yōu)勢,主要體現(xiàn)在如下的一些方面:
(1)完全獨立于過程。它是系統(tǒng)建模語言,完全的獨立在開發(fā)過程之外。
(2)是面向對象的。它支持面向對象技術的主要概念,而且有許多模型元素的表示圖形和方法,能夠簡潔地表達面向對象之各種概念。
(3)易于掌握使用。這些所囊括的圖形結構清晰,非常利于建模,也比較容易掌握。
(4)具有可視化的特點。UML模型圖可以清楚地表示系統(tǒng)的邏輯模型,這個特點非常適于復雜系統(tǒng)的建模。
(5)獨立于程序設計語言。用UML建立的軟件系統(tǒng)模型可以用Java、VC++、SmalltaIk等任何一種面向對象的程序設計來實現(xiàn)。
4UML建模詳細分析
4.1UML建模中的主要圖
圖是事物集合的分類,UML中包含多種圖:
(1)部署圖:部署圖定義系統(tǒng)中軟硬件的物理體系結構;
(2)順序圖:順序圖表示對象之間動態(tài)合作的關系;
(3)活動圖:活動圖描述系統(tǒng)中各種活動的執(zhí)行順序。
(4)組件圖:組件圖描述代碼部件的物理結構以及各部件之間的依賴關系;
(5)類圖:類圖描述系統(tǒng)所包含的類、類的內部結構及類之間的關系;
(6)包圖:包圖表明包及其之間的依賴類圖;
(7)狀態(tài)圖:狀態(tài)圖描述一類對象的所有可能的狀態(tài)以及事件發(fā)生時狀態(tài)的轉移條件;
(8)協(xié)作圖:合作圖描述對象之間的協(xié)作關系;
(9)對象圖:對象圖是類圖的一個具體實例;
(10)用例圖:用例圖從用戶的角度出發(fā)描述系統(tǒng)的功能、需求,展示系統(tǒng)外部的各類角色與系統(tǒng)內部的各種用例之間的關系;實際上UML的分析過程,就是這些圖的具體應用。
【編輯推薦】
- 學習筆記 MES系統(tǒng)的UML建模方法
- 兩大開源UML建模工具UMLet和ArgoUML用法解析
- 學習筆記 UML建模語言的特點和應用領域
- 免費UML建模工具盡情體驗
- UML建模工具Rose與PowerDesigner,兩款建模工具的對比