作者以提高软件质量为目的,针对敏捷开发,从易于理解的、创新的视角向读者阐述了软件开发的“韵律”,即“在敏捷实践的基础上,如何采用其中一种开发方式并使它与另一种开发方式相结合,以实现一种协同作用,从而使它们在协同工作方式下所发挥的效用比它们单独使用更加强大”。全书共分9个章节,具体内容包括了解程序员、从开源做起、结对编程、敏捷组队、测试驱动开发等。该书可供各大专院校作为教材使用,也可供从事相关工作的人员作为参考用书使用。
这是一本关于推荐、推广、推崇敏捷开发的软件方法学教材,这种方法同时尊重人员与实践的软件开发的双重韵律。全书包括两部分共九章。第一部分由三章组成。第1章介绍软件开发韵律的概念,第2章、第3章分别讨论人与实践,阐明软件开发的一些基本概念并提出几个重要的问题,如:“什么是敏捷价值?”“从开源软件开发中我们能学到什么”等。第二部分包括其余的六章,都是关于开发韵律的。软件开发韵律是一个强大的比喻,可帮助我们分析何时更好地采用一种软件开发的方法,使软件开发实践更加和谐,软件的质量也得以提升。
另外,本书以软件开发实践中的点滴作为出发点展开讨论,描述了一些项目片段和工业实例,注重用事实说话。全书行文深入浅出,亲切自然,并配以很多有趣的漫画来阐述书中的概念,值得读者细细品读,定当回味无穷。
适合阅读本书的,不仅仅是处在软件行业第一线的程序员;各个软件开发单位的团队领导、项目主管、高层管理人员,以及人力资源经理、文档撰写人员、程序开发工具的设计者、程序开发语言的设计者,甚至所有其工作与程序开发有关的人,都能从本书中得到启发。
第一部分:基本概念
第1章 程序员不死
1.1 开发软件与修建隧道相比
1.1.1 美好的旧时光
1.1.2 情况越变化,他们越相同
1.1.3 软件产品的背后
1.1.4 成交或不成交
1.2 哆来咪哆来咪
1.2.1 迭代模型
1.2.2 编码后修复模型
1.2.3 混沌
1.2.4 重要的方法
1.3 软件开发韵律
1.3.1 五线谱示例
1.3.2 博弈理论
1.3.3 启动-结束示图(In-OutDiagram)
1.3.4 精通-培训示图
1.3.5 不用数学
1.3.6 去哪里探索韵律
参考文献
第2章 了解程序员
2.1 个性及智力
2.1.1 编程高手
2.1.2 了解你的团队
2.1.3 招募程序员
2.2 外包程序员
2.2.1 本土化的程序员
2.2.2 程序员,文化及团队
2.3 经验式管理
2.3.1 对待因果关系不严谨
2.3.2 谨慎借用经验
2.3.3 从现在做起
参考文献
第3章 从开源做起
3.1 流程和实践
3.1.1 项目的四个P
3.1.2 敏捷的价值
3.1.3 零起点合作
3.2 开源软件开发
3.2.1 软件克隆
3.2.2 软件质量
……
第二部分:韵律
第4章 抄袭编程
第5章 结对编程
第6章 重复编程
第7章 敏捷组队
第8章 增量设计
第9章 测试驱动开发
尾声 各种乐声的混合