天天看点

质量保障,质量管控

,环境部署 配置 发布简介

  1. 何为质量,质量模型,质量量化指标,如何保障,保障手段,保障流程,如何提升,质量管控,质量追踪
  2. 为什么要做质量保障,质量监控
  3. 如何实施
  4. 实施中可能会碰到难点以及痛点

    模具=>数据来了 => 立即就能装载验证??

    开发的再快,也不如模版随便拼拼凑凑的来的快

  5. 协调 推动 落地的能力
  6. 数据可视化

    用户行为数据,流程强控数据

  7. 能力可视化:

    开发能力值,解决bug能力值(能力值总数为100)

    测试能力值,发现bug数量,扭转时长,开发工具数,自动化能力(能力值为100)

    …其它方面的能力值

    基于各种能力值的匹配运算,得出质量的预估系数,风险预估系数…等关键系数,能得出数据上的支持

    ??如何获取这些能力值的参考基数??

    基于经验的主观思考,是否可以把经验数据化?

  8. 契约精神
  9. 质量预估值,风险预估值
  10. 通过客观的数据分析,而不是主观的判断;能够通过算法计算出质量值
  11. 分析数据的来源
  12. 项目交接的风险, 新手,
  13. 如何为整个流程节点赋能?(产品、开发、测试、…)
  14. 演习
  1. 质量标准(质量门径): 各家公司不一,bug率 bug数 有效无效 严重 线上问题 覆盖率等等

    流程化 规范化 契约化 多重检验机制

  2. 影响质量的因素: 各种数据指标分析把控。prd修改次数,视觉稿修改次数,开发时长,各种时间节点是否按时,上下游依赖,外部组件依赖,从业人员业务能力,环境部署,配置,可测性

    风险可视化,风险消除

  3. 完善质量细节,提供检验质量的平台或工具脚本,丰富检测质量的手段:既然做了质量把控,为何还会有线上问题?

    用户story 空间 场景 连续行操作,而不是单一的操作

  4. 质量系数预估,系数高则质量高,风险小
  5. 质量的监控ci/id
  6. 故障的注入,链路 参考其他行业的质量模式与标准
  7. 快速地搭建质量体系
质量模型

"质量特征–质量特子特征–度量因子"

ISO9126质量模型: 软件质量模型的6大特性和27个子特性

质量保障,质量管控

参考链接:https://blog.csdn.net/cwxxiayi/article/details/80288993

质量评估指标选择

选择合适的指标体系并使其量化是软件测试与评估的关键;

评估指标可以分为定性指标和定量指标

软件质量评估指标体系
  1. 功能性指标:

a 完备性

b 正确性

  1. 可靠性指标_____定量指标

a 可用度

b 初期故障率(crash率等)

c 偶然故障率

d 平均失效前时间(MTTF)

e 平均失效间隔时间(MTBF)

f 缺陷密度(FD) :隐藏的bug数

g 平均失效恢复时间(MTTR)

  1. 易用性指标
易理解 易操作 易学习

4 效率特征指标

时间特征和资源特征

a 输出结果更新周期

b 处理时间

c 吞吐率

d 代码规模

从互联网行业来说,我觉得质量包含两个方面:
  1. 产品的质量,软件+硬件的指标,可以从宏观角度看,就是我的产品(如一款app,一栋房子他的每个功能都完全按照需求实现,而且非常可靠耐用使用寿命长可扩展性强,而且分布式能力好),我们利用各种前后端架构,利用各种工具检测观察,很强的容灾能力,客户端也如此,

    我们通过各种测试手段、测试类型、测试流程、测试框架、测试工具来保障硬件环境下、空间环境下(手机环境,PC环境、服务器环境)下APP或者服务的质量

    总结来说:我们通过流程改进+技术改进+质量跟踪来高效率的保障产品的质量,并且能够应付快速的迭代;,

    但是产品,他的体验并不能贴合用户,也没有给予用户很好的交互体验,那用户体验质量该如何保障,质量的依据又是什么呢?

  2. toC的产品,我们应该一切以客户为前提,我们应该了解用户的使用场景、使用习惯、操作流程、客户喜好(颜色、感官)、时间与空间下的用户story,这些需要获取数据、采用数据来分析–需要为我们的质量提供数据支撑、数据模型、质量标准

    质量好不好用户说的算、不在是传统的坚固耐用即可,要提供贴心的服务,初步考虑提高QA水平:

最基本的通过各种测试策略、测试框架、测试方法进行功能、专项、自动化、线上追踪、探索性、快速响应
a. 为QT或者QA的工作提供数据支撑,应该采集测试数据(比如埋点数据)
b. 基于数据分析用户行为,为设计测试用例提供支撑,丰富用户story
c. 技术手段+流程优化
           
质量保障体系,
  1. 测试左移 -> 研发自测,checklist,静态代码扫描、覆盖率、bug等流控各种指标 ==> 数据采集
  2. 测试关注点(用户特性-产品特性)、可测性、精准化测试、组装化测试…

    质量预估,风险消除,节点把控、工具推荐、实时/历史数据看版(个人能力值,产品能力值) ==>数据可视化,数据指引策略

  3. 测试右移 -> 监控告警,止损,回滚 ==> 数据采集

    质量体系中,需要质量数据的采集,分析,可视化,指标化,流程化,规范化…

质量分析

质量分析:
  1. 提测时质量,测试期间的质量,上线后的质量

    提测时质量:执行的一级Case通过率,冒烟Case执行不通过的比例。可以通过这两个数据发现开发的体测质量,针对体测质量差的业务线,可以通过增加核心冒烟用例的数量,且严格按照只能通过冒烟用例的需求才进入测试环节

  2. 测试期间的质量:bug数/人日的比例,可以反应出该需求的开发质量,如果测试期间BUG数没有呈收敛趋势,则上线风险很大。通过复杂性大需求拆分成小需求,参加开发技术评审,帮助开发熟悉业务知识,增加用例评审环节可以帮助提高业务质量 ===> 需要一个能够对产品,开发赋能的平台,设计中…质量生态圈平台
  3. 上线后质量:crash率,服务可用率,线上问题。crash率和服务可用率都可以监控,超过阀值报警。通过整理top n的crash类型,梳理容易出现的场景和解决方案,和开发定期同步这些数据。对于复杂的需求,同组内进行测试用例交叉评审,减少线上问题率

    我们有很多指标的。崩溃率的话百分制0.08就告警了;但是告警系统把异常分了很多种类,每个种类的异常占比超过预定的阀值了都会告警

    同一条崩溃,昨天10%,今天占比猛增到20%,也会告警

流程可视化,质量可视化

质量指标

用户数据分析

Software Quality Management

It is a process that ensures the required level of software quality is achieved when it reaches the users,so that they are satisfied by its performance

涉及三个方面:

  1. quality assurance
  2. quality planning
  3. quality control
一、简介

软件质量简单来说,就是允许存在合理缺陷或者无缺陷,在指定的时间完成交付,并且满足需求,具备可维护性

包含两个方面:

  1. functional quality

functional requirement or specifications

提测质量 bug率 ,提测时间

测试期间bug率,bug解决时长,bug等级

bug发散趋势,是否可控

  1. structural quality

非功能性的一些需求,

拥有可持续交付的能力

可维护性,通用性

代码输出的高效性,提测时长,提测率

  1. Software Quality Assurance(SQA)

    一系列的流程,建立并评估生产产品

a 项目前的交流:

需求评审 开发前,明确功能性 确保后期不一致 prd规范性

声明用户体验需求

明确项目计划,资源数据依赖需求

人力资源

明确开发风险

评估用户履行规则的能力

b 开发和质量 plans

开发计划主要考虑的因素:

日程

需要的人力和硬件资源

风险评估,风险消除

组织沟通协调问题

项目策略,开发工具

项目质量计划:

质量指标,具体的验收标准

开始和结束标准(提测标准,通过标准)

其它的一些验证计划行为

软件复用计划

  1. Softwa Quality Control(SQC)

    重点是确定产品的质量缺陷

  2. push推动整合

角色:业务方 运营 产品 开发 项目 boss 其他产线人员

人数:角色*N

能力:push contact contract 效能提升 整合

指标:

数据:

规模:规范化 流程化 工具化 自动化 平台化 监控化 可视化 智能化 多重check机制

趋势:机器学习(预估风险性,完成性,趋势性) AI 深度学习

快速小范围批量化的校验并得出最终结果