ISO-IEC-IEEE 42010架构规范

4 概念基础

4.1 介绍

本条款介绍了架构说明的概念基础,包括架构说明的概念模型(见 4.2);架构在生命周期中的角色(见 4.3);架构说明的使用(见 4.4);架构框架和架构说明语言(见 4.5)。本条款介绍的概念在第 5 章至第 7 章中用于表达相关的需求。

【注】附录 A 提供了对本国际标准中使用的术语和概念的进一步讨论,并提供了它们的使用示例。

4.2 架构说明的概念模型

4.2.1 架构说明的上下文

图 1 描绘了与系统及其架构相关的关键概念、理解架构说明实践的上下文。

本国际标准中使用的术语系统(system)是指某个实体,架构是它的利益。该术语旨在包含但

不限于、以下领域中的实体:

-- 在ISO/IEC 15288中,系统(systems)描述为:"系统是人工制造的,可由在此列出的一个或多个事物构成:硬件、软件、数据、人、过程(例如为用户提供服务的过程)、规程(例如操作指令)、设施、材料和自然发生的实体";

-- 在ISO/IEC 12207中描述为软件产品和服务(software products and services);

-- 在IEEE Std 1471: 2000中描述为软件密集型系统(software-intensive systems):

"软件对整个系统的设计、构建、开发和演进起着基础性影响的任何系统",涵盖了"单个应用程序,传统意义上的系统,子系统和系统的系统,产品线,产品族,整个企业和其他利益的集合"。

本国际标准对这些领域内或其他场所的系统的构成没有任何立场。本国际标准不定义系统的属性。

本国际标准旨在用于上述的系统领域,然而,此处不阻止本国际标准应用于这些领域之外的利益相关实体的体系结构说明(如自然的系统和概念性的系统)。

系统的干系人是该在系统中存在利益的各方。干系人的利益表达为关注点(见 4.2.3)。干系人将各种目标(purposes)归于系统。目标是一种关注点。

一个系统位于一个环境中。环境决定了整个生命周期中施加于系统的所有影响,包括系统在环境中,与环境的交互。一个系统的环境中可以包含其他系统。

系统的架构包含与其环境相关的系统基本要素。单一的特征刻画不能定义系统的本质的或基础;系统的特征可能与以下部分或全体相关:

-- 系统组成或元素;

-- 系统元素如何安置或相互关联;

-- 系统组织或设计的原则;以及,

-- 管控系统在其生命周期中演进的原则。

架构说明用于表达利益系统的架构(见 4.2.2)。

4.2.2 架构和架构说明

架构说明是构造系统和软件架构时输出的工作产品。

图 2 描绘了将本国际标准用于生成表述一个利益系统架构时,架构说明实践的相关概念。在本国际标准中,术语利益系统(system-of-interest,或简称系统)是在系统架构准备活动中,正在考虑其架构的系统。

4.2 其余部分中的图形和文本构成了架构说明的概念模型(conceptual model)。

架构说明表达了利益系统的架构。

本国际标准将系统架构(architecture of a system)与架构说明(architecture description)区分开来。架构说明,而不是架构,是本国际标准的主题。架构说明是一种工作产品,而架构是抽象的,由概念和属性组成。本国际标准指明了架构说明的需求。本国际标准中没有关于架构、系统或其环境的需求。

本国际标准未指定用于记录架构说明的任何格式或媒体。本国际标准旨在能适用于一系列架构说明的方法,包括以文档为中心的、基于模型的和基于存储库的技术。本国际标准没有规定用于生成架构说明的过程或方法。本国际标准不假设或规定用于生成架构说明的特定的架构方法、模型、符号系统或技术。

相关推荐
chouchuang15 分钟前
day-025-面向对象-上
开发语言·python
sunfdf29 分钟前
Next.js 新手从零部署到首跑实战指南
开发语言·javascript·ecmascript
XUHUOJUN34 分钟前
Azure Local GPU 部署与企业应用场景指南(下篇)
microsoft·架构·nvidia·azure local
爱勇宝1 小时前
3位工程师靠“删AI代码”创业,一周收费1万美元:以后最贵的能力,可能不是写代码
前端·后端·架构
hold?fish:palm1 小时前
从源码到可执行文件:C++程序的编译过程
开发语言·c++
●VON2 小时前
HarmonyKit | 鸿蒙开发:项目目录结构与多模块架构最佳实践
华为·架构·单元测试·harmonyos·鸿蒙
随性而行3602 小时前
微信API接口与AI自动化:开发者的实现思路
运维·服务器·开发语言·人工智能·微信·自动化
lingran__2 小时前
C++_STL简介
开发语言·c++
旋律翼22 小时前
Qt Bridges for C# 深度技术解析
开发语言·qt·c#
弹简特2 小时前
【Java项目-企悦抽】07-用户与认证模块-实现用户注册01
java·开发语言