企业级实践:大厂项目研发流程

news2025/3/1 0:58:19

引言

战国·邹·孟轲《孟子·离娄上》:“离娄之明,公输子之巧,不以规矩,不能成方圆。”

每一个行业都有自己行之有效的规矩,同样软件行业也有自己一套的开发流程,今天就来跟大家聊一聊咱们公司的开发流程,让大家品评下,有兴趣的可以把自家的公司流程放到评论中哦,相互学习,相互进步。

需求确定

需求提出人(运营、财务、销售、人事等)会提出自己的诉

产品经理会按照诉求,梳理出需求文档和原型并最终和需求提出人确定最终版。

确定技术方案

产品经理、项目经理和架构师会按照上面出的需求进行技术评审,结合人力、成本、时间、风险等因素,确定合理的技术方案,并制定开发计划,确定开发周期。

组织需求评审

确定好需求及技术方案后,产品经理会组织所有的开发童鞋和测试童鞋,开发童鞋了解需要做什么,测试童鞋需要按照需求评审编写测试用例文档。

编写概要设计

开发人员按照需求评审中的内容及项目经理分配的开发计划中分配的开发内容,编写概要设计文档,文档中包含关键业务逻辑、业务流程图、数据库表设计等。

建议:文档内容力求能说出关键点,图表多一些,文字少一些。

概要评审

等开发人员编写完概要设计文档后,项目经理组织概要设计的评审,来确认从技术层面和业务层面是否满足需求功能。

注意:评审可以进行多次,务必要保证开发明确自己的开发目标,不能有含糊的字样。

功能开发

等概要文档评审后,开发童鞋按照文档中的内容进行开发,其中如果发现开发过程中有异议,也需要同步到文档中,用做记录。

功能演示

在迭代版本中,项目经理可以组织一定次数的功能演示,来检验开发的功能是否满足需求。

注意:可以按照需求维度、或者按照时间维度进行演示。

代码review

在迭代版本中,架构师(或技术大牛)可以组织一定次数的代码走查,用于发现代码中的坏味道,确保代码规范。

建议:不要等功能开发完毕后再进行代码review,因为迭代开发完后再改动成本大,就像建大楼到楼顶的时候,发现地基有问题,凉凉~

测试用例评审

在转测前,测试童鞋会组织一次全员的测试用例评审,看是否有对于功能的遗漏,进行补全。

冒烟测试

在转测前,开发童鞋根据评审后的测试用例评审,找到高优先级的测试用例在测试环境进行自测,确定是否成功。

测试环境转测

当代码review、冒烟测试、功能演示并在测试环境部署完成后,项目经理发送转测邮件,申请转测。

测试童鞋在测试环境进行测试,验证功能是否满足需求。

验收环境转测

当测试童鞋确定测试环境验证通过后,需要运维童鞋把测试环境的系统部署到验收环境。

测试童鞋、产品经理在测试环境进行测试,验证功能是否满足需求。

注意:验收环境是模拟生产环境,测试数据力求与生产环境保持一样。

压力测试

当整体功能测试完毕后,如果该功能有性能指标的话,测试童鞋会对功能进行压力测试(压力测试工具例如:jmeter等),如有问题可以协调运维童鞋和开发童鞋来处理。

迭代上线

当功能测试和压力测试都通过后,测试童鞋发送测试结果邮件,项目经理发送上线邮件,邮件包括:上线时间点、上线内容、上线计划、上线人员、值班人员等。

按照时间点上线,整个迭代到此结束。

最后,一句话根本形容不了我的穷,跪求工作,南京~

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/435673.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能修改文案-智能写作平台

智能原创自动写作工具在线 随着人工智能技术的发展,智能原创自动写作工具在线已经成为了网络营销的一个重要工具。这种工具可以根据您输入的关键词和主题,自动生成高质量、原创性强的文章。下面是智能原创自动写作工具在线的优势。 节省时间和人力成本 …

IDEA重复下载SNAPSHOT包问题

问题现象 reimport 之后 状态栏显示resolving dependencies… 遇到某个比较大的快照包(33M),同一天的第2个版本时 1.0-xxx-SNAPSHOT.时间戳-2 idea importer 会先分片下载 x.jar.part文件中,然后复制为x.jar吧 如图中所示,其实已经下载完了&…

C++四种类型转换运算符

C语言之所以增加强制类型转换的语法,就是为了强调风险,让程序员意识到自己在做什么。 但是,这种强调风险的方式还是比较粗放,粒度比较大,它并没有表明存在什么风险,风险程度如何。再者,C风格的…

深入浅出OkHttp,【带你手写】构建高效、高性能的网络请求框架

简述 OKHttp是一个用Java编写的网络框架,可用于 Android,以及一些基于Java的web应用开发中。它使用了HTTP/2标准的支持和连接池技术,可以让应用快速向Web服务器发送网络请求,并得到响应。OKHttp提供了一个简单的API,允…

【SQL】列的选择与查询

本文内容参考书籍《SQL基础教程》第二章,课后习题在最后,请多指教。之前章节的内容请点击下方链接。 前言 PostgreSQL的下载与安装 第一章 数据库的创建,表的创建、更新、删除 一、SELECT语句 1、查询表中的列 (1&#xff09…

【每日一题】——移除元素

🌏博客主页:PH_modest的博客主页 🚩当前专栏:每日一题 💌其他专栏: 🔴 每日反刍 🟡 C跬步积累 🟢 C语言跬步积累 🌈座右铭:广积粮,缓称…

重装系统重启后无法进入系统解决方法

重启无法进入系统怎么办?让大家平日里使用小白装机系统的话,很有可能会由于没有办法顺利的进行引导菜单而导致无法进入系统下面,小编今天教大家小白装机重启无法进入系统解决方法。 方法/步骤: 方法一:运用热键再次进入。 1、小…

【LeetCode】剑指 Offer(29)

目录 题目:剑指 Offer 56 - II. 数组中数字出现的次数 II - 力扣(Leetcode) 题目的接口: 解题思路: 代码: 过啦!!! 题目:剑指 Offer 57. 和为s的两个数…

JVM垃圾回收机制(GC)

目录 GC的作用: 申请内存的时机和释放内存的时机 内存泄露和内存溢出 内存泄露 内存溢出 GC(垃圾回收的劣势) GC(垃圾回收) 的工作过程 垃圾回收的过程: 第一阶段:找垃圾/判定垃…

Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCV实现图像的直方图算法增强(C++)

Baumer工业相机堡盟工业相机如何联合BGAPISDK和OpenCV实现图像的直方图算法增强(C) Baumer工业相机Baumer工业相机使用图像算法增加图像的技术背景Baumer工业相机通过BGAPI SDK联合OpenCV使用图像增强算法1.引用合适的类文件2.BGAPI SDK在图像回调中引用…

基于NXP iMX8处理器扩展外部 SGTL5000 音频接口

By Toradex胡珊逢 Apalis iMX8 计算机模块的数字音频接口 SAI(Synchronous Audio Interface)可以配置为 AC97、I2S格式,用于连接外部音频编解码器。文章接下来将介绍在 Linux BSP v6 上如何扩展第二路 SGTL5000。 iMX8 处理器具有多路 SAI 通…

I2C基础入门

I2C参数 主从模式: 主机从机 常见速率: 普通模式(100kHz)快速模式(400kHz)快速模式(1MHz)高速模式(3.4MHz)超高速模式(5MHz) 地址…

__cplusplus和extern “C“

文章目录 __cplusplus是什么extern "C"使用场景的示例通过MinGW编译及查看下目标文件中的符号用gcc编译器添加 -c选项 使my_handle.c文件编译后生成my_handle.o文件,这里的 -o是 output的意思nm命令 是GCC编译集合下最常用的查看目标文件中的符号的命令 -…

0601概述-react路由-react

1 SPA与MPA 1.1 简述 单页面应用和多页面应用是两种不同的 Web 应用程序架构。 单页面应用(SPA)是指在一个 HTML 页面中动态加载和渲染所有的应用程序内容,通过前端 JavaScript 操作来实现页面的变化和交互。SPA 不需要每次请求新的 HTML …

牛客刷题错题解析

以下是Video/Audio中会触发的事件的有? load play seeked abort 网址:https://www.nowcoder.com/questionTerminal/fc3b560267fd44e98d02a40a 方法:load() play() pause() 事件:play() playing() pause() seeked() seeking() abor…

Linux移植5.4版本内核:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(5.4版本内核)

Linux移植5.4版本内核:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(5.4版本内核) 文章目录 Linux移植5.4版本内核:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(5.4版本内核)1.出厂源…

浅理解JavaScript数组去重的方法(划重点),当面试官问如何实现数组去重时,你可以这样做...

文章目录 📋前言🎯什么是数组去重,运用场景是什么?🎯常用的数组去重方法🧩使用 Set 对象🧩使用 Object(对象、基于Hash哈希表) 或 Map🧩使用 filter 方法与 i…

概率图降低表示需要的参数指的是什么?(贝叶斯网络) 结构化概率模型

深度学习中经常要对概率密度建模。对于多维度随机变量来说,这有些困难。概率化结构(既图模型)是处理这个问题的手段之一。这引出了两个问题。为什么建模困难?图模型怎样解决了这个困难? 关于这个问题,花书…

图片怎么压缩到200K以内,这3个图片压缩方法,简单有效

你没有遇到过上传图片到网站的时候,图片太大不能上传的情况?还有,许多报名照片要求小于200K,可是照片超过这个大小,应该如何压缩呢?下面我给大家带来3个图片压缩的方法,既能快速压缩图片大小&am…

深度学习技巧应用7-K折交叉验证的实践操作

大家好,我是微学AI,今天给大家介绍一下深度学习技巧应用7-K折交叉验证的实践操作。K折交叉验证是一种机器学习中常用的模型验证和选择方式,它可以将数据集分为K个互斥的子集,其中K-1个子集作为训练集,剩下1个子集作为验…