你好,欢迎使用 CODING!这份最佳实践将帮助你通过 CODING 研发管理系统来更好地实践 DevOps 流程。

DevOps 的本质是打破各个部门之间的隔阂,打通企业的前中后台,推进跨部门协作。CODING 研发管理系统涵盖了企业从需求管理、迭代规划、产品研发,到测试管理、部署管理等软件研发全周期。辅以 Wiki、文件管理等功能,帮助企业打破各个研发小组甚至企业部门之间的边界,让产品经理、研发团队、测试工程师、运维乃至于市场运营、销售、行政等部门共享同一个协作平台,让信息流通更加顺畅,让跨部门协作更加紧密,帮助企业提高研发效能,创造更多的商业价值。

使用 CODING 实践 DevOps

从需求构思到产品落地,CODING 研发管理系统引入硅谷最先进的理论,再结合符合中国研发团队的长期积累,为企业提供最优秀的 DevOps 实践,帮助企业将研发效能提升到全新的标准。

同时通过 CODING 的企业微信小程序,还能实现随时随地的同步与协同,通过小程序可以直接查看任务详情、评论任务还能实现允许代码合并(MR)等功能,做到 Coding Anytime Anywhere。

DevOps 的核心在于速度和可控性,CODING 权限管理功能,可以帮助项目管理员方便地根据项目成员的角色来分配相应的权限,减少误操作带来的安全隐患,同时还支持自定义用户组,增加研发管理的可控性。在项目开始时,由项目管理员先行配置好所有成员的权限,确保团队更有序地进行软件开发。

一、迭代规划

在邀请所有项目成员加入并配置好相应权限后,正式进入研发阶段。首先要由本项目的产品负责人在需求管理模块中制定项目的产品规划,并负责维护和更新。之后产品团队会通过 CODING 研发管理系统的需求管理功能创建一个需求池。

  • 收集与管理需求

产品经理将规划上线的功能、用户的反馈以及市场调研的结果整理出来,通过需求管理中的需求形式统一归纳,形成需求池。同时产品负责人对需求池中的需求进行进一步分析,根据团队习惯将需求分为技术问题、设计问题和产品问题。每条需求下都会根据需求的复杂程度创建一系列子任务,越重要的需求需要撰写越完整的需求描述。


  • 制定版本迭代计划

在分析完需求后,通过 CODING 研发管理系统中的迭代功能来制定版本发布计划。此时产品团队需要与研发和设计团队召开产品会议,在会议中,产品经理对各个需求进行优先级排序,明确每次版本迭代中需要包括哪些需求、缺陷、工作和任务并设定好迭代周期。一个项目按照开发顺序可以分成不同的迭代。

事务中包含需求、任务和缺陷,迭代提供完整的概览功能,可以清晰地展示每个迭代中的事务进行情况和分布。

在会议结束后,每个项目成员应该对自己的事务有清晰的认知。

  • 需求文档和原型文件

在完成迭代规划后,产品经理即可在 Wiki 中根据迭代中的需求撰写完整的产品功能文档。 同时可以使用 CODING 的文件功能上传分享产品的原型图。CODING 的功能和 Wiki 功能为研发团队提拱了内置的文档协作和团队知识沉淀工具。

二、产品研发

在迭代开始后,拿到产品的原型设计和功能说明文档,研发工程师开始进行相关功能的交付开发。如果需求中涉及设计团队,研发工程师可以直接在需求管理页面通过关联功能关联相应的设计任务。

  • 代码托管

CODING 的代码托管服务提供高速、稳定且更易用的代码仓库,高性能远端 Git 仓库支持分布式计算和存储,并具有保护分支权限控制等功能。研发团队可以使用 Feature Branch Workflow、Gitflow 和 Forking 等并行研发流程,让团队成员共用一个私有项目仓库进行管理协作,开发者可以选择适合自身的开发流程进行开发。这样的并行开发可以大幅缩短等待时间,提高研发团队的研发效能。

  • Code Review

DevOps 的主旨在于快速迭代,在注重速度的同时,质量也是重要的指标之一。开发完成后通过提交 Merge Request 进行代码评审,确保代码质量。通过代码评审后 merge 进入 master 分支。

  • 持续集成

持续集成是 DevOps 的核心,CODING 的持续集成功能对每次提交的代码不断进行自动化的单元测试、代码检查、编译构建、契约测试,甚至自动部署。持续集成大大降低了开发者的工作负担,减少了不必要的重复劳动,提升代码质量和开发效率。在 CODING 持续集成模块中可以对持续集成功能进行设定。当开发者 push 代码时,会自动触发 CODING 持续集成,持续集成会自动编译并测试该 commit。CODING 持续集成支持在任意阶段触发持续集成。当开发者提交一部分修改完成的代码后,总是希望可以快速、持续地得到直观且有效的反馈,以达到持续快速交付的目的,这也是 CODING 持续集成功能所希望达到的目标。

CODING 的持续集成预置了大量构建环境镜像,例如 Java、Python、NodeJS 等等,同时还支持 Docker 镜像构建,让开发者可以快速上手。另外 CODING 的持续集成功能支持代码自动化构建,并且在构建过程中可以进行自检;每次提交必须进行一次构建、保持构建的高效,确保研发团队易于取得最新构建的可交付成果,并且支持自动化部署。

当持续集成通过后,便可以把代码更新到 staging 环境。

三、测试阶段

更新 staging 的代码后,开始由测试人员进行相关测试。在 CODING 的测试管理模块中可以方便的创建并执行测试计划。

  • 编写测试用例

DevOps 的高效同时也体现在其工作并行的方面上,一般情况下测试工程师在迭代规划完成后即可根据计划中的事务编写测试用例。

  • 创建测试计划

根据迭代中的进度和规划创建测试计划,并将当前所需要测试的功能所对应的测试用例规划进去。

  • 执行测试计划

当迭代进行到测试阶段后,测试工程师便可直接在平台上执行测试计划,并在计划中的每个用例里标注测试结果,如测试未通过则需记录相关的错误信息。

Staging 环境测试通过后,该功能就可以在内部测试新功能的形式发布到生产环境,通知相关的产品或设计人员在内部测试环境进行上线前的测试。

四、缺陷管理

在测试环节和正式上线后发现的问题,都可以在 CODING 研发管理系统的缺陷管理模块中归纳统一,并排出优先级作为下一个迭代中的工作来源之一。不过这也要具体问题具体分析,紧急程度高的缺陷需要第一时间反馈到产品进行修复,优先级不高的会安排到接下来迭代修复。

  • 提交缺陷

在测试阶段没有通过的测试用例,可以直接提交缺陷,返回产品经理手上由其指派给相应的开发者进行修复。

  • 用户反馈

在运营接收到用户反馈的问题时,对该问题进行查实,确定为缺陷后直接在缺陷管理中提交该缺陷,等待产品经理进行排期。

五、迭代总结

在一轮迭代结束后,CODING 研发管理系统提供了各类报表功能,自动生成员工工作量、事务情况、完成趋势、延期率等关键指标的相关报告,帮助企业用最短的时间进行自我总结和分享,帮助团队快速吸取教训并投入到下一个迭代中。

点击立即使用 CODING 实践 DevOps 全流程

如何使用 CODING 实践 DevOps 全流程的更多相关文章

  1. k8s+jenkins(DevOps全流程)

    k8s集群搭建是参照别人的,链接找不到了.需要5台机器,3主2从,主最少搭建3台才能实现高可用. 流程jenkins打包代码 >> 把打包代码生成镜像 >> 备份镜像库旧镜像 ...

  2. AI全流程开发难题破解之钥

    摘要:通过对ModelArts.盘古大模型.ModelBox产品技术的解读,帮助开发者更好的了解AI开发生产线. 本文分享自华为云社区<[大厂内参]第16期:华为云AI开发生产线,破解AI全流程 ...

  3. 基于Jenkins的开发测试全流程持续集成实践

    今年一直在公司实践CI,本文将近半年来的一些实践总结一下,可能不太完善或优美,但的确初步解决了我目前所在项目组的一些痛点.当然这仅是一家之言也不够完整,后续还会深入实践和引入Kubernetes进行容 ...

  4. 十分钟 CODING DevOps 全链路体验

    近期 CODING 团队在 2019 KubeCon 大会上发布 DevOps 一站式解决方案:CODING 2.0.此次 CODING 全新上线了持续集成与制品库模块,通过自动化与标准化的方式来帮助 ...

  5. 【CKB.DEV 茶话会】第二期:聊聊 CKB 钱包和 Nervos DAO 全流程

    CKB.DEV 茶话会第二期:聊聊 CKB 钱包和 Nervos DAO 全流程 为了鼓励更多优秀的开发者和研究人员参与到 CKB 的开发和生态建设中去,我们希望组织一系列 CKB Developer ...

  6. Kafka控制器事件处理全流程分析

    前言 大家好,我是 yes. 这是Kafka源码分析第四篇文章,今天来说说 Kafka控制器,即 Kafka Controller. 源码类的文章在手机上看其实效果很差,这篇文章我分为两部分,第一部分 ...

  7. canvas 制作flappy bird(像素小鸟)全流程

    flappy bird制作全流程: 一.前言 像素小鸟这个简单的游戏于2014年在网络上爆红,游戏上线一段时间内appleStore上的下载量一度达到5000万次,风靡一时, 近年来移动web的普及为 ...

  8. 全球首个全流程跨平台界面开发套件,PowerUI分析

    一.       首个全流程跨平台界面开发套件,PowerUI正式发布 UIPower在DirectUI的基础上,自主研发全球首个全流程跨平台界面开发套件PowerUI(PUI)正式发布,PowerU ...

  9. 【Heritrix基础教程之4】开始一个爬虫抓取的全流程代码分析

    在创建一个job后,就要开始job的运行,运行的全流程如下: 1.在界面上启动job 2.index.jsp 查看上述页面对应的源代码 <a href='"+request.getCo ...

随机推荐

  1. MySql数据基础之数据表操作

    MySql数据库中主要利用多个数据表进行数据的存储,我们可以将数据表理解成一个Excel表格,Excel表格的第一列可以将它看为id列,主要任务是数据表中数据的唯一标识,不能重复.不能为空.如果将数据 ...

  2. rbac结合ssm实现权限分配和管理

    RBAC(Role-Based Access Control )基于角色的访问控制. RBAC 认为权限的过程可以抽象概括为: 判断[Who 是否可以对 What 进行 How 的访问操作(Opera ...

  3. Java中的等待唤醒机制—至少50%的工程师还没掌握!

    这是一篇走心的填坑笔记,自学Java的几年总是在不断学习新的技术,一路走来发现自己踩坑无数,而填上的坑却屈指可数.突然发现,有时候真的不是几年工作经验的问题,有些东西即使工作十年,没有用心去学习过也不 ...

  4. BZOJ1500 [NOI2005]维修数列(Splay tree)

    [Submit][Status][Discuss] Description 请写一个程序,要求维护一个数列,支持以下 6 种操作: 请注意,格式栏 中的下划线‘ _ ’表示实际输入文件中的空格 Inp ...

  5. 【Python3网络爬虫开发实战】 分析Ajax爬取今日头条街拍美图

    前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:haoxuan10 本节中,我们以今日头条为例来尝试通过分析Ajax请求 ...

  6. 【Canvas】311- 解决 canvas 在高清屏中绘制模糊的问题

    点击上方"前端自习课"关注,学习起来~ 一.问题分析 使用 canvas 绘制图片或者是文字在 Retina 屏中会非常模糊.如图: 因为 canvas 不是矢量图,而是像图片一样 ...

  7. web性能优化指南

    前端性能优化,是每个前端必备的技能,优化自己的代码,使自己的网址可以更加快速的访问打开,减少用户等待,今天就会从几个方面说起前端性能优化的方案, 看下面的一张图,经常会被面试官问,从输入URL到页面加 ...

  8. 根据WSGI协议自己实现mini-web框架(1)

    1. 为什么要研究WSGI 我之前在学习web开发时,往往都是根据MVT等架构直接写所谓的“视图”,使用其本身自带的http服务器,当时就一直很好奇,为什么有了HTTP协议之后,还要研究WSGI协议, ...

  9. CQRS+ES项目解析-Equinox

    今天我们来分析另一个开源的CQRS+ES项目:Equinox.该项目可以在github上下载并直接本地运行,项目地址:https://github.com/EduardoPires/EquinoxPr ...

  10. wpf键盘

    一.键盘类和键盘事件 WPF提供了基础的键盘类(System.Input.Keyboard类),该类提供与键盘相关的事件.方法和属性,这些事件.方法和属性提供有关键盘状态的信息.Keyboard的事件 ...