我的编程空间,编程开发者的网络收藏夹
学习永远不晚

内建质量,你真的了解么?

短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

内建质量,你真的了解么?

内建质量,你真的了解么?

 

 

内建质量定义

    内建质量作用在开发过程中,要求软件生命周期之间参与的各个角色都需要实时的对软件的质量负责。确保软件在交付到下一环节前已经有了基础的质量保证。其核心目的就是减少因为质量问题导致的返工,而浪费大量人力成本。

1.敏捷中的内建质量

内建质量是规模化敏捷SAFe的核心价值观,引用下面一段话,我们看一下敏捷中定义的内建质量在讲什么内容(原文出处:https://www.scaledagileframework.com/built-in-quality/)

 

 

简单的翻译过来就是,产品一旦被发布之后就有了好坏之分,通过某些检验方式已经无法提高或保证它的质量,所以质量检验必须内置在产品或服务构建的过程中,而不能在它发布之后。

2.DevOps中的内建质量

DevOps三步工作法中,第二步就是反馈原则,其中很重要的一个实践就是在源头保障质量,这里主要是指开发部门、测试部门。而在源头保障质量的通俗说法更像是“谁污染谁治理”。 DevOps倡导所有新的功能特性可以像流动的水一样,迭代到用户的终端,而水是不能逆流的,为了保证水流的质量,我们就必须在水流动的途中治理,直到最终交付到用户的手中。这也就是DevOps建设中一个新的理念“liquid software”

 

内建质量实践

 

1. 左移

左移是内建质量最好的实践,把质量问题从源头开始进行检查。

由开发侧发起的单元测试就是最典型的测试左移的案例,虽然高单元测试覆盖率需要投入大量的成本,但是对于某些行业,如金融行业,这个实践是必要的。另外测试左移不止是对代码来讲的,同样在需求评审阶段,就要对需求质量进行评估,推广到市场后是否真的能实现其价值.

随着DevSecOps的兴起,安全左移的重要性也体现出来。我们经历过很多次类似的情况,每当我们把经过了开发测试的软件发布到生产线上,经常会被安全部门或者第三方监管单位找麻烦,归根结底还是因为在开发过程中引入了某些不安全的开源组件,写了有风险的代码,而这些问题可能都是开发人员技术能力之外的。试想一下,如果在开发人员的IDE中直接提示开发代码的安全问题,引用组件的安全问题,并引导开发人员去解决的话,是不是相当于在开发的源头解决了安全问题呢,不但提高了软件的整体安全质量,同样也节省了效能。

2. 门禁

为了贯彻内建质量是否在开发体系中落实,我们需要设置一些质量度量标准,所以在软件生命周期的每个阶段设置质量门禁这种实践孕育而生,在代码提交或集成时,校验单元测试的覆盖率和通过率,检验代码的合规性,验证引用的组件安全性都是质量门禁的实践。如果没有通过质量门禁,说明内建质量没有达到标准,上线后由于质量问题返工的可能性会增加。下述门禁是需要被关注的:

代码质量

单元测试覆盖率

单元测试通过率

测试通过率

基础设施

代码安全性

第三方组件安全性

开源协议扫描

等…

 

内建质量落地

很多DevOps的建设场景中,最终落地的依旧是工具链,工具链是打通从开发到运维基础。为了保障内建质量的建立,两个方面的工具链是不可缺少的,下面罗列了一些常用的工具,如果大家准备在软件生命周期中增加内建质量的建设,可以参考下述工具

1. 专项工具类,解决特定质量检查场景:

源码质量:SonarQube、checkmarx、fortify

单元测试:Junit

自动化测试:selenium、postman、yapi

性能测试:jmeter

安全:Xray、Dependance-check

 

2. 集成工具类,打通工具链流程,统一展示:

集成工具:Jenkins、TFS、GitlabCI、tekton、

制品管理工具:Artifactory

 

总结

    内建质量是精益、敏捷以及DevOps的核心原则之一,有助于避免与需求召回、返工及缺陷修复有关的延迟成本。所以内建质量,势在必行。

 

更多精彩内容可以专注我们的在线课堂

微信搜索公众号:jfrogchina 获取课程通知

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

内建质量,你真的了解么?

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

内建质量,你真的了解么?

内建质量定义     内建质量作用在开发过程中,要求软件生命周期之间参与的各个角色都需要实时的对软件的质量负责。确保软件在交付到下一环节前已经有了基础的质量保证。其核心目的就是减少因为质量问题导致的返工,而浪费大量人力成本。 1.敏捷中的内建质量 内建质量是规
内建质量,你真的了解么?
2019-07-05

前端 let、const和var你真的了解么?

1.var 关键字要定义变量,可以使用 var 操作符(注意 var 是一个关键字),后跟变量名(即标识符,如前所述):varmessage;这行
2022-06-01

什么是华为认证?你真的了解华为认证吗?

  什么是华为认证?这是很多刚接触到华为认证的朋友都会有的疑问。今天编程学习网小编就给大家简单解析一下华为认证的相关内容。  一、华为认证的定义  随着技术发展,ICT行业正在开创新格局,培养面向ICT产业的融合型开发人才成为产业发展的当务之急。华为云应需而动,推出为华为云用户量身打造的培训与认证服务。  关于什么是华为认
什么是华为认证?你真的了解华为认证吗?
2024-04-18

编程热搜

目录