第1章 编程的精义 1
第1节 编程的精义 2
第2节 能不能学会写程序的问题 4
第3节 程序=算法+结构 5
第4节 语言 6
第5节 在没有工程的时代 7
第2章 是懒人造就了方法 11
第1节 是懒人造就了方法 12
第2节 一百万行代码是可以写在一个文件里的 13
第3节 你桌上的书是乱的吗 15
第4节 我的第一次思考:程序=算法+结构+方法 17
第3章 团队缺乏的不只是管理 23
第1节 三个人的团队 24
第2节 做项目=死亡游戏 25
第3节 做ISO质量体系的教训 27
第4节 谁动摇了你的制度 29
第5节 “那我们就开始开发吧” 31
第6节 组织的学问:角色 32
第7节 跟随蚂蚁,但不要栽进蚂蚁洞里 34
第8节 “什么是增值税发票?” 35
第4章 流于形式的沟通 41
第1节 客户不会用C,难道就会用UML吗 42
第2节 项目文档真的可以用甲骨文来写 44
第3节 沟通的三层障碍 46
第4节 最简沟通 49
第5节 为不存在的角色留下沟通的渠道 52
第6节 流于形式的沟通 54
第5章 失败的过程也是过程 57
第1节 做过程不是做工程 58
第2节 做过场 60
第3节 实现,才是目的 60
第4节 过程不是死模型 61
第5节 “刻鹄类鹜”与“画虎类狗” 63
第6节 工程不是做的,是组织的 65
第6章 谁是解结的人 67
第1节 是谁的问题 68
第2节 正视你的成功 70
第3节 总得先做点儿什么吧 72
第4节 你不是团队的腿 74
第5节 三鼓而竭 77
第6节 先人后己 80
第7节 自相矛盾 82
第7章 从编程到工程 85
第1节 语言只是工具 86
第2节 关注点 88
第3节 程序 89
第4节 方法 89
第5节 过程 90
第6节 工程 91
第7节 组织 93
第8节 BOSS 95
第9节 上帝之手 96
第8章 你看得到工具的本质吗 101
第1节 利器何以为先 102
第2节 神乎其技又有什么用呢 103
第3节 工具的本质 105
第4节 惟手熟尔 107
第5节 鲁班带了个坏头 108
第6节 工匠思想 110
第7节 化而用之,融通与融同 113
第8节 南橘北枳 116
第9章 现实中的软件工程 121
第1节 大公司手中的算盘 122
第2节 思考项目成本的经理 126
第3节 审视AOP 128
第4节 审视MDA/MDD 130
第5节 审视AP和XP 133
第10章 具体工程 139
第1节 预言——《人月神话》及其地位 140
第2节 错误的命题——对《人月神话》的反思 143
第3节 具体工程及工程的具体化 145
第4节 控制规模 149
第5节 隔离问题域 152
第6节 这样是不是太简单了? 154
第7节 郑人的履 156
第11章 是思考还是思想 159
第1节 软件工程三个要素的价值 160
第2节 其实RUP是一个杂物箱 161
第3节 UML与甲骨文之间的异同 162
第4节 经营者离开发者很远,反之亦然 163
第5节 矛盾:实现目标与保障质量 164
第6节 枝节与细节 165
第7节 细解“法”与“式” 166
第8节 灵活的软件工程 169
附录A 愚公移山记 171
附录B 愚公移山记(文言) 179
参考文献 185
索引 187
前言后语 189
设计手记 195
编辑手记 197