背景
数字经济时代,企业数字化转型加速,软件业务收入目标设定,产业基础保障水平提升。DevSecOps: 作为解决交付能力挑战的方法,强调开发(Dev)、安全(Sec)、运维(Ops)的整合。
DevSecOps持续发布流水线通过两种发布快速通路实现质量效率的均衡,一种是以自动Q点(质量检查点)检查快速上线方式,另一种是在规划阶段基于服务发布计划开展质量策划,以开发交付QCP、Q检查点内建质量防护网,以及后端持续运维&运营、PRR/ORR检查确保最终产品上线质量。核心原则是自动放通不影响效率,例外上升确保质量。
DevSecOps强调开发、运维/运营、安全团队的融合协作,依托“技术+工具”,将质量、效率、可信软件工程能力、安全、开源/第三方管理的要求,通过规范、软件/API、用例、工具固化到DevSecOps生产线,自动化的、透明的融入到产品管理全生命周期,在保证安全可信的同时又不会妨碍灵活性,达成产品的“稳定可靠、安全可信”。
持续运维(SRE)&运营流程:实现服务上/下架、生命周期管理、现网变更、监控、告警、事件、问题等运维运营等关键活动流程定义。
DevSecOps质量效能指标
DevSecOps流水线作业产生的数据经过治理,根据价值流要素定义的指标字典,形成质量效能指标库。通过三层指标管理逻辑来牵引目标达成:
L1层:以客观、明确、精简(北极星指标)为标准,识别目标达成的关键结果性指标,通过这一组结果性指标来对目标进行描述,以此作为目标状态的晴雨表。
要点一:沿着DevSecOps价值流对质量效能全链路要素进行刻画,在此基础上构建成熟度模型。
要点二:根据业务特点,通过指标风险预警策略服务自定义自动预警指标项、规则、组织层级、干系人等。
要点三:实现风险的自动识别及推送,冒泡出的风险自动创建改进作业。
要点四:进入研发管道的改进项在完成改进后形成闭环,并体现在结果/过程成熟度评估中。
L2层:确定支撑结果性指标达成的过程度量指标,这些指标的选取要遵循上下指标逻辑,要承接且充分必要、衡量对象为过程核心要素等原则,作为目标结果指标与实际作业的有效衔接,一方面能支撑结果指标的达成,另一方面是对工程活动的直接呈现。
L3层:要对过程度量所表征的工程活动开展的有效性做评估,需要打开过程度量指标,对其表征的业务流关键要素进行具象化剖析和运营,目的是确保指标度量的真实性和有效性。
要点一:沿着DevSecOps价值流对质量效能全链路要素进行刻画,在此基础上构建成熟度模型。
要点二:根据业务特点,通过指标风险预警策略服务自定义自动预警指标项、规则、组织层级、干系人等。
要点三:实现风险的自动识别及推送,冒泡出的风险自动创建改进作业。
要点四:进入研发管道的改进项在完成改进后形成闭环,并体现在结果/过程成熟度评估中。
全景
质量持续改进
各部门/团队可以根据自身业务特点扩展表征指标集以及指标自动告警推送阈值
效能成熟度评估模型:
作业流数据状态灯及风险环节识别
DevSecOps质量效能风险环节要素洞察模型
洞察出的质量效能全链路风险冒泡并IT化运营
持续改进双向闭环:面向作业流的改进闭环,面向能力沉淀的改进闭环。 持续改进双循环:组织级改进循环(组织分层)、团队/个人改进循环。
质量效能改进PDCA环
团队/个人持续改进流及技术能力地图
持续改进组织及人员能力建设
场景化的管理评估及应用
基于代码覆盖的产品质量评估
总结
长期构建:将软件质量视为长期任务,形成企业内的“软件质量”文化。
工具融入:将质量保障相关的研发工具融入企业软件生产过程,确保持续发挥作用。