魔镜工作随笔一
为什么我一点都进入不到工作的状态中,一个任务拖了太久我就不愿意继续做下去了,很多个这样的任务累计下来,导致我的负担越来越重,心态越来越焦虑。如何才能打破这种困局呢?
问题的答案也很清楚,首先从需求方面就需要先规划好每隔任务的细节,只有需求清晰了,代码才好弄。根源是建立一个规范的软件开发的完整流程,不能这样想一步是一步,从需求->开发->测试->部署交付,这些步骤都需要捋一遍。麻雀虽然小,五脏俱全,那就由我来建立我们公司的开发规范!
一、需求
第一步、一个需求任务下来先整理成文字或图片,写一篇需求说明文档,格式先不固定,主旨在于尽可能详细的描述清楚客户的真实需要。
第二步、根据需求说明文档,使用Axure画一个模型图,模拟出程序的界面,点击按钮如何跳转,表单录入信息填写哪些字段等,这一步用意是将抽象的需求说明文档进行具象化,为下一步代码编写明确目标,是非常重要的一步。如果客户的需求是不需要界面的(只提供后端接口),那就不需要画模型图,在需求说明文档里面画一个逻辑图,描述出接口的输入 ->输出,不同条件时的逻辑走向。
第三步、完成需求说明文档、模型图以后,需要发给客户进行确认,是不是客户需要的这个样子,如果有修改再进行修改。这一步也非常重要,但是如果是一些改动小,任务明确的需求就可以省略这一步吧。
第四步、估算开发需要的时间、人手(阅读书籍《人月神话》),分配开发任务。
二、开发
拿到需求文档、模型图后,就可以开始进行开发。开发步骤大致如下:先建立数据库字段、生成后端代码、生成前端代码、调试。秉承先易后难的原则,先将简单的功能开发,再进行难点的研究。代码编写规范按照阿里巴巴开发规范,可以用插件进行排查。
三、测试
测试是一直没有规范的一个步骤。测试主要分为,单元测试、交叉测试(给另一个同事测试)、压力测试(这一步需要吗?)、编写测试用例(怎么写?)、给客户测试(需求明确的任务就不用)。当检查到bug的时候,在gitee对应的项目中提交对应的bug单,bug修复后再测试一次即可。(回归测试是什么?)
四、部署上线
全部项目使用jenkins自动部署,测试服务器环境需要与正式系统相同,正式环境部署后如果进行了测试,测试完需要立即删除测试数据,上线后通知客户系统功能已上线,将需求说明文档、模型图、代码进行存档。至此完成一个任务的全部流程。
完成开发任务后,需要进行归纳总结才能不断学习进步。因此需要定时安排codeReview会议。希望通过建立开发规范,学习到更多、任务完成得更好,摆脱心里的焦虑。
ps:今天面试了一个前端人员,她听到我们的人员配置后也很惊讶(不画原型图、没有UI、没有测试),这更加坚定了我完善整个流程的决心。
2023.07.31
魔镜