首页 > 技术文章 > 前端工程师开发的基本流程

chenfairy 2020-12-17 22:47 原文

对于程序员这个行业而言,很多朋友是通过自学,培训或者其他方式接触到的,在刚开始进入职场的时候,对日常工作中一些流程和需要注意的细节都比较懵,今天就这个问题来和一些刚初接触前端的朋友简单聊聊,也方便有个参考,但仅供参考,毕竟每个人的想法和每个公司的制度都不一样,希望对大家有一定帮助哦

项目工作流程大致可分为九个步骤: 产品PRD评审 => 任务排期 => 需求项目建立与任务拆分 => 业务开发(并行) => 测试用例评审(并行) => 联调&自测 => 提测 => 修复测试BUG => 上线

1. 产品PRD评审:

  • 针对于将要开发的项目,由产品经理沟通需求方之后,对应研发部给出相应的设计理念
  • 业务流程逻辑,原型图,界面交互需求,多场景业务需求等所设计的产品PRD,在研发部门会议中商讨评审
  • 共同协商产品需求所需的技术支持及分析相应的需求的合理性

2. 任务排期:

  • 在产品PRD评审之后,技术人员针对产品PRD所给出的需求进行开发时间的评估
  • 确认项目研发周期, 联调日期,提测日期及上线日期

3. 需求项目建立与任务拆分:

  • 在给出排期之后应该确认产品是否建立需求链接,通过对应需求链接创建相应的项目链接
  • 在项目链接内,根据任务排期时间,自行拆分整体任务,分配合理时间

4. 业务开发(并行):

  • 业务开发和测试用例评审分别由开发人员和测试人员同时作业的,所以在这两个地方是并行的
  • 业务开发就是根据产品原型图进行代码开发,每日使用git,svn或其他工具提交代码,一般都是下班之前提交代码,第二天上班写代码前拉取最新代码

5. 测试用例评审(并行):

  • 测试用例是由测试人员根据产品需求,业务流程逻辑进行测试回归时所依据的操作文档
  • 当产品PED评审通过后,测试人员会按照自己的时间进行测试用例文档的设计,之后会与产品技术会议评审
  • 测试用例文档中包含整体前端界面的验收流程,细节及业务逻辑验收等

6. 联调&自测:

  • 联调指的是与后端开发人员进行接口数据上的调用传参核对
  • 在前端开发中,会根据用户操作发送请求,调用后端接口,拿到相应的数据再返回给前端进行显示
  • 在联调阶段,主要的工作就是根据后端提供的接口文档去调用对应的接口地址
  • 根据传入接口文档规定的请求参数格式来查看返回的数据是否符合前端要求
  • 对联调过程中出现的接口调不通,内容错误,状态错误等进行协同处理
  • 自测指的是在联调结束后,确认接口及请求返回数据正常的情况下,进一步针对多场景的交互情况,传递不同的参数给后台,查看是否会出现问题,正常则该阶段通过

7. 提测:

  • 在联调自测结束,就可以把相应最新的开发代码合并到提测分支进行整合
  • 代码整合就绪以后,首先是去工作系统中创建相应的提测单(工作流程是先提测试单再通知测试验收,创建提测单并通知测试后,就可以等待测试验收及提出可能出现的问题)
  • 一般会在规定的提测时间前一天晚上之前整合好测试分支的代码,以免耽误测试工作

8. 修复问题:

  • 这一步没什么好说的,就是处理一下测试测出的自身代码的问题,一般当天的问题当天修复,修复不了的跟测试协商具体修复时间或者请求其他人协助

9. 上线:

  • 流程操作一定要严格按照公司规定的工作流程规范进行操作

一、工作中的协作协调:针对底层开发人员而言, 主要就是三个方面的协作协调 : 产品 / 后端 / 测试

产品:
  1. 针对产品需求,如大幅度影响性能,用户体验,需求实现耗时长,不符合正常操作逻辑的,后续会被优化掉的
  2. 一个是:提供不同且同样能达到产品所需要的效果的方式
  3. 另一个是:如果产品需求不变更,需决策通过
  4. 主要是在产品需求评审或提出需求时,给出自己的判断与分析,突出主见性,实际工作中协调不会太难
  5. 主要明确:给出意见,按决策通过的需求进行开发
后端:
  1. 在任务排期后与后端沟通,明确后端接口文档给出时间,有关于接口面的开发,可以自行mock或者等待文档
  2. 请求:请求参数,请求地址,请求方式严格按照接口文档需求执行开发
  3. 响应:后端返回的字典数据应该根据前端定义的传值类型响应对应格式,主体数据接收无值时默认值应对应字段属性默认的值类型
  4. 响应状态码的统一,后端多人协作开发时,一部分相同作用的响应状态码,应该统一
  5. 有关于前端定义规范及后端接收,主要明确观点,调用接口严格按照接口文档传递参数
  6. 调用接口地址,返回数据格式,按照前端定义的数据规范来返回(不能由后端自由返回数据格式,会造成不必要且耗时的麻烦)
  7. 联调:多场景/不同参数,如请求参数:[空参,单一参数,多个参数,无属性参数,全部参数]等等
测试:
  1. 自测:自测过程中,针对原型图需求逻辑核对,尝试不同场景下是否可能出现问题
  2. 测试:测试问题的回归,修复问题后,通知测试,协调后发布测试环境进行回归

二、git:

  1. 分支创建:按分支创建规范进行创建,如无则询问相关负责人
  2. 分支开发:每日提交代码,[修复问题,使用自身分支,确认修复完成后,再合并到测试分支]
  3. 分支合并:注意每个冲突点,检查相应文件

三、日报/周报:

  1. 列举实际工作事项,注意分点分面,但不要过大,不用细致到具体怎么开发的这种程度

四、排期:

  1. 产品评审后,给出任务排期时间,一般针对于完成评审内容所需代码开发时间,正常工作中排期的定义遵循两点
  2. 不超过后端给出的提测/联调时间
  3. 根据个人实际开发能力,适当放宽一到两个工作日的工时

五、VPN:

  1. 线上办公网络,用于连接公司内网进行远程办公,安装公司制定软件,并按照说明使用公司账号连接网络

六、项目开发跟踪:

  1. 建立项目跟踪文档,对现有,已开发,未开发等项目进行统一整理跟踪
  2. 目录:项目名,上线时间,项目状态,开发人员,后端开发人员,开发时间,产品功能点,实际上线功能点,提测时间,测试人员,产品,项目链接(原型图,接口文档,PED),项目分支

七、上线:

  1. 上线前材料整理:代码合并,功能回归
  2. 上线功能点及上线影响
  3. 上线邮件通知相关人员
  4. 上线后功能回归:就新功能及原有功能回归
  5. 若上线后,生产环境出现自身负责面问题,及时提出,解决问题

八、工作任务统计:

  1. 工作管理系统 --- 禅道
  2. 产品建立需求链接,根据需求链接创建项目,在项目链接下拆分创建任务
  3. 测试问题:当天问题,当天解决
  4. 打卡,交流工具:钉钉

推荐阅读