軟件項(xiàng)目管理是軟件工程和項(xiàng)目管理的交叉學(xué)科,是項(xiàng)目管理的原理和方法在軟件工程領(lǐng)域的應(yīng)用。本書(shū)分為基礎(chǔ)篇、管理篇和實(shí)踐篇;A(chǔ)篇介紹了軟件產(chǎn)業(yè)和軟件項(xiàng)目管理導(dǎo)論,使讀者從整體上了解軟件項(xiàng)目管理的產(chǎn)生背景和概貌。管理篇以項(xiàng)目管理知識(shí)體系(PMBOK)為核心,圍繞著軟件項(xiàng)目的開(kāi)發(fā)全過(guò)程,從軟件項(xiàng)目需求管理、軟件項(xiàng)目成本管理、軟件項(xiàng)目進(jìn)度管理、軟件項(xiàng)目風(fēng)險(xiǎn)管理、軟件項(xiàng)目配置管理、軟件項(xiàng)目資源管理、軟件項(xiàng)目質(zhì)量管理等方面對(duì)軟件項(xiàng)目中的管理問(wèn)題進(jìn)行探討。實(shí)踐篇將需求管理、成本管理、進(jìn)度管理、風(fēng)險(xiǎn)管理、配置管理、資源管理和質(zhì)量管理等相對(duì)獨(dú)立的領(lǐng)域融合在軟件過(guò)程框架中,介紹了在軟件項(xiàng)目實(shí)踐中如何集中使用相關(guān)理論和技術(shù)。其中包括Rational統(tǒng)一過(guò)程、敏捷軟件開(kāi)發(fā)和6σ軟件開(kāi)發(fā)。
本書(shū)可作為高等學(xué)校信息、軟件、計(jì)算機(jī)科學(xué)與技術(shù)等專(zhuān)業(yè)的學(xué)生的教材,也可供從事軟件項(xiàng)目管理工作的人員參考。
第2版前言
軟件及信息產(chǎn)業(yè)的發(fā)展將帶動(dòng)傳統(tǒng)產(chǎn)業(yè)的發(fā)展與改造,促進(jìn)國(guó)民經(jīng)濟(jì)持續(xù)、健康地發(fā)展,增強(qiáng)國(guó)際競(jìng)爭(zhēng)力。因而,軟件產(chǎn)業(yè)快速、良性的發(fā)展具有重要意義。早在2001年,我國(guó)政府就明確提出“力爭(zhēng)在2010年使我國(guó)軟件產(chǎn)業(yè)的研究開(kāi)發(fā)和生產(chǎn)能力達(dá)到或接近國(guó)際先進(jìn)水平”。2009年國(guó)務(wù)院通過(guò)的《電子信息產(chǎn)業(yè)調(diào)整振興規(guī)劃》更是把“提高軟件產(chǎn)業(yè)自主發(fā)展能力”確定為振興我國(guó)電子信息產(chǎn)業(yè)的三大重點(diǎn)任務(wù)之一。
20世紀(jì)60年代,軟件和硬件之間的發(fā)展的不平衡導(dǎo)致的軟件危機(jī)的產(chǎn)生,也是軟件產(chǎn)業(yè)面臨的一個(gè)亟待解決的難題,隨著科學(xué)的進(jìn)步和軟件開(kāi)發(fā)技術(shù)的逐步成熟,管理在軟件產(chǎn)業(yè)中的地位突顯出來(lái),變得越來(lái)越重要,學(xué)者們提出了用工業(yè)界工程化的思想,即軟件工程的思想去解決軟件發(fā)展中的一些問(wèn)題。同樣,針對(duì)軟件產(chǎn)業(yè)中的管理問(wèn)題,采用了工程中項(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版付印以來(lái),軟件項(xiàng)目管理思想和方法有了一些新的發(fā)展; 作者對(duì)軟件項(xiàng)目管理的認(rèn)識(shí)也更加深入; 教學(xué)過(guò)程中也得到一些有價(jià)值的反饋信息。為了全面反映軟件項(xiàng)目管理的發(fā)展,作者對(duì)第1版的結(jié)構(gòu)和內(nèi)容作了較大篇幅的調(diào)整與更新,完成了本書(shū)第2版。
第2版分為基礎(chǔ)篇、管理篇和實(shí)踐篇。將第1版的第1章、第8章整合為基礎(chǔ)篇,介紹了軟件產(chǎn)業(yè)和軟件項(xiàng)目管理導(dǎo)論,使讀者從整體上了解軟件項(xiàng)目管理的產(chǎn)生背景和概貌。管理篇以項(xiàng)目管理知識(shí)體系(PMBOK)為核心,圍繞著軟件項(xiàng)目的開(kāi)發(fā)全過(guò)程,從軟件項(xiàng)目需求管理、軟件項(xiàng)目成本管理、軟件項(xiàng)目進(jìn)度管理、軟件項(xiàng)目風(fēng)險(xiǎn)管理、軟件項(xiàng)目配置管理、軟件項(xiàng)目資源管理、軟件項(xiàng)目質(zhì)量管理等方面對(duì)軟件項(xiàng)目中的管理問(wèn)題進(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ì)量管理等相對(duì)獨(dú)立的領(lǐng)域融合在軟件過(guò)程框架中,介紹了在軟件項(xiàng)目實(shí)踐中如何集中使用相關(guān)理論和技術(shù)。其中包括Rational統(tǒng)一過(guò)程、敏捷軟件開(kāi)發(fā)和6σ軟件開(kāi)發(fā)。對(duì)第1版的大部分內(nèi)容,結(jié)合技術(shù)的最新發(fā)展也進(jìn)行了全面的更新。
豐富的案例故事和案例分析也是第2版的一個(gè)特色。管理篇的每章都通過(guò)一個(gè)案例故事引出本章主要內(nèi)容,并將案例故事的解析穿插在理論介紹中,理論結(jié)合實(shí)踐。全書(shū)的每一章都包含多個(gè)完整的案例分析,有正面的成功案例,也有反面的失敗案例。通過(guò)案例分析,強(qiáng)化每一章的理論知識(shí),吸取經(jīng)驗(yàn),反思教訓(xùn)。
在本書(shū)的編寫(xiě)過(guò)程中,得到了清華大學(xué)信息學(xué)院、軟件學(xué)院、計(jì)算機(jī)科學(xué)與技術(shù)系、西安交通大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系、電子商務(wù)研究所、計(jì)算機(jī)軟件研究所許多教師的支持和指教; 同時(shí)也得到了清華大學(xué)出版社的大力支持。我們?cè)诖吮硎局孕牡母兄x。本書(shū)的編寫(xiě)參考了大量的文獻(xiàn)和互聯(lián)網(wǎng)資源,我們對(duì)所有這些文獻(xiàn)著作者和網(wǎng)站版權(quán)所有者表示真誠(chéng)的謝意。
本書(shū)由覃征教授確定研究?jī)?nèi)容和整體結(jié)構(gòu)并審核,第一、二篇由唐晶編寫(xiě),第三篇由徐文華編寫(xiě)并統(tǒng)稿,韓毅博士也參加了本書(shū)的編寫(xiě)與審核工作。
由于水平有限,加之軟件產(chǎn)業(yè)的發(fā)展非常迅速,書(shū)中難免有疏漏和不妥之處,敬請(qǐng)讀者批評(píng)指正。
編者
2009年6月于清華園
目錄
第一篇基礎(chǔ)篇
第1章軟件項(xiàng)目管理導(dǎo)論
1.1軟件市場(chǎng)
1.1.1軟件商品特征
1.1.2軟件的成本
1.1.3軟件的定價(jià)
1.1.4軟件市場(chǎng)的壟斷現(xiàn)象
1.1.5軟件市場(chǎng)的發(fā)展現(xiàn)狀
1.2軟件產(chǎn)業(yè)
1.2.1軟件產(chǎn)業(yè)的特點(diǎn)
1.2.2軟件產(chǎn)業(yè)在國(guó)民經(jīng)濟(jì)中的地位
1.2.3國(guó)外軟件產(chǎn)業(yè)發(fā)展策略
1.2.4資料: 印度新經(jīng)濟(jì)產(chǎn)業(yè)
1.2.5對(duì)我國(guó)軟件產(chǎn)業(yè)發(fā)展策略的認(rèn)識(shí)
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)目管理知識(shí)體系
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ì)量評(píng)價(jià)
2.1.4需求工程發(fā)展歷程
2.1.5需求工程研究?jī)?nèi)容
2.2需求開(kāi)發(fā)
2.2.1需求開(kāi)發(fā)活動(dòng)
2.2.2需求獲取
2.2.3需求分析
2.2.4編寫(xiě)需求文檔
2.2.5需求驗(yàn)證
2.2.6案例: 某公司“船代”項(xiàng)目的需求開(kāi)發(fā)
2.3需求管理
2.3.1需求管理的必要性
2.3.2需求管理的困難性
2.3.3需求管理的目標(biāo)和原則
2.3.4需求管理活動(dòng)
2.3.5需求變更管理
2.3.6需求狀態(tài)
2.3.7需求文檔版本控制
2.3.8需求跟蹤
2.3.9案例: 需求變更的代價(jià)
2.4案例故事解析
2.4.1需求開(kāi)發(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案例: 過(guò)分樂(lè)觀的估算
3.4軟件項(xiàng)目成本監(jiān)控
3.4.1成本管理常見(jiàn)問(wèn)題
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)目活動(dòng)定義
4.2項(xiàng)目活動(dòng)排序和歷時(shí)估計(jì)
4.2.1確定活動(dòng)順序
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)識(shí)別
5.2.1風(fēng)險(xiǎn)識(shí)別依據(jù)
5.2.2常見(jiàn)軟件風(fēng)險(xiǎn)
5.2.3風(fēng)險(xiǎn)識(shí)別過(guò)程
5.2.4風(fēng)險(xiǎn)識(shí)別方法與技術(shù)
5.2.5案例: 英達(dá)公司用TOP10法識(shí)別項(xiàng)目風(fēng)險(xiǎn)
5.3風(fēng)險(xiǎn)分析
5.3.1風(fēng)險(xiǎn)分析過(guò)程
5.3.2風(fēng)險(xiǎn)分析技巧與工具
5.3.3風(fēng)險(xiǎn)分析的成果
5.4風(fēng)險(xiǎn)跟蹤與應(yīng)對(duì)
5.4.1風(fēng)險(xiǎn)跟蹤的目標(biāo)和依據(jù)
5.4.2風(fēng)險(xiǎn)跟蹤的成果
5.4.3風(fēng)險(xiǎn)跟蹤的過(guò)程
5.4.4風(fēng)險(xiǎn)應(yīng)對(duì)策略
5.4.5風(fēng)險(xiǎn)應(yīng)對(duì)過(guò)程
5.4.6案例: 金融行業(yè)使用容災(zāi)系統(tǒng)有效應(yīng)對(duì)突發(fā)事件
5.5風(fēng)險(xiǎn)管理驗(yàn)證
5.6案例: 風(fēng)險(xiǎn)管理保障奧運(yùn)場(chǎng)館建設(shè)
5.7案例故事解析
5.8小結(jié)
第6章軟件項(xiàng)目配置管理
案例故事
6.1概述
6.1.1基本概念
6.1.2軟件配置管理定義
6.1.3軟件配置管理過(guò)程
6.1.4軟件配置管理過(guò)程活動(dòng)
6.2配置管理策劃
6.2.1軟件配置管理組織
6.2.2軟件配置管理職責(zé)
6.2.3軟件配置管理文件體系
6.2.4配置管理計(jì)劃的大綱
6.3配置管理功能
6.3.1配置標(biāo)識(shí)
6.3.2版本控制
6.3.3變更管理
6.3.4配置狀態(tài)報(bào)告
6.3.5案例: Kevin團(tuán)隊(duì)使用配置管理加快開(kāi)發(fā)速度
6.4配置審核
6.4.1配置審核概念
6.4.2配置審核內(nèi)容
6.4.3配置審核的種類(lèi)
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人力資源評(píng)估
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ì)量與過(guò)程質(zhì)量
8.1.3軟件質(zhì)量保證
8.2軟件評(píng)審
8.3軟件測(cè)試
8.3.1軟件測(cè)試的概念
8.3.2軟件測(cè)試類(lèi)型
8.3.3測(cè)試的原則
8.3.4測(cè)試計(jì)劃
8.3.5測(cè)試用例的開(kāi)發(fā)
8.3.6測(cè)試的執(zhí)行與報(bào)告
8.3.7案例: 微軟的軟件測(cè)試技術(shù)
8.4軟件缺陷跟蹤
8.5軟件缺陷預(yù)防
8.5.1問(wèn)題的提出
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過(guò)程的可視性
8.7.6CMMI的實(shí)施
8.7.7CMMI的評(píng)估
8.8案例故事解析
8.9小結(jié)
第三篇實(shí)踐篇
第9章Rational統(tǒng)一過(guò)程
9.1什么是Rational統(tǒng)一過(guò)程
9.2核心概念
9.2.1架構(gòu)
9.2.2工作流程
9.2.3角色
9.2.4活動(dòng)
9.2.5步驟
9.2.6工件
9.36個(gè)最佳實(shí)踐
9.3.1迭代式的軟件開(kāi)發(fā)
9.3.2需求管理
9.3.3使用基于構(gòu)件的架構(gòu),以架構(gòu)為中心的過(guò)程
9.3.4可視化軟件建模
9.3.5驗(yàn)證軟件質(zhì)量
9.3.6控制軟件變更
9.3.7案例: 利用視圖和用例來(lái)捕獲和描述需求
9.4RUP的二維結(jié)構(gòu)
9.4.1動(dòng)態(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測(cè)試工作流程
9.5.6部署工作流程
9.5.7配置和變更管理工作流程
9.5.8項(xiàng)目管理工作流程
9.5.9環(huán)境工作流程
9.6小結(jié)
第10章敏捷軟件開(kāi)發(fā)
10.1敏捷軟件開(kāi)發(fā)的誕生
10.2敏捷軟件開(kāi)發(fā)宣言
10.3敏捷宣言遵循的原則
10.4對(duì)比其他的方法
10.5敏捷軟件開(kāi)發(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è)簡(jiǎn)單的框架
10.7.2Scrum過(guò)程
10.7.33個(gè)角色
10.7.43項(xiàng)活動(dòng)
10.7.53種工具
10.7.6自適應(yīng)的項(xiàng)目管理
10.7.7Scrum較傳統(tǒng)開(kāi)發(fā)模型的優(yōu)點(diǎn)
10.7.8案例: Scrum在開(kāi)發(fā)中的應(yīng)用
10.8小結(jié)
第11章將6σ管理引入軟件開(kāi)發(fā)
11.16σ的故事
11.26σ理論基礎(chǔ)
11.2.1平均值屏蔽了問(wèn)題,波動(dòng)成了焦點(diǎn)
11.2.2“波動(dòng)”問(wèn)題的數(shù)學(xué)描述
11.2.36σ的數(shù)學(xué)含義
11.2.4其他術(shù)語(yǔ)
11.36σ管理
11.4使用6σ改善軟件開(kāi)發(fā)過(guò)程
11.4.1項(xiàng)目啟動(dòng)和問(wèn)題定義階段
11.4.2系統(tǒng)分析
11.4.3系統(tǒng)設(shè)計(jì)
11.4.4構(gòu)造
11.4.5測(cè)試和質(zhì)量保證
11.4.6交付和維護(hù)
11.5案例: 如何實(shí)施DMAIC過(guò)程
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ī)格說(shuō)明書(shū)
附錄C項(xiàng)目開(kāi)發(fā)計(jì)劃
附錄D概要設(shè)計(jì)說(shuō)明書(shū)
附錄E詳細(xì)設(shè)計(jì)說(shuō)明書(shū)
附錄F用戶(hù)操作手冊(cè)
附錄G測(cè)試計(jì)劃
附錄H測(cè)試分析報(bào)告
附錄I程序維護(hù)手冊(cè)
附錄J項(xiàng)目總結(jié)報(bào)告
附錄KISO 9001:2000標(biāo)準(zhǔn)的內(nèi)容
參考文獻(xiàn)