RUP是Rational統(tǒng)一過(guò)程(Rational Unified Process)的簡(jiǎn)稱(chēng),它是Rational公司(現(xiàn)歸屬I(mǎi)BM公司)推出的一種軟件過(guò)程產(chǎn)品。從軟件過(guò)程模式角度看,RUP又是一種典型的軟件過(guò)程模式,它以迭代增量式、架構(gòu)為中心、用例驅(qū)動(dòng)的軟件開(kāi)發(fā)方法為主要特征,其中以用例驅(qū)動(dòng)乃是貫穿軟件開(kāi)發(fā)始終的方法,而將其應(yīng)用于需求管理自然是首當(dāng)其沖的課題。
軟件需求是一個(gè)軟件系統(tǒng)必須完成或達(dá)到的目標(biāo)總和,需求管理是指了解、記錄、追蹤不斷變化的需求的一個(gè)系統(tǒng)化方法。至今許多軟件開(kāi)發(fā)的實(shí)踐都表明,有無(wú)良好的需求管理是整個(gè)軟件項(xiàng)目成敗的至關(guān)重要的一步,是與項(xiàng)目得失關(guān)系最大的首要因素。RUP把需求定義為“(正在構(gòu)建的)系統(tǒng)必須符合的條件或具備的功能”,并描述了如何提取、組織需要的功能和限制;跟蹤和文檔化適中方案和決策;捕獲和進(jìn)行商業(yè)需求交流。在此過(guò)程中的用例和場(chǎng)景(用例的實(shí)例)的使用,已被證明是捕獲功能性需求的卓越方法,并確保由它們來(lái)驅(qū)動(dòng)軟件的設(shè)計(jì)、實(shí)現(xiàn)和測(cè)試,使最終系統(tǒng)更能滿(mǎn)足最終用戶(hù)的需要。下面對(duì)此稍作具體的分析。
一、用例驅(qū)動(dòng)較之功能分解的優(yōu)勢(shì)
在不同行業(yè)中,都有很多機(jī)會(huì)足以去發(fā)明產(chǎn)品,或改善制造和管理的過(guò)程,而把握機(jī)會(huì)的一個(gè)重要方法就是從問(wèn)題中找機(jī)會(huì)。Rational正是一家善于思考問(wèn)題的企業(yè)。
長(zhǎng)期以來(lái),在軟件工程實(shí)踐中普遍存在這樣一種認(rèn)識(shí)——用戶(hù)知道需求是什么,開(kāi)發(fā)人員要做的就是從他們那里得到需求,并由此做出系統(tǒng)功能的說(shuō)明?;谶@樣的認(rèn)識(shí)和思想指導(dǎo),傳統(tǒng)的軟件需求規(guī)約采用的基本上都是以功能分解的方式來(lái)描述系統(tǒng)功能。在這種表述方式中,系統(tǒng)功能被分解到各個(gè)系統(tǒng)功能模塊中,通過(guò)描述細(xì)分的系統(tǒng)模塊功能來(lái)達(dá)到描述整個(gè)系統(tǒng)功能的目的。但采用這種方法來(lái)描述系統(tǒng)需求,非常容易混淆需求和設(shè)計(jì)的界限,其表述中實(shí)際上已經(jīng)包含了部分的設(shè)計(jì)在內(nèi)。由此常常導(dǎo)致這樣的迷惑:系統(tǒng)需求應(yīng)該詳細(xì)到何種程度?極端的情況就是需求可以詳細(xì)到概要設(shè)計(jì),因?yàn)檫@樣的需求表述既包含了外部需求也包含了內(nèi)部設(shè)計(jì)。以往在有些公司的開(kāi)發(fā)流程中,對(duì)于需求就有"內(nèi)部需求"(實(shí)為內(nèi)部設(shè)計(jì))和"外部需求"之區(qū)分與稱(chēng)謂。
功能分解方法的另一個(gè)缺點(diǎn)是它分割了各項(xiàng)系統(tǒng)功能的應(yīng)用環(huán)境,從各個(gè)功能項(xiàng)入手,你就很難了解到這些功能項(xiàng)是如何相互關(guān)聯(lián)來(lái)實(shí)現(xiàn)一個(gè)完整的系統(tǒng)服務(wù)的。所以在傳統(tǒng)的SRS文檔中,我們往往需要另外一些章節(jié)來(lái)描述系統(tǒng)的整體結(jié)構(gòu)及各部分之間的相互關(guān)聯(lián),這些內(nèi)容使得SRS需求更像是一個(gè)設(shè)計(jì)文檔。
通過(guò)軟件開(kāi)發(fā)的反復(fù)實(shí)踐后發(fā)現(xiàn),任何系統(tǒng)都會(huì)有很多用戶(hù)(或不同類(lèi)型的用戶(hù)),每個(gè)用戶(hù)只知道其個(gè)人如何使用系統(tǒng),他們并不知道也不想了解系統(tǒng)的內(nèi)部結(jié)構(gòu)、設(shè)計(jì)及整體運(yùn)行情況,他們所關(guān)心的只是系統(tǒng)所能提供的服務(wù),也就是被開(kāi)發(fā)出來(lái)的系統(tǒng)將是如何被使用的,這就是Rational思考問(wèn)題的角度,也是創(chuàng)制用例方法的基本指導(dǎo)思想。
用例方法是完全站在用戶(hù)的角度上(即從系統(tǒng)的外部)來(lái)描述系統(tǒng)的功能,所要回答的問(wèn)題是“系統(tǒng)應(yīng)該為每個(gè)用戶(hù)做什么”。它把被定義的系統(tǒng)看作是一個(gè)黑箱,先不去關(guān)心系統(tǒng)內(nèi)部是如何完成它所提供的功能,而僅描述被定義系統(tǒng)有哪些外部使用者(抽象成為Actor)會(huì)與其發(fā)生交互;針對(duì)每一參與者,又描述系統(tǒng)為這些參與者提供了什么樣的服務(wù)(抽象成為Use Case),或者說(shuō)系統(tǒng)是如何被這些參與者使用的。在所有用例構(gòu)成的用例模型中,判斷系統(tǒng)各項(xiàng)功能是否重要或有價(jià)值的標(biāo)準(zhǔn),是考慮系統(tǒng)為每個(gè)用戶(hù)提供的價(jià)值,包括該功能輔助哪個(gè)用戶(hù)進(jìn)行工作?需要提供什么業(yè)務(wù)?能夠?yàn)闃I(yè)務(wù)增加多少價(jià)值?因此,用例能夠用于指導(dǎo)找出
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線(xiàn)啦!快來(lái)測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html