每一個流程由一個 N
階分解結構組成。核心的方法內容提供逐步說明,描述如何達成非常明確的開發目標,與這些步驟在開發生命週期內的位置無關。流程會取用這些方法元素,並聯結至針對特定專案類型所自訂的局部排列順序。因此,流程是一組局部排序的工作說明,目的是達到更高的開發目標,例如發行特定的軟體系統。流程著重在生命週期和工作順序的分解結構。
有不同類型的流程:交付流程和功能型樣。
交付流程
「交付流程」描述一套完全整合的方法,適用於執行特定類型的開發專案。「交付流程」是一個涵蓋整個開發生命週期從開到尾的流程。「交付流程」可做為規劃和執行專案的範本。提供一套完整的生命週期模型,內含預先定義的階段、反覆及活動,這些項目由依序方法內容以分解結構來詳細說明。此流程依據以往的專案或情境經驗,及/或使用開發或交付方法的最佳作法。其中透過整合的「工作」、「工作成果」及「團隊分解結構」形式,定義產生什麼、如何產生這些項目及必要的人員配置。例如,流程工程師可定義軟體開發專案的替代「交付流程」,規定不同的投入規模和必要人力、開發的軟體應用程式類型、採取的開發方法和技術等,諸如此類。雖然「交付流程」以含括整個專案為目標,但仍保留某些可依專案來靈活調整的決策。例如,分解結構定義哪些「分解元素」可出現多次或依據各自的屬性可重複,但並未規定出現多少次及多少個重複/反覆。這些決策有待專案管理人員在規劃具體專案、專案階段或專案反覆時決定。
功能型樣
「功能型樣」描述在一般流程領域中可重複使用的一群「活動」。「功能型樣」表達和傳達一個重點探討領域的流程知識,例如「規範」,且可供流程工作者直接用來做為工作指引。也可以做為建置區塊,組成「交付流程」或更大的「功能型樣」,確保妥善地重複使用和運用所表達的關鍵作法。「功能型樣」的範例可以是「使用案例型的需求管理」、「使用案例分析」,或「單元測試」。
「功能型樣」通常(但不一定)具有一個領域範圍來分解可重複使用的複雜「活動」、且對於在這些「活動」內執行「作業」的「角色」,以及使用的和產生的「工作成果」,也具有關係。功能型樣與開發生命週期的任何特定階段或反覆無關,也不應該暗喻任何關係。換句話說,型樣必須設計為可運用在「交付流程」的任意處。如此一來,可以靈活地將「活動」指派至套用此型樣的「交付流程」中的任何階段。
「功能型樣」最好設計為可以產生一或多個通用的「交付標的」。常見的配置是由「功能型樣」的每一個「活動」產生一個「交付標的」,然後由「活動」的最後一個「作業描述子」來明確地輸出此「交付標的」。這樣可讓流程工程師決定哪些是必要的「交付標的」,藉以選取「型樣」或「活動」。它也提供了簡單的整合方法:來自功能型樣的「活動」會連結至產生「活動交付項目」所需的「階段」或「反覆」。
|