建模语言
编辑建模语言是任何人工语言,可以用来表示信息或知识或系统的结构,由一套统一的规则定义的。这些规则用于解释结构中组件的含义。
概述
编辑建模语言可以是图形的或文本的。
- 图形建模语言使用一种图表技术,其中的命名符号表示概念和连接符号并表示关系的线,以及各种其他图形符号来表示约束。
- 文本建模语言可以使用带有参数或自然语言术语和短语的标准化关键字来制作计算机可解释的表达式。
图形建模语言和相应的文本建模语言的一个例子是EXPRESS。
并非所有建模语言都是可执行的,对于那些可以执行的语言,使用它们并不一定意味着不再需要程序员。相反,可执行建模语言旨在提高熟练程序员的生产力,以便他们能够解决更具挑战性的问题,例如并行计算和分布式系统。
大量的建模语言出现在文献中。
建模语言的类型
编辑图形类型
- 行为树是一种正式的图形建模语言,主要用于系统和软件工程。通常用于明确表示成百上千的自然语言需求,这些需求通常用于表达大型软件集成系统的涉众需求。
- 业务流程建模符号(BPMN,以及XML形式的BPML)是流程建模语言的一个示例。
- CK理论由设计过程的建模语言组成。
- DRAKON是一种通用算法建模语言,用于指定软件密集型系统、算法或逐步过程的示意图表示以及一系列编程语言。
- EXPRESS和EXPRESS-G(ISO10303-11)是一种国际标准的通用数据建模语言。
- 扩展企业建模语言(EEML)通常用于跨多个层的业务流程建模。
- 流程图是算法或逐步过程的示意图。
- 软件密集型系统的基本建模概念(FMC)建模语言。
- IDEF是一个建模语言家族,其中包括用于功能建模的IDEF0、用于信息建模的IDEF1X、用于业务流程建模的IDEF3、用于面向对象设计的IDEF4和用于建模本体的IDEF5。
- 杰克逊结构化编程(JSP)是一种基于数据流结构与程序结构对应关系的结构化编程方法。
- LePUS3是面向对象的可视化设计描述语言和形式规范语言,主要适用于大型面向对象(Java、C++、C#)程序和设计模式的建模。
- 软件工程领域的对象角色建模(ORM)是一种概念建模的方法,可以作为信息和规则分析的工具。
- Petri网仅使用一种制图技术和拓扑结构的变体,即二部图。多年来,其基本用户界面的简单性很容易实现广泛的工具支持,特别是在模型检查、面向图形的仿真和软件验证领域。
- SouthbeachNotation是一种可视化建模语言,用于根据建模者认为有用或有害的代理来描述情况。该符号显示了代理如何相互交互以及这种交互是改善还是恶化了情况。
- 规范和描述语言(SDL)是一种规范语言,旨在对反应式和分布式系统的行为进行明确的规范和描述。
- SysML是一种用于系统工程的领域特定建模语言,它被定义为UML配置文件(定制)。
- 统一建模语言(UML)是一种通用建模语言,是用于指定软件密集型系统的行业标准。当前版本的UML2.0支持13种不同的图表技术,并具有广泛的工具支持。
- 面向服务的建模框架(SOMF)是一种用于在企业架构、虚拟化、面向服务的架构(SOA)、云计算等领域设计企业和应用程序级架构模型的整体语言。
- 体系结构描述语言(ADL)是用来描述和表示一个语言系统架构一个的系统。
- AADL(AADL)是一种建模语言,通过可扩展的符号、工具框架和精确定义的语义,支持对系统架构的性能关键属性进行早期和重复分析。
其他科学领域的图形建模语言示例。
- EAST-ADL是一种专用于汽车系统设计的领域特定建模语言。
- 能源系统语言(ESL),一种旨在模拟生态能量学和全球经济的语言。
- IEC61499定义了专用于分布式工业过程测量和控制系统的特定领域建模语言。
更具体的类型
在计算机科学领域,最近出现了更具体类型的建模语言。
代数
代数建模语言(AML)是用于描述和解决大规模数学计算的高复杂性问题(即大规模优化类型问题)的高级编程语言。AIMMS、AMPL、GAMS、Mosel、OPL和OptimJ等AML的一项特殊优势是其语法与优化问题的数学符号的相似性。这允许对优化领域中的问题进行非常简洁和易读的定义,这得到某些语言元素的支持,如集合、索引、代数表达式、强大的稀疏索引和数据处理变量、具有任意名称的约束。模型的代数公式不包含如何处理它的任何提示。
行为
行为语言旨在描述由并发执行的组件组成的复杂系统的可观察行为。这些语言侧重于关键概念的描述,例如:并发、非确定性、同步和通信。行为语言的语义基础是过程演算或过程代数。
特定学科
一个学科的具体的建模(DSPM)语言的重点是与特定的软件开发生命周期阶段的附属成果。因此,这种语言为每个阶段提供了独特的词汇、语法和符号,例如发现、分析、设计、架构、收缩等。例如,对于项目的分析阶段,建模者使用特定的分析符号来交付分析命题图。然而,在设计阶段,逻辑设计符号用于描述软件实体之间的关系。此外,特定于学科的建模语言最佳实践并不妨碍从业者将各种符号组合在一个图表中。
特定领域
特定领域建模(DSM)是一种用于设计和开发系统的软件工程方法,最常见的是IT系统,例如计算机软件。它涉及系统地使用图形域特定语言(DSL)来表示系统的各个方面。与通用建模语言相比,DSM语言倾向于支持更高级别的抽象,因此它们需要更少的努力和更少的低级细节来指定给定的系统。
特定于框架
甲框架特异性建模语言(FSML)是一种被设计用于一个面向对象的应用程序框架特定领域的建模语言。FSML将框架提供的抽象定义为FSML概念,并将抽象分解为特征。特征代表实施步骤或选择。
FSML概念可以通过选择特征并为特征提供值来配置。这样的概念配置代表了概念应该如何在代码中实现。换句话说,概念配置描述了应该如何完成框架以创建概念的实现。
信息和知识建模
链接的数据和本体工程需要“主语言”来表示实体及它们之间的关系,制约实体和关系,以及与性能的元数据属性。JSON-LD和RDF是这种上下文中的两种主要(并且语义上几乎等效)语言,主要是因为它们支持语句具体化和上下文化,这是支持推理模型所需的高阶逻辑的基本属性。模型转换是这种推理的一个常见例子。
面向对象
对象建模语言是基于一组标准化符号和排列它们以对面向对象的软件设计或系统设计建模(部分)的建模语言。
一些组织广泛地将它们与软件开发方法结合使用,以从初始规范到实施计划,并将该计划传达给整个开发人员和利益相关者团队。由于建模语言是可视化的,并且比代码具有更高的抽象级别,因此使用模型鼓励生成共享愿景,这可能会防止在开发后期出现不同解释的问题。通常使用软件建模工具来构建这些模型,然后这些模型可能能够自动转换为代码。
虚拟现实
虚拟现实建模语言(VRML),在1995年之前被称为虚拟现实标记语言,是一种标准文件格式,用于表示3维(3D)交互式矢量图形,专为万维网而设计。
其他
- 架构描述语言
- 人脸建模语言
- 生成建模语言
- Java建模语言
- 普罗梅拉
- Rebeca建模语言
- 服务建模语言
- Web服务建模语言
- X3D
建模语言的应用
编辑各种建模语言应用于不同的学科,包括计算机科学、信息管理、业务流程建模、软件工程和系统工程。建模语言可用于指定:
- 系统要求,
- 结构和
- 行为。
建模语言旨在用于精确指定系统,以便利益相关者(例如,客户、操作员、分析师、设计人员)可以更好地理解正在建模的系统。
更成熟的建模语言是精确、一致和可执行的。与绘图工具一起应用的非正式图表技术有望生成有用的系统需求、结构和行为的图形表示,但除此之外别无他物。然而,在适当的工具支持下应用的可执行建模语言有望从相同的表示自动进行系统验证和验证、模拟和代码生成。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/123034/