您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[XOps 风向标!GOPS 全球运维大会暨研运数智化技术峰会 2024 · 上海站]:由效及质,以点带面——证券行业研发转型新观察 - 中国信通院云大所 白瀚雄 - 发现报告

由效及质,以点带面——证券行业研发转型新观察 - 中国信通院云大所 白瀚雄

AI智能总结
查看更多
由效及质,以点带面——证券行业研发转型新观察 - 中国信通院云大所 白瀚雄

个人简介 白 瀚 雄 中国信通院云大所审计与治理部DevOps业务主管 中国信通院云大所审计与治理部工程师,具备多年运维工作经验。负责重点行业DevOps、持续测试等研运一体化相关标准的制定和评估工作,主持参与2022、2023、2024年中国DevOps、AIOps现状调查报告的编制,主持评估超100项。 证券行业持续交付发展现状0 1 证券行业持续测试发展现状0 2 CD/CT“不可能三角”0 3 0 4 CD/CT的持久化 证券行业持续交付(CD)发展现状 中国DevOps逐步走向成熟 Gartner发布的2023年中国ICT技术成熟度曲线预测DevOps将在2025~2028年内成为生产成熟期的技术,从目前DevOps的应用情况来看,DevOps对企业有很多切实帮助。 DevOps标准落地现状 实际落地DevOps的特点部门墙:Dev|Ops 持续交付依旧是DevOps的核心 ➢持续交付是指持续的将各类变更(包括新功能、缺陷修复、配置变化等)安全、快速、高质量地落实交付到生产环境或用户手中的能力。➢持续交付包括配置管理、构建与持续集成、测试管理、部署与发布管理、环境管理、数据管理、度量与反馈7大领域。 DevOps流水线的广泛推广推动持续交付进一步落地 流水线成熟的标志: 证券行业当前企业持续交付能力现状 2020年到2024年:头部券商-》大中型券商-》中小型券商 证券行业当前企业持续交付能力现状 选取过去一年,16个券商/交易所参评持续交付能力的情况进行统计,目前整体上各方面成熟度均处于2.8-3.0左右,环境管理相对较高,构建与持续集成相对较低。 证券行业当前企业持续交付能力现状 证券行业持续测试(CT)发展现状 2024持续测试现状 据2024年7月发布的《中国DevOps现状调查报告(2024)》显示,自动化测试及线上测试的建设受到企业广泛重视。目前,企业亟需通过测试左移等手段全面提升测试的质量和效率,降低测试耗时和资源成本,尽早地发现并解决缺陷。 测试过程现状显示出企业对于介入自动化测试的重视,超9成企业实践测试左移。 安全测试、性能测试、接口测试成为自动化比例最高的测试类型。 8.62%的团队在代码开发完成后才进行测试,这一比例较2023年的19.01%有所下降,表明更多的测试活动正在向开发周期的早期阶段转移。同时,28.23%的团队在代码开发前就开始介入测试。 54.61%的团队实现了接口测试的自动化。62.22%的团队实现了安全性测试的自动化,较2023年的17.02%大幅增长,显示出安全测试的自动化受到了更多的关注。 2024持续测试现状 超6成测试团队将缺陷逃逸率控制在6%以内。 测试时间占比进一步下降,超5成企业测试占迭代时间小于30%。 22.85%的团队将20%-29.9%的时间用于测试周期,这一比例较2023年有所提升。此外,19.09%的团队将30%-39.9%的时间用于测试,而13.33%的团队仅花费迭代中一成的时间即可完成测试。 23.03%的团队能够将缺陷逃逸率控制在2%以下,而20.15%的团队的缺陷逃逸率在2%-3.9%之间。此外,18.48%的团队的缺陷逃逸率在4%-5.9%之间。 持续测试(CT)成为重点行业质量管控新实践 随着国家和企业对于信息技术质量建设的要求不断提高,强调左移、右移和自动化的持续测试成为了软件全生命周期质量管理的最佳实践之一。 国家政策持续推进质量和测试能力建设 持续测试标准体系加速落地 经过超18个月的四轮研讨,融合了多行业近三十家头部企业先进实践的《研发运营一体化(DevOps)能力成熟度模型第11部分:持续测试》标准于2023年10月正式发布。 加强技术创新、标准研制、计量测试、合格评定、知识产权、工业数据等产业技术基础能力建设。 持续测试标准从DevOps测试流程出发,覆盖从需求、开发、集成到验收、发布、运维阶段的测试工作,并融合了持续反馈,形成持续测试闭环。另外还对支撑持续测试的基础能力和效能度量能力进行梳理,建立了一套适用于不同行业的持续测试方法论。 ——2023年2月中共中央、国务院《质量强国建设纲要》 提升软件质量管理能力,支持配置管理、代码审查、测试验证、质量分析等工具研发,提升质量监控、预警和评价能力,推动企业建立与国际接轨的产品开发、质量控制体系,提升软件开发质量。——2021年11月工信部 重点行业积极实践持续测试标准 自标准内容形成后,中国信通院从10月起开展了持续测试能力评估,已有来自银行、证券等重点行业的4家企业6个项目参与了持续测试的首批评估,结果已于大会发布。 《“十四五”软件和信息技术服务业发展规划》 完善编译器、开发测试工具和基础软件模块等工具链,建立大数据产业发展质量监测分析体系。 未来,随着持续测试持续测试标准还将在互联网、通信、保险、能源、制造业等行业企业广泛落地。中国信通院也将致力于企业信息技术质量管理标准体系建设,在工具平台、代码质量、用户体验等领域进行深入的标准研究。 《“十四五”国家信息化规划》 持续测试标准——持续交付标准的质量保障 ➢标准从DevOps过程出发,将持续测试流程分为: 需求阶段、开发阶段、集成阶段、验收与发布阶段、运营阶段、持续反馈。 对应在DevOps迭代周期中,持续测试从敏捷开发的需求侧开始,到技术运营的运维监控,形成了端到端的持续测试闭环。 ➢除持续测试流程外,持续测试能力还包括测试通用基础能力和持续测试效能度量。测试通用基础能力是持续测试流程的支撑,是实现持续测试的所有资源和风险管理的集合;持续测试效能度量覆盖测试的全流程,持续优化组织测试和研发运营能力,体现测试效能和成果。 部分编写单位:中国信通院、农业银行、中国银行、邮储银行、中国移动、中国联通、人保财险、招商银行、中信银行、中金公司、中泰证券、申万宏源、中金所、京东、百度、中移金科、东软集团、中软国际、众邦银行、广通优云、金证科技、华佑科技等(以上排名不分先后) DevOps测试系统和工具——持续测试的工具支撑 ➢《研发运营一体化(DevOps)能力成熟度模型第8部分:系统和工具技术要求》规定了研发运营一体化(DevOps)过程中所涉及的系统和工具的能力技术要求,将端到端软件交付生命周期全流程用工具链进行连接,包括:项目与开发管理、应用设计与开发、持续交付、测试管理、自动化测试、技术运营。 测试过程管理,从需求确定后进行测试用例编写到测试完成。 通过消息层测试软件接口,确定功能、性能、可靠性、安全等是否满足预期。 证券企业存在许多测试难题 •22年以来,随着几家知名券商APP相继出现严重故障,各家媒体争相报道,监管机构处罚,客户索赔,给企业造成了巨大的损失和不良影响。•随着问题的公示,消息队列阻塞造成回调失败凸显了非功能测试的不足,监管部门发布《证券期货业信息系统压力测试指南》,指导测试。 常见风险 ➢异步导致的延时性延迟为堆积的消息,等待消费者消费➢消息丢失网络等原因导致的消息丢失➢幂等性因为消息发送的,有重试机制,可能导致同一条消息发送多遍。所以消费者收到消息之后,要检查是否重复➢分布式架构,需监控多个系统 证券行业当前企业持续测试能力现状 目前整体上各阶段成熟度处于2.5-3.0左右,开发阶段相对较高,验收阶段相对较低,传统最集中的测试阶段(集成阶段)的成熟度仅为2.63。另外由于监管原因,证券行业线上测试实践情况不多。 证券行业企业持续测试标准主要优势及建设成果(评估3-4级) 流水线建设情况 流水线不仅是DevOps持续交付流程的核心,更是持续测试的核心。通过流水线串联,才能使得各阶段测试建立起持续测试闭环。 各环境实现用完整流水线串联,并辅以人工卡点,实现质量的有效把控。 通过测试流程和环境晋级,确保制品通过测试和质量门禁。 证券行业当前企业持续测试能力现状(2级能力项) 运营阶段——证券行业测试尝试新方向 •对互联网公司/制造企业而言,针对部分持续交付产品,做用户可感知的灰度发布,是常见的操作。此类产品多为可玩性较强的游戏(工会)或硬件(米粉)。•部分互联网公司,在用户不知情的情况下,进行A/B test,来检验不同产品设计方案对用户行为引导的有效性。不以检验缺陷为目标。•大型产品集群如果通过灰度发布,控制新品爆炸半径,主要挑战在于环境的灵活使用和版本回退能力。尤其对于APP类产品。对团队各角色的配合和风险应对能力有较大挑战,并且要权衡合规性和机构/公司美誉度的受损情况。 CD/CT“不可能三角” DevOps在行业内落地的情况 •持续交付逐渐走向成熟 •?等一下 •持续交付的瓶颈和倒退 DevOps能力的“回退性”和“不持续性” •部分能力在贯标改进后出现严重倒退: •单元测试: 单元测试的质量和覆盖率出现大量倒退现象。 •代码评审: 代码评审的质量出现大量倒退现象。 •红灯修复时常: 红灯修复时长出现严重反弹,构建成功率大大下降。 为什么持续交付对于研发流程具有这么多好处,但是还是维持持续交付的各项能力出现倒退呢? 不可能三角 •传统意义上所谓不可能三角,是指一个国家财政金融政策目标的选择面临诸多困境,资本自由流动、货币政策独立和汇率稳定三个目标不能同时实现,最多只能同时满足两个,而放弃另外一个。同时,也有投资领域的不可能三角。 不可能三角 •DevOps转型的驱动力决定了DevOps转型的主要目的或资源: •自下而上?投入:工具、基础设施、人力维护 •自下而上?产出:价值、问题、影响、满意度 •自外而内?频率:快速交付、及时修复 DevOps的“不可能三角” 不同领域的“不可能三角”带来的问题——持续集成 •持续集成流水线的持续性: •提升流水线的效率:流水线简洁、配置质量高、节点任务少; •提升流水线的质量:增加大量质量任务,如单元测试、静态扫描、容器扫描、SCA、SAST、DAST、IAST、自动化测试(冒烟、功能、非功能、回归)、手工测试、验收测试、线上验证等,并设置较强门禁; •提升流水线的质量和效率:大量资源和人力用于加速构建、扫描、测试、卡点等。 •成本的下降:造成质量和效率的回退。 不同领域的“不可能三角”带来的问题——持续测试 •自动化测试的持续性: •提升自动化测试的质量:对单交易、全流程场景、复杂场景的高度覆盖。对测试结果和缺陷的精准追溯 •提升自动化测试的效率:减少用例数量、降低断言复杂度、提高执行效率,如增加执行机、并行数量,用例数据解耦。 •成本矛盾:用例覆盖率、用例精准度、用例保鲜率。 CD/CT的持久化 CD/CT持久化:打破“不可能三角” •新技术驱使增加对持续交付“不可能三角”的覆盖面积: •如: 例如:辅助代码生成 例如:精准测试 新时代持续交付/持续测试的价值 •降本增效,还是降本增效! •快速交付,就是快速收入!