架构视点和架构视角

作者简介

Gavin,程序员、软件架构师、企业架构师,关注智能制造。

本文是专栏《智能制造系统架构》中的文章,其它文章请参阅入坑智能制造系统架构。

架构视点(Architectual Viewpoint)

因为系统架构往往复杂并且多维度的,所以很难在一次性将所有的架构信息完整描述出来。所以架构描述往往会根据目标选择不同关注点描述系统的架构信息,这些架构信息一般是通过架构视图描述出来的。而架构视点就是定义一张架构视图应该包含哪些内容。

视点就是一组用于创建视图的模式、模板和规范。它定义了多种利益相关者,他们的关注点会反映在构建视图所用的视点以及指南、原则和模板模型中。

因此,在实际操作中架构师定义的一些架构视图模板实际就是视点,例如著名的4+1视图。

通过架构视点需要定义架构视图的如下内容:

  • 视图范围:你试图体现出架构的哪些结构内容?
  • 元素类型:你试图对哪些类型的架构元素进行分类?
  • 受众:视图要展示给哪些利益相关者?
  • 受众的专业技能:这些利益相关者对技术的理解程度如何?
  • 关注点的范围:视图想要说明的是哪些利益相关者的关注点?利益相关者对于这些关注点的架构情境和背景了解多少?
  • 细节等级:这些利益相关者需要对架构的这个方面了解多少?对于用户之类的非技术利益相关者,应该对技术细节了解多少?

架构视角 (Architectual Perspective)

通过视点定义的架构视图可以展现系统的结构信息。但视点有一个局限性,是它无法定义系统的质量信息。比如通过视点,可以定义模板描述系统的逻辑架构、过程架构、开发架构、部署架构,但无法通过视点整体描述系统对性能、可靠性、安全性等质量属性的要求。因为这些质量属性是贯穿所有架构视图之中的。因此,需要另外一个维度来描述这些质量属性,这就是架构视角。

架构视角是一组架构活动、手段和指导,用于确保系统展现特定系列的相关质量属性,而这些属性需要跨多个系统的架构视图来考虑。

架构视角的定义包括:

  • 适用性 : 说明应用视角会对哪些视图产生影响。
  • 关注点 : 定义视角所要实现的质量属性。
  • 活动 :说明向视图应用视角的步骤:识别重要的质量属性,根据这些属性分析视图,然后做出架构设计的决定来修改和改善视图。
  • 架构策略 : 识别并描述对于实现质量属性来说最重要的策略。
  • 问题和缺陷 : 说明最容易出错的地方,并指导如何发现并避免这些问题。
  • 检查列表 : 提供一个问题列表,帮助你确保已经解决了最重要的关注点,已经考虑了最合适的策略,并且避免了最常见的问题。

 

参考资料

  • Software Systems Architecture, 2nd. 中文版 《软件系统架构》
  • https://www.cnblogs.com/zscyun/archive/2013/04/25/3042144.html
  • https://www.cs.ubc.ca/~gregor/teaching/papers/4+1view-architecture.pdf

你可能感兴趣的:(智能制造系统架构,软件架构)