第一部分 预备知识 2
第1章 软件工程与管理 2
通向管理岗位的道路 3
聪明人理解错误 4
其余人的理解也是错误的 5
管理的职能 8
一些有趣的数据 8
初露端倪的希望 9
小结 10
参考资料 11
第2章 软件开发为什么如此难 12
困境的本质 12
软件开发像是一个“险恶”的问题 16
与软件有关的谬误 17
不必担心哥斯拉——警惕那些鸭子 22
小结 22
参考资料 23
第二部分 软件开发过程 26
第3章 组建软件开发团队 26
组建团队的过程 26
进行面试 31
检查求职材料 35
商学院谜题 36
现在是DISC时间 38
阿波罗症状 38
阿什比定律和理想的团队成员 39
管理风格 40
软件项目管理的成熟度模型 42
从CMM的一级提升到下一级 44
任务成熟度级别 44
开发阶段与人格 45
组建团队的过程 47
软件开发人员具有挑战性的另外一个原因 50
小结 50
参考资料 50
第4章 制定与维护项目计划 52
项目章程 53
软件开发计划 54
分配时间 57
使用工作分解结构 57
生成WBS 59
使用流程图、甘特图、PERT网络和拉姆勒-布拉奇图 60
流程图 60
甘特图 61
PERT网络 62
拉姆勒-布拉奇图 63
人员负荷 63
使用设计结构矩阵优化项目计划 66
风险管理 72
小结 75
参考资料 76
第三部分 管理方法与技术 78
第5章 选择软件开发生命周期模型:管理含义 78
软件质量生命周期 78
查看软件开发过程 79
为过程建模 84
生命周期模型基础知识 85
生命周期模型 87
瀑布模型 87
灌篮模型 89
螺旋模型 89
演进模型 92
阶段-关卡模型 93
快速原型法模型 94
敏捷编程模型 95
同步-稳定模型 99
生命周期模型特性比较 100
选择软件开发生命周期 101
小结 102
参考资料 103
第6章 为目标系统建模 104
为什么要对系统建模 104
需求建模方法 108
使用数据流图 108
使用IDEF0表达需求 110
使用自作用矩阵进行需求分析 111
刺激响应表规格说明方法和实时系统 114
用例 116
设计方法概述 119
选择适合的系统建模技术 120
小结 123
参考资料 123
第7章 估算项目大小、成本和进度 125
查看成本估算的过程 125
估算可变性作为项目时间的函数 126
估算软件项目的成本和大小 128
进度估算公式的一般形式 129
IBM在联邦系统部门的发现 130
软件生命周期管理 130
功能点估算法 131
过程概览 133
示例 133
功能点计算的自动化辅助 136
功能点方法的总结 136
3D功能点方法 137
数据维度 138
功能维度 138
控制维度 138
计算实时功能点估算 139
基于伪代码的估算方法 140
成本和进度表估算:一个建议 140
构造性成本模型 140
COCOMO Ⅱ 142
估算开发工作量的两个阶段 143
开发工作量估算 145
简单示例一 147
COCOMO Ⅱ中的估算调整 148
开发进度估算 151
计算COCOMO Ⅱ比例因子 151
简单示例二 155
成本偏差方法 156
小结 159
参考资料 159
第8章 跟踪软件项目计划 161
跟踪方案 162
利润最大化 163
面向任务的方案 163
寻找一种更好的方法 164
挣值管理 164
使用EVM:术语与公式 166
与成本相关的要素 167
与进度相关的要素 169
与工作和内容相关的参数 170
EVM要素总结 170
应用EVM 171
挣进度 177
EVM总结 179
成本和进度控制的前导图 180
正推法 180
逆推法 181
并入浮动时间 182
自由浮动时间 184
关键路径 184
成本模型 185
将进度与成本模型组合在一起 185
对软件开发进度应用前导图 187
采取纠正措施 188
首先要避免成本和进度问题 189
关于复杂度和项目成功 190
小结 191
参考资料 191
第四部分 管理软件专业人员 194
第9章 提升团队绩效 194
研究所揭示的 194
最近的研究结果 196
基础知识 197
技术上高风险的需求 198
高风险进度 198
人员配置 199
资源 199
软件质量 199
工作场所的相对重要性 200
物理工作场所 200
关系工作场所 201
人们为什么工作 202
激励因素的模型 203
马斯洛模型 203
麦克利兰模型 204
期望理论 204
目标设置理论 205
个人特征模型 205
赫茨伯格模型 205
如何影响团队绩效 206
精诚合作还是单兵作战 207
CMM到第几级就够了 209
管理高绩效团队 210
小结 213
参考资料 214
第10章 考核软件开发团队 216
考核人员的经典技巧 216
基于战略的考核方法 217
使用SEM 218
SEM过程 219
传统绩效考核方法与SEM的对比 224
考核软件开发团队 226
考核软件开发团队的另外一个方案 227
小结 229
参考资料 230