第1章 引言 1
1.1 项目和软件项目 1
1.1.1 软件难做 1
1.1.2 什么是项目 3
1.1.3 软件项目及其产品特征 4
1.1.4 软件工程层状模型和与时间相关的概念 6
1.2 软件团队和项目目标 9
1.2.1 软件开发中的各类问题 9
1.2.2 设定目标 11
1.3 管理和管理思想 14
1.3.1 项目管理及其特点 14
1.3.2 管理思想的发展 15
1.4 项目管理的核心方法体系 23
1.4.1 PMBOK 23
1.4.2 PRINCE2 27
1.5 项目经理和管理原则 28
1.5.1 软件项目经理扮演的角色 28
1.5.2 软件项目管理的原则 29
1.5.3 21世纪的管理者需要做什么 32
小结 35
思考题 36
第2章 软件项目需求工程 37
2.1 概述 37
2.1.1 需求定义 39
2.1.2 需求类型 40
2.2 需求开发和管理过程 41
2.2.1 需求获取 42
2.2.2 需求分析 45
2.2.3 需求规格说明 47
2.2.4 需求验证 48
2.2.5 需求变更管理 50
2.2.6 可测试性需求 54
2.3 需求获取方法 55
2.3.1 访谈和调研 55
2.3.2 专题讨论会 57
2.3.3 头脑风暴 57
2.3.4 场景串联 58
2.4 需求分析建模方法 59
2.4.1 用例分析方法 60
2.4.2 原型分析方法 61
2.4.3 结构化分析方法 63
2.5 需求管理工具 63
2.5.1 需求管理工具的功能 64
2.5.2 常用需求管理工具介绍 65
2.5.3 需求管理工具的发展趋势 66
小结 67
思考题 67
第3章 软件项目成本估算 68
3.1 项目估算的挑战 68
3.2 项目估算的基本内容 69
3.3 规模估算 70
3.3.1 德尔菲方法 70
3.3.2 类比估算法 71
3.4 工作量估算 72
3.4.1 普特纳姆模型 72
3.4.2 经验估算模型 73
3.4.3 功能点分析的要素 73
3.4.4 功能点计算 74
3.4.5 开发阶段工作量估算 76
3.4.6 实施阶段工作量估算 77
3.4.7 维护阶段工作量估算 78
3.5 开发工期估算 79
3.6 成本估算方法 79
3.6.1 咨询费 80
3.6.2 建设费 81
3.6.3 服务费 81
小结 84
思考题 85
第4章 软件项目进度计划 86
4.1 概述 86
4.2 软件项目进度计划方法 87
4.2.1 软件项目估算 87
4.2.2 工作分解结构 89
4.2.3 进度计划的技术方法 90
4.3 案例研究:某酒店管理系统的项目进度计划 95
小结 108
思考题 108
第5章 软件项目风险管理 109
5.1 风险概念 109
5.1.1 项目风险带来的警示 109
5.1.2 什么是风险管理 111
5.2 风险管理模型 112
5.2.1 玻姆模型 112
5.2.2 SEI的CRM模型 113
5.2.3 李维特模型 113
5.2.4 CMU/SEI的CMMI风险管理模型 114
5.2.5 微软的MSF风险管理模型 115
5.3 风险管理计划 115
5.3.1 风险管理计划的内容 115
5.3.2 制定风险管理计划的工具与技术 117
5.3.3 制定风险管理计划的输入、输出 118
5.4 风险识别 118
5.4.1 风险识别概述 118
5.4.2 用于风险识别的方法 123
5.4.3 风险识别的输入、输出 125
5.5 风险分析 126
5.5.1 定性风险分析 126
5.5.2 定量风险分析 128
5.5.3 定量风险分析的输入输出 130
5.5.4 应对风险的基本措施 131
5.6 风险监控 133
5.7 案例研究:风险管理实践 134
5.7.1 公司背景简介 134
5.7.2 实际项目分析 134
5.7.3 实际的风险管理状况 135
5.7.4 实施效果与总结分析 137
小结 138
思考题 138
第6章 软件项目配置管理 140
6.1 软件配置管理概览 140
6.1.1 什么是软件配置管理 140
6.1.2 软件配置管理的起源与发展 142
6.1.3 软件配置管理能解决哪些问题 142
6.2 软件配置管理的任务和活动 143
6.2.1 软件和配置项 143
6.2.2 标识 144
6.2.3 变更控制 145
6.2.4 状态报告 145
6.2.5 配置审计 146
6.3 软件配置管理的核心要素 146
6.3.1 版本和版本树 147
6.3.2 软件配置库 147
6.3.3 工作空间 147
6.3.4 变更请求与变更集 148
6.3.5 软件配置管理工具 149
6.4 软件配置管理的主要过程 149
6.4.1 配置项标识与存储过程 149
6.4.2 版本管理过程 150
6.4.3 变更控制过程 151
6.4.4 基线管理过程 152
6.5 软件配置管理中的角色 153
6.5.1 配置管理专职人员 153
6.5.2 机构运营管理人员 154
6.5.3 项目开发人员 155
6.6 常用软件配置管理工具简介 155
6.6.1 软件配置管理工具的发展历程 156
6.6.2 面向文件的配置管理工具及功能 156
6.6.3 面向变更集的配置管理工具及功能 157
6.6.4 面向开发流程的配置管理工具及功能 159
6.7 案例研究 161
小结 168
思考题 168
第7章 软件项目合同管理 169
7.1 合同管理概述 169
7.1.1 合同的基本概念 169
7.1.2 合同类型 170
7.1.3 技术合同 171
7.2 签订合同时应注重的问题 171
7.3 软件项目合同条款分析 173
7.4 合同管理 180
7.4.1 合同管理概述 180
7.4.2 合同收尾 182
7.5 软件项目合同模板 183
小结 188
思考题 188
第8章 软件项目人力资源管理 189
8.1 软件企业中的人力资源 189
8.1.1 软件企业经营管理透视 189
8.1.2 管理者的管理技能 191
8.1.3 管理体系与组织设计 192
8.2 项目人员管理 197
8.2.1 管理者和组织 197
8.2.2 人力资源管理过程 198
8.2.3 选择合适人选 199
8.2.4 激励 202
8.3 项目团队建设 206
8.3.1 团队发展的阶段 206
8.3.2 如何组建团队 207
8.3.3 决策制定 209
8.3.4 软件开发环境促进团队精神 210
8.3.5 产品管理模式及组织结构 213
8.4 沟通和协作 214
8.4.1 沟通风格 214
8.4.2 沟通计划 217
8.4.3 合作依赖关系 218
8.4.4 虚拟团队 219
8.5 压力、心理资本、团队会议 220
8.5.1 压力 220
8.5.2 心理资本 221
8.5.3 提升团队凝聚力 221
8.5.4 团队会议 222
小结 223
思考题 223
第9章 Rational统一过程 224
9.1 软件过程模式定义 224
9.1.1 几种典型的软件过程模式 224
9.1.2 定义软件过程模式的意义 226
9.2 Rational统一过程 227
9.2.1 Rational简介 227
9.2.2 RUP的二维结构 228
9.2.3 阶段与里程碑 230
9.2.4 RUP规程 233
9.2.5 RUP模型、工件及信息流 239
9.3 案例研究:利用视图与用例来捕获和描述需求 240
小结 244
思考题 244
第10章 敏捷项目管理 245
10.1 概念及简介 245
10.1.1 敏捷概述 245
10.1.2 敏捷项目管理的焦点 249
10.1.3 敏捷项目管理指导原则 249
10.1.4 敏捷流程架构 250
10.2 管理的角色与职责 254
10.2.1 角色 254
10.2.2 职责 255
10.3 敏捷项目管理的特征 256
10.3.1 敏捷方法的特点 256
10.3.2 敏捷方法的核心思想 258
10.3.3 敏捷型方法的含义及其特征 258
10.3.4 敏捷方法的适用范围 259
10.3.5 主要敏捷方法简介 259
10.4 敏捷项目管理基础 265
10.5 案例分析:敏捷开发技术在电子商务软件中的应用 266
10.5.1 说明 266
10.5.2 项目组织机构 267
10.5.3 项目实施过程 267
10.5.4 项目实施效果 267
小结 268
思考题 268
第11章 软件项目管理软件 269
11.1 Project简介 269
11.1.1 Project系列产品 269
11.1.2 启动Project 270
11.1.3 视图 271
11.1.4 报表 275
11.1.5 创建新项目计划 278
11.1.6 设置非工作日 278
11.2 创建任务列表 281
11.2.1 输入任务 281
11.2.2 估计工期 282
11.2.3 输入里程碑 284
11.2.4 分阶段组织任务 285
11.2.5 链接任务 286
11.2.6 记录任务 290
11.2.7 检查任务工期 292
11.3 设置资源 295
11.3.1 设置人员资源 295
11.3.2 设置设备资源 297
11.3.3 设置材料资源 298
11.3.4 设置成本资源 300
11.3.5 输入资源费率 300
11.3.6 为单个资源调整工作时间 302
11.3.7 记录资源 303
11.4 分配资源 305
11.4.1 为任务分配工时资源 305
11.4.2 为任务分配额外资源 308
11.4.3 为任务分配材料资源 311
11.4.4 为任务分配成本资源 311
小结 313
思考题 313
参考文献 314