架构描述语言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.

相关推荐
盖伦发发2 天前
软件工程SOLID 五大设计原则
后端·软件工程
白远山2 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
Old Uncle Tom2 天前
评测即生死:Agent 时代的可靠性重构
人工智能·软件工程·agent
建筑工程企业管理系统2 天前
工程建设管理信息系统如何选型?多项目协同管控避坑指南
大数据·软件工程·软件需求
2501_915909062 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_915918412 天前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
啄缘之间3 天前
1.【SVA】什么是SVA?
经验分享·学习·测试用例·verilog·sva
黄昏回响3 天前
软件工程基础知识(五):软件测试详解(下篇)——现代测试实践与论文指导
网络·其他·软件工程·改行学it
白远山3 天前
城市电竞陪玩调度系统实战:从派单算法到多端协同的架构拆解
java·架构·uni-app·需求分析
跨境数据猎手4 天前
2026反向海淘系统架构实践方案
产品运营·团队开发·需求分析