数字化浪潮正冲击着每一家企业,大数据、云计算、社交媒体和移动互联等技术日臻成熟,人工智能、物联网和大数据分析等技术也逐渐兴起。这些新兴技术正在深刻地改变各行各业的行业环境,进而影响到企业的方方面面,包括营销、研发、供应链和服务等诸多领域。
敏捷开发是企业在数字化转型中的重要一环,我们将通过两篇文章与您分享安永针对企业数字化转型中敏捷开发的实践。
在本篇文章中,我们将聚焦企业数字化转型的方向与路径以及企业数字化敏捷体系和能力建设两个话题。在下篇中,我们则将重点介绍敏捷开发的主流方法和工具软件。
一)企业数字化转型的方向与路径
1. 企业数字化转型动因和方向
当前,三大要素正在驱动企业的数字化变革转型:
传统企业向数字化企业转型,必须从变革企业文化和更新企业发展战略的高度,去转变其原有的理念和经营策略,具体包括以下几个方面:
2. 数字化系统研发的敏捷化是企业数字化转型的必由之路
在上述五个方向中,敏捷化——特别是数字化系统研发的敏捷化,是赋能企业研发创新、生态建设和流程再造的重要抓手。
不过一般而言,即使是在今天,由于其自身固有的特点,传统企业中还是有大量的业务或职能部门并不需要转变为“敏态”。此类业务或职能所需的数字化系统可称之为“稳态”系统。对大部分传统企业而言,“敏态”和“稳态”两种数字化系统和对应开发模式的长期并存,是一种现实的理性的选择。在本文中,我们重点探讨“敏态”部分。
对于敏态数字化系统的研发,采用敏捷开发的方式能带来如下好处:
企业数字化研发敏捷化,是涉及到企业内部多方面改造的系统工程,这是因为大多数传统企业在IT治理方面,都多少存在以下这些方面的问题:
要解决上述这些问题以建立起企业的数字化敏捷体系,需要从治理体系与管理方法、组织架构、岗位职责、人员能力、技术支撑平台等多个方面着手,下面将分别展开论述。
1. 治理体系变革
需求和预算管理流程的变革
基于传统管控模式的预算管理过程,一般在上一年度结束前,根据历史数据以及各部门的资金申请情况并结合对业务部门需求的预估,对新的一年进行资源需求的预测。再根据所获得的资源总量进行资源分配,并按照分配结果管控预算的执行进程。对计划的执行和管理以半年或年为单位,敏态建设难以很好地得到支撑。
为支持敏态业务的开展和敏捷化开发模式的推行,与之对应的预算管理体系需要建立起来,以应对需求和预算的平衡,加快和加大被验证需求的数量和范围。下图是一种敏捷的需求与资金管理方式的例子。当企业需要在某个全新领域创新时,可以通过设计思维、头脑风暴等方式涌现出大量创意(数量为100+),其中部分比较有前景的创意(15至20个)被选中,再经过一段时间的孵化变成原型。各方对原型评审后,决定对其中少数(2至4个)创意进行进一步的验证与融合(1+个),以形成最小价值产品(MVP)。MVP就是一个可投放市场的、新的产品的起点。
这种方法对传统管理方式的主要改进点如下:
敏捷项目管理流程的变革
企业对敏态开发的项目管理,应当在传统的项目管理体系基础上,根据当前项目团队所选择的敏捷开发方法体系和团队的敏捷成熟度等因素,对项目管理的管控范围、管控方法等,进行一定的裁剪。
敏捷实施管理流程的建立与持续优化
企业的敏捷化转型不能一蹴而就。企业应先尝试团队级(10人以内)的敏捷开发实践,可以考虑选择几个相互独立的开发团队同时进行尝试。具体流程和方法首推Srcum的敏捷体系,也可以考虑Scrum和极限编程(XP)的组合。
团队敏捷实施一段时间(半年以上),并积累了一定的成功经验后,就可以考虑将敏捷实践的规模扩展到项目集——即需要至少3至4个开发团队紧密协作才能顺利推进的项目集群。此时须引入规模化敏捷的实践框架(如SAFe),并配备等规模化敏捷所需要的关键角色。
一般而言,只有当企业实施项目集的敏捷开发一年以上,并获取足够的成功经验后,才可以考虑逐步将敏捷实践的规模进一步扩大。
各个级别的敏捷实践所包含的具体敏捷活动因企业而异。
2. 组织架构和岗位职责调整
团队级的敏捷开发实践(如Scrum敏捷开发模式),要求在开发团队内部,新增如下岗位(角色):
对于敏捷开发,传统项目经理所需承担的计划编制、计划执行管控等方面的职能被大大弱化了。敏捷的理念不主张制定过于详尽的计划,反对用计划的约束限制团队响应变化的能力。
对于规模化敏捷,除了上述新增角色外,还需要在项目集的层面设置新的岗位。以SAFe框架为例,新设置的岗位包括:
3. 人员技能的变革
敏捷化开发要求敏捷开发团队的全体成员都要深入理解并认同敏捷的相关理念,掌握敏捷相关的方法和技术,并熟练使用相关的支持性工具。下图是根据通用的敏捷能力模型对某敏捷项目团队的敏捷能力水平进行的现状分析和短期提升目标设定:
可以看出,敏捷开发团队是全功能的团队,它要求团队中的每个成员最好都成为能够掌握多种开发、测试和部署配置技术的复合型人才,以更加灵活地应对需求的变化,并充分利用团队成员的时间。
下图大致罗列了敏捷开发团队应当掌握的各种敏捷开发相关技能。其中,实施难度越高的技能,对团队的敏捷成熟度要求越高。
4. 敏捷化开发所需的技术支撑平台——DevOps工具链
敏捷实践涉及的活动类型较多,串联这些活动的流程比较复杂,仅仅依靠手工操作很难让这些流程高效地运转起来。因此,我们需要借助工具软件的力量,搭建一个敏捷支撑平台,以此来实现敏捷开发流程的固化和高效运转。
为此,我们所选择的工具集,要能够实现以下关键环节的覆盖与流程的贯通:
实现上述目标所需的工具软件,完全可以借助DevOps工具链,并结合企业自身敏捷实践的具体方法和流程,对既有工具进行一定程度的配置或定制化开发,即可实现对从预算编制开始的整个软件开发生命周期的全面支持。
本文是为提供一般信息的用途所撰写,并非旨在成为可依赖的会计、税务或其他专业意见。请向您的顾问获取具体意见。
来源:安永动态
声明:本文来源于网络,已注明来源,如有侵权,请联系发布者删除