MyException - 我的异常网
当前位置:我的异常网» 开发方法 » 保持敏捷-持续集成解决思路

保持敏捷-持续集成解决思路

www.MyException.Cn  网友分享于:2015-08-26  浏览:0次
保持敏捷-持续集成
敏捷的一个要点就是:快速反馈。
从最早的每日构建,到现在的持续集成,都是开发者为了迅速获得系统反馈而采取的一系列措施。而且反馈信息越来越快速,信息要求越来越高。
一次集成的过程步骤大概如下:自动更新->编译构建->自动测试->报告集成结果。需要用户写好各过程命令(比如更新版本),并在集成服务器的支持下,把各过程自动串连起来。

目前可用的集成服务器有很多种, DSTP(we-done.com)也对持续集成提供了支持。
DSTP为支持持续集成提供的功能如下。
1.通过图形界面设置集成命令,并能把命令按顺序发到指定机器进行执行。完成版本更新,编译构建,测试等实际过程。
2.允许设置在集成结束/失败/成功/部分失败中某种情况发生时,自动向指定人员发送集成报告。在集成报告中,失败的环节,自动以显眼的红色给予提示;自动显示错误信息,甚至包括哪行代码出错。
3.可以设置集成周期,如每日/周/月/,或者每隔固定分钟后自动启动集成。
4.和SVN集成,可以自动感知SVN库的变化。可以设置SVN每次修改后,自动启动集成。在集成失败,自动向代码提交人和指定的项目人员发送报告,催促迅速更正,保证代码随时可用

设置集成命令:
DSTP通过图形界面进行命令设置,设置过程简单,通过鼠标右键,就可以增/删/改命令(活动),并设置命令的先后关系。如下图,表示设置了几个过程,更新版本后继续编译版本,编完版本后运行自动测试。

我们看下编译版本这个命令如何设置的。双击编译版本节点,弹出对话框如下图

设置命令时,允许设置命令执行机器(需要集成机器有安装客户端)和预先设置环境变量。DSTP会自动下发该命令到指定机器进行执行。并得到执行结果。
同时各命令的执行有先后顺序,比如版本编译没成功,就进行版本加载测试是无效的,DSTP能判断各机器返回的执行结果是否成功或者失败,并根据设置决定集成是否继续下一集成步骤。

集成报告:
当集成各步骤完成,集成结束,DSTP能根据预先要求向指定的项目人员发送集成报告。

可以根据集成的结果选择是否通知,可以设置通知接收人。

DSTP向通知接收人发送的集成报告格式如下

在报告中,列出了本次集成各命令的运行时间,以及运行结果. 对于失败的命令,会以红色显目提醒。
点错误信息查看,系统会自动显示本次集成的错误信息。
 
从错误信息可以看出,在test.c的第四行出现了错误

集成周期:
DSTP的集成服务器可以设置集成周期,按规定时间自动启动集成。同时,DSTP和SVN紧密集成,可以自动感知SVN的变动。可以设置SVN每次修改后,自动启动集成。在集成失败,自动向代码提交人和指定的项目人员发送报告,催促迅速更正,保证代码随时可用。

关于持续集成,已经有很多论述。但真的实施起来的公司并不多。很多公司可能就只做到了每日构建,自动测试做的并不多。这是因为自动测试环境通常涉及到多台机器的配合,没有一个好的集成服务器并不好施行;更重要的是,自动测试需要根据项目实际,进行适当的测试构造,而这方面的技术难度和工作量都不小。
当敏捷流行起来,测试驱动开发也在深入人心,测试的价值也越来越为人所认识。当大家慢慢意识到在测试,在集成投入精力是有价值时,持续集成也就开始流行,从而推动开发变得更加敏捷~~

DSTP的相关功能,可以到www.we-done.com下载了解。
对本文有疑问或者对持续集成和软件开发过程研究有兴趣的,欢迎来信一起探讨。我的邮件:bizi AT we-done.com。

------解决方案--------------------
建议每日集成
------解决方案--------------------
恩,如果能保证高集成频率,那自然是很理想的。

文章评论

聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
程序员必看的十大电影
程序员必看的十大电影
程序员应该关注的一些事儿
程序员应该关注的一些事儿
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
10个帮程序员减压放松的网站
10个帮程序员减压放松的网站
总结2014中国互联网十大段子
总结2014中国互联网十大段子
10个调试和排错的小建议
10个调试和排错的小建议
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
一个程序员的时间管理
一个程序员的时间管理
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
Java程序员必看电影
Java程序员必看电影
2013年美国开发者薪资调查报告
2013年美国开发者薪资调查报告
编程语言是女人
编程语言是女人
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
那些争议最大的编程观点
那些争议最大的编程观点
我的丈夫是个程序员
我的丈夫是个程序员
Google伦敦新总部 犹如星级庄园
Google伦敦新总部 犹如星级庄园
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
如何成为一名黑客
如何成为一名黑客
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
旅行,写作,编程
旅行,写作,编程
我是如何打败拖延症的
我是如何打败拖延症的
漫画:程序员的工作
漫画:程序员的工作
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
程序员的鄙视链
程序员的鄙视链
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
老程序员的下场
老程序员的下场
每天工作4小时的程序员
每天工作4小时的程序员
那些性感的让人尖叫的程序员
那些性感的让人尖叫的程序员
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
中美印日四国程序员比较
中美印日四国程序员比较
鲜为人知的编程真相
鲜为人知的编程真相
做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
代码女神横空出世
代码女神横空出世
为什么程序员都是夜猫子
为什么程序员都是夜猫子
程序员的一天:一寸光阴一寸金
程序员的一天:一寸光阴一寸金
2013年中国软件开发者薪资调查报告
2013年中国软件开发者薪资调查报告
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有