Go 语言项目开发实战
孔令飞
腾讯云专家工程师,前 Red Hat、联想云工程师
41030 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 61 讲
Go 语言项目开发实战
15
15
1.0x
00:00/00:00
登录|注册

08 | 研发流程设计(上):如何设计 Go 项目的开发流程?

运维
产品运营
服务发布
发布审批
代码发布
难测测试
自测报告、自测用例
测试计划、测试用例
CI/CD 自动化
静态代码检查、单元测试、编译
生成代码
制定 Git 工作流规范
设计项并行
技术设计
产品设计
需求评审
需求分析
产品思路具化
2. 调研工具,实现流程自动化
1. 回忆研发阶段工作内容
6个阶段:需求、设计、开发、测试、发布、运营
自行设计或采用通用流程
掌握研发流程重要
输入输出
柔性扩展
流程合理
明确性
迭代速度快
发布质量高
发布效率高
运营阶段
发布阶段
测试阶段
开发阶段
设计阶段
需求阶段
课后练习
总结
关注点
业界相对标准的研发流程
如何设计 Go 项目的开发流程?

该思维导图由 AI 生成,仅供参考

你好,我是孔令飞。今天我们来聊聊如何设计研发流程。
在 Go 项目开发中,我们不仅要完成产品功能的开发,还要确保整个过程是高效的,代码是高质量的。这就离不开一套设计合理的研发流程了。
而一个不合理的研发流程会带来很多问题,例如:
代码管理混乱。合并代码时出现合错、合丢、代码冲突等问题。
研发效率低。编译、测试、静态代码检查等全靠手动操作,效率低下。甚至,因为没有标准的流程,一些开发者会漏掉测试、静态代码检查等环节。
发布效率低。发布周期长,以及发布不规范造成的现网问题频发。
所以,Go 项目开发一定要设计一个合理的研发流程,来提高开发效率、减少软件维护成本。研发流程会因为项目、团队和开发模式等的不同而有所不同,但不同的研发流程依然会有一些相似点。
那么如何设计研发流程呢?这也是你看到题目中“设计”两个字后,会直接想要问的。看到这俩字,你第一时间可能会觉得我是通过一系列的方法论,来告诉你怎么进行流程设计。但实际情况是,项目研发流程会因为团队、项目、需求等的不同而不同,很难概括出一个方法论让你去设计研发流程。
所以在这一讲中,我会介绍一种业界已经设计好的、相对标准的研发流程,来告诉你怎么设计研发流程。通过学习它,你不仅能够了解到项目研发的通用流程,而且还可以基于这个流程来优化、定制,满足你自己的流程需求。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了Go项目的研发流程设计,强调了研发流程设计的关键原则和业界相对标准的研发流程。研发流程分为六个阶段:需求、设计、开发、测试、发布和运营。开发阶段包括制定Git工作流规范、代码生成、静态代码检查、单元测试和自测。测试阶段由测试工程师负责,包括测试计划、测试用例编写和自测报告。发布阶段涵盖代码发布、发布审批和服务发布,需要创建发布计划和发布单,并进行预发环境验证和现网测试。文章强调了规范性和自动化工具的重要性,以及提高研发效率的方法。整体而言,本文为读者提供了Go项目研发流程设计的重要原则和业界标准,以及各个阶段的具体内容和注意事项。 文章还介绍了运营阶段的产品运营和运维两个部分,强调了运维工程师确保系统稳定运行的重要性,以及产品运营通过一系列活动提高产品知名度和用户数量的方法。此外,还提到了研发人员在运营阶段的职责和配合运营人员开发运营接口的可能性。最后,文章总结了研发流程的重要性,并提出了自行设计或采用通用标准研发流程的建议。 总的来说,本文详细介绍了Go项目的研发流程设计和运营阶段的重要性,为读者提供了全面的研发流程指导和建议。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Go 语言项目开发实战》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(22)

  • 最新
  • 精选
  • 磉盘
    总结的开发流程很全面,经历的工作很多团队大部分还达不到这个开发流程。制定流程容易,执行困难。

    作者回复: 老哥说到精髓了,指定流程容易,执行困难。 所以要借助于工具系统,例如devops

    2021-08-07
    8
  • types
    之前的项目基于瀑布模型,是按照上面的6个流程进行的。 如果是敏捷开发,流程中的设计阶段是如何进行的?

    作者回复: 敏捷开发中,阶段没有区分这么开。

    2021-07-31
    2
    3
  • 宙斯
    最后这个扩展环形图(人员角色),没看到有架构师,架构师只存在大型项目中么?

    作者回复: 是的哈,架构师一般在大型项目中有,小型项目产品经理可能会兼职架构师的角色

    2021-06-18
    2
    3
  • helloworld
    QA和QE感觉职责差不多,不理解为什么要区分开呢,一般公司貌似只叫QA,就一个测试团队

    作者回复: 区别挺大的。QE主要职责是测试。但质量保障不仅仅只有测试,比如发布流程规范,故障复盘,质量指标的建立等,都需要建立起来,这些一般会通过QA来建立。小公司区别倒不用这么清晰。

    2021-06-16
    3
  • Bosco
    作者介绍的研发流程跟目前公司团队的研发流程基本一样

    作者回复: 666

    2022-01-11
    2
  • yandongxiao
    总结: 1. 软件研发流程涉及六个阶段:需求阶段、设计阶段、开发阶段、测试阶段、发布阶段、运营阶段。 2. 需求阶段,基本不关心; 3. 设计阶段:交互设计、视觉设计、技术设计、技术评审、排期; 4. 开发阶段:掌握 Makefile、Git FLow、gitlab CI,结合各种效率工具,打造高效的 CI 过程。 5. 测试阶段:提测报告、自测报告; 6. 发布阶段:资源申请,发布单,催审批、流量灰度或副本粒度灰度,自动化测试用例,回滚。 不能自动化的流程,都是阻碍效率的

    作者回复: 《不能自动化的流程,都是阻碍效率的》总结很到位!

    2021-11-23
    2
  • Geek_b67d9f
    目前国内的公司,能做到这么严谨的开发流程的可能比较少吧,都想着功能尽快上线,然后变现,尤其小公司这种情况更加的明显

    作者回复: 对对对,所以尽可能工具化、自动化。并长期坚持,形成团队文化、习惯。

    2021-10-25
    2
  • Juniper
    研发工程师不能仅仅关注写代码这一亩三分地,在研发流程全阶段,都需要研发工程师发挥价值。

    作者回复: 老哥说的对!

    2021-09-26
    1
  • 低调
    资源为什么不在技术方案敲定后就申请 1、功能都测试完了再申请生产环境的资源,碰到有些资源难申请会不会耽误交付时间 2、现在项目的地址啥的都会放到生产的配置文件里,拿到资源配置后,是不是还得发布一次

    作者回复: 1. 资源申请这个根据需要来申请,一般来说测试阶段申请就可以了,如果资源申请周期长,申请时间可以再提前点 2. 可以随下次发布吧,感觉没必要单纯为了一个配置发布一次

    2021-06-17
    1
  • 低调
    资源申请为什么不在技术方案敲定之后就申请

    作者回复: 根据需要可以提前

    2021-06-17
    1
收起评论
显示
设置
留言
22
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部