项目流程规范
- 拿到一个项目直接开始撸,极其容易出现便写边改,边写边完善的情况,研发过程及其痛苦,效率低下,bug多,推到重写都是可能的。
- 那么怎么提高效率与质量呢?这时候规范的流程就显得很重要了。
需求分析
- 将需求分类,提炼大纲。
- 将需求合理排期,其中的因素有,难度,时间,优先级等。
- 需求版本化,把功能一个版本一个版本计划安排,后期更新迭代。
- 安排需求文档,项目越复杂,文档越详细。
原型/设计
- 根据需求画原型图,把需求文档的描述画进原型,标注绝对详细,在复杂项目里面,边做边问,效率是很低的。
- 按照原型图画设计稿,设计产品样式,和交互,提升用户体验,多页面边距、背景色等需要风格统一,即使设计,figma等,推荐figma,可以统一css变量等。
- 复杂项目需要画流程图,项目架构图,方便研发设计程序架构。
- 设计图一定一定要先敲定具体风格。
开发前准备
- 技术选型。根据需求进行技术调研,选择合适的技术和开源库。
- 编写开发文档,特别是在需求文档和原型不够详细或者没有的时候,显得尤其的重要。根据需求理好大纲,细化细节,甚至可以细化到什么模块用什么范式编写,业务流程理应是需求文档里进行描述的,在开发文档里同样可以进行记录,在理好业务需求后,再按照理文档写需求可以避免很多麻烦。
- 项目画程序架构图,设计整个项目的架构。
开发
- 开发需要思维多走两步,尽可能的全一点。
- 开发的时候先想组件怎么设计,再写代码,保持良好的编码习惯,比如规范的命名,遵循官方/团队代码规范,避免屎山代码。
- 开发过程中,写完一个功能/模块,进行简单的自测,保证功能正常。
开发后
- 测试是保证项目质量很关键的一环。测试先准备简略的测试用例,在几百条左右,开发在开发的过程中和开发后可进行自测,保证主流程的通畅。
- 测试需要对项目业务的绝对熟悉,编写详细的测试用例,大概在2到3千条或者更多,测试用例需要评审,和项目深度吻合,测试用例可以多个项目使用。
- 测试需要考虑边界问题,比如用户名,密码的验证,前后端都需要,弱网环境的表现,项目的同时在线人数等,编写测试脚本进行压力测试。
- ui还原度检查,包括风格,交互,间距等,需像素级还原。
- 禅道一类的工具用起来,方便管理项目bug,进行bug回归。
最后
- 在项目进行一轮自测后,流程已经通畅了,到测试手里按照测试用例压测2到3轮下来,交到领导/用户手里是不太可能会有多少bug的。在项目进行交付后,收集用户反馈,进行需求收集,安排到下一次迭代里,大需求需要进行大版本更新的这个流程可以再走一边。
- 项目同类型的比较多的,大多数的文档设计图等都可以复用,只需要根据业务改变需求即可,但是一定要认真审查确认。
- 可建立公共的组件库,工具库,制定开发规范文档。
- 制定开发工程模板(需配置eslint,commitlint等辅助提高代码质量)。
- 可定期分析技术,部署内部技术分享帖等。
- 对项目进行自动化部署,对流程控制。
- 全栈学习,运维,前后端等技术都可以学习,新技术可以学习和关注。