BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

工具和敏捷软件开发之间的关系

| 作者 Vikas Hazrati 关注 0 他的粉丝 ,译者 郑柯 关注 3 他的粉丝 发布于 2008年7月26日. 估计阅读时间: 2 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

Kent Beck最近发表了一篇文章,其中谈到了他对于工具和敏捷软件开发之间关系的一些想法。他认为:很多人都错误诠释了“个人与交互重于流程和工具”这条敏捷原则,他们以为敏捷软件开发不需要工具。工具其实是敏捷软件开发必需的部分,对于有效的开发来说,正确的工具集合可以起到催化剂的作用。

Kent认为,敏捷很注重“流”(flow),也就是说要进行小块的软件交付,并因此而带来各个活动之间的频繁切换。一般来说,在分析、设计、测试、编码和发布之间都会进行快速切换。而工具的作用,也从充分发挥某个活动的作用,变成了在活动之间的切换。他给出了使用墙上的卡片作为工具的例子,认为这满足了活动切换的条件,即使有所不足。当结对编程的人员在某项活动中发现新的需求时,他们可以更新卡片,再回到之前的活动中。因此卡片有助于快速切换,但是它们的弱点在于只能暂时使用,而且无法在多个站点之间共享。

Kent指出,透明在敏捷中也很重要。因为敏捷拥抱变化,项目规划发生变更就是很常见的事情。透明可以保证团队中的每个人都能知道变化的发生,并产生彼此之间的信任。工具应该支持并鼓励透明。

Kent补充道,常用的敏捷实践之间的关系很密切,胜过单独的工具。比如,每日部署实践需要单元测试、配置管理和持续构建的支持。TDD实践也需要单元测试工具和重构工具的配合。从另一个角度来看,每个工具也支持多种实践。例如,配置管理工具可以支持每日部署、增量式设计和持续集成。因此每个工具支持多个实践,而且每个实践需要多种工具支持。

他指出:敏捷已经对开发人员使用的工具产生了深远的影响。对于未来工具可能的变化,他的预测是:

  • 在活动之间更平滑的切换
  • 在更大的范围支持自动化测试
  • 增强透明度
  • 实时协作

这篇文章可以下载多种格式。对文章的讨论也在极限编程讨论组中进行。

查看英文原文:Relationship Between Tools and Agile Software Development

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT