为什么开发工程师要架构图

用户头像
Bear在挨踢
关注
发布于: 2020 年 09 月 20 日
为什么开发工程师要架构图

【架构师训练营第一期第01周】

学习总结



架构师训练营第1周,老师讲解了UML对架构师的作用和重要性。在工作中,UML图不但可以向上级和其他部门直观展示系统设计,更可以给团队梳理系统架构逻辑,开发同学可以根据UML图进行具体的开发,提升研发效率,工时评估更加准确。

这时候有些同学会发出疑问,这是在传统大型系统开始的时候才会做的吧?现在流行的敏捷式开发团队,一般都不用画UML图,直接按原型开发就可以了。而且感觉这是架构师写报告用的,不是一线开发需要的管的。实际上架构图是一线开发人员自我提升的一种修炼途径。

从职业发展来讲,大部分一线开发工程师的下一个职业目标就是架构师,所以为了长远的职业发展,还是要多跟着架构师学画UML图的技能。当你协助架构师画更多的UML图,更容易获得认同,特别是当你的架构图符合架构师的设计,就更容易承担核心模块的开发设计工作,更容易升职加薪。

从技术提升来讲,很多开发同学看着原型图需求文档,看着数据库就开始开发了。这样开发出来的系统,万一出了问题需要你去排查,过了一段时间代码逻辑就忘了。故障时找同事或者架构师请教,需要讲解之前做的开发思路,最终一起看源码才能梳理逻辑,排查问题。试想一下,如果在开发前就做好设计,画好UML图,开发思路会顺畅很多,降低出问题的概率。上线后如果出问题,也可以把UML图找出来,直观地展示系统架构,让架构师可以更快帮你定位问题。相信我,即使你有rapper的语速,也不会不想在系统故障压力山大的时候,再来讲解一大堆系统逻辑。

当然,很多开发同学会遇到类似的困境,敏捷项目进行需求评估后,要尽快进行工时评估,项目经理和产品经理根据评估得到的工时,砍掉一些超出工时的需求,确定MVP范围。开发马上开工,然后按时间点进行联调,交付测试,最终上线。一般来说给开发评估工时的时间并不会很长,根本不可能把各种UML图画完。而进入开发阶段,原本就要加班撸代码的开发同学根本提不起画图的精神。而且UML说明定义并不是很明确,有些情况开发很难清晰展示系统逻辑,所以开发抵触心理更强。因此,在实际实践中不一定要完全按规范要求来,只要团队内部达成共识,可以简化UML,只要能清晰明白展示系统架构就可以。

同时一线开发想要团队内脱颖而出,必须付出更多,提升自驱力。对于历史代码的可以先画部署图,当接到新需求时,再根据历史代码画时序图,然后根据新需添加新的设计。同时记得保存好源文件,这样下次有新的需求就可以直接在源文件上修改设计,一直沿用。另外,很多博客、公众号上大神画的架构方案也是我们学习的榜样,可以多看开阔视野。读书百遍,其义自见。

以上都是我作为一线开发的真实感受,欢迎大家指正。



发布于: 2020 年 09 月 20 日 阅读数: 24
用户头像

Bear在挨踢

关注

还未添加个人签名 2019.02.16 加入

还未添加个人简介

评论

发布
暂无评论
为什么开发工程师要架构图