首页 > 其他 > 详细

Jenkins自动化构建系列:01敏捷开发、自动化构建与持续集成

时间:2015-03-31 19:39:53      阅读:343      评论:0      收藏:0      [点我收藏+]

SVN与TortoiseSVN实战系列》已写完,今天新开一个《Jenkins自动化构建系列》,上周听了Bob Jiang老师的Agile1001公开课,一直想写个总结,这篇关于敏捷开发、自动化构建与持续集成的思考就作为开题篇吧。

敏捷是什么?

敏捷是一把伞,这把伞下边有XP、Scrum、FDD。。。,当然也包括自动化构建、持续集成,其实符合敏捷思想的开发方法、工具,如Jenkins都可以属于敏捷开发的范畴,上课时的PPT:

技术分享

敏捷到底是什么?

其实关于敏捷的定义有很多,Bob Jiang的解释是:尽早地交付商业价值。

为什么需要敏捷开发?

敏捷之所以流行,是因为传统的瀑布式开发方式导致大项目的失败率很高(与小项目对比),而敏捷的解决思路是将大项目分解为小项目(也可以理解为阶段里程碑)来提高项目的成功率,尽早地、频繁地、持续的交付。

大项目与小项目成功率对比图:

技术分享

为什么需要自动化构建?

传统的开发流程:

技术分享

敏捷的开发流程:

技术分享

由于敏捷的开发方式改变了传统的开发流程,需要持续频繁的对代码进行集成、构建、发布,所以就产生了自动化构建与持续集成的需求。

想想每次发布所需的工作:构建、交付准备环境、代码发布全由手工完成,同样还有运行测试、备份旧版本、新版本打标签以及许多其他重复的事情。

计算机就是用来解决重复性工作的,同一项工作重复3次以上就应该使用工具来解决。

Jenkins能解决什么?

Jenkins 是一个开源项目,提供了一种易于使用的自动化构建和持续集成系统。

软件构建自动化:配置完成后,Jenkins会依照预先制定的时间表,或者针对某一特定事件触发,对源代码编译构建;

可持续的自动化检查:Jenkins能持续地获取新增或修改后签入的源代码,并对这些代码使用预先设定的规则进行代码质量检查;

可持续的自动化测试:构建检查的扩展部分,构建后执行预先制定的一套测试规则,如项目中的单元测试、集成测试代码,并收集测试代码覆盖率、结果;

生成后后续过程的自动化:当自动化检查和测试成功完成,软件构建的周期中可能也需要一些额外的任务,诸如生成文档、打包软件、部署构件到一个运行环境或者软件仓库。

Jenkins是框架式的,大部分功能通过插件的方式来实现,可扩展性非常高。

手贱百度了下Jenkins的百度指数,大家看出点什么没?

技术分享


记录,为更好的自己!

Jenkins自动化构建系列:01敏捷开发、自动化构建与持续集成

原文:http://www.cnblogs.com/ym123/p/4381483.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!