研发管理 - 流程篇_研发管理流程-程序员宅基地

技术标签: java研发  项目管理  研发管理  

研发管理-流程篇

标签: 项目管理 研发管理


情况介绍

2018年,总部新成立****事业部,让我负责研发管理工作,由于涉及到电费相关,系统出现异常容易造成企业用户损失,为降低系统风险,确保流程规范顺畅,制定一份切实可行项目研发管理,争取2019年做到系统零事故。

项目研发管理
项目管理阶段

研发项目主要从产品需求作为入口,线上验证作为结束,主要分为:
需求评审
项目设计
项目研发
项目测试
项目上线
线上验证
六个阶段分别阐述每个阶段的主要工作职责和内容。

    需求评审

需求评审主要评审什么?一直以来我们对需求的评审不够严格或者仅仅是过了一遍需求,让大家都知道有这个需求需要研发上线,缺乏对业务、系统整体风险的揭示,业务评审主要考虑从业务、技术两个层面规避风险和处理风险。我要求团队对需求的评审主做到如下四点:

  1. 分析新上产品(需求)对现有产品是否存在冲击风险
  2. 分析新上产品(需求)自身的业务风险,如果出现系统风险,业务层面是否有解决办法
  3. 分析新上产品(需求)业务流程是否逻辑清晰,业务是否考虑后续产品扩容
  4. 分析新上产品的接入方(银行、内部系统、其他厂商)的产品和我们产品的融合能力和技术实现

    项目设计

技术经理或研发组长在需求评审结束后开展项目设计工作,如果做好如下的三条应可以满足我们当前的研发要求,太多的要求担心时间的损耗大还未必能够达到好的效果,本着实用好用的原则做好如下三条。

  1. 数据库架构设计(表名,字段名命名规范、充分思考业务发展,满足业务扩展、查询多变更少的采用缓存数据库(redis+oracle)结合使用,基础字段必须包含如:操作用户编码、创建时间,可以适当的冗余字段方便管理平台的统计分析和查询工作)

  2. 应用架构设计(应用架构图,描述系统应用关系,描述不同系统间的职责范围(银行、财务公司、内部系统、其他外部系统)、设计测试环境和正式环境的虚拟机数量、说明相关网路权限的申请和开通)

  3. 安全架构设计(数据脱敏、数据加密、网络安全(专线、https、证书)、用户权限、Xss、SQL注入等基本安全防范)

重点:设计必须评审,这个是我必须要过的一道程序。

    项目研发

项目研发需要经过九大步骤,主要包括:

  1. 分支创建
  2. 工作分配
  3. 环境申请(测试)
  4. 代码编写
  5. 代码审查
  6. 代码合并
  7. 集成测试
  8. 环境申请(正式)
  9. 测试提交

分支创建
研发经理根据项目需求、应用架构设计、《git管理办法》做出项目分支(future_branch)创建工作。

工作分配
研发经理创建好分支后,在分支下将包创建好后,将分支权限分配和具体研发人员。

环境申请(测试)
申请虚拟机、开通对外网络、内部网络、申请redis、memcached的key。

代码编写
代码编写必须做到如下规范日志输出、规范注释编写、规范命名规范(应用、包、类、方法、字段)、规范单元测试、规范异常处理、规范缓存使用、规范SQL、规范使用通用类、规范任务处理调用、关键程序逻辑处理、QAPlug代码检查。

代码审查

  1. 为什么代码审查在合并之前?
    研发经理层面:1)审查代码实现是否符当初的设计。2)投提前了解合并可能存在冲突。
    研发工程师层面:1)团队其他成员通过审查,能够理清(加强理解)队友代码实现和自己代码的逻辑关系。2)通过代码审查,了解技术实现尽早实现技术层面提升。
  2. 代码审查的成员
    代码审查包括所属项目组所有成员
  3. 代码审查的内容
    日志输出、注释使用、命名规范(应用、包、类、方法、字段)、单元测试情况、异常捕获、权限处理、事务处理、缓存使用、数据库使用、SQL编写、代码逻辑、通用类使用情况、任务处理、关键程序处理。

代码合并
代码合并的工作必须由研发经理执行,研发经理解决合并的代码问题。合并完成后使用代码检测工具(Sonar)开展代码检查工作。

集成测试
完成业务基本测试和性能测试。将研发的包放入集成测试环境(暂时正在搭建),主要测试核心逻辑、外部系统调用、内部系统调用、数据量千万级、数据量亿级处理时长,考虑业务量大的情况性能和基本功能测试。

环境申请(正式)
申请正式环境的虚拟机、开通正式的网络、可提前部署相关的硬件或者软件(如:银行前置机)。

测试提交
准备发版文档,将发版文档提交给测试,测试按照发版文档部署配置(jenkins、 git)服务。
后续将测试环境当做生产,确保提交给测试的环境配置无错误。

    项目测试

用例编写
测试用例编写开始于需求评审完成后,包括覆盖基础功能、本次上线功能、环境变化调整功能。

用例评审
测试用例评审,包括必须复测的基础功能,包括本次上线功能的完整性,包括因代码、环境调整等因素需要测试和恢复测试用例。测试用例的评审包括开发(最低2人)+测试本项目组全体成员。

分配工作
测试工作的分配,通过项目计划将模块分配给相关的测试测试人员,(考虑交叉测试,希望明年能够实现,交叉测试需要人员较多,成本较高)。

系统测试
系统主要测试三轮:

  1. 第一轮主要是业务流程跑通测试,目前由于测试环境和研发环境较大差异(配置、数据、外部环境)所以第一次的测试以跑通为主;
  2. 第二轮测试主要包括业务实现逻辑及细节测试,包括日志输出、相关系统处理时间、业务数据、异常数据测试等。
  3. 第三轮主要是回归测试,出具测试报告,提出因测试条件缺失的风险,让业务人员签字确认风险。出具代码研发质量报告,根据代码行数和bug的比率、相似功能bug比率提出研发质量报告。

    产品上线

发版准备

  1. 做发版计划,环境准备提前一周,发版计划提前3天。
  2. 准备发版的工作票,封版前完成。
  3. 做好发版材料的审查

发版跟踪

  1. 发版当天安排技术经理值班。
  2. 跟踪运维系统启动情况、日志输出情况(检查kibana日志查询)、系统的初步验证

    线上验证

线上验证
我们的产品主要TO-B,线上的验证难度大,所以19年我们需要实现灰度+白名单客户帮助业务便于线上业务验证。

作者介绍

2011年-2014年主要致力于国内某大型企业财务公司资金结算系统,系统主要业务包括对公、对私、代理资金划转交易,交易金额少则几万多则亿元,不容闪失。值得骄傲的是在我担任项目经理期间没有出现一笔问题,回想那段时间我个人压力巨大,每天琢磨系统哪儿容易出现问题,如何防范,出现问题如何补偿。带领团队完成系统监控研发上线,确保问题交易提早发现通知银行协同解决。

2015至-2018年初主要负责某e宝研发工作,主要分为两个阶段,第一阶段,2015年-2016年底主要负责APP研发,带领团队完成某宝APP v1-v3版本研发上线。2017年-2018年主要负责某宝全部系统的研发管理,包括前端APP和后端核心系统,在这期间带领兄弟们夜以继日工作,完成一项一项艰巨任务。每次想到此,心中尤为感概,特别感谢曾经一起共事的兄弟们,道一声“感谢 & 珍重”。

以上是我研发管理总结,整个研发部门都在推行。感谢您阅读到此,希望您多指正。如果你对研发管理工具感兴趣,请看《研发管理-工具篇》

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/joynet007/article/details/85071807

智能推荐

上采样(upsample)-程序员宅基地

文章浏览阅读1.7k次。转载链接:https://blog.csdn.net/wydbyxr/article/details/83819089上采样(upsample)的方法  在神经网络中,扩大特征图的方法,即upsample/上采样的方法  1)unpooling:恢复max的位置,其余部分补零  2)deconvolution(反卷积):先对input补零,再conv  3)插值方法,双线性插值等;  ..._upsample

ESP8266开发之旅 网络篇⑪ WebServer——ESP8266WebServer库的使用_esp8266开发之旅 网络篇 webserver——esp8266webserver库的使用-程序员宅基地

文章浏览阅读2.6w次,点赞28次,收藏25次。1. 前言    在前面章节的博客中,博主介绍了ESP8266WiFi库 Tcp server的用法,并模拟了Http webserver的功能。但是,可以看出通过Tcp server 处理http请求,我们需要自己解析请求协议以及判断各种数据,稍微不小心就很容易出现错误。    那么有没有针对Http webserver操作的库呢?答案肯定是有的,这就是博主本篇需要跟大家讲述的知识——ESP..._esp8266开发之旅 网络篇 webserver——esp8266webserver库的使用

Betaflight通过OSD设置摄像头参数(F*V Camera Control)_平头哥摄像头osd调参-程序员宅基地

文章浏览阅读6.3k次。简介在无人机飞行中,有些摄像头支持通过飞控的OSD界面进入到摄像头系统,从而设置摄像头的相关参数,如白平衡、亮度、个性化字符信息等参数。(F*V Camera Control)设置步骤DALRC F405飞控支持此项功能,需要配合OSD界面进行,USB连接后进入Betaflight Configurator的CLI命令模式下按如下步骤设置命令: 1.映射端口(飞控固件内已默认映射..._平头哥摄像头osd调参

知三角形三边和两点坐标计算另外一点的坐标_已知两点坐标以及三边边长-程序员宅基地

文章浏览阅读6.8k次,点赞4次,收藏27次。问题:已知三角形A、B点的坐标和三边长,求C点坐标,如图: 原理:方位角和三角函数关系求解过程:计算边AC和AB的夹角θ,即: 2. 计算边AB与x轴的夹角根据方位角一般公式 ..._已知两点坐标以及三边边长

【Python计量】自相关性(序列相关性)的检验_用残差图诊断模型的误差项是否存在自相关。-程序员宅基地

文章浏览阅读1.4w次,点赞11次,收藏97次。多元线性回归模型的基本假设之一就是模型的随机干扰项相互独立或不相关。如果模型的随机感染项违背了相互独立的基本假设,则称为存在序列相关性(自相关性)。我们以伍德里奇《计量经济学导论:现代方法》的”第12章 时间序列回归中序列相关和异方差性“的案例12.4为例,使用BARIUM中的数据来进行序列相关性的检验。import wooldridge as wooimport pandas as pdimport numpy as npimport statsmodels.api as smimport s_用残差图诊断模型的误差项是否存在自相关。

neo4j使用详解(十六、索引之语义索引<向量索引>——最全参考)_neo4j如何向量化查询-程序员宅基地

文章浏览阅读772次,点赞22次,收藏28次。节点矢量搜索索引在Neo4j 5.11中作为公测版本发布,在Neo4j 5.13中作为通用版本发布。向量索引允许用户从大型数据集查询向量嵌入。嵌入是数据对象(如文本、图像、音频或文档)的数字表示。例如,文本中的每个单词或标记通常表示为高维向量,其中每个维表示单词含义的某个方面。语义上相似或相关的词通常用向量空间中彼此更接近的向量来表示。这允许像加法和减法这样的数学运算带有语义意义。例如,“国王”减去“男人”加上“女人”的向量表示可能接近于“女王”的向量表示。_neo4j如何向量化查询

随便推点

WPF程序_spy++分析wpf程序-程序员宅基地

文章浏览阅读597次。WPF程序通过spy++只有一个窗口句柄, 下面的子控件是看不到句柄的。所以也就没办法通过Win32 API FindWindow来查找子控件了。 如果您的代码没有经过代码混淆的话,别人是可以用ILSPY来查看其exe的代码的。_spy++分析wpf程序

77. 组合_77.组合-程序员宅基地

文章浏览阅读64次。77. 组合https://leetcode-cn.com/problems/combinations/难度中等748给定两个整数n和k,返回范围[1, n]中所有可能的k个数的组合。你可以按任何顺序返回答案。示例 1:输入:n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],]示例 2:输入:n = 1, k = 1输出:[[1]]提示:1 &l..._77.组合

Android开发都需要使用什么语言?_安卓开发的编程语言-程序员宅基地

文章浏览阅读2.2w次,点赞9次,收藏16次。Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面。那么,Android系统都能使用哪些语言来开发呢? 在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过Android N_安卓开发的编程语言

四级单词列表_四级单词a到d有多少个-程序员宅基地

文章浏览阅读1.7k次。四级单词列表置顶2018年11月09日 13:27:35多多单词阅读数:5551、四级英语单词(1-100)2、四级英语单词(101-200)3、四级英语单词(201-300)4、四级英语单词(301-400)5、四级英语单词(401-500)6、四级英语单词(501-600)7、四级英语单词(601-700)8、四级英语单词(701-800)9、四级..._四级单词a到d有多少个

linux电子设计软件,集成电路eda软件-程序员宅基地

文章浏览阅读357次。立创EDA软件是一款用于电子线路设计的仿真设计工具,立创EDA为用户提供了原理图和PCB模块,用户可以轻松方便的绘制原理图,同时多层板流畅布线,能够有效提升使用者工作效率,减轻工作压力。软件介绍立创EDA是一款电子设计仿真软件,用户可以在这款软件上进行电子线路的仿真设计,其中软件自带了很多功能,例如电气工具等,以此达到让用户快速设计电路图的效果。软件功能1、原理图绘制:方便快速的绘制原理图,轻松分..._ltspice linux

Eyeriss中的RS(行固定)数据流-程序员宅基地

文章浏览阅读3.6k次,点赞45次,收藏59次。Eyeriss中的RS(行固定)数据流Eyeriss想必大家都读过,但是你在第一次读v1的时候可能并不清楚他所讲的RS数据流具体是什么样的。笔者在这里专门对Eyeriss v1中的RS(行固定)数据流进行详细举例说明。原文中有关RS数据流的部分:“Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks”中的第四段。“Eyeriss: A Spatial Archite_eyeriss