开发测试规范
文档一定要反复查看,特别是发给第三方的文档,哪怕不是你写的,否则后面对接的人每个都问你一遍累个半死。
代码一定要按照文档上的来,每个字段都要和代码仔细查验,不能多不能少,实体类最好新建,每个字段属性和文档保持一致
修改的代码最好要在测试环境测试一下,让测试人员确认通过之后,增量更新代码,改了那些文件就更新那些文件,每个环境不一样,哪怕是同样的程序,同样的库,同样的静态文件,也会出现不一样的问题。
代码一定要规范,不要急,之前我是偷懒以为没人查看代码,随意写,命名不规范这种低级错误哪怕知道,也懒的去改,导致代码评审的时候尴尬的一批,幸亏脸皮足够厚。
能推的工作一定要推,不是你负责的工作如果接了,后面所有人都会找你干,并且接了活要让你的直属领导知道,否则你的直属领导给你排活,其他人也给你排活,累个半死还不讨好。
现场出现问题,让测试人员不要把问题发到群里就不管了,让现场人员写到文档里,@具体人员,单发给他,如果消息未读,打电话给他,打不通直接找他上级领导。
懂得拒绝,学会拒绝,你身边95%的人都可以拒绝他的要求,即使他是你的领导。
由领导组统一安排下周的工作任务(任务同时安排到组和人),任务必须在要求时间内完成。切记!此处的完成指的是最终测试通过,而不是只是开发完成!任务进行中有任何延误的可能请立即提出,加强沟通!加强沟通!加强沟通!开发完成第一时间通知测试组进行测试,测试完全通过该任务才算完成。
项目初期开发
产品需求确定留底,UI图给出
功能设计一定要画流程图
数据库设计一定要给ER图
接口规则一定要提前规范好,避免出现后端接口返回结果出现不相同的情况
数据库定时备份,服务器镜像备份,文件恢复工具与备份
服务器安全方面需要注意,网络安全,密码复杂度,不使用默认端口,防火墙开启,安全组限制ip和端口等等。
自动化部署流程要尽早打通
项目架构
- 根据开发参与的人数设计架构,贴合实际情况,以快速迭代开发为主
- 架构需要使用那些技术流程图(使用技术,部署方式等)
- 架构通用部分尽早抽离出来
- 架构需要具备多人同时开发互不影响的特性,尽量减少耦合度
- 对于架构升级,需要根据实际情况一点点迁移代码,升级框架,不能影响主流程开发
任务分配
- 由开发组长先过一遍,给到开发估算时间,给出一个合理的开发区间
- 根据开发同学的技术栈,工作经验,结合实际情况分配工作任务
- 对于超出开发时间的部分,突发情况,需要列举影响开发的原因,进行归档
人员管理
人员招收优先级
- 技术能力
- 项目经验
- 沟通协助能力
- 项目推动能力
团队leader
- 推动和把控项目进度
- 负责项目协调沟通
- 帮助开发同学解决卡住的问题
- 对项目文档进行调整归纳
- 把控项目代码质量
- 把控项目风险
- 产品需求,业务逻辑,功能实现落地
- 数据库结构把控
项目交接方案
- 开始交接时,进行电脑录屏(视频记录),给一个留底,方便后期人员快速接入以及资料留存。
避免后期的同学反复问,也可以根据视频进行责任划分
- 交接开始制定并且记录交接的流程(文档记录),比如:数据库字段关系,代码实现,业务逻辑图,项目部署,环境配置,对接第三方,文档归纳说明等。
- 交接手册:记录后期接入人员需要查看的流程文件或者视频,比如第一步看什么文档或者视频,第二步看什么等等。
数据库字段关系(文档资料):给全数据库的ER图,标明库,表,字段意思,关联关系。
代码实现(视频讲解):对核心功能以及常用的功能进行代码实现讲解演示,从功能的业务逻辑开始,到代码实现,使用的表字段,第三方组件的基础使用,给一个详细的讲解。
业务逻辑图(流程图加视频讲解):对项目总体的业务逻辑能有一个概括,可以一眼清晰看出业务的逻辑。对于细分的功能模块也能有独立的流程图。针对流程图,能有一个基础的讲解,可以和后期的同学快速过一遍。
项目部署(以文档为主,视频讲解为辅):接着之前项目部署的流程,每个环境配置(服务器,中间件,缓存,数据库等等),后期如果不按照之前的部署流程需要调整那些,注意事项。
对接第三方(视频加文档):针对第三方的组件或者产品,使用流程,集成到项目中的那个地方,部署方式,需要负责的工作有哪些,注意事项,突发情况可以咨询谁去解决。
文档归纳(对每个文档有一个简单的说明):给到一个文档说明,标明每个文档具体描述的是啥
- 交接工作开始之后,在不了解其他团队实际情况下,不要将个人情绪带入工作,保持良好的职业素养。
每个团队都有自己的工作流程,以及突发情况,不要以自己的主观轻易的下结论,判断后期的同学怎么怎么样,然后携带个人情绪到交接中,这样不利于工作的开展,有消极影响。
- 交接过程中出现问题,不要急于进行责任划分,以解决实际问题为主,责任划分交由管理层去决断。
交接流程中出现了问题,别着急撇开责任,对于【这个跟我们团队没关系】这种言论和【刷锅】的思想尽量去除,以高效解决实际问题为主。
交接过程中对于被提问方,尽量保持高效反馈,不要拖,也不要以猜字谜式的回复进行反馈,一切以快速解决实际问题为主。
对于提问方优先列举问题发生的场景,遇到的问题,错误信息,问题整理以文档列出,节约沟通成本。有问题需要及时提出,别出现卡住不问,等开会的时候再曝出问题,拖项目进度的问题。
对于被提问方尽量及时响应,别拖,也别像教学引导式的回答问题,对于后期同学理解偏差的问题,调整表达方式,以解决问题为主。
- 清库脚本
对于交接过来的数据库会存在垃圾数据的情况,需要提供清库脚本并且执行清库脚本不用影响项目正常运行。