敏捷开发的定义

来自于软件开发领域的敏捷开发渐渐的向软件开发之外的领域传播。有金融界、法律界的朋友问我什么是敏捷,本文试图向非软件开发人员来介绍敏捷。

2001年美国17位资深的软件从业人员聚会,选择了Agile这个词作为统称,协商得到了如下的《敏捷软件开发宣言》。

我们致力于身体力行地揭示更好的软件开发方法,并推而广之。经过努力,我们已建立如下价值观:
个体及互动 胜过 流程及工具
可工作软件 胜过 详尽的文档
客户合作 胜过 合同谈判
响应变化 胜过 遵循计划
它意味着,尽管右项也有价值,我们认为左项更有价值。

这个会议被称为“雪鸟会议”。
同时他们整理了如下的《敏捷宣言背后的原则》
我们遵循以下原则:
1我们通过尽早且持续地交付有价值的软件,以达到我们的最高目标:让客户满意。
2欢迎需求变化,即使在开发后期也一样。敏捷过程掌控变化,为的是客户的竞争优势。
3经常交付可工作的软件,相隔几星期到几个月,且倾向于使用较短周期。
4项目开发全过程,业务人员和开发人员必须每天都在一起工作。
5围绕积极的个体构建项目。提供所需的环境和支持,并且信赖他们以完成工作。
6在团队内部及团队之间传达信息,面对面交谈的效果最佳且效率最高。
7可工作的软件是最主要的进度度量标准。
8敏捷过程倡导可持续开发。责任人、开发者和用户应共同维持一个长期稳定的步调。
9持续地追求优越技术以及良好设计,以增强敏捷能力。
10简朴——最大化无需完成的工作量的艺术——是根本。
11最好的构架、需求和设计都出自于自组织的团队。
12团队定期反省如何提高成效,并相应地调整及修正其行为表现。

可以看出敏捷的起源是针对于软件开发的。敏捷各流派达成共识的文字就全在上面了。
实际上“敏捷软件开发方法”不是指某一种方法,而是符合以上宣言和原则要求的等等各种方法的统称。
特别值得一提的是XP极限编程是Agile中的一个重要流派,提出了5个基本价值观:沟通、简单,反馈、勇气、尊重

经过多年发展,在ThoughtWorks,IBM等厂商的推动下,业务敏捷也被提上了讲台,使得原只属于软件开发领域的敏捷走向非软件开发领域。

在我看来,对于非软件开发领域,最值得借鉴的首先是敏捷思想。试归纳如下:
1,以人为本,基于信任,相信团队成员是自觉的、主动的。作为管理者,需要采用仆人型管理方式,认为自组织的团队是最好的团队。
2,沟通无极限,各方坦诚,鼓励快速交流。鼓励团队任何成员独立、自由、平等的表达观点
3,拥抱变化,对变化的态度是欢迎的,重视反馈,根据变化快速调整。
4,重视客户价值,以客户带来价值为第一要务。
5,追求简单,缩短中间过程,减少中间产物。

其次值得借鉴的是敏捷的过程。敏捷过程的特点有:
1,短迭代,2周~8周,一般是4周,固定的节奏,明确的预期
2,针对每个迭代收集反馈
3,每个迭代末期进行团队集体反思,做好下个迭代. (对反思,敏捷提供了一些形式化的方法,这可供非软件开发参考的)
4,勇于尝试,在不完备的情况下就开始,不要求针对中间产物的正式讨论评审,追求快速的看到用户价值,或者让用户看到价值。
5,尽可能在过程的前期来识别缺陷和问题
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值