以案例的形式講述了軟件項目管理的全過程,借助路線圖講述了項目管理的理論、方法以及技巧,覆蓋項目管理十大知識域的相關內容,并重點強調了軟件項目管理實施過程。
信息產業(yè)與軟件產業(yè)的不斷發(fā)展對軟件工程技術提出了更高的要求,縱觀目前軟件產業(yè)的發(fā)展,軟件工程技術必將朝著智能化、綜合化、服務化、業(yè)務化等方向發(fā)展。軟件人員不能只是低頭編程,而要站在更高的位置,以更長遠的眼光看軟件發(fā)展。針對一個軟件項目,好的軟件人員應該高瞻遠矚,學會規(guī)劃,并以最小的代價獲得項目的成功。新技術的發(fā)展使得項目的成功更多地依賴軟件管理過程,因此軟件項目管理者應該具備更高的素質,要站在發(fā)展的角度規(guī)劃和管理軟件項目,緊跟技術發(fā)展潮流,培養(yǎng)前瞻意識和超前意識。
本書第4版基于前3版內容,在廣泛參考和吸收教材使用者的意見和建議的基礎上修訂而成。本書第4版繼續(xù)沿用前3版教材以案例貫穿始終的形式,分成“項目初始”“項目計劃”“項目執(zhí)行控制”“項目結束”“項目實踐”五篇講述軟件項目管理的實施過程, 其中“項目實踐”篇是新增加的內容。教材還完善和增加了敏捷項目管理的內容,從項目初始到項目結束乃至項目實踐的整個過程都強調了敏捷管理思路。“項目實踐”篇講述了課程實踐流程,增加了平臺工具操作及實踐結果的展示,對相關實踐環(huán)節(jié)提供了在線視頻播放的立體化功能。
本書配套的課程網站網址為http://www.icourse163.org/course/BUPT-1003557005。
本書綜合了多個學科領域,知識結構完整,邏輯清晰,案例貫穿始終,注重實效。通過學習本書,讀者可以在短時間內掌握軟件項目管理的基本知識并具備實踐能力。本書講述如何管理軟件項目以保證項目的成功,而如何構建軟件項目可以參考本書的配套教程《軟件工程案例教程:軟件項目開發(fā)實踐(第3版)》。
本書由機械工業(yè)出版社出版,書號為978-7-111-55984-9!庉嬜
本書第4版由韓萬江和姜立新編寫,在編寫過程中參考了前3版教材使用者的反饋,很多高校教師和學生給我們提出了很多很好的建議,另外,韓冰、郭士榕、孫秋生、岳鵬、孫泉、韓馀林等老師也給予我們很多的幫助和指導,在此一并表示衷心感謝!本書也得到了北京郵電大學的全力支持, 并作為學校精品教材立項,在此表示感謝!
當然,由于作者水平有限,書中難免有疏漏之處,懇請各位讀者批評指正,并希望讀者一如既往地將意見、建議和體會反饋給我,作為以后版本修訂的參考。我的E-mail是casey_han@263.net。
韓萬江
2019年2月于北京
前言
第1章 軟件項目管理概述1
1.1 項目與軟件項目1
1.1.1 項目及其特征1
1.1.2 項目群與項目、項目與子項目的關系2
1.1.3 軟件項目2
1.1.4 軟件項目組成要素3
1.1.5 項目目標實現的制約因素3
1.2 項目管理3
1.2.1 項目管理背景4
1.2.2 項目管理定義4
1.2.3 軟件項目管理的特征及重要性5
1.3 項目管理知識體系6
1.3.1 項目管理的知識領域6
1.3.2 標準化過程組13
1.4 軟件項目管理知識體系15
1.4.1 軟件過程定義15
1.4.2 過程管理在軟件項目中的作用17
1.4.3 過程管理與項目管理知識體系的關系17
1.5 敏捷項目管理18
1.5.1 軟件項目面臨的挑戰(zhàn)18
1.5.2 敏捷思維18
1.6 本書的組織結構20
1.7 小結22
1.8 練習題22
第一篇 項目初始
第2章 項目確立26
2.1 項目評估26
2.1.1 項目啟動背景26
2.1.2 可行性分析27
2.1.3 成本效益評價指標27
2.2 項目立項28
2.2.1 立項流程28
2.2.2 自造-購買決策29
2.3 項目招投標30
2.3.1 甲方招標書定義31
2.3.2 乙方項目分析與競標準備31
2.3.3 招標過程33
2.3.4 合同簽署34
2.4 項目章程35
2.4.1 項目章程的定義35
2.4.2 敏捷項目章程37
2.4.3 項目經理能力和職責37
2.5 “醫(yī)療信息商務平臺”招投標案例分析39
2.5.1 甲方招標書39
2.5.2 乙方投標書39
2.5.3 項目合同40
2.6 小結40
2.7 練習題41
第3章 生存期模型42
3.1 生存期概述42
3.1.1 生存期的定義42
3.1.2 生存期的類型42
3.2 預測型生存期模型44
3.2.1 瀑布模型44
3.2.2 V模型45
3.3 迭代型生存期模型46
3.4 增量型生存期模型47
3.5 敏捷型生存期模型49
3.5.1 Scrum50
3.5.2 XP53
3.5.3 OpenUP56
3.5.4 看板方法57
3.5.5 Scrumban方法58
3.5.6 精益模型58
3.5.7 持續(xù)交付58
3.5.8 DevOps59
3.5.9 其他敏捷模型簡介59
3.6 混合型生存期模型60
3.7 “醫(yī)療信息商務平臺”生存期模型案例分析61
3.8 小結63
3.9 練習題63
第二篇 項目計劃
第4章 軟件項目范圍計劃——需求管理66
4.1 軟件需求定義66
4.2 需求管理過程67
4.2.1 需求獲取68
4.2.2 需求分析69
4.2.3 需求規(guī)格編寫70
4.2.4 需求驗證71
4.2.5 需求變更73
4.3 傳統需求分析方法75
4.3.1 原型分析方法75
4.3.2 基于數據流建模方法76
4.3.3 基于UML建模方法77
4.3.4 功能列表方法78
4.4 敏捷項目需求分析79
4.4.1 產品待辦事項列表80
4.4.2 待辦事項列表的細化80
4.4.3 用戶故事80
4.5 “醫(yī)療信息商務平臺”需求管理案例分析81
4.5.1 需求規(guī)格說明書81
4.5.2 需求變更控制系統93
4.6 小結93
4.7 練習題93
第5章 軟件項目范圍計劃——任務分解95
5.1 任務分解定義95
5.1.1 WBS95
5.1.2 工作包97
5.1.3 任務分解的形式97
5.1.4 WBS字典98
5.2 任務分解過程與方法98
5.2.1 任務分解過程98
5.2.2 任務分解方法99
5.3 任務分解結果101
5.3.1 任務分解結果的檢驗101
5.3.2 任務分解的重要性102
5.4 敏捷項目的任務分解103
5.4.1 用戶故事分解過程103
5.4.2 敏捷分解檢驗104
5.4.3 敏捷分解結果104
5.5 “醫(yī)療信息商務平臺”任務分解案例分析104
5.6 小結106
5.7 練習題106
第6章 軟件項目成本計劃108
6.1 成本估算概述108
6.1.1 項目規(guī)模與成本的關系109
6.1.2 成本估算的定義109
6.1.3 成本估算過程109
6.2 成本估算方法110
6.2.1 代碼行估算法111
6.2.2 功能點估算法111
6.2.3 用例點估算法117
6.2.4 類比估算法120
6.2.5 自下而上估算法122
6.2.6 三點估算法122
6.2.7 參數模型估算法概述123
6.2.8 參數模型估算法——COCOMO模型124
6.2.9 參數模型估算法——COCOMO 81模型124
6.2.10 參數模型估算法——COCOMO Ⅱ模型127
6.2.11 參數模型估算法——Walston-Felix模型131
6.2.12 參數模型估算法——基于神經網絡估算131
6.2.13 專家估算法138
6.2.14 猜測估算法139
6.2.15 估算方法綜述139
6.3 敏捷項目成本估算140
6.3.1 故事點估算141
6.3.2 故事點估算標準141
6.3.3 快速故事點估算方法142
6.4 成本預算143
6.5 “醫(yī)療信息商務平臺”成本估算案例分析145
6.5.1 用例點估算過程145
6.5.2 自下而上成本估算過程146
6.6 小結148
6.7 練習題148
第7章 軟件項目進度計劃150
7.1 關于進度估算150
7.2 任務確定151
7.2.1 任務定義151
7.2.2 任務關聯