1.5 阅读本书前的注意事项

    选择团队开发中所使用的工具和方法论,并没有唯一且绝对正确的答案。根据企业规模、产品规模、团队规模的不同,最合适的工具和方法论也不尽相同。而且,团队开发的工具、方法论的选择范围也非常大,但这并不意味着全都要使用。

    1.5.1 最好的方法是具体问题具体分析

    在团队开发的世界中,没有到哪都适用的万能的最佳实践,只有根据实际情况制定的方案才能行得通,这样的思考方法才是比较正确的。是否能找到最适合自己所从事项目的解决方案,可以说是能否将项目导向成功的关键所在。

    例如,在实际的项目中,有需要将缺陷管理系统、版本管理系统、CI、CD 这些方法全部使用的,也有只需要版本管理和 CI 就足够的。

    1.5.2 没有最好的工具

    在工具的选择方面也没有正确的答案。仅以缺陷管理系统来说,是使用 Redmine5 好,还是使用 JIRA6 好呢?或者是只使用 GitHub7 就足够了呢?答案会因具体的情况不同而发生变化。

    5 http://www.redmine.org/

    6 https://www.atlassian.com/ja/software/jira

    7 https://github.com/

    CI 的情况也一样,是使用 Jenkins 好还是使用 Travis CI8 好,或者是 使用其他的工具比较好,不能一概而论。至于 CD,如今也有各类工具相继推出,哪个是最好的还很难说。

    8 https://travis-ci.org/

    想要在本书中一一介绍各类方法和工具的所有组合模式是不可能的,所以本书将主要讲解本书写作时(2014 年 3 月)的一些优秀的模式。如果有多个选项的话,也将尽量向读者们展示。

    在接下来的第 2 章中,我们将围绕诸事不顺、无法顺利推进的项目案例展开,一起思考该如何改善这种情况。