架构描述语言Architecture frameworks and architecture description languages

Architecture frameworks and architecture description languages

In systems and software engineering, the notion of architecture framework dates back to the 1970s [6, 44]. The motivation for the definition of the term (3.6) and its specification (in 6.1) in this International Standard is to provide a means of defining existing and future architecture frameworks in a uniform manner to promote sharing of information about systems, architectures and techniques for architecture description, inter-working to enable improved understanding, and interoperability between architecture communities who are using different conceptual foundations. The uniform definition of architecture viewpoints and coordinated collections of such viewpoints can promote reuse of tools and techniques to the communities using these frameworks.

The specification of architecture framework is intended to establish the relationships between an architecture framework and other concepts in this International Standard (illustrated in figures 2 and 4). Architecture frameworks often include additional content, prescriptions and relationships, such as process requirements, life cycle connections, and documentation formats, not defined by this International Standard, but potential future areas of standardization.

The term architecture description language (ADL) has been in use since the 1990s in the software, systems and enterprise architecture communities. Within the conceptual model of this International Standard, an architecture description language is any language for use in an architecture description. Therefore an ADL can be used by one or more viewpoints to frame identified system concerns within an architecture description.

Early ADLs included Rapide (Stanford) [25], Wright (CMU) [43], and Darwin (Imperial College). ADLs focused on structural concerns: large-scale system organization expressed in terms of components, connectors and configurations and varying support for framing behavioral concerns. More recently, "wide-spectrum" ADLs have been developed which support a wider range of concerns. These include Architecture Analysis & Description Language (AADL) [37], SysML [31], and ArchiMate [40]. EXAMPLES 1 and 2 describe two contemporary ADLs with reference to their relationship to the conceptual model defined in this International Standard.

EXAMPLE 1 ArchiMate organizes ADs into several layers of concerns: Business, Application and Technology (or Infrastructure); several aspects of concerns within each of those layers: Structural, Behavioral and Informational aspects, and defines eighteen basic viewpoints for these. Each viewpoint is defined via its own metamodel, relating that viewpoint o others, and specifying, the stakeholders, concerns, purpose, layers and aspects.

EXAMPLE 2 The Systems Modeling Language (SysML) is built upon UML. SysML defines several types of diagrams: Activity, Sequence, State Machine, Use Case, Block Definition, Internal Block, Package, Parametric, and Requirement diagrams. In the terms of this International Standard, each SysML diagram type is a model kind. SysML provides firstclass constructs for Stakeholders, Concerns, Views and Viewpoints so that users can create new viewpoints in

accordance with this International Standard. Like an architecture framework, an ADL frames a specific set of concerns for an audience of stakeholders, by defining one or more model kinds together with any associated analysis methods or tools. Similar to an architecture framework or architecture viewpoint, an ADL is a reusable resource---it is not limited in use to an individual system or architecture description.

相关推荐
程序员杰哥1 小时前
Fiddler抓包手机和部分app无法连接网络问题
自动化测试·软件测试·python·测试工具·智能手机·fiddler·测试用例
曦樂~1 小时前
1系统分析与设计及 IT 项目管理
项目管理·软件工程
F36_9_1 小时前
如何在需求收集阶段避免遗漏关键用户?
敏捷流程
workflower7 小时前
测试套件缩减方法
数据库·单元测试·需求分析·个人开发·极限编程
workflower18 小时前
FDD(Feature Driven Development)特征驱动开发
大数据·数据库·驱动开发·需求分析·个人开发
weixin_307779131 天前
企业TB级数据加密迁移至AWS云:AWS Snowball Edge Storage Optimized成本效益方案解析
云计算·需求分析·迁移学习·aws
程序员三藏1 天前
接口自动化测试框架搭建详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
测试老哥1 天前
Jmeter吞吐量控制器详解
自动化测试·软件测试·python·测试工具·jmeter·测试用例·压力测试
weixin_307779131 天前
构建下一代法律智能助手:需求分析、资源整合与系统设计
人工智能·深度学习·机器学习·需求分析
卓码软件测评2 天前
第三方软件测试机构:【“Bug预防”比“Bug发现”更有价值:如何建立缺陷根因分析与流转机制?】
功能测试·测试工具·单元测试·测试用例·压力测试·可用性测试