建模语言
一个建模语言是任何人造语言可以用来表达信息或者知识或者系统在一个结构体这是由一致的规则集定义的。规则用于解释结构中组件的含义。
概述
建模语言可以是图形的或文本的。[1]
- 图形建模语言使用图技术用代表连接符号并表示关系的概念和行的命名符号以及代表约束的各种图形符号。
- 文字建模语言可以使用标准化的关键字,并附有参数或自然语言术语和短语来制作计算机可解开的表达式。
图形建模语言和相应的文本建模语言的一个示例是表示.
并非所有的建模语言都是可执行的,对于那些模型语言,使用它们并不一定意味着不再需要程序员。相反,可执行模型语言旨在扩大熟练程序员的生产率,以便他们可以解决更具挑战性的问题,例如并行计算和分布式系统.
文献中出现了大量的建模语言。
建模语言类型
图形类型
计算机科学,项目管理和系统工程领域中图形建模语言的示例:
- 行为树是一种正式的图形建模语言,主要用于系统和软件工程。通常用于明确表示数百甚至数千个自然语言通常用于表达的要求利益相关者大规模软件集成系统的需求。
- 业务流程建模符号(bpmn,XMLbpml)是一个例子过程建模语。
- C-K理论由设计过程的建模语言组成。
- 德拉肯是一个通用算法建模用于指定软件密集型系统的语言,算法或逐步过程的示意图以及一个家庭编程语言.
- 表示Express-G(ISO 10303-11)是国际标准通用物数据建模语。
- 扩展企业建模语言(EEML)通常用于跨多个层的业务过程建模。
- 流程图是算法或逐步过程的示意图。
- 基本建模概念(FMC)为软件密集型系统建模语言。
- IDEF是一个家庭建模语言, 其中包括IDEF0用于功能建模,IDEF1X用于信息建模,IDEF3用于业务流程建模,IDEF4用于面向对象的设计和IDEF5用于建模本体。
- 杰克逊结构化编程(JSP)是基于数据流结构和程序结构之间的对应关系进行结构化编程的方法。
- Lepus3是一个面向对象视觉设计说明语言和正式规格语言主要适合建模大型对象(爪哇,C ++,C#)程序和设计模式.
- 生命周期建模语言是一种开放标准的语言系统工程支持全部系统生命周期:概念,利用,支持和退休阶段。
- 对像力建模(ORM)在软件工程领域是一种概念建模的方法,可以用作信息和规则分析的工具。
- 培养皿在一种图解技术和拓扑的情况下使用变化,即两部分图。多年来,其基本用户界面的简单性很容易启用广泛的工具支持,尤其是在模型检查,图形为导向的仿真和软件验证的领域。
- Southbeach符号是一种视觉建模语言,用于描述从建模者的角度被认为有用或有害的代理来描述情况。该符号显示了代理如何相互作用,以及这种相互作用是否改善或恶化了情况。
- 规范和描述语言(SDL)是一种针对反应性和分布式系统行为的明确规范和描述的规范语言。
- sysml是一个特定于域的建模语言系统工程该定义为UML配置文件(自定义)。
- 统一的建模语言(UML)是通用建模语言是指定软件密集型系统的行业标准。当前版本UML 2.0支持13个不同的图表技术,并具有广泛的工具支持。
- 面向服务的建模框架(SOMF)是一种整体语言,用于在企业体系结构,虚拟化,面向服务的体系结构(SOA),云计算等方面设计企业和应用程序级别体系结构模型。[2]
- 体系结构说明语言(ADL)是一种用于描述和表示的语言系统体系结构一个系统.
- aadl(AADL)是一种建模语言,它通过可扩展的符号,工具框架和精确定义的语义来支持系统体系结构的早期和重复分析。
其他科学领域中图形建模语言的示例。
文本类型
信息模型也可以用正式的自然语言(例如Gellish)表示。[3]Gellish具有自然语言变种,例如盖利甚正式英语和Gellish正式的荷兰语(Gellish Fooleel Nederlands)等。GellishFormur Engrille是一种信息表示语言或语义建模语言,在Gellish English词典中定义,它具有分类学的形式(类似于荷兰语)。Gellish正式英语不仅适合表达知识,要求和词典,分类法和本体学,而且还适合有关个人事物的信息。所有这些信息均以一种语言表示,因此可以全部集成,独立于该问题是否存储在中央,分布式或联合数据库中。Gellish正式英语中的信息模型由使用自然语言术语和形式上的短语的Gellish正式英语表达方式组成。例如,地理信息模型可能包括许多胶质形式的英语表达式,例如:
- 埃菲尔铁塔<位于巴黎 - 巴黎<被归类为>城市
例如,信息要求和知识可以如下表示:
- 塔<应位于地理区域 - 城市<是一种地理区域
这样的胶质正式英语表达式使用概念的名称(例如“城市”)和代表关系类型的短语(例如,位于in⟩和分类为A⟩)的词语,应从gellish English dictionary tictivary-tachaxonomy中选择(属于A⟩)(或您自己的域字典)。Gellish英语词典税法可以创建语义丰富的信息模型,因为字典包含600多种标准关系类型,并且包含了40000多个概念的定义。Gellish中的信息模型可以表达事实或做出陈述,查询和答案。
更具体的类型
在...方面计算机科学最近出现了更多特定类型的建模语言。
代数
代数建模语言(AML)是用于描述和解决大规模数学计算(即大规模优化类型问题)的高级编程语言。AML的一个特别优势目标,Ampl,游戏,Gekko,Mosel,OPL和Optimj是其语法与优化问题的数学符号的相似性。这允许对优化领域中的问题进行非常简洁且可读性的定义,该定义得到了某些语言元素,例如集合,索引,代数表达式,强大的稀疏索引和数据处理变量,具有任意名称的约束。模型的代数公式不包含如何处理该模型的任何提示。
行为的
行为语言旨在描述由同时执行的组件组成的复杂系统的可观察行为。这些语言着重于关键概念的描述,例如:并发,非确定性,同步和交流。行为语言的语义基础是过程计算或者过程代数.
特定学科
一个学科特异性建模(DSPM)语言专注于隶属于特定软件开发生命周期阶段的可交付成果。因此,这种语言为每个阶段提供了独特的词汇,语法和符号,例如发现,分析,设计,建筑,收缩等。例如,对于项目的分析阶段,建模者使用特定的分析表示法来交付分析命题图。但是,在设计阶段,逻辑设计表示法用于描述软件实体之间的关系。此外,特定于纪律的建模语言最佳实践并不排除从业者将各种符号组合在单个图中。
特定领域
特定于域的建模(DSM)是一种用于设计和开发系统的软件工程方法,最常见的是IT系统,例如计算机软件。它涉及系统地使用图形特定于领域的语言(DSL)表示系统的各个方面。与通用建模语言相比,DSM语言倾向于支持更高级别的抽象,因此它们需要更少的精力,而低水平的细节才能指定给定系统。
特定于框架
一个特定于框架的建模语言(FSML)是一种针对面向对象的应用程序框架设计的特定领域的建模语言。FSML将提供框架的抽象定义为FSML概念,并将抽象分解为特征。功能表示实现步骤或选择。
可以通过选择功能并为功能提供值来配置FSML概念。这样的概念配置表示应如何在代码中实现概念。换句话说,概念配置描述了应如何完成框架以创建概念的实现。
信息和知识建模
链接数据和本体工程需要“主持语言”代表实体及其之间的关系,约束在实体和关系的财产之间,以及元数据属性.json-ld和RDF在这种情况下是两种主要(在语义上几乎等效的)语言,主要是因为它们支持语句重新化和上下文化这是支持高阶逻辑需要推理模型。模型转换是这种推理的普遍例子。
面向对象
对象建模语言正在基于标准化的符号集以及将其安排为对象的软件设计或系统设计建模的方式进行建模。
一些组织将它们与软件开发方法相结合,从初始规范到实施计划,并将该计划传达给整个开发人员和利益相关者团队。由于建模语言是视觉效果,并且比代码更高的抽象级别,因此使用模型鼓励产生共同的愿景,该愿景可能会阻止以后开发中不同解释的问题。通常,软件建模工具用于构建这些模型,然后可以自动翻译为代码。
虚拟现实
虚拟现实建模语言(VRML)在1995年被称为虚拟现实标记语言之前是一种标准文件格式,用于表示3维(3D)交互式矢量图形,特别是在万维网中设计的。
其他
申请
各种模型语言在不同的学科中应用,包括计算机科学,信息管理,业务流程建模,软件工程, 和系统工程。建模语言可用于指定:
- 系统要求,
- 结构和
- 行为。
建模语言旨在精确指定系统,以便利益相关者(例如客户,运营商,分析师,设计师)可以更好地理解所建模的系统。
更成熟的建模语言是精确,一致和可执行的。非正式的图表期望使用绘图工具应用的技术可以产生系统需求,结构和行为的有用的图形表示,这对于通信,设计和解决问题可能很有用,但不能以编程方式使用。[4]:539但是,有望在适当的工具支持下应用的可执行建模语言自动化系统自动化系统验证和验证,模拟和代码生成来自相同的表示。
质量
对建模语言的审查对于能够分配适合不同建模设置的语言至关重要。在术语设置中,我们包括利益相关者,域和联系的知识。评估语言质量是一种旨在实现更好模型的手段。
评估框架
在这里,语言质量按照串联框架对于Krogstie,Sindre和Lindland(2003)开发的模型质量,因为这是一个将语言质量连接到通用模型质量框架的框架。在此框架中使用了五个领域来描述语言质量,它们应该表达语言的概念和视觉符号。我们不会对模型的基本质量框架进行彻底的解释,而要专注于用于解释语言质量框架的领域。
领域适当性
该框架指出将域表示为域适当性的能力。该声明适当性可能有点模糊,但是在这种特殊情况下,这意味着能够表达。理想情况下,您应该只能表达域中的内容,但要足够强大,可以包含域中的所有内容。该要求似乎有些严格,但目的是获得一个视觉表达的模型,其中包括与域相关的所有内容,并排除了不适合域的所有内容。为了实现这一目标,该语言必须很好地区分哪种符号和语法这是有利的。
参与者适当
为了评估参与者的适当性,我们试图确定语言表达利益相关者所拥有的知识的程度。这涉及挑战,因为利益相关者的知识是主观的。利益相关者的知识既默认又明确。两种类型的知识都是动态特征的。在此框架中,仅考虑明确的知识类型。语言应在很大程度上表达与领域相关的利益相关者的所有明确知识。
Modeller适当性
最后一段指出,应以一种很好的方式介绍利益相关者的知识。此外,必须能够表达利益相关者的所有可能明确知识。由于语言的缺乏,不应将知识提交。
可理解的适当性
可理解的适当性可确保社会参与者由于语言的持续使用而理解该模型。为此,该框架包括一组标准。这些表达的一般重要性是该语言应该具有灵活性,易于组织性,并且易于区分语言的不同部分以及其他语言。除此之外,目标应该尽可能简单,并且语言中的每个符号都具有独特的表示。
这也与开发要求的结构有关。。
工具适当性
为了确保实际建模的域可用于分析和进一步处理,该语言必须确保可以自动推理。为了实现这一目标,它必须包括正式的语法和语义。正式化的另一个优点是能够在早期发现错误。并非总是适合技术参与者的语言与社会演员相同。
组织适当性
使用的语言适合组织环境,例如该语言是在组织内标准化的,或者是由选择为组织中标准的工具支持的。
也可以看看
参考
- ^Xiao He(2007)。“用于图形建模语言表示法的元模型”。在:计算机软件和应用会议,2007年。Compsac2007-卷。1.第31届年度国际,第1卷,第1期,2007年7月24日至27日,第219-224页。
- ^贝尔,迈克尔(2008)。“面向服务的建模简介”。面向服务的建模:服务分析,设计和体系结构。 Wiley&Sons。ISBN 978-0-470-14111-3.
- ^*安德里斯·范·伦森(Andries van Renssen),Gellish,一种通用的可扩展本体论语言存档2012-11-30在Wayback Machine,代尔夫特技术大学,2005年。
- ^贝尔特斯,塞巴斯蒂安;Diehl,Stephan(2014-11-11)。“实践中的草图和图表”.第22届ACM Sigsoft国际软件工程基础研讨会论文集。FSE2014。香港,中国:计算机协会:530–541。arxiv:1706.09172.doi:10.1145/2635868.2635891.ISBN 978-1-4503-3056-5.S2CID 2436333.
进一步阅读
- 约翰·克罗格斯蒂(2003)“使用通用质量框架评估UML”。Sintef电信和信息学和IDI,NTNU,挪威
- Krogstie和Sølvsberg(2003)。信息系统工程:质量视角以概念建模。计算机和信息科学研究所。\
- Anna Gunhild Nysetvold和约翰·克罗格斯蒂(2005)。“使用通用质量框架评估业务处理建模语言”。计算机和信息科学研究所。