一、需求分析阶段
1,所有开发人员包括:产品经理,UI设计,前端开发,客户端开发,后端以及测试
2,首先是项目需求分析阶段,产品经理喊所有人开会,讨论项目
3,前端开发人员和产品经理讨论需求的背景,以及需求的合理性(包括性能、意义),需求是否闭环(比如微信分享,点开内容后,还能返回到微信app中),开发难度(需求与开发成本折中),是否需要其他人的支持(比如需要客户端支持,不及时提出会导致人家排期满了,到时候要不到人),不要急于在会上排期(要结合整个部门对你工作上的安排)
二、技术方案设计
1,用最简单就能实现的方法,不要过度设计(比如使用新技术等,除非该技术能简化流程,节省人力),比如vue-router没有特殊要求直接用hash路由而不是history
2,产出文档,文档里要把设计流程体现出来,甚至是部分伪代码。在写文档的过程中,一些开发的问题就会暴露出来,比直接带着问题开发更高效。而且时间久了,文档可以帮助你快速回忆该项目的内容
3,找准设计的重点,包括数据结构设计,组件层次设计以及和其他角色的对接,比如和后端交互的接口文档(接口类型post,get,输入输出)
4,组内评审,找比你厉害的人看你的设计方案,他们能评估出方案是否合理(性能、扩展性、安全隐患等),他们还更清除公司里有哪些相关的工具能帮助你简化开发流程
5,和客户端,后端等沟通(留一个证据,是三方评审过的,便于出问题了甩锅)
三,开发
1,如何反馈排期:多预留几天(大约1/4时间),考虑自己的并行工作,考虑好协助人排期(或者留一个工作量)
2,符合开发规范:git,git分支,commit规范、模块命名规范,注释规范
3,写出开发文档:比如自己写的某些接口会被别人使用,那么开发的时候要写开发文档
4,要写模块的单元测试
5,mock API:如果后端数据没有准备好,需要自己造假数据,可以使用webpack的proxy代理去做,或者mockJS工具
6,code review:让资历高的人,帮助review一下是否包含安全隐患
四,联调
1,和后端,客户端进行技术联调
2,找UI确定视觉效果
3,找产品经理确定产品功能
4,假如产品经理加需求怎么办?不能拒绝,需要走需求变更流程。如果公司没有这个流程,那就需要发起项目组和领导的评审,重新评估排期,甩锅。
五,测试
1,测试问题要详细记录(表格啥的),不能乱七八糟的一个一个提。
2,有问题要及时沟通(保证进度),可以当面复现这个问题,如果需要提供特定的设备,让QA提供。
六,上线
1,上线通知QA测试,同步给PM
2,上线出bug了,要先解决这个bug,保证线上用户使用没问题,然后再花时间去排查问题
重要提示
1.沟通(建议每日一沟通):汇报一下一天的进度和明天的计划