内建质量定义
内建质量作用在开发过程中,要求软件生命周期之间参与的各个角色都需要实时的对软件的质量负责。确保软件在交付到下一环节前已经有了基础的质量保证。其核心目的就是减少因为质量问题导致的返工,而浪费大量人力成本。
内建质量实践
- 制定开发规范
- 结对编程
- 需要时代码重构
- 代码静态扫描
- 测试左移
测试左移,把质量问题从源头开始进行检查。如单元测试。
安全左移-安全扫描,尽早发现提示安全风险。 - 代码审查/评审机制
门禁
为了贯彻内建质量是否在开发体系中落实,我们需要设置一些质量度量标准,所以在软件生命周期的每个阶段设置质量门禁这种实践孕育而生,在代码提交或集成时,校验单元测试的覆盖率和通过率,检验代码的合规性,验证引用的组件安全性都是质量门禁的实践。如果没有通过质量门禁,说明内建质量没有达到标准,上线后由于质量问题返工的可能性会增加。下述门禁是需要被关注的:
代码质量
单元测试覆盖率
单元测试通过率
测试通过率
代码安全性
第三方组件安全性
开源协议扫描
内建质量落地最终落地的是工具链。
源码质量:SonarQube、checkmarx、fortify、coverity
单元测试:Junit
自动化测试:tosca、selenium、postman
性能测试:jmeter