學(xué)習(xí)筆記 UML面向?qū)ο蠹夹g(shù)概述
本文和大家重點(diǎn)討論一下UML面向?qū)ο蟮母拍?,通過(guò)UML面向?qū)ο蟮姆治觯∣OA)、UML面向?qū)ο蟮脑O(shè)計(jì)(OOD)和UML面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP)等過(guò)程,將現(xiàn)實(shí)世界的問(wèn)題空間平滑地過(guò)渡到軟件空間的一種軟件開發(fā)過(guò)程。
UML面向?qū)ο蠓治雠c建模
UML面向?qū)ο蠹夹g(shù)概述
一、軟件開發(fā)方法
常見的軟件開發(fā)方法有面向過(guò)程的開發(fā)方法,面向數(shù)據(jù)結(jié)構(gòu)的開發(fā)方法和UML面向?qū)ο蟮拈_發(fā)方法。其中面向過(guò)程的開發(fā)方法也稱為面向功能的軟件開發(fā)方法或面向數(shù)據(jù)流的軟件開發(fā)方法。結(jié)構(gòu)化方法強(qiáng)調(diào)過(guò)程抽象和功能模塊化。它一般利用圖形表達(dá)用戶需求,使用的手段有數(shù)據(jù)流圖、數(shù)據(jù)字典、結(jié)構(gòu)化語(yǔ)言、判定表及判定樹等。面向數(shù)據(jù)結(jié)構(gòu)的開發(fā)方法適合于求解算法依賴于問(wèn)題描述的數(shù)據(jù)結(jié)構(gòu)之類的情況。這種方法最適合在完成了軟件結(jié)構(gòu)設(shè)計(jì)之后,用它來(lái)設(shè)計(jì)每個(gè)模塊的處理過(guò)程。它根據(jù)問(wèn)題的數(shù)據(jù)結(jié)構(gòu)定義一組映射,把問(wèn)題的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為問(wèn)題求解的程序結(jié)構(gòu)。
UML面向?qū)ο箝_發(fā)方法思想是:對(duì)問(wèn)題空間進(jìn)行自然分割,以更接近人類思維的方式建立問(wèn)題域模型,以便對(duì)客觀實(shí)體進(jìn)行結(jié)構(gòu)模擬和行為模擬,從而使設(shè)計(jì)出的軟件盡可能直接地描述現(xiàn)實(shí)世界,構(gòu)造出模塊話的,可重用的,維護(hù)性好的軟件,同時(shí)限定軟件的復(fù)雜性和降低開發(fā)維護(hù)費(fèi)用。它是通過(guò)UML面向?qū)ο蟮姆治觯∣OA)、UML面向?qū)ο蟮脑O(shè)計(jì)(OOD)和UML面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP)等過(guò)程,將現(xiàn)實(shí)世界的問(wèn)題空間平滑地過(guò)渡到軟件空間的一種軟件開發(fā)過(guò)程。目前,典型的UML面向?qū)ο蟮拈_發(fā)方法是UML和統(tǒng)一開發(fā)過(guò)程(RUP)。
二、軟件生命周期
軟件生命周期是指軟件從立項(xiàng)、功能確定、設(shè)計(jì),到開發(fā)成功投入使用,并在使用過(guò)程中不斷地修改、增補(bǔ)和完善,直至被新的需要所替代而停止該軟件的使用的全過(guò)程。
三、軟件開發(fā)模型
軟件開發(fā)模型是從軟件項(xiàng)目需求定義直至軟件經(jīng)使用后廢棄為止,跨越整個(gè)生存期的系統(tǒng)開發(fā)、運(yùn)作和維護(hù)所實(shí)施的全部過(guò)程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架。分為:瀑布模型、原型模型、螺旋模型、增量模型和噴泉(迭代)模型。
四、UML面向?qū)ο蠓椒ǖ奶攸c(diǎn)
UML面向?qū)ο蟮姆椒▽W(xué)可以概括為下列方程:OO=Object+Classes+Inheritance+CommunicationwithMessages也就是說(shuō)UML面向?qū)ο缶褪羌仁褂妙惡屠^承等機(jī)制,而且對(duì)象之間僅能通過(guò)傳遞消息實(shí)現(xiàn)彼此通信。
五、UML面向?qū)ο蠓治觯∣OA)
UML面向?qū)ο蠓治龅年P(guān)鍵,是識(shí)別出問(wèn)題域內(nèi)的對(duì)象,并分析它們相互間的關(guān)系,最終建立起問(wèn)題域的簡(jiǎn)潔、精確、可理解的正確模型。分析就是抽取和整理用戶需求并建立問(wèn)題域精確模型的過(guò)程?;静襟E有問(wèn)題域分析、發(fā)現(xiàn)和定義對(duì)象和類、識(shí)別對(duì)象的外部聯(lián)系、建立系統(tǒng)的靜態(tài)結(jié)構(gòu)模型和建立系統(tǒng)的動(dòng)態(tài)行為模型。
六、UML面向?qū)ο笤O(shè)計(jì)(OOD)
UML面向?qū)ο笤O(shè)計(jì)是把分析階段的需求轉(zhuǎn)變成符合成本和質(zhì)量要求的、抽象的系統(tǒng)實(shí)現(xiàn)方案過(guò)程。細(xì)分為系統(tǒng)設(shè)計(jì)和對(duì)象設(shè)計(jì)。設(shè)計(jì)準(zhǔn)則包括模塊化、抽象、信息隱藏、弱耦合、強(qiáng)內(nèi)聚和可重用。設(shè)計(jì)過(guò)程包括設(shè)計(jì)對(duì)象和類、設(shè)計(jì)系統(tǒng)結(jié)構(gòu)、設(shè)計(jì)問(wèn)題域子系統(tǒng)、設(shè)計(jì)人-機(jī)交互子系統(tǒng)、設(shè)計(jì)任務(wù)管理子系統(tǒng)、設(shè)計(jì)數(shù)據(jù)管理子系統(tǒng)和設(shè)計(jì)優(yōu)化。
七、UML面向?qū)ο蠓椒ê凸ぞ?/p>
UML面向?qū)ο蠓椒ㄖ饕蠦ooch、Jacobson、Coad-Yourdon、JamesRumbauth開發(fā)方法。已發(fā)展成當(dāng)前最流行的系統(tǒng)分析方法和軟件開發(fā)技術(shù),并且已經(jīng)逐步統(tǒng)一、融合形成UML語(yǔ)言。
【編輯推薦】
- UML面向?qū)ο蠓治雠c設(shè)計(jì)解析
- 解析UML面向?qū)ο蠓治雠c建模中交互圖
- UML面向?qū)ο笕腴T指導(dǎo)
- 實(shí)例解析UML面向?qū)ο蠹夹g(shù)
- 深入剖析四種UML面向?qū)ο蠼i_發(fā)模式