第 RUP軟件開發(fā)過程_第1頁
第 RUP軟件開發(fā)過程_第2頁
第 RUP軟件開發(fā)過程_第3頁
第 RUP軟件開發(fā)過程_第4頁
第 RUP軟件開發(fā)過程_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

會計學(xué)1第RUP軟件開發(fā)過程2.1RUP軟件開發(fā)過程概述

RUP是Rational公司推出的軟件過程模型,它是軟件業(yè)界迄今為止商品化最成功的軟件過程模型。RUP的近千頁文檔可以從Rational公司的網(wǎng)站下載,RUP的主要特征包括:采用迭代的、增量式的開發(fā)過程采用UML語言描述軟件開發(fā)過程有一系列功能強大的軟件工具支撐2.1.1RUP簡介第1頁/共31頁2.1RUP軟件開發(fā)過程概述

RUP有三個突出的特點:(1)用例驅(qū)動(2)以構(gòu)架為中心(3)采用迭代和增量模型2.1.2RUP主要特點(1)所有的軟件開發(fā)都是用戶需求驅(qū)動的。統(tǒng)一軟件開發(fā)過程采用用例來描述用戶需求,同時提供了一套方法把用例轉(zhuǎn)化為設(shè)計的類圖,進一步變成最終的程序代碼。在整個軟件開發(fā)過程中,需求用例是可跟蹤的。

第2頁/共31頁2.1RUP軟件開發(fā)過程概述

(2)構(gòu)架是一個小的、皮包骨頭的系統(tǒng),它實現(xiàn)了用戶的核心需求,包括了系統(tǒng)中最重要的靜態(tài)和動態(tài)特征。構(gòu)架刻畫了系統(tǒng)的整體設(shè)計,它舍棄了細節(jié)部分,突出了系統(tǒng)的重要特征。

(3)在進行軟件系統(tǒng)開發(fā)時,統(tǒng)一軟件開發(fā)過程采用迭代和增量的開發(fā)方式,把一個軟件產(chǎn)品劃分成多個較小的部分,每次完成一個部分,這個部分是產(chǎn)品的一個增量部分。每個增量部分的生產(chǎn)過程是都受控的。

第3頁/共31頁2.1RUP軟件開發(fā)過程概述

RUP在不斷的實踐過程中,總結(jié)出六個最有效地實踐經(jīng)驗,稱為最佳實踐。這些最佳實踐是對實際軟件開發(fā)過程應(yīng)用的總結(jié),這六個最佳經(jīng)驗是:(1)迭代的軟件開發(fā)(2)需求管理(3)使用基于構(gòu)件的體系結(jié)構(gòu)(4)可視化軟件建模(5)驗證軟件質(zhì)量(6)控制軟件變更2.1.3RUP最佳實踐第4頁/共31頁2.2RUP過程框架

使用RUP開發(fā)軟件產(chǎn)品,每個軟件產(chǎn)品的開發(fā)過程都應(yīng)該包括多次循環(huán)。每個循環(huán)包括四個階段:初始、細化、構(gòu)建和產(chǎn)品化。每個階段又包括多個迭代過程。

2.2.1RUP過程框架模型

第5頁/共31頁2.2RUP過程框架

統(tǒng)一軟件過程是一個二維結(jié)構(gòu),如圖2.1所示

第6頁/共31頁2.2RUP過程框架

RUP中的軟件生命周期在時間上被分解為四個順序的階段,每個階段結(jié)束時都有一個主要的里程碑,在每個階段結(jié)束時,對本階段的工作是否達到預(yù)定的目標進行評估。如果評估結(jié)果令人滿意的話,項目就可以進入下一個階段。

2.2.2RUP過程階段

第7頁/共31頁2.2RUP過程框架

1.初始階段初始階段有時也稱先啟階段。初始階段的目標是為系統(tǒng)建立商業(yè)用例,確定要開發(fā)系統(tǒng)的邊界,找出與系統(tǒng)交互的所有外部實體,列出實體與系統(tǒng)的交互過程。

初始階段在RUP中具有非常重要的意義,在這個階段中所關(guān)注的是整個項目進行中的業(yè)務(wù)和需求方面的主要風險。

第8頁/共31頁2.2RUP過程框架

2.細化階段

細化階段也稱為精化階段。細化階段的目標是分析問題領(lǐng)域,準備構(gòu)架的設(shè)計,編制項目計劃,淘汰項目中最高風險的元素。為此必須在理解整個系統(tǒng)的基礎(chǔ)上確定系統(tǒng)的構(gòu)架,包括系統(tǒng)的范圍、主要的功能需求以及性能需求。同時為項目建立支持環(huán)境,包括創(chuàng)建開發(fā)案例,創(chuàng)建模板并準備工具。細化階段結(jié)束時第二個重要的里程碑—周期結(jié)構(gòu)里程碑。

第9頁/共31頁2.2RUP過程框架3.構(gòu)建階段

在構(gòu)建階段,主要完成選擇所需要的構(gòu)件,開發(fā)應(yīng)用程序的主要功能,并把這些功能集成為產(chǎn)品,并對這些產(chǎn)品進行測試。從某種意義上說,構(gòu)建階段是一個制造過程,其重點放在管理資源及控制運作以及優(yōu)化成本、進度和質(zhì)量。構(gòu)建階段結(jié)束時是第三個重要的里程碑—功能里程碑。

第10頁/共31頁2.2RUP過程框架4.產(chǎn)品化階段產(chǎn)品化階段又稱為交付階段,這個階段的重點是確保軟件對最終用戶是可用的。產(chǎn)品化階段可以跨越幾次迭代,包括為發(fā)布做準備的產(chǎn)品測試,基于用戶反饋的少量的調(diào)整。在產(chǎn)品化階段的終點是第四個里程碑—發(fā)布里程碑。此時需要判斷最初預(yù)定的目標是否實現(xiàn),是否應(yīng)該開始下一個開發(fā)周期。

第11頁/共31頁2.2RUP過程框架RUP中的每個階段可以進一步分解為迭代。一個迭代是一個完整的開發(fā)循環(huán),產(chǎn)生一個可執(zhí)行的產(chǎn)品版本,是最終產(chǎn)品的一個子集。采用增量開發(fā)方式,不斷從一個迭代過程到另一個迭代逐步積累,一步一步地完成最終的系統(tǒng)。

2.2.2RUP迭代開發(fā)模式

第12頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

在RUP模型圖中包括九個工作流,被稱為RUP的核心工作流。核心工作流進一步分為六個核心過程工作流和三個核心支持工作流。模型圖中的陰影部分描述了不同的工作流在不同的時間段內(nèi)工作量的不同。

第13頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

1.業(yè)務(wù)建模業(yè)務(wù)建模工作流描述了系統(tǒng)開發(fā)的一個構(gòu)想,使用業(yè)務(wù)用例模型來描述這個構(gòu)想,包括業(yè)務(wù)對象模型中定義組織的過程、角色和責任。大多數(shù)實際工程項目的主要問題在于軟件工程和企業(yè)工程這兩個領(lǐng)域無法進行有效的交流,導(dǎo)致對企業(yè)工程的分析無法直接進行轉(zhuǎn)換用于軟件開發(fā)。

第14頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

2.需求

需求工作流的目標是描述系統(tǒng)應(yīng)該做什么,并使開發(fā)人員和用戶就這一描述達成共識。為了達到該目標,要對需要的功能和約束進行提取、組織、文檔化,最重要的是理解系統(tǒng)所解決問題的定義和范圍。第15頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

3.分析設(shè)計分析設(shè)計工作流將需求轉(zhuǎn)化成未來系統(tǒng)的設(shè)計,為系統(tǒng)開發(fā)一個健壯的結(jié)構(gòu),并調(diào)整設(shè)計使其與實現(xiàn)環(huán)境相匹配,優(yōu)化其性能。分析設(shè)計的結(jié)果是一個設(shè)計模型和一個可選的分析模型。設(shè)計模型是源代碼的抽象,由設(shè)計類和一些描述組成。設(shè)計類被組織成具有良好接口的設(shè)計包(Package)和設(shè)計子系統(tǒng)(Subsystem),而描述則體現(xiàn)了類的對象如何協(xié)同工作以實現(xiàn)用例的功能。第16頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

4.實施實施工作流的目的包括以層次化的子系統(tǒng)形式定義代碼的組織結(jié)構(gòu),以構(gòu)件的形式(源文件、二進制文件、可執(zhí)行文件)實現(xiàn)類和對象,將開發(fā)出的構(gòu)件作為單元進行測試,以及集成由單個開發(fā)者所產(chǎn)生的結(jié)果,使其成為可執(zhí)行的系統(tǒng)。第17頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

5.測試

測試工作流要驗證對象間的交互作用是否符合設(shè)計要求,驗證軟件中所有構(gòu)件是否正確集成,檢驗所有的需求是否被正確的實現(xiàn)。在測試工作流中發(fā)現(xiàn)并確認缺陷,在軟件部署之前對這些缺陷進行處理。RUP提出了迭代的方法,意味著在整個項目中都需要進行測試,從而盡可能早的發(fā)現(xiàn)缺陷,從根本上降低了修改缺陷所帶來的成本。

第18頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

6.部署部署工作流的目的是成功的生成版本并將軟件分發(fā)給最終用戶。部署工作流描述了那些與最終用戶相關(guān)的活動,包括:軟件打包、生成軟件本身以外的產(chǎn)品、安裝軟件、為用戶提供幫助。

第19頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

7.配置與變更管理

配置與變更管理工作流描繪了如何在多個成員組成的項目中控制和管理變更。配置和變更管理工作流提供了一套準則來跟蹤軟件創(chuàng)建過程中的各個版本。配置與變更管理工作流描述了如何管理并行開發(fā)、分布式開發(fā)、如何自動化創(chuàng)建工程。同時也闡述了對產(chǎn)品修改原因、時間、人員進行記錄。把誰、什么時候、為什么對什么產(chǎn)品做的什么修改記錄下來。

第20頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

8.項目管理軟件項目管理平衡各種可能產(chǎn)生沖突的目標,管理風險,克服各種約束并成功交付使用戶滿意的產(chǎn)品。其目標包括:為項目的管理提供框架,為計劃、人員配備、執(zhí)行和監(jiān)控項目提供實用的準則,為管理風險提供框架等。

第21頁/共31頁2.3RUP的靜態(tài)結(jié)構(gòu)

9.環(huán)境環(huán)境工作流的目的是向軟件開發(fā)組織提供軟件開發(fā)環(huán)境,包括過程和工具。環(huán)境工作流集中于配置項目過程中所需要的活動,同樣也支持開發(fā)項目規(guī)范的活動,提供了過程指導(dǎo)手冊并指導(dǎo)項目組如何來實現(xiàn)過程。環(huán)境工作流的重點是在項目環(huán)境中,進行軟件開發(fā)過程的配置活動。第22頁/共31頁2.4RUP的角色

角色是抽象的職責定義,它定義的是所執(zhí)行的一組活動和所擁有的一組工件。角色通常由一個人或作為團隊相互協(xié)作的多個人來實現(xiàn)。項目團隊成員通常要履行許多不同的角色職能,就象一個人可以擔任許多職務(wù),一個人也可以擔任許多不同的角色。角色并不代表個人,而是說明個人在業(yè)務(wù)中應(yīng)該如何表現(xiàn)以及他們在業(yè)務(wù)活動中應(yīng)該承擔的責任。

第23頁/共31頁2.4RUP的角色

RUP角色可以分為以下五個角色集:(1)分析員角色集(2)開發(fā)人員角色集(3)測試人員角色集(4)經(jīng)理角色集(5)其它角色集

第24頁/共31頁2.5RUP的活動

在RUP中,為每個角色定義了要完成的工作,每個單獨的工作成為一個活動。一項活動是一個工作單元,由參與項目的某一成員執(zhí)行,活動有明確的目的,其內(nèi)容通常表述為創(chuàng)建或更新某些工件,例如一個模型、一個類或一個計劃。每個活動都被分配給具體的角色。一個活動一般延續(xù)幾個小時到幾天,它通常涉及一個或幾個角色,只影響一個或少數(shù)幾個工件。一項活動應(yīng)該是一個便于實施的計劃單元及流程單元。

第25頁/共31頁2.5RUP的活動

(1)先啟階段核心活動先啟階段的核心活動有:明確地說明項目規(guī)模;計劃和準備商業(yè)理由、評估風險管理、人員配備、項目計劃和成本/進度/收益率折衷的備選方案;綜合考慮備選構(gòu)架,評估設(shè)計和自制/外購/復(fù)用方面的折衷,從而估算出成本、進度和資源;準備項目的環(huán)境,評估項目和組織,選擇工具,決定流程中要改進的部分。

第26頁/共31頁2.5RUP的活動

(2)細化階段核心活動細化階段的核心活動有:快速確定構(gòu)架、確認構(gòu)架并為構(gòu)架建立基線;根據(jù)此階段獲得的新信息改進前景,對推動構(gòu)架和計劃決策的最關(guān)鍵用例建立可靠的了解;為構(gòu)建階段創(chuàng)建詳細的迭代計劃并為其建立基線;改進開發(fā)案例,定位開發(fā)環(huán)境,包括流程和支持構(gòu)建團隊所需的工具和自動化支持;改進構(gòu)架并選擇構(gòu)件。

第27頁/共31頁2.5RUP的活動

(3)構(gòu)建階段核心活動構(gòu)建階段的核心活動有:資源管理,控制和流程優(yōu)化;完成構(gòu)件開發(fā)并根據(jù)已定義的評估標準進行測試;根據(jù)前景的驗收標準對產(chǎn)品發(fā)布版進行評估。(4)產(chǎn)品化階段核心活動產(chǎn)品化階段的核心活動有:執(zhí)行部署計劃;對最終用戶支持材料定稿;在開發(fā)現(xiàn)場測試可交付產(chǎn)品;制作產(chǎn)品發(fā)布版;獲得用戶反饋;基于反饋調(diào)整產(chǎn)品;使最終用戶可以使用產(chǎn)品。

第28頁/共31頁2.6RUP的工件

工件是項目期間生成并使用的最終或中間產(chǎn)物。工件用于獲取和傳達項目信息。工件可以是文檔、模型或模型元素。例如商業(yè)理由或軟件構(gòu)架文檔,用例模型或設(shè)計模型,還有像子系統(tǒng)這樣的模型元素。為使整個軟件系統(tǒng)的開發(fā)易于管理,工件根據(jù)核心工作流程組織成各個集合。有些工件在若干核心工作流程中都要用到(例如:風瞼列表、軟件構(gòu)架文檔和迭代計劃)。這些工件

溫馨提示

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

評論

0/150

提交評論