开发者社区> 问答> 正文

DevOps 度量体系的建设过程有哪几种?

DevOps 度量体系的建设过程有哪几种?

展开
收起
游客wj7q2yeduvyvg 2022-01-13 12:04:03 1221 0
1 条回答
写回答
取消 提交回答
  • 构建 DevOps 生态的方法有下列 4 种:以项目生命周期数据为基准、以资源数据为基 准、以交付数据为基准和以监控数据为基准,如图所示。在这 4 种方式中,各“窗口 期”的度量体系各不相同,以项目周期数据和交付数据为例,包括资产、资源、版本质 量、组织效率、工程环境;以资源数据和监控数据为例,主要体现在项目后评价和成本 复盘方面。 image.png

    1.归集度量数据指标

    构建一个度量指标体系,首先需要根据 DevOps 落地的方式获取 DevOps 的相关指标。 此处需要明确一个观点,任何度量的终极目标是为了更好地进行管理,有针对性地进行优 化,从而使 DevOps 的价值最大化。

    2.度量数据指标拆解

    归集完涉及的指标后,通常存 在一个问题,即指标多且复杂。在 具体的度量过程中,存在不同阶段 重点关注的指标不一样的情况,如 需求阶段关注需求的吞吐量和需求 总数,研发阶段关注研发效率和研 发质量,测试阶段关注测试覆盖率 和缺陷修复情况。在不同的 DevOps 阶段,需要挑选出对应阶段的核心指标,然后进行指标拆解,接着根据拆解的指标进行度 量,并根据度量情况有针对性地进行重点关注。

    下面以项目生命周期为基准的流水线举例,进行指标拆解。常用的指标有项目指标、 需求指标、版本指标、团队指标、资源指标、构建指标、质量指标、环境指标、部署指标、 监控指标和项目后评价指标。

    (1)项目指标:项目进度、项目工时和项目质量。

    (2)需求指标:需求总数、各状态的需求总数、当前的需求完成情况、各业务方的需 求总数和需求吞吐率。

    (3)版本指标:版本数量、分支数量、仓库数量、代码提交数和代码提交频率。

    (4)团队指标:团队情况、人员情况、任务分解情况、团队管理的系统情况、团队承 接需求情况和团队承接任务情况。

    (5)资源指标:工程环境数量、系统分配资源情况、团队分配资源情况、人员分配资 源情况、资源可用数据、资源使用数据和资源性能数据。

    (6)构建指标:构建次数、构建频率、构建时长和构建成功率。

    (7)质量指标:“坏味道”数量、阻塞数量、代码行数、代码重复率、代码问题数、单元 测试用例数、单元测试覆盖率、单元测试执行结果、自动化测试用例数、自动化测试成功率、手动测试用例数、bug 数量、团队 bug 数量、人员 bug 数量、bug 修复时长和千行代码 bug 数。

    (8)环境指标:环境变更时长、环境变更频率、环境不可用时长和工程环境数量。

    (9)部署指标:部署次数、部署时长、变更时长、部署成功率、总体变更成功率和一 次变更成功率。

    (10)监控指标:监控覆盖率、监控送达率、监控准确率、线上问题统计和线上问题恢复 时长。

    (11)项目后评价指标:以产品运营核心指标为准,如 PV/UV、行为、转化率和利润。

    3.确定度量数据维度

    在确定度量数据维度之前,需要明确 DevOps 度量与反馈的两种常用方式:通过数据 结果维度进行度量和通过数据类型维度进行度量。软件是数字化的事物,虽然度量的方式 有多种,但相应的度量指标可以用 3 个特性进行概括,分别是可具体的特性、可实现的特 性和有时限的特性。

    通过数据结果维度进行度量,有 4 种方式:计数实施,统计度量指标的数量、度量任 务的数量、偏差的数量;测量测算,统计状态的数据信息,如区间内的递增值和递减值; 数据分布,统计数据的分布情况,如最大值、最小值、平均值、中位数和百分比;计时, 统计单位时间内的消耗时间和分布情况。

    通过数据类型维度进行度量,可分为时间维度,如秒、分、时、天、周、月和年;组 织架构,如 A 团队、B 团队和 C 团队;渠道,如 A 渠道、B 渠道和 C 渠道;系统类型,如 公众号、官网和 App。

    (1)度量本身的问题包括度量的可视化程度不够、工作切分随意和敏捷交付过程中存 在多项目并行的情况。

    (2)度量的误区主要体现在过度考核虚荣性指标,如日均代码量、局部单元测试覆盖 率和工时统计等。当虚荣性指标成为核心度量指标时,就是“灾难”的开始。

    (3)度量指标不能动态调整。随着团队效能的提升,指标也随之调整,否则将使团队 的效能停滞不前。

    确定度量指标维度时应关注下列 4 种关系。

    (1)全局指标和局部指标的关系。对局部指标过度进行优化,可能使全局劣势,因此 要将提升全局指标的达成率作为目标。

    (2)定量指标和定性指标的关系。尽量使用量化指标的客观评价,让流程驱动尽快延 伸至数据驱动。

    (3)团队指标和个人指标的关系。设定指标是为了促进团队协作,提升组织级的效能 和质量。

    (4)团队指标和个人指标的关系。设定指标是为了促进团队协作,提升组织级的效能 和质量。

    资料来源于《DevOps权威指南:IT效能“新基建”》

    下载地址:https://developer.aliyun.com/topic/download?id=8246

    2022-01-13 16:28:25
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
从黑盒运维到DEVOPS 立即下载
云上DevOps开发布局 立即下载
DevOps与传统的融合落地实践及案例分享 立即下载