收录了 敏捷开发软件 频道下的 50 篇内容
本文的第一篇阐述了敏捷软件开发的业务目标。业务成功是最终目标,它需要有效开发模式的保障;开发模式的实施又离不开团队组织和技术实践的支撑;最后,通过持续改进、系统优化,获得持久的成功。这一层次关系中,外层是内层的目标,内层为外层提供支持。本篇将探讨敏捷软件的开发模式。
敏捷被赋予了太多的含义,甚至承载了利益,有时还让人迷惑。本文并不试图去定义敏捷。但,我们会分别从外部(业务视角)和内部(开发模式及组织视角)观察正在发生的敏捷,并提交观察报告。
在过去的4年中,VersionOne对敏捷社区进行了调查,以深入了解“敏捷软件开发的状况”。在今年的2010敏捷大会上,第五次年度调查揭开了序幕。这项调查试图“衡量敏捷开发实践的价值”,比如方法论的采用情况。你可以在AgileDevSurvey.com上参与调查。
博弈论最初起源于经济学,用来分析企业、市场、消费者等的行为。从那之后,其范围和运用已经扩展到了多个领域,如政治学、社会学、心理学和敏捷软件开发。
通过使用恰当的工具,可以提升敏捷软件开发的效率。Kent Beck最近发表的一篇文章中提到了工具和敏捷软件开发之间的关系。
在本节的视频采访中,敏捷方法的布道者熊节分享了敏捷的基本概念,敏捷在消除浪费方面的作用,敏捷实践的最小集合,以及如何通过敏捷方法提高团队的交流和工作效率,并回答了在国内的企业里面如何实施这一“舶来”的方法,最后他还推荐了一套在项目中使用敏捷方面的工具集合等。
最近,VersionOne揭晓了2011年度敏捷软件开发调研结果,再一次向大家展示了敏捷应用和发展趋势的第一手资料。
Gartner于2009年12月的一份研究报告预测,到2012年“敏捷开发方法将会在80%的软件开发项目中得到应用”。我们来看一下,Gartner的预测是否已经成真?
Tasktop Technologies(Eclipse Mylyn应用程序生命周期管理软件背后的公司)现在支持与Danube Technologies的Scrumworks Pro及ThoughtWorks Studios Adaptive ALM的集成了。早在今年6月Tasktop还发布了Tasktop Pro 1.5。
本文讲述了保利威在不断建设完善的产品矩阵中,QA团队是对质量是如何思考和落地的。
Philippe Kruchten在《敏捷文化基因群落之旅——在敏捷开发的世界,环境因素是关键》中深入思考了敏捷的文化。他用了代表文化复制基本单位的“文化基因”这个概念,来描述各种敏捷思想和实践,并且称敏捷的文化就是许多的文化基因在传播的过程中聚集在一起,形成“文化基因群落”。Kruchten声称敏捷的文化,无论其是否对于一个组织有明显的帮助,都极具感染力和传播性。
许多团队仅对软件价值流(software value stream)的一部分做了优化,但是Kenji Hiranabe向我们展示了如何将精益生产中的看板跟踪系统嫁接到软件开发中,以便与更多的组织结构进行沟通。
这是Mike Cohn最新大作《敏捷帮你成功:使用Scrum开发软件》("Succeeding with Agile: Software Development Using Scrum")一书的摘录。 本文讲述了当人们由传统项目中的角色过渡到Scrum的时候必须做出的一些根本调整。作者着重介绍了角色是如何转变的,而不是具体介绍每个角色。
大多数程序员都熟知,学习编程技术最好的(或唯一的?)途径就是通过示例;尤其是通过观察别人怎么做。Antony Marcano和Andy Palmer的“和我们一起结对”是一个学习的好去处。
Thomas L. Friedman在其著作《世界是平的》一书中谈到,各类事件的融合使得许多国家成为全球供应链的一份子。其结果是一些新经济规则定义的产生。Israel Gat发展了这个概念,他称,其得益于社交网络和协作技术,软件开发已经不再依赖于位置了。
虽然《敏捷宣言》中说“客户协作重于合同谈判”,合同仍然是很多开发人员和公司要面临的现实。Peter Stevens分析了10种不同类型的开发合同,并解释了每种类型对于敏捷项目的适合程度。他发现:相比固定价格合同与按时间和材料制定的合同来说,有一些合同似乎更适合敏捷项目。
多年来,软件开发方法学不断发展,并且许多新方法已经出现在软件开发人员和项目经理的实际经验之外。以前的瀑布式开发方法的缺点太多。今天,我们聊的开发敏捷方法主要是为了解决这些缺点。
在与不少测试从业人员讨论到敏捷的时候,被问得最多的大约是两个问题:“到底什么是敏捷软件测试?”,“敏捷软件开发还需要测试工程师吗?”。鉴于这两个问题的意义,在本敏捷测试专栏的第一篇文章中,段念先生尝试从自己的实践出发,尽可能清楚的回答这两个问题。
为什么敏捷激起国内开发者这么强烈的情绪表达,一个话题被浏览高达58万余次?
作为在20世纪70年代、80年代盛极一时的软件开发模型,瀑布模型通过制定计划、需求分析、软件设计、程序编写、软件测试、运行维护等6个流程将整个软件生命周期衔接起来。这6个流程有着严格的先后次序之分,只有当前面的流程结束之后,下一个流程才能开始运转。