軟件工程方法與實(shí)踐第二章軟件過程_第1頁
軟件工程方法與實(shí)踐第二章軟件過程_第2頁
軟件工程方法與實(shí)踐第二章軟件過程_第3頁
軟件工程方法與實(shí)踐第二章軟件過程_第4頁
軟件工程方法與實(shí)踐第二章軟件過程_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

軟件工程方法與實(shí)踐

第2章軟件過程

第2章軟件過程

O2.1軟件過程概述

。2.2典型的軟件過程模型

。2.3面向?qū)ο蟮能浖^程模型

。2.4小結(jié)

2.1軟件過程概述

軟件工程是一種層次化技術(shù),是建立在以質(zhì)量焦點(diǎn)為基礎(chǔ)

的,分過程、方法和工具三個(gè)研究層次的綜合技術(shù)。

工具

過程

質(zhì)量焦

圖2.1軟件工程層次圖

2.1.1過程、方法和工具

過程層(基礎(chǔ)層)是方法和技術(shù)結(jié)合在一起的凝聚力。

軟件過程定義了一個(gè)關(guān)鍵過程區(qū)域(階段)的劃分,

確立了各階段之間的關(guān)系,其中規(guī)定了技術(shù)方法的采

用、工程產(chǎn)品(模型、數(shù)據(jù)、文檔等)的產(chǎn)生、質(zhì)量

的保證,以及對(duì)開發(fā)進(jìn)程的適當(dāng)管理。

方法層提供了建造軟件在技術(shù)上“如何做”。軟件工

程方法涵蓋在一系列開發(fā)過程的任務(wù)中。方法依賴于

一組基本原則得以實(shí)施。這些原則控制了每一個(gè)技術(shù)

區(qū)域的建模活動(dòng)和其他描述技術(shù)。

工具層對(duì)過程和方法提供了自動(dòng)化支持。

2.1.2軟件生存周期

軟件生存周期(SoftwareLifeCycle):一個(gè)軟件項(xiàng)目從

問題提出開始,直到軟件產(chǎn)品最終退役(廢棄不用)為止。

軟件生存周期方法學(xué)把整個(gè)生存周期劃分為多個(gè)相對(duì)獨(dú)立

的較小階段,給每個(gè)階段賦予確定而有限的任務(wù),從而降

低了整個(gè)軟件工程的難度,提高了軟件開發(fā)生產(chǎn)率;對(duì)軟

件生存周期的每個(gè)階段采用科學(xué)的、規(guī)范的方法和管理,

使軟件開發(fā)全過程以一種有條不紊的方式進(jìn)行,保證了軟

件質(zhì)量,提高了軟件的可維護(hù)性和軟件開發(fā)的成功率。

軟件過程開發(fā)標(biāo)準(zhǔn)的要點(diǎn)

①采用生存周期方法學(xué)開發(fā)軟件,必須從對(duì)任務(wù)的抽象

邏輯分析開始,一個(gè)階段一個(gè)階段地進(jìn)行。

②劃分階段應(yīng)遵循的基本原則是各階段的任務(wù)彼此之間

盡可能相對(duì)獨(dú)立,同一階段各項(xiàng)任務(wù)的性質(zhì)盡可能相同,

從而降低每個(gè)階段任務(wù)的復(fù)雜程度,簡化不同階段之間

的聯(lián)系,有利于軟件開發(fā)過程的組織和管理。

③每個(gè)階段有相對(duì)獨(dú)立的任務(wù),前一個(gè)階段任務(wù)的完成

是后一個(gè)階段任務(wù)開始的前提和基礎(chǔ),而后一階段任務(wù)

的完成是前一階段提出“解”的進(jìn)一步具體化和實(shí)現(xiàn)細(xì)

節(jié)。

軟件過程開發(fā)標(biāo)準(zhǔn)的要點(diǎn)

④每一個(gè)階段的開始和結(jié)束都有嚴(yán)格標(biāo)準(zhǔn)。對(duì)于任何兩

個(gè)相鄰的階段而言,前一階段的結(jié)束標(biāo)準(zhǔn)就是后一階段的

開始標(biāo)準(zhǔn)。每一個(gè)階段結(jié)束之前,都必須對(duì)這個(gè)階段的成

果進(jìn)行嚴(yán)格的技術(shù)復(fù)審和管理審查。審查的主要對(duì)象是每

個(gè)階段都應(yīng)該提交的、最新版本的、高質(zhì)量的相關(guān)文檔資

料。

⑤完成每個(gè)階段的任務(wù),應(yīng)該采用適合該階段任務(wù)特點(diǎn)

的規(guī)范方法和系統(tǒng)化技術(shù)。

2.1.3軟件過程模型

軟件過程模型(軟件生存周期模型),是把軟件生存周

期中軟件生產(chǎn)活動(dòng)的有序流程用一個(gè)合理的框架——開

發(fā)模型規(guī)范描述。

軟件過程模型是一種軟件過程的抽象表示法,它從一個(gè)

特定的角度表現(xiàn)一個(gè)開發(fā)過程。

軟件過程模型主要是根據(jù)軟件的類型、規(guī)模,特別是軟

件的開發(fā)方法、開發(fā)環(huán)境等多種因素確立模型。

2.1.4軟件過程各階段任務(wù)

各種軟件過程模型雖然有所不同,一般都由軟件定義、

軟件開發(fā)和軟件維護(hù)三個(gè)時(shí)期組成,每個(gè)時(shí)期又可由多

個(gè)階段(子階段)組成。

軟件定義時(shí)期的活動(dòng)是弄清軟件“做什么”,軟件開發(fā)

時(shí)期的活動(dòng)是集中解決軟件“怎樣做”,軟件維護(hù)時(shí)期

的活動(dòng)是聚焦于軟件的“修改/完善”,它們的主要活動(dòng)

特征可以概括為“What-How-Change

軟件定義時(shí)期各階段任務(wù)

軟件定義時(shí)期是了解用戶(或客戶)提出的需求、確定

項(xiàng)目的總目標(biāo)、考察和分析項(xiàng)目的可行性、導(dǎo)出實(shí)現(xiàn)項(xiàng)

目目標(biāo)應(yīng)該采用的策略,系統(tǒng)的功能,并估計(jì)該項(xiàng)目需

要的資源和成本,制定工程進(jìn)度表等。

軟件定義時(shí)期可以劃分成問題定義、可行性研究、需求

分析和開發(fā)計(jì)劃四個(gè)階段,其中,最核心的是需求分析

階段,所以,軟件定義時(shí)期也可以稱為需求分析時(shí)期。

問題定義和可行性研究

問題定義主要是弄清“用(客)戶需要解決什么問題”,

提交關(guān)于問題性質(zhì)、工程規(guī)模的系統(tǒng)目標(biāo)與范圍的說明

文檔。

可行性研究是確定所定義的問題是不是能夠?qū)崿F(xiàn),值不

值得實(shí)現(xiàn)。為此必須從抽象的概念出發(fā),對(duì)項(xiàng)目做一次

簡化的需求分析和粗略的系統(tǒng)概要設(shè)計(jì),尋求一種至數(shù)

種在技術(shù)、經(jīng)濟(jì)、運(yùn)行和法律諸方面都可行的解決方案,

并給出可行性論證報(bào)告。

需求分析和開發(fā)計(jì)劃

需求分析(階段)的任務(wù)是分析用戶對(duì)軟件系統(tǒng)的全部

需求,確定目標(biāo)系統(tǒng)的邏輯模型,即目標(biāo)系統(tǒng)是“做什

么”的,并通過需求規(guī)格說明文檔準(zhǔn)確地表達(dá)。

開發(fā)計(jì)劃的任務(wù)是在軟件項(xiàng)目經(jīng)過可行性研究和需求分

析之后,制定出主要包括成本估計(jì)、資源配置、工程進(jìn)

度安排的軟件項(xiàng)目開發(fā)和管理文檔。

軟件開發(fā)時(shí)期各階段任務(wù)

軟件開發(fā)時(shí)期的任務(wù)是設(shè)計(jì)和實(shí)現(xiàn)已定義的,并經(jīng)過需

求分析的軟件系統(tǒng)。

軟件開發(fā)時(shí)期通常劃分成軟件設(shè)計(jì)、軟件實(shí)現(xiàn)和軟件測

試三個(gè)階段。

軟件測試也可以分解到軟件實(shí)現(xiàn)的各個(gè)活動(dòng)中,可重新

劃分成編碼和單元測試、集成測試、系統(tǒng)測試三個(gè)階段。

甚至,還可以認(rèn)為軟件測試不是一個(gè)獨(dú)立的階段,因?yàn)?/p>

它應(yīng)該和所有軟件生產(chǎn)活動(dòng)并行進(jìn)行。

軟件設(shè)計(jì)階段任務(wù)

軟件設(shè)計(jì)階段是為目標(biāo)系統(tǒng)的邏輯模型設(shè)計(jì)出一種

(不惟一的)軟件實(shí)現(xiàn)模型,確定軟件的總體結(jié)構(gòu)、

數(shù)據(jù)結(jié)構(gòu)、算法細(xì)節(jié)和用戶界面,并給出軟件設(shè)計(jì)的

詳盡的軟件設(shè)計(jì)說明文檔。

軟件設(shè)計(jì)階段分成總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩個(gè)子階段。

總體設(shè)計(jì)是從需求規(guī)格說明文檔導(dǎo)出軟件結(jié)構(gòu)圖。

詳細(xì)設(shè)計(jì)為軟件結(jié)構(gòu)圖中的各個(gè)模塊的數(shù)據(jù)結(jié)構(gòu)、算

法和模塊接口等進(jìn)行細(xì)節(jié)設(shè)計(jì),并給出過程性描述。

軟件實(shí)現(xiàn)階段任務(wù)

軟件實(shí)現(xiàn)階段的任務(wù)是把軟件的設(shè)計(jì)用一種程序設(shè)計(jì)語

言實(shí)現(xiàn)。實(shí)現(xiàn)階段一般分成編碼和系統(tǒng)集成兩個(gè)步驟

(或子階段)進(jìn)行。

編碼是根據(jù)目標(biāo)系統(tǒng)的性質(zhì)和實(shí)際開發(fā)環(huán)境,選取一種

適當(dāng)?shù)某绦蛟O(shè)計(jì)語言,把詳細(xì)設(shè)計(jì)的模塊過程性描述

“翻譯”成所選定程序語言的源程序。

對(duì)于多模塊的系統(tǒng)集成是把所有的程序模塊,按照它的

軟件結(jié)構(gòu)組裝(集成)成一個(gè)完整的軟件系統(tǒng)。

軟件測試階段任務(wù)

軟件測試階段完成產(chǎn)品交付前的“找錯(cuò)”和“改錯(cuò)”兩

大任務(wù),其測試過程必須通過測試報(bào)告文檔反映。

按照測試活動(dòng)的目標(biāo),軟件測試可細(xì)分為單元(模塊)

測試、綜合(集成)測試、確認(rèn)測試和系統(tǒng)(驗(yàn)收)測

試等多個(gè)測試層次。

軟件測試是對(duì)開發(fā)活動(dòng)的技術(shù)復(fù)審,也可以分解到軟件

實(shí)現(xiàn)階段的各個(gè)活動(dòng)環(huán)節(jié)。

軟件維護(hù)時(shí)期(階段)任務(wù)

軟件維護(hù)時(shí)期(階段)任務(wù)是在整個(gè)軟件運(yùn)行時(shí)期內(nèi),

當(dāng)發(fā)現(xiàn)錯(cuò)誤時(shí)加以改正,以確保運(yùn)行正常;當(dāng)環(huán)境改

變時(shí)修改軟件,以適應(yīng)新的環(huán)境;當(dāng)用戶有新要求時(shí)

及時(shí)改進(jìn)軟件,以滿足需求等一系列維護(hù)活動(dòng)。

每一項(xiàng)維護(hù)活動(dòng)一般都經(jīng)過提出(或報(bào)告)維護(hù)問題、

分析維護(hù)要求、提出維護(hù)方案、審批維護(hù)方案、確定

維護(hù)計(jì)劃、修改軟件設(shè)計(jì)、修改程序、測試/驗(yàn)收、維

護(hù)報(bào)告等一系列環(huán)節(jié)(維護(hù)活動(dòng)實(shí)質(zhì)是一次壓縮和暫

化了的軟件定義和開發(fā)過程)。L

2.2典型的軟件過程模型

軟件工程的前20年,軟件過程模型的特征是“線性思維”,

即把軟件的開發(fā)活動(dòng)分解成一系列線性的描述、開發(fā)、有

效性驗(yàn)證和軟件進(jìn)化等基本過程活動(dòng),并且用單獨(dú)的過程

階段來表現(xiàn)這些活動(dòng)。

隨著軟件規(guī)模的不斷增長,大型而復(fù)雜的軟件采用漸增式

或迭代式的開發(fā)理念,即把軟件的描述、開發(fā)、有效性驗(yàn)

證等主要開發(fā)活動(dòng)交替進(jìn)行,讓開發(fā)的軟件在迭代過程中

逐步完成和完善。

2.2.1瀑布模型

瀑布模型(WaterfallModel)也稱線性順序模型。

瀑布模型把開發(fā)過程分成固定的、相對(duì)獨(dú)立的各個(gè)階段,

每個(gè)階段都有確定的、有限的任務(wù),而且在各個(gè)階段采用

一些規(guī)范的開發(fā)方法和管理手段,力求保證軟件質(zhì)量和提

高軟件生產(chǎn)率。

瀑布模型各個(gè)階段的工作順序展開,恰如“奔流不息、拾

級(jí)而下”的瀑布,故而得名。

瀑布模型

問題定義

需求分析

圖2.2軟件過程的瀑布模型

瀑布模型的特點(diǎn)

L階段的“里程碑”標(biāo)志

2.階段間的順序性和依賴性

3.復(fù)審/驗(yàn)證環(huán)節(jié)

4.瀑布模型的適用于預(yù)先確定型系統(tǒng)

2.2.2快速原型模型

快速原型模型(RapidPrototypeModel,簡稱原型模型)

打破了瀑布模型的“線性”特征,是一種系統(tǒng)原型化的子

集擴(kuò)展式開發(fā)模式。

原型模型方法采用合理的抽象,快速建立一個(gè)旨在展示目

標(biāo)系統(tǒng)主要功能的軟件“樣品”——原型系統(tǒng),取代形

式的、僵硬的(不易更改的)的規(guī)格說明,用戶通過實(shí)際

試用原型系統(tǒng)而提供真實(shí)的反饋意見。

拋棄式原型模型

圖2.3軟件過程的拋棄式原型模型

拋棄式原型模型的特點(diǎn)

拋棄式原型模型建立原型的目的是,評(píng)價(jià)目標(biāo)系統(tǒng)的某一

個(gè)或某一些特性,以便更準(zhǔn)確地確定需求,或者更嚴(yán)格地

驗(yàn)證設(shè)計(jì)方案。使用完之后就把該原型系統(tǒng)拋棄掉,然后

再重新構(gòu)造正式的目標(biāo)系統(tǒng)。

拋棄式原型模型本質(zhì)上仍屬于瀑布模型,建立原型系統(tǒng)只

不過是“需求分析”和“有效性驗(yàn)證”的一種輔助手段,

需求分析階段結(jié)束時(shí)原型系統(tǒng)的生存周期也就終止。

演化式原型模型

圖2.4軟件過程的演化式原型模型

演化式原型模型的特點(diǎn)

①演化式的原型開發(fā),必須從對(duì)用戶需求把握準(zhǔn)確的部分

做起,優(yōu)先處理這部分工作,而對(duì)用戶需求把握程度較差

的部分和模糊的需求靠后安排,可以在用戶明確要求之后

再處理。

②原型系統(tǒng)的演化過程,可以有效提高系統(tǒng)可靠性、健壯

性和可維護(hù)性。

③有效地快速進(jìn)行原型的建立和迭代,提高開發(fā)效益。

④原型的開發(fā)提高系統(tǒng)與用戶的友善性,并能提早進(jìn)行實(shí)

際系統(tǒng)的應(yīng)用培訓(xùn)。

2.2.3增量模型

增量模型(IncrementalModel)把軟件描述、設(shè)計(jì)、實(shí)

現(xiàn)活動(dòng)分解成一系列相互有聯(lián)系的增量構(gòu)件的迭代開發(fā),

是瀑布模型順序特征和快速原型模型迭代特征相結(jié)合的

一種軟件構(gòu)件化的模型。

增量式的開發(fā)過程,首先根據(jù)客戶需要提供的服務(wù)的優(yōu)

先次序,確定一系列交付增量,每個(gè)增量提供系統(tǒng)功能

的一個(gè)子集。隨著開發(fā)過程的進(jìn)展,每次迭代產(chǎn)生一個(gè)

可發(fā)布的(可執(zhí)行的)軟件增量構(gòu)件。

增量模型

系統(tǒng)未

完成

開發(fā)增

量i:

圖2.5軟件過程的增量模型

2.2.4螺旋模型

螺旋模型(SpiralModel)是增加了風(fēng)險(xiǎn)分析和規(guī)避措

施的“原型+瀑布”的迭代式開發(fā)模型,由于一系列

活動(dòng)和活動(dòng)間的回溯過程用螺旋線描述,故而得名。

螺旋模型是一種迭代模型,每迭代一次,螺旋線就前

進(jìn)一周。當(dāng)項(xiàng)目開發(fā)過程沿螺旋線按順時(shí)針方向前進(jìn)

時(shí),每一個(gè)螺旋周期都包括風(fēng)險(xiǎn)分析(開發(fā)的中、后

期實(shí)際是設(shè)計(jì)或?qū)崿F(xiàn)的風(fēng)格分析)。

螺旋模型

2.3.1面向?qū)ο蟮幕靖拍?/p>

為了提高軟件系統(tǒng)的穩(wěn)定性、可維護(hù)性和復(fù)用性,人們

在實(shí)踐中逐漸創(chuàng)造出軟件工程的一種新途徑——面向?qū)?/p>

象方法學(xué)。

從20世紀(jì)80年代末開始,面向?qū)ο蟮能浖_發(fā)得到快速

發(fā)展,特別是90年代中期出現(xiàn)的統(tǒng)一建模語言

(UML),把各種面向?qū)ο蠓治龇椒ê驮O(shè)計(jì)方法綜合

成一個(gè)統(tǒng)一標(biāo)準(zhǔn),使面向?qū)ο蠓椒▽W(xué)成為一種主流型的

軟件工程方法。

對(duì)象的基本概念

⑴對(duì)象(Object)

對(duì)象是現(xiàn)實(shí)世界中任何有意義的、與所要解決的問題有

關(guān)系的個(gè)體或事物的抽象表示,是它的屬性(靜態(tài)的)

和相關(guān)操作(動(dòng)態(tài)的)的統(tǒng)一封裝體。屬性表示對(duì)象的

性質(zhì),屬性值規(guī)定了對(duì)象所有可能的狀態(tài)。對(duì)象的操作

(或稱做行為)是該對(duì)象可以實(shí)現(xiàn)的外部服務(wù)(響應(yīng)外

部發(fā)來的消息,提供服務(wù))。

對(duì)象的定義,一般采用以下格式描述:

對(duì)象::=vID,MS,DS,MI>

對(duì)象的基本概念

⑵類(Class)

人類習(xí)慣于把現(xiàn)實(shí)世界中有相似特征的事物歸為一類,

所以分類是認(rèn)識(shí)客觀世界的基本方法。

類是對(duì)具有相同屬性和相同操作行為的一組相似對(duì)象的

抽象描述,通常這種描述也包括對(duì)怎樣創(chuàng)建該類的新對(duì)

象的說明。所以,類用于表示某些對(duì)象的屬性和行為的

共同特征。

對(duì)象的基本概念

⑶實(shí)例(Instance)

類是現(xiàn)實(shí)世界中并不真正存在的一組相似對(duì)象的抽象。

實(shí)例是由某個(gè)特定的類所描述的一個(gè)具體的對(duì)象,也就

是說,對(duì)象是類的一個(gè)實(shí)例。

實(shí)際上,類是建立對(duì)象時(shí)使用的“樣板”,按照這個(gè)樣

板建立的是一個(gè)個(gè)具體的對(duì)象。使用“對(duì)象”,既可以

指一個(gè)具體的對(duì)象,也可以泛指一般的對(duì)象;而使用

“實(shí)例”,必然是指一個(gè)具體的對(duì)象。

對(duì)象的基本概念

(4)繼承(Inheritance)

繼承在面向?qū)ο蠓椒ㄖ斜硎绢愔g的內(nèi)在聯(lián)系,以及對(duì)

屬性和行為的共享。

類之間可以存在繼承機(jī)制,即類共享基類中定義的數(shù)據(jù)

和方法。類的繼承具有傳遞、單繼承和多重繼承性質(zhì)。

在面向?qū)ο蠓椒ㄖ?,大量存在的“部分一整體”關(guān)系,

表示為類之間的聚集關(guān)系。在聚集關(guān)系下,類組成了一

個(gè)有“部分一整體”層次結(jié)構(gòu)的系統(tǒng)?!安糠帧鳖惖膶?duì)

象是“整體”類對(duì)象的一個(gè)組成部分。

對(duì)象的基本概念

(5)消息(Message)

消息是某個(gè)對(duì)象執(zhí)行它的類所定義的某個(gè)操作的規(guī)格

說明。消息傳遞是對(duì)象與其外部世界相互關(guān)聯(lián)的惟一

途徑。

對(duì)象可以向其他對(duì)象發(fā)送消息以請(qǐng)求服務(wù),也可以響

應(yīng)其他對(duì)象傳遞的消息,完成自身某些操作,從而服

務(wù)于其他對(duì)象。

面向?qū)ο蠓椒ǖ奶攸c(diǎn)

面向?qū)ο蠓椒ㄊ蔷C合運(yùn)用對(duì)象、類、繼承、消息四個(gè)核心

概念進(jìn)行軟件開發(fā)的方法。

面向?qū)ο?對(duì)象+分類+繼承+消息通信

①與人類習(xí)慣思維方法的一致性

②穩(wěn)定性好

③可復(fù)用性好

④可維護(hù)性好

面向?qū)ο筌浖拈_發(fā)特點(diǎn)

?面向?qū)ο蠓椒ú⒉皇腔谀硞€(gè)開發(fā)模式的技術(shù),它適

用于任何開發(fā)模式。

?面向?qū)ο蠓椒ǖ拈_發(fā)活動(dòng)在軟件生存周期的分析、設(shè)

計(jì)和實(shí)現(xiàn)階段之間反復(fù)迭代,重點(diǎn)是放在的分析階段。

這是因?yàn)?,面向?qū)ο蠓椒ㄔ陂_發(fā)早期就定義了一系列面

向問題的對(duì)象,即建立了一個(gè)對(duì)象模型。整個(gè)開發(fā)過程

統(tǒng)一使用了這些對(duì)象,并不斷地充實(shí)和擴(kuò)充對(duì)象模型。

不僅如此,所有其他概念,如功能、關(guān)系、事件等,也

都是圍繞對(duì)象模型組成的。

面向?qū)ο筌浖拈_發(fā)特點(diǎn)

?為了保證從分析階段得到的對(duì)象信息,在以后的開

發(fā)階段被使用,并被不斷地充實(shí)和擴(kuò)充,面向?qū)ο箝_發(fā)

過程的各個(gè)階段使用統(tǒng)一的概念和描述符號(hào)。那么,各

個(gè)階段的劃分自然就不重要、不明顯了。因此,開發(fā)階

段界限模糊,或者說開發(fā)過程是“無縫”連接的。這有

利于實(shí)現(xiàn)開發(fā)過程的逐步求精、開發(fā)活動(dòng)的多次反復(fù)迭

代。

2.3.2軟件開發(fā)統(tǒng)一過程

軟件開發(fā)統(tǒng)一過程(RUP,RationalUnifiedProcess)是

基于面向?qū)ο蠼y(tǒng)一建模語言UML的一種面向?qū)ο蟮能浖^

程模型。

RUP遵循了逐步求精的、迭代的開發(fā)策略。RUP是以使用

實(shí)例(用例)為驅(qū)動(dòng),以系統(tǒng)架構(gòu)為中心的一個(gè)迭代式的

增量過程。

RUP分成初始、細(xì)化、構(gòu)造和移交四個(gè)階段,每個(gè)階段又

分成若干次迭代,每次迭代都經(jīng)過一個(gè)核心工作流程。

RUP初始階段的主要工作

初始階段確定所設(shè)立的項(xiàng)目是否可行。

①對(duì)需求有一個(gè)大概的了解,確定系統(tǒng)中的大多數(shù)角色

和用例(簡要的)。

②劃分主要子系統(tǒng),給出系統(tǒng)的體系結(jié)構(gòu)概貌。

③分析項(xiàng)目執(zhí)行的風(fēng)險(xiǎn)。

④考慮時(shí)間、經(jīng)費(fèi)、技術(shù)、項(xiàng)目規(guī)模和效益等因素。

⑤制定出開發(fā)計(jì)劃。

RUP細(xì)化階段的主要工作

細(xì)化階段識(shí)別出剩余的大多數(shù)用例。對(duì)當(dāng)前迭代的每個(gè)

用例進(jìn)行細(xì)化,分析用例的處理流程、狀態(tài)細(xì)節(jié),以及

可能發(fā)生的狀態(tài)改變。

①分析項(xiàng)目是否存在需求、技術(shù)、技能、政策等風(fēng)險(xiǎn)。

②進(jìn)行高層分析和設(shè)計(jì),并做出結(jié)構(gòu)性決策。建立簡要

體系結(jié)構(gòu),包括用例列表、領(lǐng)域概念模型和技術(shù)平臺(tái)等。

③為構(gòu)造階段制定計(jì)劃。

RUP構(gòu)造和移交階段的主要工作

構(gòu)造階段識(shí)別出最后剩余的用例。每一次迭代開發(fā)都對(duì)

用例進(jìn)行分析、設(shè)計(jì)、編碼、測試和集成過程,所得到

產(chǎn)品滿足項(xiàng)目需求的一個(gè)子集。

在代碼完成后,要保證其符合標(biāo)準(zhǔn)和設(shè)計(jì)規(guī)則,并要進(jìn)

行質(zhì)量檢查。對(duì)于新出現(xiàn)的變化,要通過逆向工具把代

碼轉(zhuǎn)換為模型,對(duì)模型進(jìn)行修改,再重新產(chǎn)生代碼,以

保證軟件與

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論