愧于鄙人水平有限,未能带给更多东西,感谢各位新同事的包容和支持。同时感恩全力帮助、给予指导的同事,让我在这个过程中收益良多。
课题目标
熟悉研发工作流程,了解技术栈,锻炼团队沟通协作能力、培养质量意识和养成好的工作习惯,学生->职场人。
课题设计
智能的Web UI遍历AutoTest
App端产品进行页面遍历,一方面验证产品的稳定性,一方面验证在Android和iOS各版本的兼容性,开源有AppCrawler(和Monkey关注点不一样)。而Web端的UI遍历,一方面验证多浏览器不同渲染引擎下页面的兼容性,一方面疲劳、响应时间、稳定进行验证分析。基于统一的ElementUI框架,解决方案是利用元素定位和页面图像识别来做,扩展性于元素定位,同时页面切割,可作为深度学习语料。项目质量风险预警
收集项目相关信息(特征、项目标签)预测项目的质量风险。建立需求分析-项目设计-项目代码度量-测试案例-测试问题-测试覆盖率的项目质量模型,评价该模型通过功能点缺陷密度,生产问题数。
*3.供应链金融业务
供应链金融产品管理和项目方案管理的实现,难点是业务复杂,功能间关联大。
*4.对公服务平台
搭建对公服务平台的基础中心和审批中心其中的几个模块,基础中心搭建提供短信设置,配置化开发批量文件处理,审批中心做基于工作流的审批。
课题过程
思路:工欲善其事,必先利其器。不重复做轮子,取开源之精华服务业务。
原型设计
需求分析,拆解功能,利用原型设计工具比如axure 和 sketch做出功能页面,指导详细设计和业务讨论,合理,易用性高的页面可以转化为前端代码(参考Ui2Code)。同时,按照ATDD的模式,准备系统验收案例。
详细设计
根据需求分析和原型图,做功能、接口、数据表等设计,合理且扩展性的设计不是一蹴而就,需要打磨,多想多看多改多写多实现。始终要求写出每一功能的测试关注点,甚至写出UTDD的案例。除了设计做什么,怎样做,还要考虑怎样用,怎样验证。
同时,设计时学习业内同类优秀产品,如批处理Spring Batch(学习SpringBatch提供了许多可重用的功能:日志跟踪、事务管理、任务处理统计、任务重启、跳过与资源管理等),如审批中心工作流BPMN和YAWL(支持45种工作流Patterns)
代码规范
遵循代码规范外,借鉴SonarlLint和eslint 的规则,同时可学习PMD编写自己业务特殊的代码规则,强调编写业务功能代码同时编写测试代码。
质量守护
一方面用测试覆盖率反馈项目质量和代码设计,一方面用Puppteer做UI AutoTest和自研工具API AutoTest,在UI层和Service层做TDD,一方面学会用EasyMock辅助研发,一方面用电子看板和实体看板结合做项目进度跟踪。
汇报设计
A. 讲解的逻辑(业务价值、业务痛点、描述问题 -> 技术方案->实现安排->效果)
B. 项目研发的工作流、以项目周期角度的展示(工作计划性、代码规范性、质量可度量性、运维部署)
C. 亮点演示
PS:After Effect能做出很炫的视频