架构

126 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第5天

1 架构定义

架构,在汉语词典里的意思是:

人们对一个结构内的元素及元素间关系的一种主观映射的产物。

由此可见,万物皆可谈架构。不管是软件、飞机还是建筑,只要人们主观地对其进行分解和组装,就已经运用了架构的概念。

实际上,架构起源于建筑领域。充满智慧的古代劳动人民将复杂的建筑按其特点分解为一个个具有共性的结构构

2 架构本质

架构的本质是关注点分离。

这种系统思维方法可以追溯到柏拉图时期,与“庖丁解牛”思路相近。具体做法是先将复杂问题做合理的分解,将问题的各个关注点分而治之,再进行组合,最终形成整体的解决方案。

软件架构设计应该按照其业务特点来将软件本身划分成不同的部分,将变化点错落有致地封装到软件系统的不同部分,从而降低耦合性。这样即使面对变化,也能清晰地识别变化点,将影响最小化。

3 架构视图 3.1 企业架构

架构视图五花八门,但是是分层的,目前常见的是从企业架构说起。企业架构处于战略层面,是架构的最顶层,自顶向下能更简洁明了地看清各种架构视图间的层次关系。

企业架构(Enterprise Architecture,EA),是基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行和管理信息系统。将跨企业的、常为零散的那些遗留流程优化进一个集成的环境,及时响应变更并有效的支持业务战略的交付,辅助企业完成业务及IT战略规划。

主要的企业架构框架为Zachman、EAP、TOGAF、FEA、DoDAF这五种其中,最主流的是 TOGAF(开放组体系结构框架)。从TOGAF中,我们能看到再熟悉不过的业务架构、系统架构。