从敏捷工程实践中获益的五种途径
作者:网络转载 发布时间:[ 2014/8/13 16:27:52 ] 推荐标签:软件测试
能够让企业通过使用敏捷工程实践获益的五种具体方法是:
1.可以随机应变的灵活性
我的公司为大型零售商创建了一个电子商务平台。在六个月的开发周期中,前三个月团队具有自主权。我们两周一个迭代,并且每两周发布一次代码。某天,产品团队做竞争情报研究时发现,一个竞争对手针对退货修改了他们销售和信用卡的处理方式。因为我们完成的代码上个迭代已经充分测试了,并和其他代码集成好了,而且已经发到生产环境中了,所以我们清楚自己的代码非常可靠,即使变更也不会有任何宕机或缺陷之类的重大风险。
第二天,我们决定不再继续既定的构建,而是开了个需求收集会,估算多久能完成新的特性,并对用户故事重新排序。数天之内,我们把一组新特性确定好范围,排好优先级,由团队优先来完成这些任务。两周之后,修改后的信用卡退货引擎发布到生产环境中了。没发现任何缺陷,销售团队对此非常满意。
这完全得益于包括测试驱动开发在内的敏捷工程实践,公司清楚他们能够依靠技术团队快速应变,尽可能地降低在线品牌展示质量的风险,从而始终保持着市场的竞争力。
2.可以实时地重新分配开发团队的成员
如果要达到这种随机应变的灵活性,在两周内发布新的信用卡退货引擎,那么团队在本迭代只为这个特性上安排两名工程师不太够了,实际需要四名。由于团队采用了结对编程和集体代码所有权的缘故,所以团队中的成员熟悉每一段代码,我们可以随便拉一对已经完成其他故事的程序员去完成这个新的优先级更高的故事,当我们重新排定的优先级之后仍能维持原有的速率。
使用敏捷工程,项目不会因为某个摇滚无法从其他事情中分身而阻碍了进程。整个团队可以转向新的需求。为新功能配备的佳配置可以专心去完成新功能。团队处在一个不断交流的氛围中,所以为一个故事增加更多的工程师会很顺利,不会产生任何混乱。
3.自然而然地避免了去废弃持续了几个月的工作
经过充分测试再发布生产环境的代码还有另外一个好处,一旦完成不会被废弃。当我们确认需要完成信用卡退货特性时,可以把工作重心直接转到这个优先级更高的新特性上。在这个过程中不需要废弃任何工作。在我们要开始这项新工作之前,没有必须要完成或推迟的半成品。已完成的所有代码都是高质量的、无缺陷的、完整的和有效的。
4.坚信已完成的特性永远代表着项目重要的那部分
几年前,我的团队为一个大型政府机关项目做一个项目。这个项目是个长期合作,我们编码用了一年。因为我们使用了敏捷工程实践,所以代码会被持续发布到生产环境中。
在某的早晨,一位干系人对这个项目的优先级有了一些新的想法。他担心因此可能会使其他重要功能无法完成了。他不熟悉每天的项目进度,也没有意识到敏捷的商业价值。
所幸,工程团队实际上是紧贴业务开展工作的,每两周按业务的优先级完成他们的工作,在过去的一年中,重要的特性已经完成了、已经完全集成在一起了、已经充分测试了,它们的质量坚若磐石。
公司坚信在任何时间点完成的都是重要的特性。干系人可以放心软件的任何变更,不但多大都可能,而且都可以欣然接受且风险很低。
5. 能营销活动策划充满信心
我们都曾经经历过这样的事,公司策划一场营销活动。我经常和团队在一起工作,他们需要在确定的日期内完成软件的编码。去年,我负责一个教育服务性企业的项目。一场营销活动已经全面铺开。我们有一个明确的期限:返校日期。他们希望返校期间能产生巨大的销售额,所以这些特性必须在八月十号之前上线。由于日期是固定的,这场营销在电视、报刊和在线广告上也花费了大量的费用,电子商务网站必须在规定的日期内具备必要的特性。
通常接下来会发生什么事呢?我看到无数的工程团队终会处于一种左右为难的境地。八月一号那天,产品经理意识到无法满足时间要求,如果想让产品如期上线,工程团队要在接下来的两周里每周拼命地干100小时的活。但是,如果团队的工作强度如此之大,会把人搞得非常地疲劳和焦虑,这样很容易出现工作上的失误。
如果团队能够设法做到严守敏捷原则,继续依靠工程佳实践,那么测试驱动开发、持续集成、结对编程和其他方法将引导团队准时地发布并灵活地安排休息时间。
团队只需这么做。我们在高压时坚守敏捷原则,并握紧手里的枪。使用敏捷能为营销活动带来信心,其关键是坚信这样的一个事实,其实许多特性可以有多种实现方式。例如,假设有一个特性是要把视频上传到你的网站上,那么至少有两种实现方式。方案A:花10天时间开发,使用户可以上传任何语言、任何格式和任何长度的视频文件。方案B:花1天时间开发,让用户可以把YouTube的链接粘到一个输入框里。
你怎么选择我不得而知,但如果我是产品经理,而且时间已经到八月一号了,那我肯定会选择方案B。
终的结果是,我们在八月十号成功地发布了产品,它包含了所有的关键特性。我们有意欠下了大量的技术债,包括选择用的时间完成视频上传的特性。八月十号一帆风顺,之后我们把新特性和之前欠下的技术债重新排定了优先级。我们把技术债和新特性一起放到故事列表中重新排序,快速恢复到了两周一个迭代的平稳工作效率中。
概括起来说,敏捷工程实践的价值已经超越了工程团队,对整个企业的好处是显而易见的。持续运用高效开发过程的公司将带着巨大的优势同我们一起走进下个十年。让你的团队以适合的方式去实现敏捷工程实践吧,如果你有任何问题都可以向我提问,我会非常乐意地与你一起一边喝喝咖啡、喝喝啤酒一边详细地交流讨论的。
关于作者
Debbie Madden是一位经验丰富的管理人员、战略顾问和接口人。目前,她是 Stride的首席执行官,为高管和企业家们提供战略建议和一些首席惊喜官的咨询。Debbie信奉以人为本。她的生活和工作都坚守着热情、诚实、勇敢、公平的基本原则。她专门为技术、专业服务和初创公司提供指导和咨询。Debbie坚信,在接下来的十年软件构建流程将成为公司的巨大优势。敏捷和初创引发了她的思考。她相信,迭代、协作的方法会把权力授予团队,个人爱好与商业优先级将保持一致。已经过去的十年,Debbie一直在经营Cyrus Innovation。近,她已经成为Cyrus的首席执行官,把这家公司从一无所有发展到了规模达60人、价值数百万美元、五次获得Inc5000强增长快的私营企业称号,并被Crain评为纽约好的工作场所。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。

sales@spasvo.com