近期,由腾讯云旗下一站式 DevOps 开发平台 CODING 和中国 DevOps 社区主办的深圳第十一届 Meetup 圆满结束,会上三位专家分享了自己独到的行业见解,腾讯云 CODING DevOps 产品经理陈信州,在会上发布了题为《WePack 产品团队测试实践探索》的精彩演讲。与往届不同,本次活动 CODING 新增了金融科技技术交流闭门会议环节,邀请了腾讯、平安银行、深圳农商行、OPPO 金融、南方基金、大疆等数十位行业大咖莅临腾讯滨海大厦共享 DevOps 盛宴。



▲ 参观腾讯滨海大厦展厅合影



▲ 闭门会议现场

以下为闭门会议亮点内容分享——

DevSecOps,DevOps 模式下软件开发的安全之锁

互联网时代,网络信息安全是永恒的话题,本次闭门会议便以“安全”开篇展开讨论。

在众行业中,金融行业对于安全有着更高的诉求。莅临闭门会议的金融企业嘉宾率先向大家介绍了所属金融企业在安全领域的探索。随着 DevOps 在金融企业的落地,其快速交付能力与传统安全模式形成鲜明冲突,使得安全性成为快速交付的瓶颈。这促使该金融企业不得不加紧由 DevOps 向 DevSecOps 转型的步伐。通过将应用安全思维模式逐步左移到开发团队,从而进一步提升交付效率,加强风险控制,减少返工成本。

在 DevSecOps 实践上,金融企业的特点之一是购买市场上专业安全工具。通过将 Fortify、Checkmarx 等安全扫描工具接入到研发流程中,让安全充分渗透到 DevOps 流程的每个阶段和检查点。其次是文化熏陶,通过加强 DevSecOps 培训和考核,构建配套的评价机制。从而打造一支真正成熟的 DevSecOps 团队。

如何来衡量团队的 DevSecOps 的成熟度呢?参会的一家金融企业主要做了以下工作:

通过制定培训时间和修复安全漏洞的能力等衡量指标,将 DevSecOps 成熟度分为数个等级,构建了完善的 DevSecOps 成熟度度量模型;团队中所有的开发人员必须达到一级水平;团队中的 Security Champion,至少达到三级水平到五级水平;并且保证工具扫描出来的高危漏洞在发布进入产品前被及时解决;一旦评审通过的 DevSecOps 团队,会根据成熟度级别简化相应的安全扫描和审核流程,使得开发团队可以更快更安全地交付产品 。

其他金融企业的嘉宾也表示会在开发流程中嵌入安全方面的能力,并施行严格的流程管控,配备专业的应用安全团队对漏洞进行管理。

测试 or 开发,测试用例到底应该由谁来写?

谈到测试时,大家最为关注的就是测试用例的归属,到底谁来写?是测试人员、开发人员还是产品经理?在实际的讨论中发现,三者因为服务的产品、项目不同,都有可能承担撰写测试用例的角色。金融企业业务复杂性高,往往会碰到开发或测试同学对业务理解不够深入的情况,测试用例往往由 BA 或者业务人员撰写。而 DevOps 推荐是由开发人员进行测试用例撰写。开发人员作为需求的实现者,通过撰写测试用例的方式,阐述自己对于功能需求的理解,再由产品和测试同学进行评审,更好地在测试用例中呈现出功能需求与开发逻辑。当然,在场的很多嘉宾反映,当前大多数企业的现状是由测试人员来写测试用例的,因为作为该环节的责任人和专业人士,能更清晰地展示测试脉络,更迅速地抓住测试重点。

另外,关于单元测试的覆盖率,在场嘉宾也是各抒己见。总的来说,相比互联网行业,金融行业业务变化缓慢,对业务稳定性要求更高、因此对单元测试覆盖率要求也更高。而互联网行业业务迭代快,对单元测试维护成本高,因此相比金融行业,互联网行业对单元测试覆盖率要求并不高。但是,测试最终目的是保证产品质量,依据实际业务情况判断并优化测试手段才是正确的选择。

在 DevOps 过程中,如何合理使用度量?

“测试缺陷等级怎么清晰定义,没定义的清晰的话又会扯皮。”

“提测之后开发自己又发现了问题,很难确认正向和负向。”

“度量是一个深渊,哪怕说不作为绩效考量,作为开发同学还是会很介意,甚至进行造假。”

一提起度量,各家都是满腹苦水。在推动 DevOps 的过程中,为保障产品或项目质量,质量度量往往被视为通用的考核方式,受产品、项目、开发阶段、行业属性、企业文化的影响,度量指标构成都有所不同。本次闭门会议,嘉宾也对所属企业的度量质量建设以及面临的问题进行了讨论。相比理论,实际工作中,一方面产品、项目很多内容难以被量化,另一方面即使定义清晰的指标,由于“人”的参与,会被过分关注,再加上度量往往和绩效关联,这让度量变得愈发敏感与复杂。

会上,大家也分享了一些优质实践。

  • 由于每个团队的能力水平不同,建议在团队正常运行半年后,再设立团队考核指标的基准。提倡自我纵向对比,不暴露和批评差的团队,通过趣味、奖励等方式鼓励大家提升整体的产品质量。

  • 在过程中,可以通过逃逸、质量事故进行度量。在研发阶段,主要以低级质量缺陷为依据,再通过提测打回率、缺陷密度、漏测率等综合指标评判代码质量。

  • 度量指标的制定应该结合业务价值、测试及需求覆盖率等关键因素,并划分优先级。为避免副作用,不建议单独地以局部指标为考核标准,度量指标应整体综合运用。

其实,度量的最终目的是服务产品、项目和客户,带来全局的正向改变。因此,希望大家以终为始,不要盲目做度量。

通过大家的交流我们发现其实每个企业对于 DevOps 都有不同的理解,也正是这样,各行各业围绕 DevOps 催生出一系列优质的实践。相信借助 DevOps 的力量,企业将在数字化时代实现更高速的发展与更大的业务价值。

CODING 首届金融科技技术交流闭门会议顺利召开的更多相关文章

  1. 阿里云MVP北京闭门会圆满落幕 多把“利剑”助力开发者破阵蜕变

    摘要: 从传统制造业到新零售,从人工智能到新金融,阿里云MVP正在成为中国乃至全球各行各业数字化转型的中坚力量.当这群技术先锋者与阿里核心技术力量汇聚在一起,一场无与伦比的思想碰撞就此展开. 3月21 ...

  2. 2018年Fintech金融科技关键词和入行互金从业必懂知识

    2018年过去大半,诸多关键词进入眼帘: 5G,消费降级,数据裸奔,新零售,AI,物联网,云计算,合规监管,风控,割韭菜,区块链,生物识别,国民空闲时间以及金融科技. 这些词充斥着我们的生活和时间,而 ...

  3. 蚂蚁金服ATEC城市峰会上海举行,三大发布迎接金融科技2019

    2019年1月4日,蚂蚁金服ATEC城市峰会以“数字金融新原力(The New Force of Digital Finance)”为主题在上海举办.稠州银行副行长程杰.蚂蚁金服副总裁刘伟光.蚂蚁金服 ...

  4. 2019金融科技风往哪儿吹?蚂蚁金服联合20余家金融机构预测新年热点:5G、区块链上榜

    2019年,金融科技的风向标在哪里?哪些板块成新宠,哪些科技成潮流? 1月4日,蚂蚁金服ATEC城市峰会在上海举行.大会上,蚂蚁金服与20余家金融机构一起预测了2019年金融科技的发展. “未来金融会 ...

  5. 数据分析 - 美国金融科技公司Prosper的风险评分分析

    数据分析 - 美国金融科技公司Prosper的风险评分分析 今年Reinhard Hsu觉得最有意思的事情,是参加了拍拍贷第二届魔镜杯互联网金融数据应用大赛.通过"富爸爸队",认识 ...

  6. 金融科技行业 SDL(转载)

     都是一些检查项,值得借鉴,关键在于要能够落地 作者 沈发挺@美的金融科技下载打印版

  7. 【巨杉数据库SequoiaDB】巨杉数据库荣获《金融电子化》“金融科技创新奖”

    巨杉助力金融科技创新 2019年12月19日,由<金融电子化>杂志社主办.北京金融科技产业联盟协办的“2019中国金融科技年会暨第十届金融科技及服务优秀创新奖颁奖典礼”在京成功召开.来自金 ...

  8. 【巨杉数据库SequoiaDB】助力金融科技升级,巨杉数据库闪耀金融展

    11月4日,以“科技助创新 开放促改革 发展惠民生”为主题的2019中国国际金融展和深圳国际金融博览会在深圳会展中心盛大开幕. 中国人民银行党委委员.副行长范一飞,深圳市人民政府副市长.党组成员艾学峰 ...

  9. 区块链是伟大的,比特币则不然。《FinTech,金融科技时代的来临》。3星。

    本书讲技术给金融业带来的变革和可能的趋势.作者认为区块链是伟大的发明,因为他可以让金融交易免费且实时地进行.比特币则可能会被其他区块链技术取代.书中有至少一半的内容涉及到了区块链和比特币.总体评价3星 ...

随机推荐

  1. Baccarat凭什么能成为DeFi后时代火爆新趋势?

    在各币种经历涨涨跌跌以后,DeFi后时代已然来临.那么,当前DeFi市场中哪个项目更被市场生态建设者看好呢?毫无疑问,Baccarat会成为最被看好的DeFi项目. Baccarat采用了独特的共识算 ...

  2. java中synchronized与Lock的异同

    本文转载自java中synchronized与Lock的异同 前言 synchronized和Lock通过互斥保障原子性,能够保护共享数据以实现线程安全,其作用包括保障原子性.可见性.有序性 常见问题 ...

  3. mysql 8.0.18 小白安装教程

    1. 下载 官网下载:https://dev.mysql.com/downloads/mysql/ 嫌官网网速慢可以加q群,在群文件里下载: 1.下载第一个download 2.解压在自己建的目录(各 ...

  4. 对Map进行复合操作(读写)且并发执行时,无法保证业务的行为是正确的,对读写操作进行同步则可以解决。

    ConcurrentHashMap通常只被看做并发效率更高的Map,用来替换其他线程安全的Map容器,比如 Hashtable和Collections.synchronizedMap.线程安全的容器, ...

  5. Vuex理解与使用

    1.Vuex是什么 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式,用于管理页面的数据状态.提供统一数据操作的生态系统.在组件中可以任意获取仓库中的数据.和Vuex类似的还有redux ...

  6. macOS网络安全审计

    nettop监听网络流量的方法 nettop是macOS系统自带的命令,命令功能能监听网络流量,如果你想查询一个恶意域名.ip和本机进程连接情况,那么可以试试nettop,就是展示方式不是太友好,需要 ...

  7. POJ-1321棋盘问题(简单深搜)

    简单搜索step1 POJ-1321 这是第一次博客,题目也很简单,主要是注意格式书写以及常见的快速输入输出和文件输入输出的格式. 递归的时候注意起始是从(-1,-1)开始,然后每次从下一行开始递归. ...

  8. 2020年HTML5考试模拟题整理(一)

    1.哪个元素被称为媒体元素的子元素? 答案:<track>. <track> 标签为媒体元素(比如 <audio> and <video>)规定外部文本 ...

  9. IT求职 非技术面试题汇总

    原文链接:https://blog.csdn.net/weixin_40845165/article/details/89852397 说明:原文是浏览网页时无意间看到的.扫了一眼,总结得还不错,感谢 ...

  10. Java 常用类——StringBuffer&StringBuilder【可变字符序列】

    一.字符串拼接问题 由于 String 类的对象内容不可改变,所以每当进行字符串拼接时,总是会在内存中创建一个新的对象. Demo: 1 public class StringDemo { 2 pub ...