出版者的话
译者序
译者简介
前言
第l章 软件项目管理引言
1.1 引言
1.2 为什么软件项目管理很重要
1.3 什么是项目
1.4 软件项目和其他类型的项目
1.5 合同管理和技术项目管理
1.6 软件项目管理覆盖的活动
1.7 计划、方法和方法学
1.8 软件项目的分类方式
1.8.1 强制使用用户和自愿使用用户
1.8.2 信息系统与嵌入式系统
1.8.3 目标与产品
1.9 利益相关者
1.10设定目标
1.10.1 子目标和目标
1.10.2 有效性度量
1.11 业务案例
1.12 项目成败
1.13 什么是管理
1.14 管理控制
1.15 小结
附件项目策划内容列表
1.1 6进一步的练习
第2章 项目评价和项目集管理
2.1 引言
2.2 业务案例
2.2.1 介绍和背景
2.2.2 提议项目
2.2.3 市场
2.2.4 组织和运营基础架构
2.2.5 效益
2.2.6 概括实施计划
2.2.7 成本
2.2.8 经济论证,
2.2.9 风险
2.3 项目组合管理
2.3.1 项目组合定义
2.3.2 项目组合管理
2.3.3 项目组合优化
2.3.4 项目组合管理的问题
2.4 单个项目评估
2.4.1 技术评估
2.4..2 成本效益分析
2.4.3 现金流预测
2.5 成本效益评价技术
2.5.1 净利润
2.5.2 回收期
2.5.3 投资回报率
2.5.4 净现值
2.5.5 内部回报率
2.6 风险评价
2.6.1 风险标识和排等级
2.6.2 风险和净现值
2.6.3 成本效益分析
2.6.4 风险剖面分析
2.6.5 使用决策树
2.7 项目集管理
2.7.1 商业周期项目集
2.7.2 战略项目集
2.7.3 基础设施项目集
2.7.4.研究和开发项目集
2.7.5 创新的伙伴关系
2.8 管理项目集内的资源分配
2.9 项目集管理策略
2.10 创建项目集
2.10.1 项目集命令
2.10.2 项目集摘要
2.10.3 构想陈述
2.10.4 蓝图
2.11 辅助项目集管理
2.11.1 依赖关系图
2.11.2 交付计划
2.12对项目集管理的保留意见
2.13收益管理
2.14小结
2.1 5进一步的练习
第3章 项目策划概述
3.1 步进式项目策划概述
3.2 第0步:选择项目
3.3 第1步:标识项目的范围和目标
3.3.1 步骤1.1 标识目标以及满足目标有效性的实用度量
3.3.2 步骤1.2 确立项目的全权管理者
3.3.3 步骤1.3 项目利益相关者分析——标识项目中所有的项目利益相关者以及他们的利益
3.3.4 步骤1.4 根据项目利益相关者的分析修改项目目标
3.3.5 步骤1.5 确定各部门之间的沟通方法
3.4 第2步:标识项目的基础设施
3.4.1 步骤2.1 确立项目和战略策划之间的关系
3.4.2 步骤2.2 标识安装标准和规程
3.4.3 步骤2.3 标识项目组的组织结构
3.5 第3步:分析项目的特征
3.5.1 步骤3.1 识别项目是目标驱动的还是产品驱动的
3.5.2 步骤3.2 分析项目的其他特征(包括基于质量的特征)
3.5 0步骤3.3 标识项目的高级别风险
3.5.4 步骤3.4 考虑关于实现方面的用户需求
3.5.5 步骤3.5 选择开发方法学和生命周期方法
3.5.6 步骤3.6 评审整体资源估计
3.6 第4步:标识项目的产品和活动
3.6.1 步骤4.1 标识和描述项目的产品(或可交付物)
3.6.2 步骤4.2 文档化共性产品流
3.6.3 步骤4.3 标识产品实例
3.6.4 步骤4.4 产生理想的活动网络图
3.6.5 步骤4.5 根据阶段和检查点的需要修改理想的活动网络
3.7 第5步:估算每个活动的工作置
3.7.1 步骤5.1 执行由底向上的估计
3.7.2 步骤5.2 修改策划创建可控制的活动
3.8 第6步:标识活动的风险
3.8.1 步骤6.1 标识和量化基于活动的风险
3.8.2 步骤6.2 计划合适的风险缓解和应急措施
3.8.3 步骤6.3 根据风险调整计划和估计
3.9 第7步:分配资源
3.9.1 步骤7.1 标识和分配资源
3.9.2 步骤7.2 根据资源约束修改计划和估计
3.10 第8步:评审/发布计划
3.10.1 步骤8.1 评审项目计划的质量
3.10.2 步骤8.2 文档化计划并取得一致意见
3.11 第9步和第10步:执行计划并进行较低层次的策划
3.12 小结
3.13 进一步的练习
第4章 选择合适的项目方法
4.1 引言
4.2 构建还是购买
4.3 选择方法学和技术
4.3.1 将项目标识为目标驱动的或产品
驱动的
4.3.2 分析其他项目特征
4.3.3 标识高级别项目风险
4.3.4 考虑与实现有关的用户需求
4.3.5 选择通用的生命周期方法
4.4 过程模型的选择
4.5 结构与交付速度
4.6 瀑布模型
4.7 螺旋模型
4.8 软件原型开发
4.9 分类原型的其他方法
4.9.1 要从原型中学到什么
4.9.2 原型要做到什么程度
4.9.3 哪些要进行原型化
4.9.4 在原型开发期间控制变更
4.10 增量式交付
4.10.1 优点
4.10.2 缺点
4.10.3 增量式交付计划
4.10.4 系统目标
4.10.5 开放的技术计划
4.10.6 增量式计划
4.10.7 增量示例
4.11 敏捷方法
4.12 Atern/动态系统开发方法
4.13 极限编程
4.13.1 策划活动
4.13.2 小规模发布软件
4.13.3 隐喻
4.13.4 简单设计
4.13.5 测试
4.13.6 重构
4.13.7 结对编程
4.13.8 集体所有
4.13.9 持续集成
4.13.10 每周40小时的工作时间
4.13.11 现场客户
4.13.12 编程标准
4.13.13 XP的局限性
4.14 管理迭代过程
4.15 选择最合适的过程模型
4.16 小结
4.17 进一步的练习
第5章 软件工作量估计
5.1 引言
5.2 在何处进行估计
5.3 估计过高和估计过低的问题
5.4 软件估计基础
5.4.1 需要历史数据
5.4.2 工作的度量
5.5 软件工作量估计技术
5.6 由底向上估计
5.7 自顶向下法和参数模型
5.8 专家判断
5.9 类比估计
5.10 Albrecht功能点分析
5.11 MarkII功能点
5.12 COSMIC全功能点
5.13 COCOMOII:参数化的生产率模型
5.14 小结
5.15 进一步的练习
第6章 活动策划
6.1 引言
6.2 活动策划的目的
6.3 何时计划
6.4 项目进度表
6.5 项目和活动
6.5.1 定义活动
6.5.2 标识活动
6.6 确定活动的次序和进度
6.7 网络策划模型
6.8 网络模型的公式化表示
6.8.1 构造优先网络
6.8.2 描绘滞后活动
6.8.3 集合活动
6.8.4 标注约定
6.9 增加时间维
6.10 正向遍历
6.1 l反向遍历
6.1 2标识关键路径
6.1 3活动缓冲期
6.1 4缩短项目周期
6.1 5标识关键活动
6.1 6活动一箭头网络
6.1 6.1 活动一箭头网络的规则和约定
6.1 6.2 使用虚活动
6.1 6.3 描绘滞后的活动
6.1 6.4 给活动加标签
6.1 6.5 网络分析
6.1 7小结
6.1 8进一步的练习
第7章风险管理
7.1 引言
7.2 风险
7.3 风险分类
7.4 处理风险框架
7.5 风险识别
7.6 风险评估
7.7 风险策划
7.7.1 接受风险
7.7.2 规避风险
7.7.3 降低风险
7.’7.4.转移风险
7.8 风险管理
7.8.1 应急
7.8.2 风险应对措施的决策
7.8.3 创建和维护风险记录
7.9 评价进度风险
7.10 应用PERT技术
7.10.1 使用PERT评价不确定性的影响
7.10.2 使用期望周期
7.10.3 活动标准偏差
7.10.4 满足目标的可能性
7.10.5 计算每个项目事件的标准偏差
7.10.6 计算z值
7.10.7 转换z值为概率
7.10.8 PERI的优点
7.11 蒙特卡洛仿真
7.12 关键链概念
7.12.1 获得最可能的活动周期
7.12.2 利用活动的最晚开始时间
7.12.3 插入项目和汇入缓冲期
7.12.4 一个样例
7.12.5 项目实施
7.13 小结
7.14 进一步的练习
第8章 资源分配
8.1 引言
8.2 资源的性质
8.3 标识资源需求
8.4 资源调度
8.5 创建关键路径
8.6 计算成本
8.7 特定的细节
8.8 发布资源进度表
8.9 成本进度
8.10 调度顺序
8.11 小结
8.12 进一步的练习
第9章 监督与控制
9.1 引言
9.2 创建框架
9.2.1 责任
9.2.2 进展评估
9.2.3 设置检查点
9.2.4 取快照
9.3 收集数据
9.3.1 局部完成报告
9.3.2 红黄绿交通灯报告
9.4 进展可视化
9.4.1 甘特图
9.4.2 延迟图
9.4.3 时间线
9.5 成本监督
9.6 挣值分析
9.6.1 基线预算
9.6.2 监督挣值
9.6.3 进度偏差
9.6.4 时间偏差
9.6.5 成本偏差
9.6.6 性能比
9.7 优先级控制
9.8 使项目返回目标
9.8.1 缩短关键路径
9.8.2 重新考虑优先需求
9.8.3 维护业务案例
9.8.4 异常计划
9.9 变更控制
9.9.1 变更控制规程
99.2 系统范围的变更
9.9.3 配置库管理员的职责
9.10 小结
9.11 进一步的练习
第10章 管理合同
10.1 引言
10.2 合同的种类
10.2.1 固定价格合同
10.2.2 时间和材料合同
10.2.3 每单位固定价格合同
10.2.4 公开的投标过程
10.2.5 受限制的投标过程
10.2.6 谈判规程
103合同部署阶段
10.3.1 需求分析
10.3.2 评估计划
10.3.3 邀请投标
10.3.4 评估提议
1014典型的合同条款
10.4.1 定义
10.4.2 协议的形式
10.4.3 供应的商品和服务
10.4.4 软件的所有权
10.4.5 环境
10.4.6 客户承诺
10.4.7 验收规程
10.4.8 标准
10.4.9 项目和质量管理
10.4.10 时间表
L0.4.11 价格和付款方式
10.4.12 其他法律上的需求
10.5 合同的管理
10.6 验收
10.7 小结
10.8 进一步的练习
第11章 人员管理
11.1 引言
11.2 理解行为
11.3 组织行为:背景
11.4 为工作选择合适人选
11.5 用最好的方法进行教育
11.6 激励
11.6.1 raylodst模型
11.6.2 Maslow的需求层次
11.6.3 Herzberg的双因素理论
11.6.4 工作热情的期待理论
11.7 Oldham-HackmanI作特征模型
11.8 压力
11.9 健康和安全
11.10 职业道德注意事项
11.11 小结
11.12 进一步的练习
第12章 团队管理
12.1 引言
12.2 组成团队
12.3 决策制定
12.3.1 制定正确决策的心理障碍
12.3.2 小组决策的制定
12.3.3 制定正确小组决策的障碍
12.3.4 减少小组决策制定的缺点的措施
12.3.5 团队精神
12.3.6 非自我编程
12.3.7 主程序员组
12.3.8 极限编程
12.3.9 Scrum
12.4 组织结构
12.4.1 组织结构与项目
12.4.2 正式的与非正式的结构
12.4 -3层次化的方法
12.4.4 员工与开发流程
12.4.5 部门化
12.5 合作依赖关系
12.6 分散或虚拟团队
12.7 沟通风格
12.7.1 在项目早期
12.7.2 项目中期的设计阶段
12.7.3 项目的实现阶段
12.8 沟通计划
12.9 领导能力
12.10 小结
12.11 进一步的练习
第13章 软件质量
13.1 引言
13.2 软件质量在项目策划中的位置
13.3 软件质量的重要性
13.4 定义软件质量
13.5 ISO9126
13.6 产品与过程质量管理
13.7 质量管理体系
13.7.1 BSEN:ISO9001:2000
13.7.2 BSEN:ISO9001:2000QMS需求概述
13.8 能力过程模型
13.8.1 ISO15504过程评估
13.8.2 实施过程改进
13.9 有助于提高软件质量的技术
13.9.1 审查
13.9.2 Fagan方法的基本原理
13.9.3 结构化编程和净室软件开发
13.9.4 形式化方法
13.9.5 软件质量循环
13.9.6 经验教训报告
13.10测试
13.11 质量计划
13.12 小结
13.13 进一步的练习
附录A.PRINCE2概述
附录B练习答案
进一步阅读材料