导图社区 IT企业数字化转型的数据治理与研发效能提升
IT企业数字化转型的架构治理、数据度量与效能提升、数据的治理模型和治理实践,以及敏捷开关和提效方法参考等。
编辑于2022-08-29 09:45:18社区模板帮助中心,点此进入>>
I T 企 业 的 数 字 化 转 型 与 研 发 效 能 提 升
企业架构治理与转型
企业数字化转型的困惑
以金融企业转型为例
战略不清
做不出来
传不到底
推不深入
架构不明
架构拎不清
能力拆不开
业技融不合
人才不足
外部进不起
内部练不出
结构转得慢
企业数字人才战略
数字人才粮仓模型
企业数字领导力“双星”模型
业务架构师岗位能力
企业效能提升理念
效能提升不仅是效率的提升,同时涵盖技能、安全、质量、合规、体验等提升
将成本投入到效能提升上去,所产生的的效益提升效果更好
企业数字化内建是提升企业效能的“核动力”,而大数据、人工智能、5G技术等新技术是企业数字化内建的“助燃剂”
数字化转型的3个建议
梳理并设计数字化模型,数字化先于数据化
构建数字化模型,持续和有意识地完善产品研发的数字化
基于当前的数字化的能力,构建数据体系
明确场景目标,并从场景目标出发设计度量体系
明确目标,以及为了实现该目标要回答的核心问题
基于可靠的数据,组织信息回答场景下的核心问题
数据引导和赋能,落地针对性的改进行动
区分业务结果、效能目标,以及内部的行为和能力指标
引导团队改进行为和能力,从而提高研发效能,赋能业务创新、发展
数据度量与效能提升
服务化能力评价和提升
技术能力
套件的配置化能力
套件的可扩展性
领域的模型和边界治理
域的模型和边界清晰性
产品需求开发周期
需求分析方法
需求分析效率
需求分析质量
环境和测试改进
工程能力
适配业务要求的交付和发布能力
1. 用变更串联应用的工程活动
2.连接变更和业务需求的发布
3. 推进持续发布能力的建设
聚合和管理研发资产和流程
1. 以应用为核心聚合研发资产
2. 定义和管理应用的研发流程
3. 维护和提升研发资产的价值
领域驱动的架构和实现
1.业务引领的领域建模
2. 领域驱动的微服务架构
3. 契约导向的软件实现
核心流程测试覆盖率
环境和数据可用性
变更前置时间
发布成功率
精益和敏捷协作
协作行为
业务驱动的协作模式
1.拉通端到端的业务交付流程
2. 分层协作与对齐
3.建立有效的反馈闭环
产品导向的交付模式
1. 跨功能和相对稳定的特性团队
2.持续和迭代的交付模式
3.持续改进团队交付效能
以终为始的需求分析和设计
1. 基于目标分析设计业务流程
2. 基于业务流程拆分定义产品需求
3. 实例化的需求设计和澄清
业务需求并行度
交付顺畅度
工作的对齐及瓶颈识别
数据度量体系
研发度量与数据治理
数据治理流程
治理目标
数据规则
数据建模
数据集成
数据存储
数据质量
数据治理模型
具体实践
使用GQM工具定义数据治理目标
确定目标
对象(过程、成果或资源)
维度(速度、质量、价值等)
目的(了解、评价、改进、控制)
角色(谁看)
提出问题
业务调研
专家意见
头脑风暴
确定指标
分解构成
调研数据
模拟计算
分层分角色确定指标需求
目标
角色:研发阿高管
对象:团队
维度:效率
目的:了解
问题
总体产出水平如何?
人均生产率水平如何?
成员产出是否均衡?
指标
需求吞吐量(代码当量)
需求颗粒度
需求交付周期
在工具、流程中制定数据规则
通过DevLake建立研发数据模型
Apache DevLak
需求管理模型
代码管理模型
测试用例模型
持续集成模型
部署环境模型
通用领域模型
集成数据的思考角度
开放性
Open API
开放程度
扩展性
自动化
插件
同步方式
定期拉数据
事件推送
数据量
同步频率
增量同步
通过DevLake一站式集成研发工具链数据
通过DevLake存储到任意数据服务
Data Pipeline
函数调用数据
代码搜索数据
领域模型数据
维度聚合数据
开发度量数据的源头
数据完整性
通过机器人检查数据完整性并发送提醒
系统易用性
根据业务发生的场景,优化信息需求和操作
自动化
培训
敏捷开关与成果交付
DORA指标
Deployment frequency(部署、发布频率)
即团队把代码上传井部署上线或发布给用户的频率,如2周1次、1周2次、1天10次等
Lead time for changes (推送代码到交付的时间)
即从推送代码到某个分支开始,到将代码对应的新特性发布到生产环境的时间
Time to restore service (事故发生到修复的时间)
即从发现服务异常(事故、BUG等)到解决问题并重新恢复服务的时间
Change failure rate (变更失败率)
即指对服务进行的变更中,导致补救、事故、回滚或失败部署的百分比。
Feature Flags
含义
功能开关+ 功能灰度+版本管理 + AB测试+ 远程配置+其他
用一个千人干面的可渐进式细粒度控制功能代码的开关,解耦部署上线和功能的向外发布
核心技术思想
Deploy!= Release
能解决什么问题
生产环境测试
降低风险/降低部署压力/ 不需要重新部署的回滚
在新特性失败的情况下控制损害/细颗粒度的开关
持续交付
加速特性发布
精益创业 & CEM & 客户成功
使实验特性发布成为可能/ AB 测试
在广泛推出之前收集初步的真实世界使用数据
千人(企)千面
生产环境测试/ 管理客户订阅和许可级别(特性控制)
Feature Flags的生命周期
发布开关
通常在功能发布后被删除。
实验开关
可能会持续几周到几个月
运维开关
用于控制系统的运维功能。
通常用于关闭功能。
权限开关
用户细分用户
优点
部署频率
在代码中集成Feature Flags来控制Feature运行与否,当Feature Flag处于激活状态功能运行否则不运行
变更失败率
通过Feature Management平台精准定位问题用户,配合细粒度秒级回退,将风险抑制到最低
完整的功能管理解决方案
1. Feature flags的管理
2. 使用者的权限管理
3. 团队协同,工作流协同
4. Empower all teams to deliver and control their software
5. 拥抱生态,可作为其他整体解决方案的一个助力一环
6. 助力企业增长与研发效能一体化
Feature Flags 如何影响企业效能
持续交付
”老板说上线就上线”
1. 去长分支,经常与main合并
2. 多个版本在同一个分支代码中管理
3. 没做完的功能也可以上线
精益创业
节省研发开支
迭代加速
持续交付研发成果
工具与平台
海外独角兽
Launchdarkly.com
开源产品
getunleash.io
flagsmith.co
featureprobe
国内产品
敏捷开关
featureflag.co