本書以案例的形式講述軟件項目管理過程,借助路線圖講述項目管理的理論、方法以及技巧,覆蓋項目管理十大知識域的相關內容,并重點強調了軟件項目管理實施過程。
軟件技術發展異常迅猛,從最初的命令行編程,到面向過程、面向對象、面向服務編程,再到面向業務計算,已經發生了翻天覆地的變化。這就要求軟件人員不能只是低頭編程,而要站在更高的位置,從更遠的角度看軟件發展。針對一個軟件項目,好的軟件人員應該高瞻遠矚,學會規劃,保證以最小的代價獲得項目的成功,保持項目的技術先進性。新技術的發展使得項目的成功更多地依賴軟件管理過程,因此,軟件項目管理者應該具備更高的素質,要站在發展的角度規劃和管理軟件項目,緊隨技術發展潮流,培養前瞻意識和超前意識。
本書的前兩版在實踐中深受廣大教師和學生好評,在近百所高校得到采用,而且反響很好。在教材使用過程中,很多教材使用者提出了很好的意見和建議,第3版在前兩版的基礎上修訂而成,在修訂過程中吸收了教材使用者的一些意見和建議。在此感謝下面老師(按照姓氏筆畫順序)在教材使用中給出的建議和幫助:陳瑤(北京工業大學)、胡景凡(北京信息科技大學)、高曉燕(山東商務職業學院)、侯海霞(太原大學)、樓蘭芳(煙臺大學)、李愛民(西安理工大學)、李建卓(寶雞文理學院)、李麗萍(上海第二工業大學)、李學俊(安徽大學)、劉偉(西安郵電大學)、劉雪梅(北京城市大學)、劉智(重慶理工大學)、劉志明(南華大學)、馬樂(華南理工大學)、饒國政(天津大學)、榮國平(南京大學)、蘇藝(遼寧師范大學)、舒新峰(西安郵電大學)、唐承亮(湖南工業大學)、王家樂(浙江工商大學)、王曉霞(湖南工學院)、吳金紅(武漢紡織大學)、閆波(北京理工大學)、于本海(山東工商學院研究生處)、于勇(南京郵電大學)、原旭(大連理工大學)、張彭(成都理工大學)、鄭炅(新疆大學)、朱連章(中國石油大學)、朱明放(江蘇技術師范大學)、周星(河南大學)等等。
本書知識結構完整、邏輯清晰、案例貫穿始終,每章結合案例分析給出了課程實踐要求。本書講述如何管理軟件項目以保證項目的成功。如果想了解如何構建軟件項目,可以參考本人編寫的另一本教材《軟件工程案例教程》(ISBN978-7-111-35318-8,由機械工業出版社出版)。
本書第3版由韓萬江和姜立新編寫,在編寫過程中參考了前兩版教材使用者的反饋和建議,在此對他們表示衷心感謝!另外,本人也要感謝鄧楠潔、朱萌、張大雷、劉語涵、李偉健、李葉等學生做出的貢獻。
當然,由于作者水平有限,書中難免有疏漏之處,誠請各位讀者批評指正,并希望讀者一如既往地將意見、建議和體會反饋給我,以便日后版本修訂時參考。
韓萬江 2015年4月于北京
前言
第1章 軟件項目管理概述
1.1 項目與軟件項目
1.1.1 項目及其特征
1.1.2 項目群與項目、項目與子項目的關系
1.1.3 軟件項目
1.1.4 軟件項目要素組成
1.1.5 項目目標實現的制約因素
1.2 項目管理
1.2.1 項目管理背景
1.2.2 項目管理定義
1.2.3 軟件項目管理的特征及重要性
1.3 項目管理知識體系
1.3.1 項目管理的知識領域
1.3.2 項目管理知識體系的標準化過程組
1.4 過程管理與軟件項目管理的關系
1.4.1 軟件過程定義
1.4.2 過程管理在軟件項目中的作用
1.4.3 過程管理與項目管理的關系
1.4.4 軟件工程技術的發展趨勢
1.5 本書的組織結構
1.6 案例分析及課程實踐說明
1.7 小結
1.8 練習題
第一篇 項目初始
第2章 項目確立
2.1 項目評估
2.2 項目立項
2.2.1 立項流程
2.2.2 自造-購買決策
2.3 項目招投標
2.3.1 甲方招標書定義
2.3.2 乙方項目分析與競標準備
2.3.3 招標過程
2.3.4 合同簽署
2.4 項目授權
2.4.1 項目章程
2.4.2 項目經理的職責
2.5 “醫療信息商務平臺”招投標案例分析
2.5.1 甲方招標書
2.5.2 乙方投標書
2.5.3 項目合同
2.6 課程實踐一:項目招投標
2.7 小結
2.8 練習題
第3章 生存期模型
3.1 瀑布模型
3.2 V模型
3.3 快速原型模型
3.4 增量式模型
3.5 漸進式階段模型
3.6 敏捷生存期模型
3.6.1 Scrum
3.6.2 XP
3.6.3 OpenUP
3.7 “醫療信息商務平臺”生存期模型案例分析
3.8 課程實踐二:生存期模型確定
3.9 小結
3.10 練習題
第二篇 項目計劃
第4章 軟件項目范圍計劃——需求管理
4.1 軟件需求定義
4.2 需求管理過程
4.2.1 需求獲取
4.2.2 需求分析
4.2.3 需求規格編寫
4.2.4 需求驗證
4.2.5 需求變更
4.3 需求分析方法
4.3.1 結構化分析方法
4.3.2 面向對象的用例分析方法
4.3.3 功能列表方法
4.4 “醫療信息商務平臺”需求案例分析
4.4.1 需求規格說明書
4.4.2 需求變更控制系統
4.5 課程實踐三:項目需求管理
4.6 小結
4.7 練習題
第5章 軟件項目范圍計劃——任務分解
5.1 任務分解定義
5.1.1 WBS
5.1.2 工作包
5.1.3 任務分解的形式
5.2 任務分解過程
5.2.1 任務分解的基本步驟
5.2.2 任務分解的標準
5.2.3 WBS字典
5.3 任務分解方法
5.4 任務分解結果
5.4.1 任務分解結果的檢驗
5.4.2 任務分解的重要性
5.5 “醫療信息商務平臺”任務分解案例分析
5.6 課程實踐四:項目任務分解
5.7 小結
5.8 練習題
第6章 軟件項目成本計劃
6.1 成本估算概述
6.1.1 項目規模與成本的關系
6.1.2 成本估算的定義
6.2 成本估算過程
6.3 成本估算方法
6.3.1 代碼行估算法
6.3.2 功能點估算法
6.3.3 用例點估算法
6.3.4 類比估算法
6.3.5 自下而上估算法
6.3.6 參數模型估算法
6.3.7 參數模型估算法——COCOMO模型
6.3.8 參數模型估算法——Walston-Felix模型
6.3.9 專家估算法
6.3.10 猜測估算法
6.3.11 估算方法綜述
6.4 成本預算
6.5 “醫療信息商務平臺”成本估算案例分析
6.5.1 用例點估算過程
6.5.2 自下而上成本估算過程
6.6 課程實踐五:項目成本估算
6.7 小結
6.8 練習題
第7章 軟件項目進度計劃
7.1 關于進度估算
7.2 任務定義
7.3 任務關聯關系
7.3.1 任務之間的關系
7.3.2 任務間關系的依據
7.4 進度管理圖示
7.4.1 甘特圖
7.4.2 網絡圖
7.4.3 里程碑圖
7.4.4 資源圖
7.5 任務資源估計
7.6 任務歷時估計
7.6.1 定額估算法
7.6.2 經驗導出模型
7.6.3 工程評估評審技術
7.6.4 專家估計方法
7.6.5 類推估計方法
7.6.6 模擬估計方法
7.6.7 基于承諾的進度估計方法
7.6.8 Jones的一階估計準則
7.7 進度計劃編排
7.7.1 關鍵路徑法
7.7.2 時間壓縮法
7.7.3 資源平衡方法
7.7.4 管理預留
7.7.5 敏捷計劃
7.8 軟件項目進度問題模型
7.8.1 項目需要的技能
7.8.2 項目中的任務
7.8.3 項目中的人員
7.8.4 SPSP模型解決方案
7.8.5 項目進度計劃的優化
7.9 “醫療信息商務平臺”項目進度計劃案例分析
7.9.1 迭代計劃
7.9.2 Sprint計劃
7.9.3 Sprint待開發事項列表
7.9.4 Sprint預算
7.10 課程實踐
7.10.1 課程實踐六:網絡圖和歷時估算
7.10.2 課程實踐七:項目進度編排
7.11 小結
7.12 練習題
第8章 軟件項目質量計劃
8.1 質量概述
8.1.1 質量定義
8.1.2 質量與等級
8.2 質量模型
8.2.1 Boehm質量模型
8.2.2 McCall質量模型
8.2.3 ISO/IEC 9126質量模型
8.3 質量管理過程
8.3.1 質量計劃
8.3.2 質量保證
8.3.3 質量控制
8.4 質量計劃開發
8.4.1 質量成本
8.4.2 質量計劃的方法
8.4.3 質量計劃的編寫
8.5 軟件質量改善的建議
8.6 “醫療信息商務平臺”質量計劃案例分析
8.7 課程實踐八:項目質量計劃
8.8 小結
8.9 練習題
第9章 軟件配置管理計劃
9.1 配置管理概述
9.1.1 配置管理定義
9.1.2 配置管理在軟件開發中的作用
9.2 配置管理過程
9.2.1 配置項標識、跟蹤
9.2.2 配置管理環境建立
9.2.3 基線變更管理
9.2.4 配置審計
9.2.5 配置狀態統計
9.3 配置管理計劃
9.3.1 配置管理計劃角色
9.3.2 配置管理計劃模板
9.4 配置管理工具
9.5 “醫療信息商務平臺”配置管理計劃案例分析
9.6 課程實踐九:配置管理計劃
9.7 小結
9.8 習題
第10章 軟件項目人員與溝通計劃
10.1 團隊人員計劃
10.1.1 項目組織結構
10.1.2 責任分配矩陣
10.1.3 人員管理計劃
10.2 項目干系人計劃
10.2.1 識別項目干系人
10.2.2 按重要性對干系人進行分析
10.2.3 按支持度對干系人進行分析
10.2.4 項目干系人分析坐標格
10.2.5 項目干系人計劃
10.3 項目溝通計劃
10.3.1 溝通方式
10.3.2 溝通渠道
10.3.3 項目溝通計劃
10.4 “醫療信息商務平臺”人員與溝通計劃案例分析
10.4.1 團隊人員計劃
10.4.2 項目干系人計劃
10.4.3 項目溝通計劃
10.5 課程實踐十:團隊人員與項目溝通計劃
10.6 小結
10.7 習題
第11章 軟件項目風險計劃
11.1 風險概念
11.1.1 風險定義
11.1.2 風險類型
11.1.3 風險管理過程
11.2 風險識別
11.2.1 風險識別的方法
11.2.2 風險識別的結果
11.3 風險評估
11.3.1 風險評估的方法
11.3.2 風險評估的結果
11.4 風險應對策略
11.4.1 回避風險
11.4.2 轉移風險
11.4.3 損失控制
11.4.4 自留風險
11.5 風險規劃
11.6 “醫療信息商務平臺”風險計劃案例分析
11.7 課程實踐十一:項目風險計劃
11.8 小結
11.9 練習題
第12章 軟件項目合同計劃
12.1 項目采購
12.2 合同
12.2.1 合同定義
12.2.2 合同條款
12.3 合同類型
12.3.1 成本補償類合同
12.3.2 固定價格類合同
12.3.3 單價類合同
12.4 軟件外包
12.5 合同計劃
12.6 “醫療信息商務平臺”合同計劃案例分析
12.7 小結
12.8 練習題
第13章 項目集成計劃
13.1 項目集成概念
13.1.1 項目目標的集成
13.1.2 平衡項目四要素關系
13.2 集成計劃
13.2.1 項目集成計劃的內容
13.2.2 項目集成計劃模板
13.3 “醫療信息商務平臺”項目集成計劃案例分析
13.4 課程實踐十二:項目集成計劃
13.5 小結
13.6 練習題
第三篇 項目執行控制
第14章 項目集成計劃執行控制
14.1 項目集成管理流程
14.2 項目數據采集與度量分析
14.3 集成變更管理
14.4 “醫療信息商務平臺”項目數據采集案例分析
14.4.1 項目工時采集
14.4.2 人力規模統計
14.4.3 缺陷數據采集
14.5 小結
14.6 練習題
第15章 項目核心計劃執行控制
15.1 范圍計劃執行控制
15.1.1 范圍計劃的執行
15.1.2 需求變更控制
15.1.3 范圍核實
15.2 時間、成本執行控制
15.2.1 時間、成本控制要點
15.2.2 圖解控制法
15.2.3 掙值分析法
15.2.4 敏捷進度控制
15.2.5 偏差管理
15.3 質量計劃執行控制
15.3.1 質量保證的管理
15.3.2 質量控制的管理
15.3.3 質量保證與質量控制的關系
15.4 “醫療信息商務平臺”核心計劃執行控制案例分析
15.4.1 范圍計劃的執行控制
15.4.2 時間、成本的執行控制
15.4.3 質量計劃的執行控制
15.5 課程實踐
15.5.1 課程實踐十三:進度成本控制
15.5.2 課程實踐十四:項目質量控制
15.6 小結
15.7 練習題
第16章 項目輔助計劃執行控制
16.1 團隊人員計劃的執行控制
16.1.1 項目團隊建設
16.1.2 項目成員的培訓
16.1.3 項目成員的激勵
16.2 項目干系人計劃的執行控制
16.3 項目溝通計劃的執行控制
16.3.1 項目溝通執行方式
16.3.2 溝通中沖突的解決
16.4 風險計劃的執行控制
16.5 合同計劃的執行控制
16.5.1 甲方合同管理
16.5.2 乙方合同管理
16.6 “醫療信息商務平臺”輔助計劃執行控制案例分析
16.6.1 項目干系人計劃的執行控制
16.6.2 項目溝通計劃的執行控制
16.6.3 風險計劃的執行控制
16.7 課程實踐十五:項目評審管理
16.8 小結
16.9 練習題
第四篇 項目結束
第17章 項目結束過程
17.1 合同結束
17.1.1 甲方合同結束過程
17.1.2 乙方合同結束過程
17.2 項目結束
17.2.1 項目結束過程
17.2.2 項目總結
17.3 項目管理的建議
17.3.1 常見問題
17.3.2 經驗和建議
17.4 “醫療信息商務平臺”結束過程案例分析
17.4.1 驗收計劃
17.4.2 項目驗收報告
17.4.3 項目總結
17.5 課程實踐
17.5.1 課程實踐十六:驗收答辯
17.5.2 課程實踐十七:項目總結
17.6 小結
17.7 習題
附錄 常用的項目管理模板
結束語
參考文獻