專案管理規範-RUP管理實施(三)(轉)

urinator發表於2007-08-14
專案管理規範-RUP管理實施(三)
3. 角色劃分
角色是抽象的職責定義,它定義的是所執行的一組活動和所擁有的一組文件與模型。

角色通常由一個人或作為團隊相互協作的多個人來實現。

專案團隊成員通常要履行許多不同的角色職能;就象一個人可以擔任許多職務,一個人也可以擔任許多不同的角色。

角色並不代表個人,而是說明個人在業務中應該如何表現以及他們應該承擔的責任。

分析員角色集

分析員角色集用於組織主要從事需求獲取和研究的各種角色。

角色

· 業務流程分析員

· 業務設計員

· 業務模型複審員

· 需求複審員

· 系統分析員

· 使用者介面設計員

3.1.1. 業務流程分析員

業務流程分析員通過概括和界定作為建模物件的組織來領導和協調業務用例建模。例如,確定存在哪些業務主角和業務用例,他們之間如何進行互動。

人員配備

擔任業務流程分析員的人員應該善於簡化工作,並且具有良好的溝通技巧。擔任此角色的人員中必須要有具備業務領域知識的人才,但這種知識並不是所有人都必備的。

業務流程分析員應該準備好開展以下工作:

· 評估將在其中部署專案最終產品的目標組織的情況。

· 瞭解客戶與使用者的需求、策略和目標。

· 協調目標組織的建模工作。

· 在必要時對業務工程工作進行討論和協調。

· 對目標組織中所建議的任何變更進行成本效益分析。

3.1.2. 業務設計員

業務設計員通過描述一個或幾個業務用例的工作流程來詳細說明組織中某一部分的規約。他指定實現業務用例所需的業務角色及業務實體,並且將業務用例的行為分配給這些業務角色及業務實體。業務設計員定義一個或幾個業務角色和業務實體的責任、操作、屬性和關係。

人員配備

擔任業務設計員的人員應該善於協調,並且具有良好的溝通技巧。他最好具有業務領域的知識,但這並不是擔任此角色的所有人都必需的。業務設計員需要熟悉用於獲取業務模型的工具。

3.1.3. 業務模型複審員

業務模型複審員參與對業務用例模型和業務物件模型的正式複審。

人員配備

在大多數情況下,擔任業務模型複審員的人員都需要具備業務領域的基本知識,或者對將用來實現業務自動化的技術具備基本的知識。業務模型複審員應該具備的另一種技能是詳細瞭解所應用的業務工程技術。

3.1.4. 系統分析員

系統分析員通過概括系統的功能和界定系統來領導和協調需求獲取及用例建模。例如,確定存在哪些主角和用例,以及他們之間如何互動。

人員配備

擔任系統分析員的人員應該善於協調,並且具有良好的溝通技巧。擔任此角色的人員中必須要有具備業務和技術領域知識的人才,但這些知識並不是所有人都必須具備的。

3.1.5. 使用者介面設計員

使用者介面設計員通過以下方法領導和協呼叫戶介面的原型設計和正式設計:

· 分析對使用者介面的需求,包括可用性需求;

· 構建使用者介面原型;

· 邀請使用者介面的終端使用者參與可用性複審和使用測試會議;

· 對使用者介面的最終實施方案(由設計員和實施員等其他開發人員建立)進行復審並提供相應的反饋。

人員配備

使用者介面設計員不應實施使用者介面。使用者介面設計員的工作重點和時間都應集中在使用者介面的設計和“視覺化成形”,原因如下:

· 使用者介面設計員所需的技能通常需要為當前的專案和應用程式型別(可能具有獨特的可用性需求)而加以改進和優化,這需要投入時間並集中工作重點。

· 應該限制因“一心二用”而帶來的風險,即使用者介面設計員不應該因為實施方面的考慮(相對於可用性方面的考慮而言)而受到過多的影響。

3.2. 開發角色集

開發人員角色集用於組織主要從事軟體設計與開發的各種角色。

角色

· 構架設計師

· 構架複審員

· 程式碼複審員

· 資料庫設計員

· 系統設計員

· 設計複審員

· 實施員

· 整合員

3.2.1. 構架設計師

構架設計師負責在整個專案中對技術活動和工件進行領導和協調。構架設計師要確立每個構架檢視的整體結構:檢視的詳細組織結構、元素的分組以及這些主要分組之間的介面。因此,與其他角色相比,構架設計師的見解重在廣度,而不是深度。


人員配備

構架設計師必須多才多藝、成熟練達、洞察力強、經驗豐富。這樣,他才能在無法獲得完整資訊的情況下迅速領會問題並根據經驗作出審慎的判斷。更準確地說,構架設計師(或者構架團隊的成員)必須兼具以下技能:

· 經驗:既包括在問題領域的經驗(通過徹底瞭解需求),也包括在軟體工程領域的經驗。對於一個構架團隊,這些素質要求可由各團隊成員來分別承擔,但其中至少要有一名構架設計師能夠把握專案的全域性。

· 領導才能:能夠推動各個團隊的技術進展,並能在壓力下作出關鍵性的決策然後將其貫徹到底。要提高效率,構架設計師和專案經理必須緊密協作。構架設計師主要負責解決技術問題,專案經理主要負責解決行政管理問題。構架設計師必須有權在技術問題上作出決定。

· 溝通:能夠贏得他人的信任,以對其進行說服、激勵和指導。構架設計師不能靠命令進行領導,而必須要贏得專案中其他人員的贊同。為了提高效率,構架設計師必須贏得專案團隊、專案經理、客戶、使用者群體以及管理團隊的尊敬。

· 以目標為中心、積極主動,不懈地追求成效。構架設計師是推動專案發展的技術動力,而不是空想家。在其職業生涯中,成功的構架設計師一直都要在捉摸不定和承受壓力的情況下作出折衷決定。構架設計師只有將注意力集中在該做的事情上,才能在專案中取得成功。

從專業角度看,構架設計師必須具備系統設計員的所有能力。

團隊。如果專案較大,需要組建一個構架團隊,則應儘量廣聚賢才,使該團隊既擁有廣泛的經驗,又對軟體工程流程具有一致的認識。構架團隊不應該是由各團隊、領域或承包商的代表組成的委員會。軟體構架設計是一項長期的工作,始終都需要配備專職人員。

3.2.2. 構架複審員

一般而言,構架複審員負責計劃並執行對軟體構架的正式複審。

人員配備

構架複審員角色的人員配備要求與構架設計師的人員配備要求相同,但前者更加註重於技術問題。雖然對領導才能、成熟程度、實用主義及注重結果這些方面的重視程度稍低,但這些方面仍然重要:複審員可能會發現構架方面的缺陷,並且有可能會因為影響專案的進度而不受歡迎。儘管如此,最好還是在問題可以解決的時候及早提出關鍵性的問題,而不是盲目地追隨進度,致使專案團隊步入歧途。構架複審員需要根據成本對風險加以權衡,並對影響專案成功的概括性問題保持一定的敏感性。構架複審員還需是善於說服的溝通者,他應該能夠提出並討論對他人來說比較敏感的問題。

3.2.3. 程式碼複審員

程式碼複審員負責確保原始碼的質量,並且計劃和執行原始碼複審。在複審活動中,程式碼複審員還負責有關返工的任何反饋意見。

3.2.4. 資料庫設計人員

資料庫設計員定義表、索引、檢視、約束條件、觸發器、儲存過程、表空間或儲存引數,以及其他在儲存、檢索和刪除永久性物件時所需的資料庫專用結構。相關資訊記錄在資料模型中。


人員配備

資料庫設計員必須在以下方面具有紮實的應用知識:

· 資料庫和麵向物件的分析設計技術

· 系統構架,包括資料庫和系統效能調整,以及硬體和網路負載平衡

· 資料庫管理

· 瞭解實施語言和環境

3.2.5. 系統設計員

設計員定義一個或幾個類的職責、操作、屬性及關係,並確定應如何根據實施環境對它們加以調整。此外,設計員可能要負責一個或多個設計包或設計子系統,其中包括設計包或子系統所擁有的所有類。


人員配備

設計員必須在以下方面具有紮實的應用知識:

· 用例建模技術。

· 系統需求。

· 軟體設計技術,包括:

o 物件導向的分析設計技術。

o 統一建模語言。

· 實施系統時將利用的技術。

3.2.6. 設計複審員

設計複審員計劃並進行設計模型的正式複審。

人員配備

設計複審員的人員配備要求與構架設計師的人員配備要求相同,但前者更加側重於技術問題。雖然對領導才能、成熟程度、實用主義及注重結果這些方面的重視程度稍低,但這些方面仍然重要:複審員可能會發現設計方面的缺陷,並且有可能會因為影響專案的進度而不受歡迎。儘管如此,最好還是在問題可以解決的時候及早提出關鍵性的問題,而不是盲目地追隨進度,致使專案團隊步入歧途。設計複審員需要根據風險對成本加以權衡,並對影響專案成功的概括性問題保持一定的敏感性。設計複審員還需是一個善說服的溝通者,他應該能夠提出並討論對他人來說比較敏感的問題。

從技術知識的觀點來看,設計複審員應該具有與設計員相同經驗。

3.2.7. 實施員(程式設計師)

實施員負責按照專案所採用的標準來進行構件開發與測試,以便將構件整合到更大的子系統中。如果必須建立驅動程式或樁模組等測試構件來支援測試,那麼實施員還要負責開發和測試這些測試構件及相應的子系統。

人員配備

實施員應具備的相應技能和知識包括:

· 瞭解系統或所測試的應用程式

· 熟悉測試及測試自動化工具

· 程式設計技能

建議負責實施子系統的實施員同時應負責該子系統所包含的構件。

3.2.8. 整合員

實施員將經測試的構件交付到整合工作區,由整合員在整合工作區將構件組合起來,生成一個工作版本。整合員還負責制定整合計劃。整合在子系統和系統級別進行,每次整合均有獨立的整合工作區。正如經測試的構件從實施員的專用開發工作區交付到子系統整合工作區一樣,已整合的實施子系統也從子系統整合工作區交付到系統整合工作區。

人員配備

有時,擔任整合員的個人還可以擔任實施員或測試員。例如,如果專案較小,或者是在子系統級別上進行整合,就可以讓同一個人兼任整合員和測試員,以做到有效地利用人力資源。實際上,對於子系統級別的整合(和測試),一個人就可以兼任實施員、整合員和測試員的角色。但是,對於系統級別的整合,建議應由獨立的團隊來執行整合和測試。

3.3. 測試員角色集

測試員角色集用於組織主要從事軟體測試的各種角色。

角色

· 測試設計員

· 測試員

3.3.1. 測試設計員

測試設計員是測試中的主要角色。該角色負責對測試進行計劃、設計、實施和評估,包括:

· 生成測試計劃和測試模型

· 執行測試過程

· 評估測試範圍和測試結果,以及測試的有效性

· 生成測試評估摘要

人員配備

測試設計員應具備的相應技能和知識包括:

· 瞭解系統或所測試的應用程式

· 瞭解測試及測試自動化工具

· 具備診斷和解決問題的技能

· 程式設計技能(最好具備)

3.3.2. 測試員

測試員負責執行測試,其職責包括:

· 設定和執行測試

· 評估測試執行過程並修改錯誤

人員配備

測試員應具備的知識和技能可能會因為他們所執行的測試型別和/或測試階段的不同而有所差異。例如,在執行效能測試或整合階段的測試時,需要更高階的技能。在執行功能測試或系統測試階段的測試時,則不需要太高階的技能。

以下是測試員所需知識和技能的一些標準:

高階測試員:

· 瞭解系統或所測試的應用程式

· 瞭解聯網和系統構架

· 瞭解測試及測試自動化工具

· 具備診斷和解決問題的技能

· 程式設計技能(必備)

初級測試員:

· 瞭解系統或所測試的應用程式

· 瞭解測試及測試自動化工具

· 具備診斷和解決問題的技能

· 程式設計技能(最好具備)

3.4. 經理角色集

經理角色集用於組織主要從事軟體工程流程的管理與配置的各種角色。

角色

· 變更控制經理

· 配置經理

· 部署經理

· 流程工程師

· 專案經理

· 專案複審員

3.4.1. 變更控制經理

變更控制經理這一角色負責對變更控制過程進行監督。此角色通常由配置(或變更)控制委員會 (CCB) 來擔任,該委員會應該由有關各方(包括客戶、開發人員和使用者)的代表組成。在小型專案中,專案經理或軟體構架設計師一人即可承擔此角色。


3.4.2. 配置經理

配置經理負責為產品開發團隊提供全面的配置管理 (CM) 基礎設施和環境。CM 的作用是支援產品開發行為,使開發人員和整合員有適當工作區來構建和測試其工件,並且使所有工件均可根據需要包含在部署單元中。配置經理還必須確保
CM 環境有利於進行產品複審、更改和缺陷跟蹤等活動。配置經理還負責撰寫 CM 計劃並彙報基於“變更請求”的進度統計資訊。

3.4.3. 部署經理

部署經理負責制定向使用者群體釋出產品的計劃,並將其納入佈署計劃中。

3.4.4. 流程工程師

流程工程師對軟體開發流程本身負責。其職責包括在專案開始前配置流程,並在開發工作過程中不斷改進流程。

人員配備

擔任流程工程師的人員需要具有廣博的軟體開發知識。良好的溝通技巧是對擔任此角色的人員的基本要求。

3.4.5. 專案經理

專案經理負責分配資源,確定優先順序,協調與客戶和使用者之間的溝通。總而言之,就是儘量使專案團隊一直集中於正確的目標。專案經理還要建立一套工作方法,以確保專案工件的完整性和質量。


3.4.6. 專案複審員

專案複審員負責在專案生命週期中的主要複審點處評估專案計劃工件和專案評估工件。在這些複審點發生的是非常重要的複審事件,因為在它們所標誌的時間點處,如果計劃不夠充分或者進展無法令人滿意,專案很可能會就此取消。

人員配備

專案複審員應具有多年的業務(包括合同制訂及談判)、技術和軟體專案管理的經驗,並具有業務管理級別的決策能力。專案複審員還應對風險管理原理具有出色的理解力,並且善於在資訊不全或不明確的環境下進行評估。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7942439/viewspace-21270/,如需轉載,請註明出處,否則將追究法律責任。

相關文章