第1章 软件项目管理概述 1
1.1项目与软件项目 1
1.1.1什么是项目 1
1.1.2项目群和子项目 2
1.1.3软件项目 2
1.2软件项目管理的基本内容 4
1.2.1什么是项目管理 4
1.2.2软件项目管理的重要性 4
1.2.3软件项目管理的范围 5
1.3软件项目的生命周期 6
1.4小结 8
1.5习题 8
第2章 软件项目立项和策划 9
2.1发现项目机会 9
2.2可行性分析 10
2.2.1现有系统的分析 10
2.2.2技术可行性分析 11
2.2.3项目投资及效益分析 12
2.2.4其他方面的可行性分析 14
2.3标志项目的高级别风险 14
2.4制订项目章程 15
2.5制订项目的初步范围说明书 16
2.6选择合适的项目方法 17
2.6.1分析项目特征 17
2.6.2制订技术计划 18
2.6.3选择最合适的过程模型 18
2.6.4瀑布模型 19
2.6.5 V过程模型 20
2.6.6原型模型 20
2.6.7增量模型 21
2.6.8螺旋模型 22
2.6.9 Rational统一过程 24
2.7项目合同 24
2.7.1项目招投标 24
2.7.2合同的分类和内容 27
2.7.3合同管理 29
2.8制订项目计划 29
2.9小结 30
2.10习题 30
第3章 软件项目成本管理 32
3.1软件项目成本的基本概念 32
3.1.1软件项目规模与成本 32
3.1.2软件项目成本的构成 33
3.1.3软件项目成本管理及其目标 34
3.2软件规模度量 35
3.2.1代码行(LOC) 35
3.2.2功能点(FP) 36
3.3软件项目成本估算方法 39
3.3.1软件项目成本估算的依据 39
3.3.2自顶向下的估算 40
3.3.3自底向上的估算 41
3.3.4构造型成本模型(COCOMO) 42
3.3.5估算的误差度 43
3.4软件项目成本预算 44
3.5软件项目成本控制 45
3.5.1软件项目成本控制的目标 45
3.5.2实际成本与成本偏差 46
3.5.3挣值分析 46
3.5.4资源调度 48
3.5.5控制成本的方法 50
3.6小结 52
3.7习题 52
第4章 软件项目进度管理 53
4.1软件项目进度管理概述 53
4.1.1软件项目进度的概念 53
4.1.2软件项目进度管理的目的和内容 53
4.1.3项目和活动 54
4.2工作分解结构(WBS) 54
4.2.1工作分解的原则 55
4.2.2 WBS的分层设计 55
4.2.3 WBS的设计方法和步骤 56
4.3活动定义和排序 58
4.3.1活动定义 58
4.3.2活动排序 59
4.4活动历时估计 61
4.4.1 Delphi法 61
4.4.2类推估算法 62
4.4.3计划评审技术(PERT) 62
4.5进度管理图示方法 63
4.5.1甘特图 63
4.5.2网络图 64
4.6网络策划模型 64
4.6.1关键路径法 65
4.6.2正向遍历法(正推法) 66
4.6.3反向遍历法(逆推法) 67
4.6.4标志关键路径 68
4.7进度压缩 69
4.7.1应急法(赶工) 69
4.7.2平行作业法(快速跟进) 70
4.8软件项目进度计划 70
4.9小结 71
4.10习题 72
第5章 软件项目质量管理 74
5.1软件质量概述 74
5.1.1软件质量的定义 74
5.1.2软件质量模型 75
5.2 PDCA质量控制方法 76
5.2.1 PDCA的定义 76
5.2.2 PDCA的特点 77
5.2.3 PDCA的内容 77
5.3 ISO 9000系列质量体系 79
5.3.1 ISO 9000系列概述 79
5.3.2 ISO 9000-3介绍 80
5.3.3 ISO 9000的质量管理原则 80
5.3.4 ISO 9126 81
5.4 ISO 15504过程评估 82
5.4.1 ISO 15504标准的组成 82
5.4.2 ISO 15504内容简介 83
5.5能力成熟度模型CMMI 84
5.5.1 CMMI的构成 85
5.5.2 CMMI的结构和实施方法 90
5.5.3 CMMI评估 94
5.5.4 PSP、TSP与CMMI 94
5.6 ISO 9001和CMMI的异同 96
5.6.1 ISO 9001和CMMI的背景 96
5.6.2 ISO 9001和CMMI的内容 96
5.7小结 97
5.8习题 98
第6章 软件配置管理 99
6.1软件配置管理概述 99
6.1.1什么是软件配置管理 99
6.1.2软件配置管理的作用 100
6.1.3软件配置管理的相关概念 101
6.2版本控制 102
6.2.1配置库的检入检出机制 102
6.2.2软件版本编号方法 104
6.2.3配置项的演化图 105
6.2.4版本控制的具体操作 105
6.2.5分支管理 107
6.3系统集成 109
6.3.1系统集成的概念和步骤 109
6.3.2持续集成 110
6.4变更管理 110
6.4.1变更管理的作用 110
6.4.2严格的变更控制过程 111
6.4.3发行管理 112
6.5配置状态报告和配置审计 113
6.5.1配置状态报告 113
6.5.2配置审计 114
6.6软件配置管理过程 114
6.6.1组织级管理 114
6.6.2配置管理计划 115
6.6.3软件配置管理日常工作 116
6.6.4软件项目配置管理收尾 116
6.7小结 116
6.8习题 117
第7章 软件项目风险管理 119
7.1软件项目风险管理概述 119
7.1.1风险及其属性 119
7.1.2风险的分类 120
7.1.3软件项目风险管理的内容 121
7.2软件项目风险规划 122
7.2.1软件项目风险规划的依据 122
7.2.2软件项目风险管理计划的主要内容 122
7.3软件项目风险识别 123
7.3.1风险识别概述 123
7.3.2核对表法 124
7.3.3头脑风暴法 125
7.3.4德尔菲法 125
7.3.5 SWOT分析法 125
7.3.6其他方法 126
7.4软件项目风险评估 127
7.4.1风险概率和影响程度评估 127
7.4.2决策树分析法 128
7.4.3模拟分析法 130
7.5软件项目风险应对 131
7.5.1回避风险 131
7.5.2减小风险 131
7.5.3转移风险 132
7.5.4接受风险 133
7.5.5风险预留 133
7.6软件项目风险监控 134
7.6.1风险预警 134
7.6.2风险监控方法 135
7.7小结 136
7.8习题 136
第8章 软件项目人力资源管理 138
8.1软件项目人力资源管理概述 138
8.2组建项目团队 138
8.2.1团队的“5P” 139
8.2.2建设团队的基本原则 141
8.3项目组织结构 141
8.3.1职能型组织结构 142
8.3.2项目型组织结构 142
8.3.3矩阵型组织结构 143
8.4项目小组结构 145
8.5项目团队的建设 145
8.5.1冲突管理 146
8.5.2团队成员的绩效评估 146
8.6沟通管理 146
8.7小结 147
8.8习题 147
第9章 项目收尾与验收 148
9.1项目收尾概述 148
9.1.1项目结束 148
9.1.2项目收尾过程 148
9.1.3项目成功的要素 150
9.1.4项目验收 150
9.2项目移交与清算 151
9.2.1项目后评价的方法 152
9.2.2项目后评价的基本内容 152
9.2.3项目后评价的实施 154
9.3合同收尾 154
9.4小结 155
9.5习题 156
第10章 软件项目管理新技术与新进展 157
10.1外包软件项目管理 157
10.1.1外包管理的相关概念 157
10.1.2外包管理的主要内容 158
10.1.3外包项目的控制与监督 160
10.1.4软件外包管理的方法与规范 161
10.2软件子合同管理 164
10.3开源软件管理 168
10.3.1概述 168
10.3.2常见的开源软件协议 169
10.4小结 172
10.5习题 172
第11章 软件项目管理工具 173
11.1通用项目管理工具 173
11.1.1通用项目管理工具概述 173
11.1.2 Microsoft Project简介 174
11.1.3 Project中的视图 175
11.1.4 Project中的进度计划和跟踪 176
11.1.5 Project中的资源分配和成本管理 177
11.1.6 Project中的报表 178
11.2配置管理工具 180
11.2.1配置管理工具概述 180
11.2.2 CVSNT的安装和配置 182
11.2.3 CVS中的常用操作 183
11.3缺陷跟踪工具 186
11.3.1缺陷跟踪工具概述 186
11.3.2禅道项目管理软件的安装和账号创建 190
11.3.3禅道项目管理软件的缺陷跟踪操作 191
11.4小结 194
11.5习题 194
参考文献 195