软件集成策略:如何有效率地提升质量
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

需求分析、架构设计、功能开发——这还不够,要想把软件卖出去,要想让程序发挥价值,还要把各个模块的各个功能“捏”在一起,且达到一定的质量标准。因此,集成很重要。

好的集成策略,好的集成解决方案,能让集成“润物细无声”,等到各功能开发完成,集成也差不多完成了,很快就可以发布上市。而不好的集成管理,可能会造成项目末期迟迟不能完成集成,发布日期一再推迟;可能会造成程序员的正常工作一再被当前代码中时不时冒出来的严重问题所烦扰;也可能要求程序员投入过多时间进行效率不高的检测,等等。

这是一本关于软件集成的书。它将全面介绍包括敏捷开发中的持续集成、持续交付在内的,业界公认的原则和最佳实践。

但本书并不止步于此,本书将仔细讲解这些原则和最佳实践背后的原因。为什么?因为只知道这些原则和最佳实践还不够。在某个具体的开发项目中,应该多么频繁地集成?在某次代码改动提交之前,应该花多长时间测试?这些都需要具体情况具体分析,来不得教条。那么,根据具体情况,该如何分析?要考虑哪些方面?如何权衡利弊?应该如何裁剪流程?应该多“敏捷”?最佳平衡点在哪里?我们需要知道最佳实践背后的道理,知道思考的方法,才能在具体的情境中活学活用,根据实际项目具体情况,制定最合适、务实的方案。

对于抱有一些典型问题要问,希望能快速获得答案的读者,下面是一些“快捷方式”:

· 若想了解软件集成的基本过程,请直接阅读第二部分第2章。

· 若想了解持续集成,了解如何实施,可从阅读第二部分第9.6节开始。

· 如果自己所在的项目,在项目后期需要漫长的时间进行集成、提升质量,可从第9.1节读起,看看问题出在哪儿,如何改进。

· 如果程序员总被别人的问题打扰,影响正常的开发工作,请看第9.2节的分析。

· 如果集成工程师非常辛苦,可基线还是迟迟出不来,请读第9.3节。

· 如果程序员总是抱怨质量要求过高,流程太烦琐,看看第9.4节怎么说。

· 如果想提高程序员的素养,可与他们重点讨论第4.1节至第4.4节,第5章,第7.1节至第7.6节,以及第7.11节。

· 如果想了解集成相关的各种工具,请参阅附录。

尽管存在上述快捷方式,但对于大多数读者,还是推荐按顺序阅读本书,书不厚,读完不需要很久。下面是本书结构介绍。

本书第一部分,是一个关于软件集成方案改进的职场故事。具体的故事总是比抽象的道理好懂。读者如果对软件集成尚了解不多,那么即便只读这个故事,也会有所收获。当然,用它做引子,更是希望这个故事能激发读者继续阅读的兴趣,深入探索软件集成这个领域。

本书第二部分共九章。其中第1、2、3、6章主要是介绍集成相关概念和一些基本的分析方法。第4、5、7、8章运用这些分析方法,来讨论软件集成策略的各个方面。第9章作为最后一章,讲解如何基于现有软件集成解决方案进行持续的改进,最终迈向持续集成。

正文之后的附录,在术语索引之后,列出了推荐给读者进一步阅读的书籍,并给出了推荐理由。还列出了软件集成相关的各种常用工具,可作为深入调研的起点。

最后是后记,讲述本书写作背后的故事。

以上是本书的内容介绍。那么,本书不讲什么呢?本书不讲具体工具的功能细节,更不讲具体的命令行。这些内容,读者容易通过互联网或从其他书籍中获得见本书附录参考文献。,无需在本书中赘述。本书所介绍的,是更偏向方法论的内容,讲解研究和思考集成相关问题的一般方法,以便读者在实践中触类旁通。

本书适合谁来阅读呢?适合所有与软件集成有关的工作者阅读。注意,软件集成绝不仅仅是集成工程师的工作。它是由程序开发人员、集成工程师、测试人员、质量保证人员、配置管理人员、项目管理人员等角色共同完成的。不同的角色,关注并制定不同方面的、不同层面上的软件集成策略。例如,某个程序员,不能决定所在项目是否应该使用新的持续集成工具,但他却有责任在提交某次代码改动前,采用适当的测试用例,做不多不少正合适的测试。软件集成策略和方法,需要软件集成相关的每个人了解和掌握。

祝大家阅读愉快,并有所收获。

董越,即流水先生,男,1977年生。他毕业于清华大学,拥有一个硕士学位和两个学士学位。在随后十年的工作时间里,他工作于西门子、摩托罗拉、雅虎、索尼爱立信、去哪儿网等企业,一直从事软件配置管理与软件集成相关工作,任CM Architect、CM Strategist等职。与此同时,他推动软件配置管理与软件集成领域在中国的普及和发展,在著书立说之外,还长期向各种类型的企业和组织提供演讲、培训和咨询。

个人网站:http://www.dongyue.name

电子邮箱:me@dongyue.name