互联网架构产品大前端开发

02-架构师的视图和视角

2023-02-22  本文已影响0人  玄德公笔记

1. 架构师的视图

image.png

1.1 上下文视图

1.1.1 概念

上下文视图总结我们所设计的架构背后究竟是怎么样的一个系统,包括系统本身、外部实体和相关接口。

1.1.2 示例

image.png

1.2 功能视图

1.2.1概述

描述系统运行时功能元素及其职责、接口和交互关系。

功能视图和上下文视图有一定的重合之处,但功能视图脱离环境,描述的是系统组件定义及各个组件之间的交互关系而不是业务场景分析.

1.2.2 示例

image.png

1.3 数据视图

1.3.1 概念

数据视图描述系统存储、操作、管理和分发数据的方式,是系统中核心业务数据的一种载体和表现形式。

1.3.2 数据视图对数据的处理

数据视图对数据的处理包括几个主要方面:

数据结构作为表示数据的元数据,是系统内部最核心的数据模型。

为了能够在系统内部各模块及与外部系统之间进行有效交互和集成

1.3.3 数据架构建模

1.3.4 示例

1.4 开发视图

架构设计中面向技术的核心视图

1.4.1 示例

下图是一个 涉及用户和商品管理的电商系统中所展示出来的模块结构图,采用了UML中的包图作为特定展示媒介。


image.png

1.5 部署视图

1.5.1 概念

部署视图描述系统部署的环境及系统与其中元素的依赖关系。

3.5.2 示例

image.png

2. 架构师视角

2.1 安全性视角

2.1.1 安全性要求

安全性体现的是控制、监控和审计对资源的访问性和执行能力,以及从安全漏洞中恢复的能力。

2.1.2 安全性设计方案

就是根据不同的访问主体对不同的资源进行精细化控制。包含建立完善的用户权限管理系统并提供相应安全策略。

  • 资源(Resource):需要进行安全性控制的内容
  • 访问主体(Subject): 能访问资源的人或系统称为

找到安全性切入点,架构设计上就可以对症下药。对用户进行身份认证(Authentication)、授权(Authorization)访问、通过加密解密等确保信息保密性和完整性、提供类似单点登录(Single Sign On,SSO)的安全性管理平台、使用第三方安全性基础框架等都是安全性架构设计的常见手段。

2.2 性能视角

2.2.1 性能要求

系统在其指定的性能状况下、预期增长中的处理能力。如:

2.3.2 性能问题的设计方案

2.3 可用性视角

2.3.1 可用性要求

系统在需要时能够完整地提供服务,并有效处理影响系统可用性故障的能力。

2.3.2 可用性的设计方案

2.4 可扩展性视角

2.4.1 可扩展性要求

系统在经历不可避免地变更时足够灵活。

2.4.2 重要程度

2.4.3 切入点

把部分业务在进入开发流程之前进行梳理,以避免不需要变化的引入。

3. 视图、视角

3.1 视图和视角的关系

安全性 性能 可用性 可扩展性
上下文视图
功能视图 关系不大 密切
数据视图 关系不大 密切
开发视图 关系不大 密切
部署视图 影响巨大 影响巨大 影响巨大

3.2 视图视角到架构描述

架构视图和架构视角垂直构成完整架构描述。

我们可以在明确架构视图的前提下,往各个架构视图中添加架构视角,使视图和视角在完成各自目标的同时能够紧密整合。

下图展示视图视角与系统工程之间的关系。

视图关联视角,两者构成了架构描述的一部分;同时视图从业务需求角度,视角从质量需求角度解决了干系人所提出的各种关注点。这些关注点实际上就是需要架构师去捕获的架构设计的输入。

image.png
上一篇下一篇

猜你喜欢

热点阅读