軟件項(xiàng)目管理是軟件工程和項(xiàng)目管理的交叉學(xué)科,是項(xiàng)目管理的原理和方法在軟件工程領(lǐng)域的應(yīng)用。本書分為基礎(chǔ)篇、管理篇和實(shí)踐篇;A(chǔ)篇介紹了軟件產(chǎn)業(yè)和軟件項(xiàng)目管理導(dǎo)論,使讀者從整體上了解軟件項(xiàng)目管理的產(chǎn)生背景和概貌。管理篇以項(xiàng)目管理知識體系(PMBOK)為核心,圍繞著軟件項(xiàng)目的開發(fā)全過程,從軟件項(xiàng)目需求管理、軟件項(xiàng)目成本管理、軟件項(xiàng)目進(jìn)度管理、軟件項(xiàng)目風(fēng)險(xiǎn)管理、軟件項(xiàng)目配置管理、軟件項(xiàng)目資源管理、軟件項(xiàng)目質(zhì)量管理等方面對軟件項(xiàng)目中的管理問題進(jìn)行探討。實(shí)踐篇將需求管理、成本管理、進(jìn)度管理、風(fēng)險(xiǎn)管理、配置管理、資源管理和質(zhì)量管理等相對獨(dú)立的領(lǐng)域融合在軟件過程框架中,介紹了在軟件項(xiàng)目實(shí)踐中如何集中使用相關(guān)理論和技術(shù)。其中包括Rational統(tǒng)一過程、敏捷軟件開發(fā)和6σ軟件開發(fā)。
本書可作為高等學(xué)校信息、軟件、計(jì)算機(jī)科學(xué)與技術(shù)等專業(yè)的學(xué)生的教材,也可供從事軟件項(xiàng)目管理工作的人員參考。
第2版前言
軟件及信息產(chǎn)業(yè)的發(fā)展將帶動傳統(tǒng)產(chǎn)業(yè)的發(fā)展與改造,促進(jìn)國民經(jīng)濟(jì)持續(xù)、健康地發(fā)展,增強(qiáng)國際競爭力。因而,軟件產(chǎn)業(yè)快速、良性的發(fā)展具有重要意義。早在2001年,我國政府就明確提出“力爭在2010年使我國軟件產(chǎn)業(yè)的研究開發(fā)和生產(chǎn)能力達(dá)到或接近國際先進(jìn)水平”。2009年國務(wù)院通過的《電子信息產(chǎn)業(yè)調(diào)整振興規(guī)劃》更是把“提高軟件產(chǎn)業(yè)自主發(fā)展能力”確定為振興我國電子信息產(chǎn)業(yè)的三大重點(diǎn)任務(wù)之一。
20世紀(jì)60年代,軟件和硬件之間的發(fā)展的不平衡導(dǎo)致的軟件危機(jī)的產(chǎn)生,也是軟件產(chǎn)業(yè)面臨的一個(gè)亟待解決的難題,隨著科學(xué)的進(jìn)步和軟件開發(fā)技術(shù)的逐步成熟,管理在軟件產(chǎn)業(yè)中的地位突顯出來,變得越來越重要,學(xué)者們提出了用工業(yè)界工程化的思想,即軟件工程的思想去解決軟件發(fā)展中的一些問題。同樣,針對軟件產(chǎn)業(yè)中的管理問題,采用了工程中項(xiàng)目管理的思想,由此促使了軟件項(xiàng)目管理學(xué)科的出現(xiàn)。
軟件項(xiàng)目管理是軟件工程和項(xiàng)目管理的交叉學(xué)科,是項(xiàng)目管理的原理和方法在軟件工程領(lǐng)域的應(yīng)用。與一般的工程項(xiàng)目相比,軟件項(xiàng)目有其特殊性,主要體現(xiàn)在軟件產(chǎn)品的抽象性上。因此,軟件項(xiàng)目管理的難度要比一般的工程項(xiàng)目管理的難度大。
自第1版付印以來,軟件項(xiàng)目管理思想和方法有了一些新的發(fā)展; 作者對軟件項(xiàng)目管理的認(rèn)識也更加深入; 教學(xué)過程中也得到一些有價(jià)值的反饋信息。為了全面反映軟件項(xiàng)目管理的發(fā)展,作者對第1版的結(jié)構(gòu)和內(nèi)容作了較大篇幅的調(diào)整與更新,完成了本書第2版。
第2版分為基礎(chǔ)篇、管理篇和實(shí)踐篇。將第1版的第1章、第8章整合為基礎(chǔ)篇,介紹了軟件產(chǎn)業(yè)和軟件項(xiàng)目管理導(dǎo)論,使讀者從整體上了解軟件項(xiàng)目管理的產(chǎn)生背景和概貌。管理篇以項(xiàng)目管理知識體系(PMBOK)為核心,圍繞著軟件項(xiàng)目的開發(fā)全過程,從軟件項(xiàng)目需求管理、軟件項(xiàng)目成本管理、軟件項(xiàng)目進(jìn)度管理、軟件項(xiàng)目風(fēng)險(xiǎn)管理、軟件項(xiàng)目配置管理、軟件項(xiàng)目資源管理、軟件項(xiàng)目質(zhì)量管理等方面對軟件項(xiàng)目中的管理問題進(jìn)行探討。其中,第1版的第3章拆分為軟件項(xiàng)目成本管理和軟件項(xiàng)目進(jìn)度管理兩章; 第1版第6章的CMM進(jìn)化為第2版第8章的CMMI。實(shí)踐篇將需求管理、成本管理、進(jìn)度管理、風(fēng)險(xiǎn)管理、配置管理、資源管理和質(zhì)量管理等相對獨(dú)立的領(lǐng)域融合在軟件過程框架中,介紹了在軟件項(xiàng)目實(shí)踐中如何集中使用相關(guān)理論和技術(shù)。其中包括Rational統(tǒng)一過程、敏捷軟件開發(fā)和6σ軟件開發(fā)。對第1版的大部分內(nèi)容,結(jié)合技術(shù)的最新發(fā)展也進(jìn)行了全面的更新。
豐富的案例故事和案例分析也是第2版的一個(gè)特色。管理篇的每章都通過一個(gè)案例故事引出本章主要內(nèi)容,并將案例故事的解析穿插在理論介紹中,理論結(jié)合實(shí)踐。全書的每一章都包含多個(gè)完整的案例分析,有正面的成功案例,也有反面的失敗案例。通過案例分析,強(qiáng)化每一章的理論知識,吸取經(jīng)驗(yàn),反思教訓(xùn)。
在本書的編寫過程中,得到了清華大學(xué)信息學(xué)院、軟件學(xué)院、計(jì)算機(jī)科學(xué)與技術(shù)系、西安交通大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系、電子商務(wù)研究所、計(jì)算機(jī)軟件研究所許多教師的支持和指教; 同時(shí)也得到了清華大學(xué)出版社的大力支持。我們在此表示衷心的感謝。本書的編寫參考了大量的文獻(xiàn)和互聯(lián)網(wǎng)資源,我們對所有這些文獻(xiàn)著作者和網(wǎng)站版權(quán)所有者表示真誠的謝意。
本書由覃征教授確定研究內(nèi)容和整體結(jié)構(gòu)并審核,第一、二篇由唐晶編寫,第三篇由徐文華編寫并統(tǒng)稿,韓毅博士也參加了本書的編寫與審核工作。
由于水平有限,加之軟件產(chǎn)業(yè)的發(fā)展非常迅速,書中難免有疏漏和不妥之處,敬請讀者批評指正。
編者
2009年6月于清華園
目錄
第一篇基礎(chǔ)篇
第1章軟件項(xiàng)目管理導(dǎo)論
1.1軟件市場
1.1.1軟件商品特征
1.1.2軟件的成本
1.1.3軟件的定價(jià)
1.1.4軟件市場的壟斷現(xiàn)象
1.1.5軟件市場的發(fā)展現(xiàn)狀
1.2軟件產(chǎn)業(yè)
1.2.1軟件產(chǎn)業(yè)的特點(diǎn)
1.2.2軟件產(chǎn)業(yè)在國民經(jīng)濟(jì)中的地位
1.2.3國外軟件產(chǎn)業(yè)發(fā)展策略
1.2.4資料: 印度新經(jīng)濟(jì)產(chǎn)業(yè)
1.2.5對我國軟件產(chǎn)業(yè)發(fā)展策略的認(rèn)識
1.3軟件工程
1.3.1軟件工程定義
1.3.2軟件工程框架
1.3.3軟件工程模型
1.4項(xiàng)目管理框架
1.4.1項(xiàng)目與項(xiàng)目管理
1.4.2項(xiàng)目管理知識體系
1.4.3項(xiàng)目管理學(xué)科的發(fā)展
1.5軟件項(xiàng)目管理
1.5.1軟件項(xiàng)目產(chǎn)品的特點(diǎn)
1.5.2軟件項(xiàng)目失控的原因
1.5.3軟件項(xiàng)目管理的內(nèi)容
1.6小結(jié)
第二篇管理篇
第2章軟件項(xiàng)目需求管理
案例故事
2.1需求工程
2.1.1軟件需求概念
2.1.2軟件需求層次
2.1.3軟件需求質(zhì)量評價(jià)
2.1.4需求工程發(fā)展歷程
2.1.5需求工程研究內(nèi)容
2.2需求開發(fā)
2.2.1需求開發(fā)活動
2.2.2需求獲取
2.2.3需求分析
2.2.4編寫需求文檔
2.2.5需求驗(yàn)證
2.2.6案例: 某公司“船代”項(xiàng)目的需求開發(fā)
2.3需求管理
2.3.1需求管理的必要性
2.3.2需求管理的困難性
2.3.3需求管理的目標(biāo)和原則
2.3.4需求管理活動
2.3.5需求變更管理
2.3.6需求狀態(tài)
2.3.7需求文檔版本控制
2.3.8需求跟蹤
2.3.9案例: 需求變更的代價(jià)
2.4案例故事解析
2.4.1需求開發(fā)的注意事項(xiàng)
2.4.2需求管理的注意事項(xiàng)
2.5小結(jié)
第3章軟件項(xiàng)目成本管理
案例故事
3.1概述
3.1.1成本
3.1.2成本管理
3.1.3成本估算的時(shí)機(jī)
3.2軟件項(xiàng)目規(guī)模估算
3.2.1WBS
3.2.2LOC估計(jì)
3.2.3FP估計(jì)
3.2.4PERT估計(jì)
3.3軟件項(xiàng)目成本估算
3.3.1軟件生產(chǎn)率估算
3.3.2軟件項(xiàng)目成本估算方法
3.3.3軟件項(xiàng)目成本估算模型
3.3.4軟件項(xiàng)目成本估算步驟
3.3.5軟件項(xiàng)目成本預(yù)算制訂
3.3.6案例: 過分樂觀的估算
3.4軟件項(xiàng)目成本監(jiān)控
3.4.1成本管理常見問題
3.4.2軟件項(xiàng)目成本監(jiān)控要素
3.4.3贏得值分析法
3.4.4案例: 某項(xiàng)目第4月度成本控制狀態(tài)報(bào)告
3.5案例: 精確到螺絲釘?shù)某杀究刂?br />
3.6案例故事解析
3.7小結(jié)
第4章軟件項(xiàng)目進(jìn)度管理
案例故事
4.1概述
4.1.1時(shí)間管理原則
4.1.2時(shí)間管理技巧
4.1.3軟件項(xiàng)目進(jìn)度管理內(nèi)容
4.1.4項(xiàng)目活動定義
4.2項(xiàng)目活動排序和歷時(shí)估計(jì)
4.2.1確定活動順序
4.2.2網(wǎng)絡(luò)圖
4.2.3甘特圖
4.2.4項(xiàng)目歷時(shí)估計(jì)
4.2.5案例: 應(yīng)用PERT估算項(xiàng)目歷時(shí)
4.3制訂項(xiàng)目計(jì)劃
4.4項(xiàng)目進(jìn)度監(jiān)控
4.5案例: 某軟件研發(fā)的項(xiàng)目計(jì)劃和進(jìn)度控制
4.6案例故事解析
4.7小結(jié)
第5章軟件項(xiàng)目風(fēng)險(xiǎn)管理
案例故事
5.1概述
5.1.1風(fēng)險(xiǎn)
5.1.2軟件風(fēng)險(xiǎn)
5.1.3軟件項(xiàng)目風(fēng)險(xiǎn)管理
5.1.4軟件項(xiàng)目風(fēng)險(xiǎn)管理的意義
5.2風(fēng)險(xiǎn)識別
5.2.1風(fēng)險(xiǎn)識別依據(jù)
5.2.2常見軟件風(fēng)險(xiǎn)
5.2.3風(fēng)險(xiǎn)識別過程
5.2.4風(fēng)險(xiǎn)識別方法與技術(shù)
5.2.5案例: 英達(dá)公司用TOP10法識別項(xiàng)目風(fēng)險(xiǎn)
5.3風(fēng)險(xiǎn)分析
5.3.1風(fēng)險(xiǎn)分析過程
5.3.2風(fēng)險(xiǎn)分析技巧與工具
5.3.3風(fēng)險(xiǎn)分析的成果
5.4風(fēng)險(xiǎn)跟蹤與應(yīng)對
5.4.1風(fēng)險(xiǎn)跟蹤的目標(biāo)和依據(jù)
5.4.2風(fēng)險(xiǎn)跟蹤的成果
5.4.3風(fēng)險(xiǎn)跟蹤的過程
5.4.4風(fēng)險(xiǎn)應(yīng)對策略
5.4.5風(fēng)險(xiǎn)應(yīng)對過程
5.4.6案例: 金融行業(yè)使用容災(zāi)系統(tǒng)有效應(yīng)對突發(fā)事件
5.5風(fēng)險(xiǎn)管理驗(yàn)證
5.6案例: 風(fēng)險(xiǎn)管理保障奧運(yùn)場館建設(shè)
5.7案例故事解析
5.8小結(jié)
第6章軟件項(xiàng)目配置管理
案例故事
6.1概述
6.1.1基本概念
6.1.2軟件配置管理定義
6.1.3軟件配置管理過程
6.1.4軟件配置管理過程活動
6.2配置管理策劃
6.2.1軟件配置管理組織
6.2.2軟件配置管理職責(zé)
6.2.3軟件配置管理文件體系
6.2.4配置管理計(jì)劃的大綱
6.3配置管理功能
6.3.1配置標(biāo)識
6.3.2版本控制
6.3.3變更管理
6.3.4配置狀態(tài)報(bào)告
6.3.5案例: Kevin團(tuán)隊(duì)使用配置管理加快開發(fā)速度
6.4配置審核
6.4.1配置審核概念
6.4.2配置審核內(nèi)容
6.4.3配置審核的種類
6.4.4軟件交付
6.4.5軟件配置管理的功能表
6.5基于構(gòu)件的配置管理
6.5.1軟件復(fù)用
6.5.2軟件構(gòu)件技術(shù)
6.5.3基于構(gòu)件的版本管理
6.5.4基于構(gòu)件的配置管理
6.5.5案例: 河電集團(tuán)某研究所的系統(tǒng)集成
6.6案例故事解析
6.7小結(jié)
第7章軟件項(xiàng)目資源管理
案例故事
7.1人力資源管理
7.1.1人力資源管理概念
7.1.2人力資源分析與策劃
7.1.3人力資源的獲取
7.1.4團(tuán)隊(duì)組織和分工
7.1.5團(tuán)隊(duì)建設(shè)
7.1.6人力資源評估
7.1.7案例: 諾基亞如何建設(shè)優(yōu)秀團(tuán)隊(duì)
7.2軟件資源管理
7.2.1軟件資源基本概念
7.2.2軟件資源的復(fù)用方式
7.2.3軟件復(fù)用的粒度
7.2.4可復(fù)用軟件資源的管理
7.2.5CASE工具及其管理
7.3硬件資源管理
7.3.1硬件資源管理概念
7.3.2硬件設(shè)備的經(jīng)濟(jì)管理
7.3.3硬件設(shè)備的技術(shù)管理
7.4案例故事解析
7.5小結(jié)
第8章軟件項(xiàng)目質(zhì)量管理
案例故事
8.1質(zhì)量管理的概念
8.1.1軟件質(zhì)量
8.1.2軟件產(chǎn)品質(zhì)量與過程質(zhì)量
8.1.3軟件質(zhì)量保證
8.2軟件評審
8.3軟件測試
8.3.1軟件測試的概念
8.3.2軟件測試類型
8.3.3測試的原則
8.3.4測試計(jì)劃
8.3.5測試用例的開發(fā)
8.3.6測試的執(zhí)行與報(bào)告
8.3.7案例: 微軟的軟件測試技術(shù)
8.4軟件缺陷跟蹤
8.5軟件缺陷預(yù)防
8.5.1問題的提出
8.5.2缺陷預(yù)防的原則
8.5.3缺陷預(yù)防的步驟
8.6ISO 9000:2000質(zhì)量認(rèn)證體系
8.6.1ISO 9000的概念
8.6.2ISO 9000標(biāo)準(zhǔn)的8項(xiàng)質(zhì)量管理原則
8.6.3獲得ISO 9000認(rèn)證的條件和程序
8.7能力成熟度集成模型CMMI
8.7.1CMM的提出
8.7.2CMM的基本內(nèi)容
8.7.3從CMM到CMMI
8.7.4CMMI的表示
8.7.5CMMI過程的可視性
8.7.6CMMI的實(shí)施
8.7.7CMMI的評估
8.8案例故事解析
8.9小結(jié)
第三篇實(shí)踐篇
第9章Rational統(tǒng)一過程
9.1什么是Rational統(tǒng)一過程
9.2核心概念
9.2.1架構(gòu)
9.2.2工作流程
9.2.3角色
9.2.4活動
9.2.5步驟
9.2.6工件
9.36個(gè)最佳實(shí)踐
9.3.1迭代式的軟件開發(fā)
9.3.2需求管理
9.3.3使用基于構(gòu)件的架構(gòu),以架構(gòu)為中心的過程
9.3.4可視化軟件建模
9.3.5驗(yàn)證軟件質(zhì)量
9.3.6控制軟件變更
9.3.7案例: 利用視圖和用例來捕獲和描述需求
9.4RUP的二維結(jié)構(gòu)
9.4.1動態(tài)結(jié)構(gòu): 階段和迭代時(shí)間軸
9.4.2靜態(tài)結(jié)構(gòu): 工作流程軸
9.5核心工作流程
9.5.1業(yè)務(wù)建模工作流程
9.5.2需求工作流程
9.5.3分析和設(shè)計(jì)工作流程
9.5.4實(shí)現(xiàn)工作流程
9.5.5測試工作流程
9.5.6部署工作流程
9.5.7配置和變更管理工作流程
9.5.8項(xiàng)目管理工作流程
9.5.9環(huán)境工作流程
9.6小結(jié)
第10章敏捷軟件開發(fā)
10.1敏捷軟件開發(fā)的誕生
10.2敏捷軟件開發(fā)宣言
10.3敏捷宣言遵循的原則
10.4對比其他的方法
10.5敏捷軟件開發(fā)的適用性
10.6極限編程概述
10.6.1價(jià)值觀
10.6.2原則
10.6.3行為
10.6.4實(shí)踐
10.6.5極限編程小結(jié)
10.7Scrum
10.7.1一個(gè)簡單的框架
10.7.2Scrum過程
10.7.33個(gè)角色
10.7.43項(xiàng)活動
10.7.53種工具
10.7.6自適應(yīng)的項(xiàng)目管理
10.7.7Scrum較傳統(tǒng)開發(fā)模型的優(yōu)點(diǎn)
10.7.8案例: Scrum在開發(fā)中的應(yīng)用
10.8小結(jié)
第11章將6σ管理引入軟件開發(fā)
11.16σ的故事
11.26σ理論基礎(chǔ)
11.2.1平均值屏蔽了問題,波動成了焦點(diǎn)
11.2.2“波動”問題的數(shù)學(xué)描述
11.2.36σ的數(shù)學(xué)含義
11.2.4其他術(shù)語
11.36σ管理
11.4使用6σ改善軟件開發(fā)過程
11.4.1項(xiàng)目啟動和問題定義階段
11.4.2系統(tǒng)分析
11.4.3系統(tǒng)設(shè)計(jì)
11.4.4構(gòu)造
11.4.5測試和質(zhì)量保證
11.4.6交付和維護(hù)
11.5案例: 如何實(shí)施DMAIC過程
11.5.1定義階段
11.5.2度量階段
11.5.3分析階段
11.5.4改進(jìn)階段
11.5.5控制階段
11.6小結(jié)
附錄A可行性分析報(bào)告
附錄B需求規(guī)格說明書
附錄C項(xiàng)目開發(fā)計(jì)劃
附錄D概要設(shè)計(jì)說明書
附錄E詳細(xì)設(shè)計(jì)說明書
附錄F用戶操作手冊
附錄G測試計(jì)劃
附錄H測試分析報(bào)告
附錄I程序維護(hù)手冊
附錄J項(xiàng)目總結(jié)報(bào)告
附錄KISO 9001:2000標(biāo)準(zhǔn)的內(nèi)容
參考文獻(xiàn)