平台架构设计是什么意思(架构的意思解释)

架构设计是一个大家耳熟能详的词,基本都烂大街了。

可是,到底什么是架构设计呢?估计很多人就回答不上来了。

下面就来详细聊聊什么是架构设计,以及对架构设计的一些基本认识。

一:什么是架构设计

软件架构设计指的是:对一个软件系统进行的架构定义、文档编写、维护和改进、并验证实现的一系列活动,架构设计的产物就是一个系统的架构。

架构设计实际上是一个过程,围绕着软件系统,对它的架构,进行定义、文档编写、维护和改进、并验证实现等,把这一系列活动组合起来,就是我们所说的架构设计。

架构设计的产物,也就是结果,就是架构,这也是架构和架构设计的关系。

3a76b99fcb6f4da7ba147d87c2f7e40fnoop.image_

二:对架构设计的基本认识

(一)架构设计是一门尚不够成熟的科学

架构设计是一门科学,这个已经是业界共识。但是作为一门科学来讲,它一定要有它自己的基础理论,基础方法,也会有一些实现的方法论。

架构设计作为一门科学来说,还很不成熟。目前架构设计的基础理论还不是很完善,方法论上,更是百花齐放,大家都还处于一个探索的阶段。

从科学上来讲,架构设计主要关注架构设计过程当中的:技术、流程、资源、方法;以及如何去完善并改进架构。

(二)架构设计是一门艺术,需要一定的创造力

刚讲到架构设计这门科学还很不成熟,再加上技术领域更新很快,新技术、新思想、新方法 层出不穷。

我们总会面对很多新兴的、没有先例的系统,可能会应用新的框架、新的技术、新的解决方案来实现系统。

因此,做架构设计的时候,是需要一定的创造力的。当然,艺术细胞缺乏的人员也不用太担心,架构设计上还是有很多是有章可循的,多半是在已有的架构体系上去做一些微调,微创新,并不是完全从零开始。

(三)架构设计是一系列的活动,是不断演化和完善的过程

架构设计不是一蹴而就的,通常也是由粗到精,刚开始,可能只有一个粗略的架构设计,然后不断迭代和演化,逐步推进,去完善和细化,这样的过程。

(四)架构设计跨越软工的全流程

这个可能有些人不太理解,认为说,软功过程里面,不是有专门的概要设计、详细设计的时间吗?架构设计不就是在这些设计阶段去完成的吗?做完设计了,把文档发下去,不就没事了吗?

有些公司也是这么干的,实际上这是有问题的。

架构设计会跨越软工的完整流程,对于一些大型的或者是重要的项目,可能立项期间,架构师就要参与,做一些粗略的架构规划,有两个基本的原因:

1:能不能做得了这件事

2:按照粗略的架构规划做下去,大致的成本会有多大

立项的时候,就要去考虑你的成本,风险和投资收益。

也就是说,立项的时候,架构师可能就需要参与,那就更不用说需求阶段、设计阶段了,架构师是肯定要参与的,前面讲需求分析的时候已经讲过了,这里就不多啰嗦。

到了编码阶段,有些人可能认为架构师是不参与的,这是不对的。架构师需要参与,只是参与的少一些,主要是一些重点、难点的地方,或者是公共基础功能,由架构师来实现。

另外在编码阶段,架构师还有一个重要的任务,就是确保开发人员按照架构设计去实现,不要乱做。这就需要两个基本的方式,一个是架构师要把架构设计的成果,跟开发人员讲解清楚,并不断沟通;另外一个就是要不断检查,Review,以确保架构设计的落地实现不出大的偏差。

后面的测试、部署、运维等阶段,架构师要做一些技术咨询,或者是技术指导的工作。架构设计里面,本来就包含部署架构的设计,因此,架构师也会参与这些阶段,只是参与的少一些。

总之,架构设计需要关注所有利益相关者的要求,参与系统设计实现的所有人员,也都是系统的利益相关者,自然而然的,架构设计就需要贯穿软工的整个流程了。

2530167f39bb4b17a7631eba0e1aa934noop.image_

(五)架构设计需要不断的决策、不断进行折中平衡

一个系统,要关注的方方面面是很多的,利益相关者也很多,大家关注点各有不同。

这就意味着,在做架构设计的时候,需要不断去做决策,在众多关注点中去寻求平衡,所以有人说,做架构设计,就是一种玩平衡的艺术。

比如:从技术上讲,A+B的方式是性能最高的;但是从成本上来看,A+C是最合适的。可能最后综合权衡后,B+C是各方都能接受的方案。

这种需要考虑的平衡很多,比如:技术和成本的平衡;方案适用性年限的平衡,是满足1-3年就够了,还是要考虑8-10年;技术方案和当前开发人员技能的平衡;性能和成本的平衡等等,非常多。

(六)架构设计是系统利益相关者的共识

架构设计是一个过程,需要在这个过程中,不断去考虑各利益相关者的要求,并不断折中平衡,因此架构设计的产物,也就是架构,自然就是各方利益相关者的共识了。

(七)架构设计承认经验的复用

要做出好的架构设计,经验是不可或缺的,不会每次都是从零开始。

比如以前做过类似的系统;或者是学习到的一些好的架构模式,设计模式,一些现成的组件;或者是一些开源的框架等等的,这些我们都可以看成是可重用的资源。

我们做架构设计的时候,需要不断去积累这样子的可重用资源,形成自己的工具箱。这样当我们在做一个系统的架构设计的时候,就有了很多备用的工具或手段。

有了这些经验和资源的积累,会使得新系统的架构设计变得更容易。

到这里,什么是架构设计,应该算是聊清楚了。

你怎么理解架构设计呢,欢迎评论留言或者私信,大家一起探讨,一起进步!

如果你觉得本系列文章还不错,能够给你一些启发和思考的话,请关注、点赞、收藏加转发,让更多的朋友加入到我们的行列,谢谢啦!

更多架构师之路干货文章,已在路上,稍后就到!

本文内容来自网友供稿,文章观点仅代表作者本人,本站非盈利且无偿提供信息存储空间服务,不拥有所有权,如有文章有不实信息或侵犯了您的权益,请发送邮件至 cfseo1997@163.com 反馈核实,如需转载请注明出处:https://www.taobobolive.com/261967.html

(0)
上一篇 2023年6月13日 14:15:52
下一篇 2023年6月13日 14:19:02

相关推荐