`
qiuguo0205
  • 浏览: 241029 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

《持续集成 软件质量改进和风险降低之道》

所有对持续集成主题感兴趣的人都应该看看这本书,但是快速浏览一遍就行了,毕竟这个主题是一个实践性很强的主题,所以浏览一下,知道持续集成的重要性就可以了。下一步就是赶快着手实施它,而实施过程中的问题这本书是不会给你解答的,只有自己阅读文档解决。
我认为整本书最重要的就是这个它的资源列表了,列在了后面供参考

一. 箴言集合

当一个项目经理或一名开发者说已经完成了80%的任务,您必须保持审慎的态度。因为剩下的20%可能还需要80%的时间,甚至永远都不能完成。——译者序

第二章 引入持续集成
假定是所有麻烦之母——Wethern's Law of Suspended Judgment

减少假定:持续集成在每次版本控制系统发生变更时就执行构建,这有助于减少项目中的假定。

CI之路——I Build So Consistently. Identify确定, Build构建, Share分享, Continuous持续

CI准则
1.经常提交代码
2.不要提交无法构建的代码
3.立即修复无法集成的构建
4.编写自动化的开发测试
5.必须通过所有的测试和审查
6.执行私有构建
7.避免迁出无法构建的代码

第三章 利用CI减少风险
品质意味着在没人看的时候也把事情做对——Henry Ford

第五章 持续数据库集成
你是否曾感觉到在项目的开发过程中,源代码和数据库就像在不同的“星系”中开发?:)

要使用本地数据库沙盒,使用的免费数据库做测试使用

第六章 持续测试
实践造就完美——英语格言

re.li.a.ble——形容词:在连续的实验中给出同样的结果

第七章 持续审查
谁能用别人的大脑来完成他的工作,他就了不起——Donn Piatt

审查的目的是在引入缺陷之前就发现缺陷。

通过持续执行审查,可以减少发现缺陷和后续修复之间的时间。

第九章 持续反馈
作为一项通用规则,在生活中最成功的人就是拥有最好信息的人——Benjamin Disraeli (1804-1881)

持续反馈与CI
在正确的时间,以正确的方式,将正确的信息发送给正确的人——CI是让这种反馈信息自动化、目标化和实时化(持续化)的最好工具。

持续集成的核心——是减少缺陷引入、发现和修复之间的时间间隔

二. 资源
A1 Web站点,文章
IBM Developerworks 让开发自动化系列专栏 很多优秀的文章
http://www.ibm.com/developerworks/cn/java/j-ap/

书籍网站 http://www.integratebutton.com/

Martin Fowler的文章
http://martinfowler.com/articles/continuousIntegration.html

其他文章
http://www.stickyminds.com/BetterSoftware/magazine.asp?fn=cifea&id=58
http://www.stevemcconnell.com/ieeesoftware/bp04.htm
http://integratebutton.typepad.com/
http://en.wikipedia.org/wiki/Fagan_inspection

推荐书籍
Software Configuration Management Patterns,by Breczuk Appleton
Refactoring Databases—— Ambler等人

Code Smell
http://en.wikipedia.org/wiki/Code_smell
http://c2.com/xp/CodeSmell.html
http://hi.baidu.com/diboo19/blog/item/1cdfb789ff5ec7b70f244443.html

Coding standard
http://www.xp123.com/xplor/xp0002f/codingstd.gif

Evolutionary Database Design
http://martinfowler.com/articles/evodb.html

A2 CI 工具
比较表 http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix

作者重点介绍了AnthillPro Continuum CruiseControl LuntBuild Pulse Gauntlet Darco.NET
分布式集成构建 BuildForge ParaBuild

A5 数据库
HSQLDB Mckoi MySQL PostgreSQL

A6 测试资源
单元测试 JUnit TestNG
Agitator 针对java代码自动生成测试用例
自动化系统和功能测试 DbUnit Selenium Abbot Fit FitNesse
Web测试 Floyd HtmlUnit JWebUnit Selenium Watir

A7自动化审查资源
Java 编码标准检查 Checkstyle
审查工具
代码覆盖率 Clover Cobertura EMMA NCover for .Net
使用JDepend、NDepend进行依赖分析,维持架构
使用PMD's CPD或redhill consulting的Simian检查重复的代码,这是更详细的审查工具列表FindBugs, JavaNCSS, JDepend, PMD, Simian, SourceMonitor;和在.Net平台下FxCop, NDepend

A 8 部署
Ant+cargo, Capistrano for RoR

A9 反馈
反馈形式 email、短信息、Ambient Orb、X10设备、Windows任务条、声音、宽屏显示、浏览器插件、即时消息[Jabber for gtalk, Pidgin etc]、RSS等
邮件服务器 http://james.apache.org/

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics