1口猜、為什么需要UML
- 面向過程開發(fā)方法的困難:復(fù)雜度太高灶芝,經(jīng)常變化
- 面向?qū)ο箝_發(fā)方法的困難:
- 對象是怎么被抽象出來的缓屠?Why
- 對象的組合是如何實(shí)現(xiàn)現(xiàn)實(shí)的功能应闯? How
- 對象的組合是表達(dá)了怎樣的含義蛀序?What
憑借經(jīng)驗(yàn)的開發(fā)也叫做拍腦袋欢瞪,沒有設(shè)計,反復(fù)嘗試徐裸,拼拼湊湊作出一個系統(tǒng)來遣鼓。
真正的設(shè)計,我們需要:
- 一種現(xiàn)實(shí)世界映射到對象世界的方法
- 一種從對象世界描述現(xiàn)實(shí)世界的方法
- 一種驗(yàn)證對象世界行為是否正確反映了現(xiàn)實(shí)世界的方法
UML可以做到:
- 現(xiàn)實(shí)世界到業(yè)務(wù)模型:使用用例圖重贺,將人骑祟、事、物气笙、規(guī)則模型化
- 業(yè)務(wù)模型到概念模型:通過概念化的過程建立適合計算機(jī)理解和實(shí)現(xiàn)的模型
- 概念模型到設(shè)計模型:從概念模型獲得了軟件的藍(lán)圖次企,獲得了建設(shè)軟件所需要的所有組成內(nèi)容和必要細(xì)節(jié)
UML的這個轉(zhuǎn)換過程,是用例驅(qū)動的潜圃,其根本理論是 統(tǒng)一過程(RUP)
建模方法缸棵。
統(tǒng)一過程歸納和整理了很多在實(shí)踐中總結(jié)出來的軟件工程的最佳實(shí)踐,是一個采用了面向?qū)ο笏枷胩菲冢褂肬ML作為軟件分析設(shè)計語言蛉谜,并且結(jié)合了項(xiàng)目管理、質(zhì)量保證等許多軟件工程知識綜合而成的一個非常完整和龐大的軟件方法崇堵。統(tǒng)一過程是一個重量級的開發(fā)方法型诚,區(qū)別與敏捷方法。