规模化敏捷的最佳实践的注意要点

规模化敏捷的最佳实践

敏捷开发的理念目前已得到了广泛的使用,取得了不错的效果,原因主要是敏捷开发的方法能够提高项目的透明度,并通过增量交付的方式使用户更早的使用产品,并与开发团队进行交流。

然而,达到商业目的远远不是开发出好产品这么简单,而期望规模化敏捷则必须先关注以下几个方面:

1.团队规模

试想一下,敏捷开发的方法应用在超过100人的开发团队中会有什么效果?当这支开发团队要与其它部门在质检、系统集成、项目管理、市场运营等方面进行合作和沟通,以保证产品的顺利交付时又会有怎样的问题?通常极限编程这类的敏捷开发方法仅仅适用于7至10人的小型团队中。而大型团队则需要分为几个小团队,同一时间要和一些非开发人员进行配合。

2.系统复杂程度

通常情况下,大型系统会包含较多的特性和新技术,还要与其它系统进行集成,并且要满足不同用户群的需求。作为项目管理者,需要搞清楚是否有实时性、可靠性和安全性的要求,以及相关利益者都是谁。通常复杂系统都要经过严格的验证,这使得敏捷开发中的高速迭代变得复杂化了。

3.项目规划

有多长时间用于系统开发?系统维护的周期是多长?通常大型系统所需的开发和维护时间都比敏捷开发适用的系统长一些,并且要关注可能的更改和再次设计,还可能会被要求交付不同的版本号。

搞清楚这些,有助于决定对项目来说,哪些才是衡量项目成功的重要指标。

特别要注意企业的商业目的、现有的流程和企业文化,由于敏捷实践都有其局限性,不可能存在所谓的万金油。选择这些最佳实践时最好能够让它们互相配合,并且要依据企业的实际情况做出一定调整。以下浅析规模化敏捷的几个最佳实践。

❶团队协作是第一要务

Scrum 是眼下使用范围最广的敏捷项目管理方法。简单来说 Scrum 开发环境仅仅需要一个 Scrum 团队。这一团队要具备需求产出、系统架构、设计、编码以及测试所需的知识和能力。

然而,在项目的规模和复杂程度增加之后,单一的Scrum 团队可能就不能满足开发的需求了,这时就要依据系统特性和服务来划分不同的小团队。对一个项目来说,假设已经决定了要使用Scrum 这种项目管理方法,能够对各个 Scrum 小团队也使用 Scrum 的方法进行管理。这时就需要规模化敏捷中的项目集管理,或敏捷火车的概念,对各个小团队协调管理,确保各个小团队都在为总体的产品路线图努力,同时步调一致,高效协作。

❷基于特性开发与系统分解的结合

敏捷团队通常的做法是按特性开发,使开发者能够专注于完成对用户有意义的特性,而不必等待其它人的开发。系统中每一个特性都可以在各个小团队中独立开发。

同时要对产品,或是系统,做水平分解。但不管是针对特性进行开发还是对系统进行水平分解,其目的都是依据系统的分解来安排开发团队,并且解耦以便保持进度。

❸使用质量评估来决定架构上的需求

Scrum所注重的是解决用户的问题,用户反馈对系统成功与否起到重要作用。但当注意力全部放在功能特性上的时候,往往就会忽略架构上的需求。

建议在项目早期就对架构质量上的要求进行评估,以便决定哪些架构上的需求应该尽快满足,或者有哪些交付用户需求的捷径。

❹在整个生命周期中使用测试驱动理念

这一条用一句话来概括,就是开发之前先写好测试。按照编写测试、确认测试框架、编写产品代码并用框架测试、重构代码的步骤完成。

使用测试驱动开发或验收测试驱动开发的方法,将使我们推荐的其它实践变得更有成效。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值