軟件項目管理的兩大主流管理模式:傳統項目管理(預測型項目管理)、敏捷項目管理;框架
傳統項目管理(預測型項目管理):瀑布式、部分迭代開發模式,要求在項目一開始,需求足夠明確、文檔足夠規範、迭代過程需求變動越頻繁,其對項目形成的災難每每越大。相信不少IT團隊都嘗試過,這裏不贅述。ide
敏捷項目管理做爲新興的項目管理模式,簡化了傳統項目的流程,從繁瑣的流程和詳盡的文檔中解脫出來。但並不表明敏捷不作計劃,有不少人的觀念「敏捷不作計劃」這是錯誤,否「probacklog、scrum、看板、燃起圖、燃盡圖、用戶故事等等」方法和工做又是爲誰提供工做依據?敏捷即迭代、增量交付,其中表明XP、Scrum是用的最多的方法,其核心思想:擁抱變化,經過sprint迭代快速向客戶交付可用的軟件,並經過反饋來肯定產品的方向,使產品利益最大化。測試
1.管理流程blog
完整的項目管理流程包含五個過程:啓動、規劃、執行、監控、收尾;項目管理
敏捷的項目管理框架:構想、推測、探索、適應、結束。資源
傳統項目(簡稱傳統):對範圍、速度、成本、質量、人力資源、溝通、風險、採購、干係人進行管理,每一個環節都存在啓動、規劃、執行、監控、收尾。企圖經過以不變應萬變,軟件行業屬於高風險性行業,擁抱變化、適應變化纔是一條好的路子。開發
敏捷型項目(簡稱敏捷):簡化了繁瑣的流程和詳盡的文檔,主張自組織小隊、集中辦公、面對面交流。以Scrum爲表明:簡單、持續集成、不斷交付、價值優先、擁抱變化的原則面對激烈變化的市場和不斷髮展的技術。在敏捷中,項目被化成不一樣的等級:戰略、產品、發佈、迭代、每日站會。而交付也劃分幾個等級:必須有的、應該有的、可能有的、不會有的。經過迭代週期,對需求進行合理分割,並經過一個個基於時間盒的Sprint爲發佈作保障,下降軟件風險及提升軟件利益;文檔
傳統鐵三角:範圍、成本、進度(範圍不可變)產品
敏捷鐵三角:進度、範圍、成本(進度不可變)it
敏捷三角:價值、質量、三重約束(成本、進度、範圍)
敏捷三角形:
一、價值目標:提供可交付的產品
二、質量目標:提供可靠的、適應性強的可交付產品
三、約束目標:在可接受的約束內,實現價值和質量目標
2、風險控制
項目風險在任何一個項目中都存在,一旦發生,會對項目形成積極或消極的影響。
傳統的項目管理:力求從源頭杜絕風險,經過流程、詳盡的文檔來規劃風險管理、識別風險、並對風險進行定性/定量分析,給風險出解決方案。軟件行業存在不肯定性,可能來自客戶、市場、技術過期等突發因素,穩紮穩打的方式以沒法支撐快速的變化和響應。
敏捷項目管理:敏捷項目管理不一樣於傳統項目管理,開發評估時以工做量爲導向而非時間爲導向。在開發任務評估時採用相對估算而非絕對估算,其目的爲風險預留對應的空間。同時Scrum集合一線人員、產品負責人、客戶、利益相關者的參與,經驗分享、集思廣益將小型團隊轉化爲獨立的管理者,採用靈活機動的模式,更有利的解決問題。
總結:無論傳統、敏捷,沒有那個更好,只有符合當下團隊的纔是最好的。
舉例:
甜甜圈爲例:敏捷團隊會快速向市場推出一個最低可用的產品,編寫故事->迭代、交付->投放市場->收集反饋->更改計劃->迭代,增量交付;依次類推;