作者简介:吴海庆,资深咨询顾问、敏捷教练、DevOps专家、研发效能工具专家,复旦大学软件工程硕士,近20年软件行业从业经历。曾就职于阿里系互联网和TOP级车联网等企业,担任过DevOps高级经理、测试经理、项目经理和敏捷教练等职。结合管理和工程实践辅导多家企业进行敏捷转型。熟悉国内外主流工具链和云平台,帮助多个企业从0开始构建DevOps。
近年来,随着国际形势的不断动荡,全球经济充满不确定性,频繁变化的市场竞争格局,也加速了VUCA时代的到来,这对任何国家、企业或是个人来说,都是前所未有的大变局和大挑战。
软件行业在VUCA时代也变得复杂多样。据Gartner表示,现代软件大多数是被“组装”出来的,不是被“开发”出来的。在软件开发过程中,大量代码来源于开源代码或开源组件,非常依赖第三方组件的使用,而且客户的需求也复杂多变,这给软件开发带来了更多的不确定性。
一、为什么需要指标
当前软件行业开发模式主要有两大流派,一个是瀑布模式,一个是敏捷模式。据StandishGroup的调查结果显示,当项目较小时,用瀑布模式和敏捷模式的成功率几乎相等;当项目偏大时,敏捷模式的成功率是18%,瀑布模式的成功率是9%。即项目越大,使用敏捷模式的成功率也越大。其原因在于,小项目的周期比较短,相对复杂程度不高,无法体现敏捷模式的优势。当然,需要强调的是,敏捷不是银弹,它不能解决所有软件开发项目的问题,项目采用哪种模式要结合实际情况,有的项目可能更适用瀑布模式,但是敏捷模式有很多好的方法,可以借鉴到瀑布模式中。
据年第15次敏捷现状报告显示,94%的企业都实施了敏捷,且时间超过一年;65%的企业在敏捷方面有3~5年或5年以上的实践经验;超过52%的受访者采用敏捷实践。该报告是对欧美国家多个软件公司进行的敏捷现状调查,66%的人认为Scrum是他们最常用的方法,另有15%的人使用Scrum衍生方法。从报告结果可以看出,Scrum是目前最流行的一种敏捷方法。因此,基于敏捷模式的团队,也应该是一个跨功能自组织的端到端产品Scrum团队,共同为产品成果负责,更加