、Oracle等業(yè)界大廠共同參與、制訂及推動(dòng),目前已是OMG(Object Management Group;對(duì)象管理組織)的公開(kāi)性標(biāo)準(zhǔn)語(yǔ)言,被廣泛應(yīng)用在跨領(lǐng)域的軟件開(kāi)發(fā)過(guò)程。
那么,UML可以做到什么事情呢? 轉(zhuǎn)貼于:中國(guó)項(xiàng)目管理資源網(wǎng)
首先,UML可以「可視化(Visualizing)」系統(tǒng)及系統(tǒng)架構(gòu)。因而能夠把需求、問(wèn)題、行為等概念或文字描述,轉(zhuǎn)換成各種互有關(guān)連的「圖形」,讓開(kāi)發(fā)成員可以清楚知道系統(tǒng)的各種詳細(xì)架構(gòu),讓大家得以在共同基礎(chǔ)上溝通,避免誤解。
第二,UML可以「特定化(Specifying)」一個(gè)模型。也就是可以建立一個(gè)精準(zhǔn)、毫不模糊及完整的模型,幫助進(jìn)行特定功能或行為的追蹤、檢測(cè)與控管,確保它們不會(huì)在后續(xù)階段被模糊或失焦。
第三,UML可以「建構(gòu)(Constructing)」真正的程序代碼。可以直接把UML語(yǔ)言「對(duì)應(yīng)轉(zhuǎn)換(Mapping)」成Java、C++、VB等真正的程序代碼或數(shù)據(jù)庫(kù),所以產(chǎn)品雛形就能制造出來(lái)。更棒的是,它不僅提供這種「正向工程」,也允許從程序代碼轉(zhuǎn)回UML的「逆向工程」。
第四,UML將整個(gè)系統(tǒng)架構(gòu)及開(kāi)發(fā)流程「文件化(Documenting)」。因?yàn)閁ML除了可以把整個(gè)系統(tǒng)及系統(tǒng)架構(gòu)予以可視化,產(chǎn)生各種互有關(guān)連的大量圖表外,還會(huì)瞄準(zhǔn)所有圖表的運(yùn)作與互動(dòng)細(xì)節(jié),幫助掌控從需求、項(xiàng)目計(jì)劃、測(cè)試到產(chǎn)品成型的所有開(kāi)發(fā)流程都遵循標(biāo)準(zhǔn)作業(yè)。
從以上說(shuō)明可以發(fā)現(xiàn),UML可說(shuō)是軟件分析工程的最大利器,也是整個(gè)軟件開(kāi)發(fā)過(guò)程的堅(jiān)強(qiáng)后盾。大家都知道,軟件系統(tǒng)日趨龐大復(fù)雜,而且往往也不是單獨(dú)存在,必須與其它既有或未來(lái)的系統(tǒng)互動(dòng)溝通,這些都讓系統(tǒng)架構(gòu)的復(fù)雜度大幅提升,不能單靠想象或文字進(jìn)行描述與溝通;應(yīng)該讓UML發(fā)揮其強(qiáng)大的威力。
所以,只要會(huì)利用UML,誰(shuí)能說(shuō)「分析」不事生產(chǎn)呢?