国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
IBM Rational Method Composer: 第一部分:關(guān)鍵概念



2006 年 3 月 15 日

本文來自 Rational Edge:這篇文章包含兩個(gè)部分,提供了對(duì)IBM Rational Method Composer——IBM下一代過程管理工具平臺(tái)及用于創(chuàng)造、裁剪和部署開發(fā)過程的概念框架的詳細(xì)介紹。第一部分,也就是本文,提供了對(duì)RMC的關(guān)鍵功能的高級(jí)理解,并提供了對(duì)關(guān)鍵概念和典型RMC使用場(chǎng)景的綜述。

對(duì)于那些發(fā)展成為隨需應(yīng)變商業(yè)1的公司和組織來說,要在一個(gè)被多種技術(shù)以及消失的地理政治邊界所不斷激活的世界中競(jìng)爭(zhēng)——Thomas Friedman稱這些激活因子為“扁平器”2,系統(tǒng)和應(yīng)用軟件的創(chuàng)造,集成,現(xiàn)代化,擴(kuò)展和部署已成為關(guān)鍵?,F(xiàn)在,信息技術(shù)不僅支持業(yè)務(wù),在很多組織中,信息技術(shù)正在定義業(yè)務(wù)。3我們正在經(jīng)歷一個(gè)新的計(jì)算模型的出現(xiàn),IBM將其稱為“業(yè)務(wù)驅(qū)動(dòng)開發(fā)”(BDD)4;BDD組織對(duì)將開發(fā)過程與不同業(yè)務(wù)線的業(yè)務(wù)過程以及IT操作進(jìn)行完全的集成并靈活的排列,以提高商業(yè)性能。

運(yùn)行業(yè)務(wù)驅(qū)動(dòng)的開發(fā)項(xiàng)目需要非常靈活的開發(fā)過程。這些過程不僅需要為現(xiàn)代開發(fā)實(shí)踐(比如敏捷的,迭代的,以架構(gòu)為中心的,風(fēng)險(xiǎn)和質(zhì)量驅(qū)動(dòng)的軟件開發(fā))提供具體的支持和指導(dǎo),還需要有足夠的靈活性以支持過程本身迅速的裁剪和應(yīng)用。這些過程還需要隨著項(xiàng)目不斷發(fā)展,而正在執(zhí)行中的項(xiàng)目必須能夠按照在其完成前商業(yè)需求的變化自我發(fā)展。5

IBM Rational的統(tǒng)一過程(RUP)通過其架構(gòu)和工具對(duì)過程裁剪,擴(kuò)展及部署的支持提供了這種靈活性,它作為市場(chǎng)上的主流商業(yè)過程框架產(chǎn)品已有很長(zhǎng)的歷史。6本文將要介紹RUP開發(fā)團(tuán)隊(duì)下一代的過程管理工具平臺(tái)和概念框架——IBM Rational Method Composer (RMC),它提供了完全重新設(shè)計(jì)的用戶體驗(yàn)和大量創(chuàng)造,裁剪,以及部署開發(fā)過程的新特性。

這一新平臺(tái)包含了創(chuàng)造,配置和瀏覽方法內(nèi)容和過程的工具7。它取代了IBM Rational當(dāng)前的工具:Rational Process Workbench,RUP Builder和MyRUP。它還包括了基于RUP的方法內(nèi)容和打包在不同變體版本中的過程。在本文成文之時(shí),它作為一個(gè)商業(yè)產(chǎn)品以及稱為“Eclipse過程框架”的計(jì)劃框架已經(jīng)可以獲得了,如圖1所示。

  1. Eclipse過程框架 (EPF)8是eclipse.org策劃的一個(gè)開放源碼的項(xiàng)目。按照計(jì)劃,IBM將免費(fèi)提供來自下一代RUP平臺(tái)的主要工具組件和內(nèi)容。如圖1所示,EPF工具包含了完整的過程創(chuàng)造和發(fā)布能力。EPF和Rational Method Composer工具的主要區(qū)別是前者缺乏與其它IBM Rational工具——比如Rational Portfolio Manager和Rational Software Architect——集成的能力以及從Rational Process Workbench遷移的能力。
  2. IBM Rational Method Composer (RMC)是IBM Rational的新商業(yè)發(fā)布版本,包括了為EPF提供的所有工具,Rational工具集成和遷移特性以及完整的RUP內(nèi)容。除去完整版的RUP,RMC 還在重要內(nèi)容方面——比如面向服務(wù)架構(gòu),系統(tǒng)工程,大型項(xiàng)目和項(xiàng)目組合管理,等等——移植了RUP插件(RUP內(nèi)容的擴(kuò)展,只能安裝于RUP之上)。嚴(yán)格地說,本文提供了對(duì)貢獻(xiàn)給EPF項(xiàng)目的Rational Method Composer工具平臺(tái)的綜述,但是你可以認(rèn)為文中描述的所有功能都可用于EPF版本和完整的RMC工具,除非區(qū)別被特別指出。

本文分為兩個(gè)部分。第一部分提供了對(duì)RMC關(guān)鍵功能的高級(jí)理解,并提供了對(duì)關(guān)鍵概念和典型RMC使用場(chǎng)景的綜述。下個(gè)月,第二部分將提供關(guān)于創(chuàng)造方法內(nèi)容和過程的更詳細(xì)信息,包括指導(dǎo)和對(duì)RMC支持的不同形式的指導(dǎo)的評(píng)述。

圖1:Rational Method Composer與Eclipse Process Framework概覽。兩列中的黑色字體指出了上個(gè)發(fā)布中已有的特性。藍(lán)色字體指出了此次發(fā)布新增的特性。

IBM Rational Method Composer:目的和功能

Rational Method Composer (RMC)是一個(gè)工具平臺(tái),負(fù)責(zé)維護(hù)和實(shí)現(xiàn)開發(fā)組織或個(gè)人項(xiàng)目過程的過程工程師,項(xiàng)目領(lǐng)導(dǎo),和項(xiàng)目經(jīng)理可使用該平臺(tái)。

對(duì)這類過程的實(shí)現(xiàn)有兩個(gè)典型的關(guān)鍵問題需要指出。首先,開發(fā)者需要理解軟件開發(fā)的方法。他們需要熟悉基本開發(fā)任務(wù),比如如何引出并管理需求,如何進(jìn)行分析和設(shè)計(jì),如何實(shí)現(xiàn)一個(gè)設(shè)計(jì)或一個(gè)測(cè)試用例,如何測(cè)試實(shí)現(xiàn)是否滿足需求,如何管理項(xiàng)目規(guī)模和變化,等等。盡管流行的敏捷開發(fā)方法依賴于自我組織的團(tuán)隊(duì)9——假設(shè)開發(fā)者已經(jīng)知道如何進(jìn)行這些工作而無須記錄他們的方法——很多組織仍然需要依賴明確的文檔記錄并把這些方法變成一般和常規(guī)的實(shí)踐。此外,有很多組織必須遵從規(guī)定做事情。(注意RMC通過明確方法內(nèi)容選項(xiàng)同時(shí)支持這兩類組織,詳見“關(guān)鍵方法和概念綜述”。)

其次,開發(fā)團(tuán)隊(duì)還需要定義如何在整個(gè)項(xiàng)目生存期中應(yīng)用他們的開發(fā)方法。換句話說,他們需要定義或選擇一個(gè)開發(fā)過程。例如,在項(xiàng)目的早期,需求管理的重點(diǎn)是引出涉眾的需要并規(guī)劃前景,這一階段的需求管理方法必須以一種方式應(yīng)用,而在項(xiàng)目的后期,需求管理的重點(diǎn)轉(zhuǎn)移到了管理需求更新和變化,并對(duì)這些需求變化進(jìn)行影響分析,這時(shí)的需求管理方法就要以另一種方式加以應(yīng)用。團(tuán)隊(duì)還應(yīng)清楚地理解方法內(nèi)的不同任務(wù)之間的關(guān)聯(lián):例如,在整個(gè)生命周期中變化管理方法是如何影響需求管理方法以及回歸測(cè)試方法的。即使是自我組織的團(tuán)隊(duì),也需要定義一個(gè)至少給出了關(guān)于開發(fā)在生命周期中的規(guī)模,關(guān)于實(shí)現(xiàn)和測(cè)試階段目標(biāo)的實(shí)踐,等等的指導(dǎo)的過程。

針對(duì)上述需要,RMC有兩個(gè)主要目的:

  1. 為開發(fā)人員提供一個(gè)知識(shí)資產(chǎn)的基礎(chǔ),使他們能夠?yàn)g覽,管理和部署內(nèi)容。這一內(nèi)容可以被許可,獲得,更重要的是,它適應(yīng)了你自己的內(nèi)容,而你的內(nèi)容可能包含了方法定義,白皮書,指南,模板,原則,最佳實(shí)踐,內(nèi)部過程和規(guī)則,培訓(xùn)材料,以及其它任何對(duì)如何開發(fā)軟件的概括性描述。這一知識(shí)基礎(chǔ)可被用作參考和訓(xùn)練,并形成了開發(fā)過程的基礎(chǔ)(第二個(gè)目的)。RMC被設(shè)計(jì)為一個(gè)內(nèi)容管理系統(tǒng),它提供了一個(gè)通用管理結(jié)構(gòu)和對(duì)你所有內(nèi)容的查看和體驗(yàn),而不是一個(gè)存儲(chǔ)和訪問難以維護(hù)的,形式和格式各個(gè)不同的遺留文檔的文檔管理系統(tǒng)。RMC管理的所有內(nèi)容可以通過HTML發(fā)布并部署到Web服務(wù)器上進(jìn)行發(fā)布使用。
  2. 通過在選擇,裁剪,和快速創(chuàng)建具體開發(fā)項(xiàng)目的過程方面的支持,過程工程師和項(xiàng)目經(jīng)理提供過程工程。RMC為典型項(xiàng)目情境提供預(yù)定義的過程分類,它們可以適應(yīng)個(gè)人需求。它還提供了稱為能力模式的過程構(gòu)建模塊,它們代表了特定規(guī)則,技術(shù),或開發(fā)方式下的最佳開發(fā)實(shí)踐。這些構(gòu)建模塊形成了一個(gè)基于項(xiàng)目具體需要的快速創(chuàng)建過程的工具包,圖2給出了一個(gè)示例。RMC還允許你建立自己的具體組織的能力模式庫。最后,使用RMC建立的備有文檔的過程可以作為網(wǎng)站發(fā)布和部署了。在商業(yè)版的RMC中,過程還可以作為 Rational Portfolio Manager的項(xiàng)目計(jì)劃模板進(jìn)行部署。

圖2:一個(gè)通過Rational Method Composer發(fā)布的站點(diǎn),包含并展示了用戶選擇發(fā)布的所有方法和過程。示例顯示了IBM Rational統(tǒng)一過程框架的一種配置。Eclipse過程框架或任何用戶產(chǎn)生的內(nèi)容的配置將會(huì)以近似方式出現(xiàn)。

Rational Method Composer以及Eclipse項(xiàng)目框架的目標(biāo)是為常規(guī)問題提供解決方案,這些問題是開發(fā)領(lǐng)導(dǎo)和團(tuán)隊(duì)在獲得和管理他們的方法和過程時(shí)要面對(duì)的。例如:

  • 開發(fā)團(tuán)隊(duì)需要對(duì)信息簡(jiǎn)單而集中的訪問:很多開發(fā)組織不維護(hù)他們的實(shí)踐和過程的中心數(shù)據(jù)庫。典型的情況是,過程或者是完全沒有文檔的,或者是以不同的格式表達(dá)的。過程需要在工作地點(diǎn)被部署和訪問,在工作進(jìn)行的同時(shí)需要提供過程文檔。
  • 集成以只適于它們自己的格式導(dǎo)入的開發(fā)過程是困難的:每本書或出版物中的方法內(nèi)容和過程都以不同格式出現(xiàn)。由于在表示方法內(nèi)容和過程上缺乏廣泛采用的標(biāo)準(zhǔn)和清楚定義的概念,從不同賣主和資源中集成過程是非常困難的。
  • 團(tuán)隊(duì)缺乏在方法和最佳實(shí)踐上進(jìn)行自我培訓(xùn)的最新的知識(shí)基礎(chǔ):在有效地進(jìn)行開發(fā)過程之前,團(tuán)隊(duì)需要進(jìn)行訓(xùn)練。他們需要一個(gè)關(guān)于開發(fā)方法的廣泛的知識(shí)基礎(chǔ),該基礎(chǔ)始終反映過程定義和項(xiàng)目執(zhí)行的同一個(gè)實(shí)踐基礎(chǔ)。
  • 團(tuán)隊(duì)在最優(yōu)化過程規(guī)模方面需要支持:他們需要互動(dòng)的指導(dǎo)來回答他們需要“多少過程”的問題。過程不僅需要適應(yīng)每個(gè)項(xiàng)目的不同需要,還應(yīng)在項(xiàng)目生命周期中不斷調(diào)整。因此,過程需要按照對(duì)簡(jiǎn)單集成新過程或裁剪已有過程的能力的需求擴(kuò)大規(guī)模或縮小規(guī)模,以滿足組織,項(xiàng)目,甚至具體于項(xiàng)目階段的需要。
  • 保證遵守標(biāo)準(zhǔn)化實(shí)踐:團(tuán)隊(duì)需要在組織內(nèi)部對(duì)實(shí)踐和過程進(jìn)行標(biāo)準(zhǔn)化,管理和部署這些過程定義的能力,以及為個(gè)體項(xiàng)目提供適當(dāng)裁剪和修改過程的能力。
  • 項(xiàng)目?jī)?nèi)過程的有效執(zhí)行:團(tuán)隊(duì)需要通過使用相似的表達(dá)和方法溝通過程工程和過程制定。經(jīng)理們需要有直接從他們的項(xiàng)目執(zhí)行環(huán)境中導(dǎo)入過程的能力,比如Rational Portfolio Manager,它能夠鏈接到計(jì)劃元素(比如要完成的任務(wù)和他們的描述)。

IBM Rational Method Composer取代了IBM Rational Process Workbench,RUP Organizer,以及RUP Builder并提供了以下新的關(guān)鍵功能:

  • 提供用來創(chuàng)造,配置,瀏覽和發(fā)布開發(fā)過程的完整的重新設(shè)計(jì)的工具。
  • 提供及時(shí)產(chǎn)生的,專門用以瀏覽的發(fā)布預(yù)覽,使得迅速的配置變化成為可能。
  • 使用簡(jiǎn)單的基于形式的用戶界面管理方法內(nèi)容。因此,統(tǒng)一建模語言(UML)的技能不再是必須的。
  • 為創(chuàng)造形象的內(nèi)容描述提供直觀而富于文字的編輯器。編輯器允許對(duì)樣式,圖像,表格,超鏈接和直接的HTML的編輯。
  • 允許在分解結(jié)構(gòu)編輯器中建立過程,允許通過使用過程多種表示編輯器建立工作流圖。分解結(jié)構(gòu)編輯器支持不同過程視圖:工作分解視圖,工作-產(chǎn)品-使用視圖,以及團(tuán)隊(duì)-分工視圖。RMC自動(dòng)同步所有表示和過程變化。
  • 獨(dú)立于Rational統(tǒng)一過程:盡管新近版本的RUP進(jìn)行了維護(hù),并被RMC裝載,RMC本身是一個(gè)通用的過程工程工具,為很多可選擇的生命周期模型提供支持。例如,瀑布,遞增,或是迭代模型可以用相同的重疊方法內(nèi)容建立。
  • 改進(jìn)的復(fù)用和可擴(kuò)展性能力。來自過去版本的插件機(jī)制被擴(kuò)展以支持結(jié)構(gòu)分解擴(kuò)展。
  • 通過拖拽方式支持可復(fù)用的迅速集成過程的最佳實(shí)踐的動(dòng)態(tài)鏈接過程模式。
  • 通過向IBM Rational Portfolio Manager導(dǎo)出過程填補(bǔ)過程和項(xiàng)目管理之間的鴻溝。

關(guān)鍵方法和概念綜述

為了有效地使用Rational Method Composer,你需要理解一些用于組織內(nèi)容的概念。這一部分提供了關(guān)于這些概念的綜述。

方法內(nèi)容與過程

RMC最基本的原則是可復(fù)用的核心方法內(nèi)容與它在過程中的應(yīng)用分離。這直接與上一部分中描述的RMC的兩個(gè)目的相關(guān)。幾乎所有RMC的其它概念都按照這一分離原則分類,如圖6所示(見后文)。方法內(nèi)容描述了要產(chǎn)生的內(nèi)容,必要的技術(shù),以及描述具體開發(fā)目標(biāo)是如何實(shí)現(xiàn)的逐步漸進(jìn)的解釋。這些方法內(nèi)容描述是獨(dú)立于開發(fā)生命周期的。過程描述了開發(fā)生命周期。它們使用方法內(nèi)容元素并將它們關(guān)聯(lián)到半排列的序列中,這些序列是根據(jù)項(xiàng)目的具體類型定制的。

圖3:Rational統(tǒng)一過程中方法內(nèi)容和過程分離的二維表示。

方法內(nèi)容與過程的分離并不是一種新思想。它可追溯到Rational統(tǒng)一過程(RUP)的產(chǎn)生,并在1992年得到描述。10但是在RMC方面,這是第一次載入了RUP的過程裁剪工具,它支持兩方面的自由修改。(這些工具先前的版本強(qiáng)調(diào)了方法內(nèi)容方面,對(duì)過程方面只提供了有限的創(chuàng)造和裁剪能力。)

圖3用一種二維表達(dá)表示了這一分離在RUP中是如何描述的。方法內(nèi)容描述了開發(fā)工作是如何進(jìn)行的,根據(jù)規(guī)程的不同由y軸表示。然后這些工作被引用并在過程中被排序,表現(xiàn)在時(shí)間軸x軸上。這是一個(gè)開發(fā)項(xiàng)目的生命周期;它表達(dá)了在何時(shí)具體工作應(yīng)被完成。中間的圖表示了每種規(guī)程的預(yù)計(jì)工作量。正如你看到的,例如,在RUP中,對(duì)需求做的工作永遠(yuǎn)不會(huì)停止,但當(dāng)然,中間會(huì)有一些高峰時(shí)期,這個(gè)時(shí)期進(jìn)行了需求引出和描述工作。而在另一些時(shí)期則可以觀察到下降趨勢(shì),那時(shí)需要處理的需求變化很少,于是項(xiàng)目得以結(jié)束。這避免了“特性蔓延”——需求工作保持不變甚至增加的情況。因此,過程表達(dá)了生命周期中不同規(guī)程下需要進(jìn)行的工作的變化,而工作本身是由方法內(nèi)容描述的。

方法內(nèi)容

為了學(xué)習(xí)開發(fā)方法,人們?cè)趫D書館中查閱資料或接受培訓(xùn)。很多開發(fā)方法在書,文章,培訓(xùn)材料,標(biāo)準(zhǔn),規(guī)則,和其它形式的文檔中有所描述。通常這些資源以不同方式記錄方法,但是多數(shù)是通過在常見情況中以一種特定實(shí)現(xiàn)具體開發(fā)目標(biāo)的方式提供逐步漸進(jìn)的解釋來描述開發(fā)方法的。舉例如下:將需求文檔變換為分析模型;基于功能和非功能需求定義一個(gè)架構(gòu)方案;建立一個(gè)開發(fā)迭代項(xiàng)目計(jì)劃;為功能需求定義一個(gè)質(zhì)量保證計(jì)劃;基于一個(gè)新的策略方向重新設(shè)計(jì)商業(yè)組織;等等。

RMC采用這些內(nèi)容并使用一個(gè)預(yù)定義的方案以具體方式對(duì)內(nèi)容進(jìn)行結(jié)構(gòu)化。這一方案是在統(tǒng)一過程架構(gòu) (UMA)11中定義的,該統(tǒng)一過程架構(gòu)是基于SPEM 1.1 OMG標(biāo)準(zhǔn)對(duì)RUP 2003方案(也被稱為元模型)進(jìn)行的發(fā)展。12UMA還與其它IBM方法方案集成,比如IBM通用服務(wù)方法或IBM Rational Summit Ascendant。這一方案支持對(duì)開發(fā)方法和過程的大量描述的組織。這些方法內(nèi)容和過程并不局限于軟件工程,它們可以覆蓋其它設(shè)計(jì)和工程原則,比如力學(xué)工程,商業(yè)變化,銷售周期,等等。

按照這一UMA方案,在RMC中方法內(nèi)容被表示為由定義了開發(fā)技能的角色創(chuàng)建和對(duì)于工作產(chǎn)品的職責(zé)。這些工作產(chǎn)品是由任務(wù)產(chǎn)生的,任務(wù)由角色完成,并把工作產(chǎn)品作為輸入和輸出。圖4描繪了方法內(nèi)容的典型來源以及在RMC中方法內(nèi)容是如何表達(dá)的。圖4中的RMC屏幕截圖的左面的樹狀瀏覽圖顯示了這些方法內(nèi)容元素是如何組織的。與庫類似,這些樹狀瀏覽圖為可獲得的元素提供了不同索引以方便快速訪問。截圖的右面顯示了一個(gè)任務(wù)表示的示例。這一任務(wù)表示根據(jù)需要被執(zhí)行以實(shí)現(xiàn)任務(wù)目標(biāo)的步驟定義了任務(wù)。你還可以發(fā)現(xiàn),任務(wù)有各種關(guān)系,比如與執(zhí)行任務(wù)的角色的關(guān)系,與作為任務(wù)的輸入和輸出的工作產(chǎn)品的關(guān)系。(本文的第二部分將提供關(guān)于任務(wù),角色,以及工作產(chǎn)品的詳細(xì)解釋。)除了任務(wù),角色,和工作產(chǎn)品,RMC支持額外的指導(dǎo)元素。指導(dǎo)是指支持性的,形式自由的文檔,比如白皮書,概念描述,指南,模板,示例,等等。

圖4:方法內(nèi)容在關(guān)于軟件工程方法的書籍和出版物中有所介紹。Rational Method Composer使用諸如任務(wù),角色,工作產(chǎn)品和指導(dǎo)的概念表達(dá)方法內(nèi)容。這張圖顯示了在RMC中任務(wù)是如何表示的一個(gè)示例。

過程

一個(gè)開發(fā)過程定義了被角色執(zhí)行工作的序列,以及工作產(chǎn)品是如何產(chǎn)生和隨時(shí)間發(fā)展的。圖5顯示了過程通常被表示為工作流或分解結(jié)構(gòu)。

圖5:在RMC中過程被表示為工作流或分解結(jié)構(gòu)。它們利用了方法內(nèi)容并定義了在其描述的項(xiàng)目生命周期中方法是如何被執(zhí)行的。

定義一個(gè)嚴(yán)格的序列,比如在瀑布模型中,與在并行工作中定義一個(gè)半排序的迭代序列是基本相同的。它們只是表示了不同的開發(fā)方法。13在定義過程時(shí),方法內(nèi)容可以與指明工作在時(shí)間上是如何組織的結(jié)構(gòu)組合起來,以支持不同的開發(fā)方法,并滿足開發(fā)項(xiàng)目的特定類型的需要,比如一個(gè)在線系統(tǒng)的軟件與一個(gè)嵌入式系統(tǒng)的軟件和硬件。

RMC支持基于不同開發(fā)方法的過程,并可用于定義不同的生命周期模型,例如瀑布,遞增,或迭代生命周期模型。RMC還支持不同的過程表示,比如工作分解結(jié)構(gòu)或工作流表示。你還可以在RMC中為靈活的,自組織的團(tuán)隊(duì)定義使用最小方法內(nèi)容集或根本不使用方法內(nèi)容的過程(本文的第二部分將提供詳細(xì)內(nèi)容)。

圖5中的RMC屏幕截圖展示了一個(gè)由嵌套活動(dòng)的分解結(jié)構(gòu)表示的過程。它還顯示了一個(gè)由這一分解同步的工作流,而該工作流是由一個(gè)特定活動(dòng)——初始階段——的活動(dòng)圖表示的。圖形還通過兩個(gè)藍(lán)色箭頭指出,來自圖4的特定的方法內(nèi)容任務(wù)“詳述一個(gè)用例”,在過程中被兩次應(yīng)用:先是在初始階段的“定義系統(tǒng)”活動(dòng)中,然后在細(xì)化階段的“細(xì)化系統(tǒng)定義”活動(dòng)中。在這些被稱為RMC的任務(wù)描述符的任務(wù)應(yīng)用下,你可以看到執(zhí)行角色清單以及輸入輸出工作產(chǎn)品。如果你深入調(diào)查,你就會(huì)發(fā)現(xiàn)兩個(gè)任務(wù)描述符的列表是不同的,表達(dá)了在整個(gè)生命周期中執(zhí)行詳述用例方法任務(wù)的不同。你看到涉及到的角色的不同,要考慮到的輸入清單的變化以及要產(chǎn)生和更新的輸出清單。在這個(gè)例子中,這些變化是由建立過程的人定義的,目的是表達(dá)在生命周期的這一特定時(shí)刻對(duì)任務(wù)執(zhí)行的精確集中。除了為任務(wù)描述符更新功能以及輸入輸出工作產(chǎn)品,你還可以提供額外的文本描述并選擇在該任務(wù)的此次執(zhí)行中哪些任務(wù)步驟需要被執(zhí)行哪些不需要被執(zhí)行。

小結(jié)

圖6顯示了RMC的關(guān)鍵概念是如何與方法內(nèi)容與過程分離相關(guān)聯(lián)的。正如你看到的,方法內(nèi)容主要由工作產(chǎn)品,角色,任務(wù),以及指導(dǎo)表示。

圖6:RMC概念術(shù)語總攬

指導(dǎo),比如清單,示例,或路標(biāo),也可以被定義,用于提供背景和示范性地實(shí)踐一個(gè)過程。在圖6的右邊,你可以看到用于表達(dá)RMC中的過程的概念。主要概念是可嵌套定義分解結(jié)構(gòu)的活動(dòng)?;顒?dòng)相互關(guān)聯(lián)以定義工作流。它們包含了引用方法內(nèi)容的描述符,并被用于定義RMC主要支持的兩種過程:發(fā)布過程和能力模式。發(fā)布過程表達(dá)了一個(gè)執(zhí)行某個(gè)具體類型的項(xiàng)目的完整和集成的過程模板。它們描述了一個(gè)完整的端到端的項(xiàng)目生命周期并被作為運(yùn)行特點(diǎn)近似的項(xiàng)目的參考。能力模式是表達(dá)對(duì)于關(guān)鍵領(lǐng)域——比如規(guī)程或最佳實(shí)踐——的過程知識(shí)的過程。它們可以直接被過程從業(yè)者用來指導(dǎo)他們的工作,也可以作為構(gòu)建模塊來集成發(fā)布過程或更大的能力模式,因此保證了對(duì)它們表達(dá)的關(guān)鍵實(shí)踐的最佳的復(fù)用和應(yīng)用。

RMC的典型使用場(chǎng)景

讓我們首先看一下Rational Method Composer或Eclipse過程框架的最典型使用場(chǎng)景。盡管RMC是一個(gè)強(qiáng)大的過程創(chuàng)造環(huán)境,仍能不同程度以不同模式地利用RMC的能力進(jìn)行創(chuàng)造。RMC包含了很多現(xiàn)成的方法和過程內(nèi)容。因此,在很多情況下,實(shí)際上不需要多少創(chuàng)造。要做的只是選擇,配置,和裁剪已有內(nèi)容來適應(yīng)你的需要。

RMC最簡(jiǎn)單的使用場(chǎng)景涉及的是直接使用導(dǎo)入的過程——現(xiàn)有的過程。RMC的商業(yè)版本包含完整的Rational統(tǒng)一過程框架(RUP v7.0)資源,它包括了覆蓋廣泛開發(fā)情境的上千的方法和過程元素。它還包括了將RUP擴(kuò)展到針對(duì)各領(lǐng)域的應(yīng)用(比如開發(fā)具體技術(shù),像Java企業(yè)版(JEE),或不同開發(fā)情境,比如采用一個(gè)商業(yè)構(gòu)件(COTS))的各種方法插件。Eclipse過程框架包含了一個(gè)由項(xiàng)目贊助人提供的迅速增長(zhǎng)的內(nèi)容庫。

盡管如此,注意,沒有組織或項(xiàng)目一開始就需要所有這些文檔。你應(yīng)該處理一個(gè)稱為方法配置的子集,它根據(jù)具體需要對(duì)過程進(jìn)行裁剪。在選擇和裁剪活動(dòng)的過程中,你可能還需要包括進(jìn)你自己的內(nèi)容并把它鏈接到已有的材料中。這里RMC的創(chuàng)造能力為你提供了使用簡(jiǎn)單但功能強(qiáng)大的編輯器,使你能夠無縫地完成添加工作。

你也可以從RMC開始不依賴于任何我們提供的明確的方法定義。在這種情況下創(chuàng)造完成的所有過程創(chuàng)造都將包括使用發(fā)布、階段、迭代、沖刺來定義的你的生命周期結(jié)構(gòu),或者你想要組織你的生命周期的任何方式,并將這一生命周期結(jié)構(gòu)與高級(jí)活動(dòng),里程碑,和對(duì)關(guān)鍵發(fā)布的定義等組合起來。

下面的各個(gè)部分概括了RMC最常見的使用場(chǎng)景。14

選擇和配置已有方法內(nèi)容和過程

這代表了RMC最簡(jiǎn)單的使用場(chǎng)景之一。RUP 2003的用戶將把它看作一個(gè)“RUP Builder”情境。你通過瀏覽RMC方法庫(包含了你購買的以及你從RMC資源中心15或Eclipse過程框架社區(qū)下載的全部?jī)?nèi)容)選擇滿足你的需要的過程和其隱含的方法內(nèi)容。一旦你找到了一個(gè)合適的過程,你開始通過選擇和取消選擇我們稱為“方法包”的東西對(duì)其進(jìn)行配置(如圖7所示)。刪除一個(gè)方法包將從過程的所有地方刪除所有對(duì)這個(gè)包的內(nèi)容的引用。比如,你可以通過刪除包含你不希望進(jìn)行的工作元素的包來“拆開”一個(gè)過程,使它只包含它的內(nèi)容的最小子集?;蛘撸憧梢蕴砑影囟I(lǐng)域內(nèi)容的方法包,這樣過程就可以選擇性地支持該領(lǐng)域的應(yīng)用(例如,“普通”的J2EE和含SOA 特定內(nèi)容的J2EE)。

圖7:通過選擇(被過程引用)和取消選擇(不被過程引用)方法包配置過程和方法內(nèi)容。你可以建立幾個(gè)方法配置,它們?cè)赗MC的整體方法庫上定義過濾器。使用工具條中的組合框來在不同方法配置中迅速切換。左下角的配置視圖總是顯示一個(gè)方法配置的結(jié)果內(nèi)容。

在RMC中,方法內(nèi)容和過程是按照它們?yōu)橛行渲媒?gòu)邏輯單元的方式組織的。例如,所有屬于一個(gè)特定規(guī)程,比如需求或變更管理,的內(nèi)容可以在一個(gè)方法包中被找到。每一個(gè)這種包還可以根據(jù)規(guī)程內(nèi)的具體實(shí)踐被進(jìn)一步分為子包。例如,RUP中的需求規(guī)程把所有和它的用例相關(guān)的內(nèi)容包括在一個(gè)單獨(dú)的包中。因此,對(duì)你的過程,你可以只添加或刪除用例實(shí)踐,也可以添加或刪除整個(gè)需求管理規(guī)程,而你要做的只是通過鼠標(biāo)點(diǎn)擊選擇或是取消選擇用例方法或需求包。

結(jié)果是一個(gè)配置好的過程,你可以用HTML將其發(fā)布和部署到你的團(tuán)隊(duì)(例如,圖2所示),并/或?qū)⑵鋵?dǎo)出到你的項(xiàng)目管理工具。注意你既可以為延伸到整個(gè)開發(fā)生命周期的過程,也可以為一或多個(gè)階段,迭代,活動(dòng),等等建立這種方法配置。因此,你無需在最開始定義你的整個(gè)生命周期。你可以根據(jù)需要重復(fù)地配置你的過程。

裁剪一個(gè)現(xiàn)有過程

除了簡(jiǎn)單配置一個(gè)過程,你還可以通過使用一或多個(gè)RMC的編輯器主動(dòng)修改過程,使它們更好地遵守你的具體需要。你可以為一個(gè)已有過程建立所謂的過程配置,它定義了該過程的不同變化。你可以直接添加,刪除,或取代過程中的元素。因此,對(duì)比變更配置——它將對(duì)過程做出全局性改變——你可以只在你需要的地方定義個(gè)體變化。RMC提供了豐富的動(dòng)態(tài)鏈接能力,它們將你的更改從原始過程定義中分離出來,這樣當(dāng)下層的過程變化時(shí),你可以簡(jiǎn)單升級(jí)而不會(huì)丟失你做的更改。(在第二部分中,我將提供過程裁剪的示例。)

建立一個(gè)新過程

作為裁剪已有過程的另一種選擇,你還可以從開始創(chuàng)造一個(gè)全新的過程,或者一個(gè)從一或多個(gè)已有過程中復(fù)用材料的過程。在你無法找到任何可復(fù)用材料的情況下,你可以從頭創(chuàng)造一個(gè)全新的過程。但在多數(shù)情況下,你可以從集成可復(fù)用方法內(nèi)容的建構(gòu)模塊以及預(yù)定義的過程模式(我們稱之為能力模式)開始開發(fā)你自己的過程。能力模式是一個(gè)定義可復(fù)用活動(dòng)集的迷你過程,在一般的過程域中它通常被一次次重復(fù)。能力模式的例子包括:“基于用例的需求管理”,“開發(fā)組件”,“驗(yàn)證構(gòu)建”,或“持續(xù)管理和支持”。除了在每次由模式描述的工作被執(zhí)行的時(shí)候復(fù)制這些模式外,RMC還允許你把模式動(dòng)態(tài)鏈接到你的過程。當(dāng)模式變化時(shí),模式的所有應(yīng)用將自動(dòng)被更新。

RMC的過程創(chuàng)造能力使你能夠完全利用方法內(nèi)容與過程分離的特性,如在“關(guān)鍵術(shù)語和概念綜述”中所指出的。你可以從定義你自己的生命周期模型開始建立你的過程,然后系統(tǒng)地添加你自己定義的或從方法庫中復(fù)用的方法內(nèi)容和/或能力模式。

圖8顯示了一個(gè)Eclipse過程框架的例子,指出了方法內(nèi)容和能力模式是如何在兩個(gè)使用不同生命周期模型的過程中被復(fù)用的。

圖8:兩個(gè)使用不同生命周期模型的過程應(yīng)用相同的能力模式和方法內(nèi)容。

圖8的右邊包含了兩個(gè)分解結(jié)構(gòu)過程編輯器。上面的一個(gè)定義了基本統(tǒng)一過程(BUP),它是RUP的靈活、輕量的改編版。16下面的編輯器定義了一個(gè)類Scrum過程。兩個(gè)過程有各自截然不同的生命周期模型。BUP使用四個(gè)RUP階段——啟始,精化,構(gòu)建,和產(chǎn)品化——并定義了它們的迭代。Scrum過程的組織迭代形式也被稱為“沖刺”。如果你仔細(xì)檢查圖8中的兩個(gè)過程,你會(huì)發(fā)現(xiàn)它們既有共同之處也有具體的不同之處。管理迭代或管理沖刺之類的活動(dòng)有不同任務(wù),因?yàn)閮蓚€(gè)過程有不同管理方法。管理方法是針對(duì)每個(gè)過程創(chuàng)造的。

在另一方面,兩個(gè)過程有一些共同活動(dòng),比如開發(fā)解決方案或驗(yàn)證構(gòu)建。

這些活動(dòng)代表了基本統(tǒng)一過程中被定義為基本構(gòu)建模塊的能力模式;正如你看到的,它們被列在圖8左面的樹狀瀏覽器中。這些模式被Scrum過程的作者通過簡(jiǎn)單的拖拽操作復(fù)用到過程中。忠實(shí)的Scrum從業(yè)者可能會(huì)說,這一過程由于為工作提供了明確任務(wù)而不是為自組織的團(tuán)隊(duì)提供任務(wù)而違背了Scrum原則。但是,我們建立了這個(gè)例子來告訴你,像Scrum這樣的過程是如何通過利用RMC的過程創(chuàng)造能力即復(fù)用模式和任務(wù)來得到強(qiáng)化的;這些模式和任務(wù)的作用在于指導(dǎo),而不是作為缺乏經(jīng)驗(yàn)的團(tuán)隊(duì)的嚴(yán)格工作指令。

開發(fā)方法內(nèi)容和建立或擴(kuò)展過程

介紹的最后一個(gè)情境是復(fù)用RMC或第三方方法內(nèi)容不僅來建立或裁剪過程,而且來開發(fā)你自己的方法內(nèi)容并使用該方法內(nèi)容來裁剪已有過程或建立新過程。

在方法內(nèi)容的創(chuàng)造中,你既可以定義全新的內(nèi)容,也可以擴(kuò)展已有的方法內(nèi)容。如果你需要定義你自己的功能,想要添加額外的工作產(chǎn)品類型,想要添加你的開發(fā)方法,或只是想添加額外的指導(dǎo)——如白皮書,你的組織的具體規(guī)則和方針,或你自己的工作產(chǎn)品模板或清單,則你要開發(fā)新的內(nèi)容。如果你只是要修改方法庫中已有的方法內(nèi)容,要向一個(gè)功能中添加一個(gè)工作產(chǎn)品責(zé)任,向一項(xiàng)任務(wù)中添加步驟,或向一個(gè)已有的清單中添加幾個(gè)檢查點(diǎn),你就可以使用RMC獨(dú)有的方法插入和變化功能。變化性允許你改變已有內(nèi)容而不直接修改原始內(nèi)容。例如,你擁有在RUP中建立一個(gè)向已有任務(wù)中添加一些新步驟的任務(wù)的方法插件的能力。或者,你可以在你的插件中定義一個(gè)定義了你的變化的工作產(chǎn)品來取代原來的RUP工作產(chǎn)品。例如,它可能有不同的名字,結(jié)構(gòu),模板以及定制的描述和指導(dǎo)。其它RUP元素對(duì)原始工作產(chǎn)品的引用將自動(dòng)被取代為對(duì)你的元素的引用。這樣你就可以使用方法配置有選擇地打開或關(guān)閉你的擴(kuò)展,還可以方便地把原始元素升級(jí)到更新的版本并重新應(yīng)用你的變化。

在RMC中,你使用編輯器定義和記錄方法內(nèi)容;這些編輯器是直觀,基于形式,并容易上手的,同時(shí)它們也足以提供格式良好的,富文本的文檔。

圖9顯示了用于工作產(chǎn)品定義的編輯器。要定義一個(gè)新的工作產(chǎn)品類型,你只要在方法包中建立該類型的元素。要為這一類型建立文檔,你只需要使用它的編輯器來填寫形式域并使用選擇對(duì)話和組合框來建立關(guān)系。RMC在后臺(tái)創(chuàng)建和管理HTML——它提供了格式良好的,帶有超鏈接的文檔,如你在圖4中所見(顯示了一個(gè)任務(wù)的文檔的預(yù)覽)。

圖9:工作產(chǎn)品的基于形式的編輯器。所有形式域可被擴(kuò)展為一個(gè)完整的文本編輯器,它允許你格式化文本,處理表格包括圖像,等等。

一旦你建立了你自己的方法內(nèi)容元素,你就可以通過使用前文所述的“裁剪已有。。。”或“建立新的。。?!鼻榫嘲阉鼈儼M(jìn)你的方法配置或添加到你自己的或復(fù)用的過程中。

這里結(jié)束了我們對(duì)最常見的RMC使用場(chǎng)景的綜述。下個(gè)月,我將在本文的第二部分中給出對(duì)方法內(nèi)容和過程的更深入講解。再見!

鳴謝

本文的完成與幾個(gè)突出的團(tuán)隊(duì)的努力和熱情是分不開的。我要感謝RUP開發(fā)和QA團(tuán)隊(duì),RUP內(nèi)容團(tuán)隊(duì),RUP產(chǎn)品團(tuán)隊(duì),RUP生產(chǎn)團(tuán)隊(duì),IRUP團(tuán)隊(duì),IBM全球服務(wù)方法團(tuán)隊(duì),擁有來自Rational領(lǐng)域和其它IBM方法團(tuán)隊(duì)的成員的UMA委員會(huì),Tivoli ITUP團(tuán)隊(duì),以及其它所有IBM內(nèi)外的早期采用者和beta用戶,還有ISSR管理,它使RMC和EPF能真正發(fā)布。

注釋

1見IBM,“隨需應(yīng)變商業(yè)”,2005年12月:http://www.ibm.com/ondemand。另見,Alfredo Gutierrez,“隨需應(yīng)變電子商務(wù):開發(fā)者指南”,IBM developerWorks,2003年2月:http://www-128.ibm.com/developerworks/ibm/library/i-ebodov/index.html

2Thomas L. Friedman,平坦的世界:21世紀(jì)簡(jiǎn)史。Farrar,Straus和Giroux,2005年。

3Asiff Hirji,CIO Ameritrade,Gartner Financial Services Technology Summit,2005年8月:http://www.computerworld.com/careertopics/careers/story/0,10801,104482,00.html

4Per Kroll和Walker Royce,“業(yè)務(wù)驅(qū)動(dòng)開發(fā)的關(guān)鍵原則”,The Rational Edge,2005年10月:http://www-128.ibm.com/developerworks/rational/library/oct05/kroll/index.html

5Per Kroll和Walker Royce,“業(yè)務(wù)驅(qū)動(dòng)開發(fā)的關(guān)鍵原則”,The Rational Edge,2005年10月:http://www-128.ibm.com/developerworks/rational/library/oct05/kroll/index.html

6如果需要關(guān)于RUP的更多內(nèi)容,請(qǐng)參考以下四個(gè)資源:IBM,“Rational 統(tǒng)一過程”,版本2003.06,IBM Rational軟件,2003年;IBM,“Rational 統(tǒng)一過程”,版本7.0,IBM Rational軟件,2006年;Philippe Kruchten,Rational統(tǒng)一過程入門。Addison Wesley,2000年;以及Per Kroll和Philippe Kruchten,Rational統(tǒng)一過程的便利:Rational統(tǒng)一過程從業(yè)人員指南。Addison Wesley,2003年。

7如果需要總體上大致了解RMC包含的內(nèi)容,請(qǐng)參考Per Kroll,“IBM Rational Method Composer介紹”,The Rational Edge,2005年11月:http://www-128.ibm.com/developerworks/rational/library/nov05/kroll/index.html

8見Eclipse.org,“Eclipse過程框架:項(xiàng)目信標(biāo)”,Eclipse.org提案,2004年:http://www.eclipse.org/proposals/beacon/。另見Per Kroll,“Eclipse過程框架項(xiàng)目”,IBM developerWorks,2005年11月:http://www-128.ibm.com/developerworks/rational/library/05/1011_kroll/;另見Ricardo Balduino,“基本統(tǒng)一過程:適用于小型和敏捷項(xiàng)目的過程”,Eclipse.org,2005年:http://www.eclipse.org/proposals/beacon/Basic%20Unified%20Process.pdf

9見Ken Schwaber和Mike Beedle,使用SCRUM進(jìn)行敏捷軟件開發(fā)。Prentice Hall,2001年。

10I. Jacobson et al.,面向?qū)ο蟮能浖こ蹋阂环N用例驅(qū)動(dòng)方法。Addison-Wesley,1992年。

11如果需要對(duì)UMA的詳細(xì)介紹(已經(jīng)作為下個(gè)版本的SPEM標(biāo)準(zhǔn)提交給OMG),請(qǐng)參考Peter Haumer和Todd Fredrickson所著,即將出版的“統(tǒng)一方法架構(gòu)綜述”,IBM。如果需要關(guān)于下一個(gè)SPEM標(biāo)準(zhǔn)的更多信息,請(qǐng)參考OMG,“軟件過程工程元模型”,版本2.0,RFP,2004年:http://www.omg.org/cgi-bin/doc?ad/2004-11-4

12OMG,“軟件過程工程元模型”,版本1.1,正式版/2005-01-06,2005年:http://www.omg.org/technology/documents/formal/spem.htm

13如果要對(duì)這兩種方法進(jìn)行深度比較,見Walker Royce,軟件項(xiàng)目管理:一個(gè)統(tǒng)一框架。Addison Wesley Longman,1998年。

14關(guān)于裁剪RUP的更詳細(xì)的討論,請(qǐng)見IBM Rational統(tǒng)一過程的“裁剪RUP”部分,版本7.0,IBM Rational軟件,2006年。

15參見IBM,“IBM developerWorks RMC資源中心”,2006年:http://www-128.ibm.com/developerworks/rational/products/rup/

16參見Ricardo Balduino,引自其著作。





回頁首


參考資料

  • 您可以參閱本文在 developerWorks 全球站點(diǎn)上的 英文原文。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
為什么選擇 Rational 軟件?
IBM Rational SDP 助力 CMMI 流程改進(jìn) - ChinaAET電子技術(shù)應(yīng)...
SOA 設(shè)計(jì)
方法開發(fā)的路線圖(轉(zhuǎn)與 Rational Edge)
RUP:新一代的軟件工程方法 (zt)
軟件開發(fā)流程
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服