1. 敏捷开发的优势
敏捷方法基于迭代、增量开发,可快速交付可行的业务产品。增量开发将产品分解成更小的部分,构建其中的一些来评估和适应。敏捷项目并不是从完整的前期定义开始;预计会随着发展而发生变化。敏捷能为开发带来了灵活性和速度。
2. DevOps的优势
DevOps是关于敏捷开发中的合并团队和自动化。敏捷开发可以在传统文化或DevOps文化中实施。在DevOps中,开发人员不会像传统的开发-测试-运维结构那样将代码扔到墙上。而是通过DevOps安排,团队来管理整个过程。
而且,重要的是,开发过程中内置了持续的反馈。他们固有的适应性使他们能够灵活地重新调整产品开发,并且基于快速构建某些功能来适应用户反馈,这通常比投资尝试预先做好所有事情要便宜。
国内优秀的项目管理软件的话,我们团队用的是禅道,是国产开源项目管理软件。它集产品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体,是一款专业的研发项目管理软件,完整覆盖了研发项目管理的核心流程。
禅道对DevOps和持续集成的支持,包括Git、Subversion版本系统集成,Jenkins构建任务触发,以及ZTF自动化测试调度几个方面。
通过禅道自研的ZTF自动化测试工具,可很好地驱动8种单元测试框架、5种自动化测试框架来执行测试,并把最终结果回传给禅道,进行统一的报告展示。禅道ZTF打通了项目管理和持续集成工具之间的沟壑,贯穿持续集成、持续测试、持续部署等DevOps生命周期的不同阶段。
禅道项目管理软件的主要管理思想基于国际流行的敏捷项目管理方法—Scrum。
Scrum方法注重实效,操作性强,非常适合软件研发项目的快速迭代 开发。但它只规定了核心的管理框架,还有很多细节流程需要团队自行扩充。禅道在遵循其管理方式基础上,结合国内研发现状,整合了bug管理,测试用例管理,发布管理,文档管理等功能,完整的覆盖了软件研发项目的整个生命周期。在禅道软件中,明确的将产品、项目、测试三者概念区分开,产品人员、开发团队、测试人员,三者分立,互相配合,又互相制约,通过需求、任务、bug来进行交相互动,最终通过项目拿到合格的产品。