專家課堂 UML基礎知識全面剖析
本節和大家學習一下UML的用法,主要包括UML的適用范圍,UML的統一性和起源等內容,希望本文的介紹會讓對你UML這一名詞有全面的了解。下面是有關UML的詳細介紹。
什么情況下不需要或不適合用UML?
對于一個特定的軟件公司或開發團隊,在下列情況下建議不采用UML:
1)傳統的做法已完全適用,對OOAD的要求也不高,項目非常成功,無任何改進的必要;
2)開發的系統比較簡單,直接用源碼配上少量的文字就能解決問題,軟件開發文檔也無需添加圖形來輔助說明;
3)開發人員更習慣于直接閱讀源碼,用源碼交流,這樣做不影響工作效率和質量;
4)開發的系統本身不屬于OO方法、UML適用范圍。
什么情況下應該用UML?
對于一個特定的軟件公司或開發團隊,在下列情況下建議采用UML:
1)OO方法是項目決定采用的方法論,是整個項目或產品成功的關鍵;
2)開發人員感覺用源碼說明不了真正的問題,希望利用可視化建模語言簡化文檔,提高交流的效率,準確抓住問題的本質;
3)系統的規模和設計都比較復雜,需要用圖形抽象地表達復雜的概念,增強設計的靈活性、可讀性和可理解性,以便暴露深層次的設計問題,降低開發風險;
4)公司希望記錄已成功項目、產品的公共設計方案,在開發新項目時可以參考、重用過去的設計,節省投入,提高成功率。
促進UML普及和應用對于加強我國軟件業的實力有什么重要意義?
OO方法自上世紀80年代以來已經成為軟件開發的主流技術,標準OO建模語言UML的問世說明OO技術的發展達到了一個新的高峰。推廣普及UML的應用可以使我國軟件開發人員、軟件企業和客戶乃至整個行業都從中獲益:
1)個人
UML相關知識體系蘊含了非常豐富的當代軟件工程先進知識。軟件開發人員通過學習和掌握UML概念、表示法及相關的軟件過程、軟件工程技術,能夠加深對OOAD原則、方法的理解,提高抽象思維能力,從而站在更高的層次上分析問題、解決問題,這是一條快速提高個人軟件設計能力的有效途徑。
2)企業
對軟件企業內部,用好UML,不但能直接提升企業的軟件設計開發能力,而且由于UML能形象直觀地記錄軟件設計的核心思想,可以使軟件開發管理透明
化,促進企業知識資產的保護和增值,促進軟件重用和整體效益的提升。對外,由于UML是通行的軟件行業國際標準,企業在業務交往中有效運用UML,無論對于開拓國內外產品市場還是保障工程承接、項目外包等業務的順利開展都大有裨益。
3)行業
積極采用國際通行的軟件描述和設計語言UML,一方面能增加信息透明度,顯著降低軟件企業之間、客戶與開發商之間的溝通成本,減少項目失敗的風險,另一方面能促進行業市場的規范化和標準化,增進國際技術交流,整體提高我國軟件業的技術水平和參與國際市場競爭的能力。據悉,與UML有關的國家級標準目前正在考慮制定過程當中。
UML的統一性表現在哪些方面?
UML的統一性至少表現在以下幾個方面:
1)隨著OO技術的蓬勃發展,到上世紀90年代初OO方法已經多達50余種,它們之間既有很多共通之處也存在許多沒有必要的細節差異,這妨礙了技術進步,不利于產業的發展。UML統一了多種互補的、最具代表性、最受業界歡迎的主流OO方法,這既是歷史的必然,也OO方法成熟的一個重要標志。UML及與其配套的OO統一過程(RUP)在實現“合并同類項”的基礎上又向前邁出了一大步,不愧為當代OO建模方法的集大成者。
2)UML適用于各個行業的信息化工程,包括電信、銀行、保險、稅務、辦公自動化、電力、電子、國防、航天航空、制造、工業自動化、醫療、交通、商業、電子商務等諸多領域的業務建模和軟件分析設計,尤其適合對大中型、復雜、分布式應用系統或軟件產品建模,在這些廣泛的領域中都可以統一使用一套標準的建模語言。
3)作為一種獨立于具體實現的、抽象的表述方式,UML廣泛地適用于各種現代程序設計語言、數據庫和開發平臺。
4)有了UML標準,面向各種不同的軟件開發方法和過程(如重載/輕載,瀑布式/迭代遞增式),在軟件開發生命周期各個階段的工作(如業務建模、需求分析、設計、實現、測試)中,都可以采用一套統一的概念和表示法,避免了語言轉換的麻煩。
5)UML明確定義了一套公共的內部概念,建立了統一的關于建模語言的元模型,反映了在軟件和信息建模技術領域的最新成果。
UML是如何誕生的?
識時務者為俊杰。為了突破上世紀90年代初OO方法論混戰的局面,1994年杰出的Rational公司OO大師Grady Booch邀請通用電氣公司著名OO大師James Rumbaugh博士加盟Rational,啟動了OO方法的統一歷程。他們于1995年發表了“統一方法0.8”。與此同時,另一位超一流OO大師、愛立信公司的Ivar Jacobson博士也在該年加入了二人的行列。
1996年,3人正式把他們的統一成果命名為“統一建模語言”,UML于此誕生。同時,他們還做出了一個非常重要的決定——把UML提交到非贏利性的OMG進行標準化,讓全世界的軟件開發人員都可以自由地分享這一軟件史上的重大成果。于是,在全球軟件界具有廣泛影響力的國際對象管理組織OMG從此開展了一系列OO建模語言的標準化工作。1997年11月,UML 1.1經OMG各成員投票被正式采納為行業標準。
UML是一家之言,或少數派的觀點嗎?
否,UML是全球工業界和學術界的領導者協同努力的成果。自從進入OMG程序后,UML就不再由Rational一家公司所有或由少數人控制,而成為凝結了百家之長的公共知識結晶。具有豐富企業信息系統和信息工程經驗的OO大師、Martin/Odell方法的領軍人物James Odell為此曾表明放棄自己的方法,并直接參與領導了UML 1.x系列標準的制訂工作。另一位OO大師Coad/Yourdon方法的創始人之一Peter Coad,雖然沒有直接參與UML制訂,但卻獨具慧眼創辦了TogetherSoft公司(已被Borland收購),開發了著名的UML集成開發環境Together ControlCenter,成為Rational Rose的有力競爭者。事實說明,UML的確促進了各種OO方法和流派的大融合,在OO建模語言領域具有不可替代的地位。
UML之父是誰?
UML之父有三位:他們是Grady Booch(Booch方法),James Rumbaugh(OMT方法)和Ivar Jacobson(OOSE方法)。人們親切地稱他們為“3 amigos”(即“三高”,類似于大家給予合作舉辦世紀音樂會的,世界上3位頂尖男高音歌唱家的稱謂)。
UML標準有哪些最新進展?
UML 1.x系列的最新版本是于2003年3月發布的1.5版本(www.uml.org)。
OMG(www.omg.org)從2000年起啟動了UML 2.0標準的制定工作。U2P組織(UML2 Partners Consortium,www.u2-partners.org)在UML 2.0標準的制定過程中發揮了主導作用。目前UML 2.0的上層結構(Superstructure)規范已經在2003年6月12日獲得通過。
OMG已經與國際標準化組織ISO開展了合作,預示著UML將來有望成為ISO標準,值得關注。
【編輯推薦】