没有合适的资源?快使用搜索试试~ 我知道了~
理论计算机科学电子札记109(2004)85-96www.elsevier.com/locate/entcs面向Agent可视化建模的图重写Aliaksei Novikau,Anna PeriniITC-Irst,Via Sommarive,18,I-38050特伦托,意大利Marco Pistore2意大利特伦托大学Via Sommarive 14,I-38050 Trento ITC-Irst,Via Sommarive,18,I-38050 Trento,意大利摘要在本文中,我们将描述我们的方法,图重写(GR)的基础上,支持Tropos,面向Agent的软件工程方法的我们将给出指定Tropos语法的重写规则的示例,并将讨论此图重写规则集如何支持分析师构建正确的模型(即与Tropos语言一致的模型此外,我们将考虑如何GR许可证采用建模语言的变种在一个灵活的方式,并支持增量建模过程。关键词:可视化建模,图重写,面向Agent建模,AGG。1介绍可视化建模是软件开发中的一种常见做法,特别是在面向对象的软件开发中,标准建模语言(统一建模语言- UML [1])已经提出,并且支持建模活动的几个CASE工具可用[2]。这也导致了可视化建模作为工业软件开发过程中的核心学科的采用,例如Rational统一过程[3]。然而,尽管如此,1 电子邮件:novikau@irst.itc.it,perini@irst.itc.it2电子邮件地址:pistore@dit.unitn.it1571-0661 © 2004 Elsevier B. V.根据CC BY-NC-ND许可证开放访问。doi:10.1016/j.entcs.2004.02.05886A. Novikau等人理论计算机科学电子笔记109(2004)85一些有趣的研究问题仍然是开放的,例如如何为结构和行为UML图提供公共语义[4,5],如何用图重写(GR)概念增强UML类图的OCL约束[6]。GR在解决其中一些问题方面发挥着重要作用,正如以前的GT-VMT研讨会[7]所讨论的那样。面向Agent(AO)软件工程是最近提出的一种范式(参见例如[8]和以前的版本),具有两个主要含义,即(i)作为工程多Agent系统的方法和(ii)作为基于Agent范式开发分布式系统的方法,用于分析和设计此类系统[9]。视觉建模在AO方法中也起着至关重要的作用。我们特别提到Tropos方法论[10],一种面向代理的软件工程方法论(根据定义(ii)),它基于可视化建模语言并提供一组分析技术。特别是,特定的Tropos图允许表示模型结构的不同方面,而模型的动态方面可以通过表示为时态逻辑公式的正式注释来指定[11]。我们专注于Tropos中的可视化建模以及与开发支持Tropos中的可视化建模的CASE工具相关的一系列具体问题,例如,如何确保模型对于给定语法是正确的,如何支持给定模型的一致实例的构建,以及如何为模型的自动重构提供服务,例如应用不同的模式和重构。在本文中,我们将讨论如何使用GR来定义这些问题的解决方案该文件的结构如下:在SEC。2我们将简要描述Tropos建模语言,并介绍与开发用于可视化建模的CASE工具相关的一系列问题,我们打算利用GR解决这些问题;我们还将回顾我们将在下面使用的GR的基本功能。节中3.描述了我们的方法,即建立Tropos模型的一组图重写规则,一组支持实例创建的规则,以及如何管理模型的一致性改变或重构的初步想法。相关的作品在第二节中简要讨论。四、最后,结论和未来的工作在第二节。五、2背景2.1Tropos方法Tropos[10]是一种用于构建分布式软件系统的AO方法,它提供了一种可视化建模语言。可视化建模用于A. Novikau等人理论计算机科学电子笔记109(2004)8587Fig. 1. 一个Tropos演员和目标图的例子。应用领域的分析以及需求、体系结构和系统的详细设计。在该语言提供的基本概念中:参与者的概念,用于对具有战略目标和意图的实体进行建模,例如物理代理,角色在 一个组织或系统的一个组成部分是;目标的概念代表一个行动者的战略利益;两个行动者之间的依赖性概念,表明一个行动者依赖于另一个行动者,实现一个目标,执行一个计划,或者开发一个资源。建模语言的语法已经通过元模型定义,在[10]中描述。Tropos描述了一组分析技术,例如和/或目标分解,手段-目的分析和贡献分析以及一组用于可视化模型属性的图表图1中描绘的图给出了模型中的目标分析的图形表示,该模型包括两个参与者:代表感兴趣的应用领域3的两个利益相关者的参与者演员“顾问”依赖于演员“生产者”的目标的实现,以获得“果园数据”。虚线气球包括对目标“管理信息素陷阱”的分析3该领域是农业综合生产领域这个例子来自[12]。88A. Novikau等人理论计算机科学电子笔记109(2004)85图二.帧序列的示例。第2至3帧已被省略。一个灰色的目标是一个完整的目标。从第4帧到第5帧,我们可以注意到目标完成是如何沿着目标分解链从依赖项中的目标向原始目标传播的工厂”进行的角度来看,演员“顾问”。 的实例和/或分解以及贡献分析。Tropos图还包含关于模型实体之间的创建和实现关系的隐式信息例如,子目标只能在上层目标创建后创建,分解目标只能在所有子目标(和分解)或至少一个子目标(或分解)完成后才能完成。图2中的图描绘了表示图1中建模的系统的期望行为的帧序列。在框架序列之后,分析师想要验证先前针对特定场景指定的模型,即确保参与者实例“a1”(类型为“Advisor”)的目标有关Tropos及其在不同案例研究中的应用的更多信息,请参见[13]。2.2支持Tropos可视化建模在这里,我们专注于一组与CASE工具开发相关的具体问题,该工具支持分析师在Tropos中构建和修改可视化模型的过程。可视化建模过程的输出应该是一个模型,该模型在建模语言的语法方面是然而,这一过程要经过部分正确模型的具体化。一个例子可以是创建一个没有参与者拥有的目标(而根据语言,每个目标都属于一个参与者)。这样的模型应该被认为是不完整的,应该警告分析师。而且A. Novikau等人理论计算机科学电子笔记109(2004)8589应指导分析师完成可能的模型。例如,当分析师开始分解某个目标时,该工具应该突出显示可以作为分解一部分的所有目标。分析师还应该被告知为什么禁止构建步骤。例如,如果分析师试图用一个已经存在的名字创建一个参与者,那么应该有一个明确的消息指出错误。构建一个模型实例可以帮助分析师,例如,为了检查模型是否包含特定的场景(或行为)。支持分析人员构建一致的模型实例意味着,如果她想要将图2的帧1中的“果园历史数据”标记正确的实例是图5的帧5中所描绘的实例2)的情况。该工具应易于适应语言变体,例如仅使用建模语言的子集或添加了新元素或语法要求的扩展语言(例如除了和/或之外的新型分解链接)。该工具还应该支持模型的自动重构,例如应用不同的模式和重构。例如,如果分析师改变了图1中描述的参与者和目标图,那么相关的实例图应该一致地更新。 一个实例可以是将 因此,框架5将不再有效,需要创建和完成另一个子目标。模型重构的另一个例子可以是一个目标及其所有子目标从一个参与者到另一个参与者的运动。更一般地说,重构过程应该保证结果模型的不同视图之间的一致性。2.3GR技术和工具为了解决上述问题,我们将使用GR。特别是,我们认为有希望利用属性GR,它允许保持一些相关的图信息的一组属性连接到节点和边的图表示的模型。此外,重写系统应该支持复杂的规则应用条件,如否定应用条件(NAC)和属性条件。我们的想法的初步评估已经使用一个系统,实现GR技术称为AGG(属性图语法系统)[14]。AGG是一种基于规则的可视化语言,用Java编写,支持代数方法来重写图形它提供了灵活的属性90A. Novikau等人理论计算机科学电子笔记109(2004)85图3.第三章。在AGG中实现的规则示例该规则指定了分解链接的创建图和一般应用条件,包括NAC和属性条件。3的方法我们沿着三个基本步骤描述我们的方法:在第二节。3.1我们描述了应用GR指导分析师设计有效模型的第一步;3.2我们解决了支持实例构建的问题;3.3我们指出了提供重组/更新能力所需的技术3.1用于Tropos建模的图重写规则Tropos模型可以表示为一个图,其节点表示参与者、目标、资源、计划等实体,其边表示可以在这些实体之间定义的节点和边都具有用于完成实体指定的属性。因此,使用一组允许生成所有有效Tropos模型的规则来表示Tropos我们用AGG实现了这些GR规则。语法要求表示为正应用条件(规则的左侧)、NAC和属性条件。AGG所使用的Tropos模型的图形表示通过附加的边/节点或属性使Tropos图中隐含的实体之间的一些关系显式化,例如图1例如,一个目标属于一个参与者(目标在图中连接到参与者的虚线气球内)第一章A. Novikau等人理论计算机科学电子笔记109(2004)8591用从演员节点到目标节点的边来表示。不同类型的意图实体(硬目标,软目标,计划,资源)表示为目标类型的节点的属性。这允许显著减少重写规则的数量。所有与节点相关的附加信息,如名称和形式规范的部分,也表示为属性。图3包含来自用于构建Tropos模型的规则集的示例。该示例将用于解释我们如何使用GR规则来确保某些语法要求。规则的输入是分解链接的类型(或/和)。规则的左侧(积极应用条件)将规则的应用仅限于属于同一行动者的两个目标。规则中的NAC确保我们将拥有来自同一根目标的相同类型的分解链接,并且尚未创建两个目标之间的分解链接。此外,它要求有一个目标是两个不同的目标分解的孩子。根据[ 10 ]中给出的Tropos语言语法,属性“cond1”上的条件采用这种方法来解决在第二节中提出的问题的优点之一。2.2我们• 建模系统的灵活性。让我们假设我们改变了一些语法要求或引入了新的语言结构。在这种情况下,我们必须更改或添加NAC到规则或添加新规则,这是一个有限的任务。• 指导建模过程。我们可以利用AGG提供的功能,例如建议可能的规则映射完成,例如突出可能的完成对象。在创建分解链接的规则的情况下,分析人员可以选择要分解的目标,工具可以指出所有可能的子目标,这些子目标是规则的有效完成。• 建立部分正确的模型。为了允许部分正确的模型(例如,目标与参与者无关的模型),我们可以扩展用于构建Tropos模型的类型集,以包括终端和非终端类型。如果图包含非终结符类型化元素,则模型被认为是部分正确的。只有包含终端元素的图才代表正确的模型。图4中显示了涉及非终结符元素的规则的示例。规则A创建一个没有演员的目 标 。 因 此 , 我 们 对 这 种 类 型 的 goal 使 用 了 非 终 结 符 类 型 :,根据Tropos语法,这是一个不正确的实体,因为它无法进一步分析<目标>,例如它不能被分解。第二条规则允许为非终结符指定一个参与者92A. Novikau等人理论计算机科学电子笔记109(2004)85图四、管理非终结符元素的规则示例图五.实例创建规则的示例:a)创建实例图标签的规则; b)创建子目标的规则;c)标记分解目标完成的规则目标.这里,非终结符元素被终结符元素goal替换。3.2构建Tropos实例和帧序列Tropos模型表示域参与者、目标和依赖关系,并且它还可以包括这些实体的实例。构建实例的过程需要一组可应用于同一模型的附加规则。用于创建实例的规则集必须采用完整/创建依赖性信息(在第2.1)作为规则条件考虑。图5描绘了这种规则的示例。 有两种新类型在规则中引入的链接的实例:链接的实例意味着对象是Tropos图对象的实例,链接属于意味着一个Actor实例(以及它的所有目标实例)属于一个实例图。规则Fig.5a创建一个新的实例图类型的节点,从而创建一个新的实例图。图5b中的规则创建了一个goal实例.本规则的NAC确保目标不是子目标。(图5中没有描述子目标创建的规则。)图5c中的规则改变了A. Novikau等人理论计算机科学电子笔记109(2004)8593见图6。 将目标移动到另一个参与者。只有当所有子目标都已完成(和分解)或至少有一个子目标已完成(或分解)时,上层目标的状态才为我们注意到,实例图是帧序列的快照(见图2)。我们可以通过重新应用实例构建的规则集来为它重新生成一个帧序列。每个框架对应于实例构建过程的一个步骤,分析师从规则实例图作为第一个空框架开始执行该步骤。这种方法的主要优点是它可以在Tropos模型中构建实例。使用实例的规则集,我们可以为Tropos图创建任意数量的实例。而且,所有这些都保证与模型本身兼容3.3衍生转换上面描述的GR规则仅包括用于创建新元素的规则。虽然可以为某些删除和更改活动添加额外的规则,但看起来这些活动中的几个不能仅用一个图重写规则来完成。有两个原因:首先,删除步骤可能需要许多先决条件(例如,我们可以仅在删除了属于参与者的所有目标之后才删除它);其次,重写步骤可能影响模型的大子集(例如,一个目标从一个参与者到另一个参与者的移动涉及到所有从属子目标的移动,图6)。对于这样的图修改,我们预见到一种推导变换方法,如[15,16]中所描述的方法。这将为问题提供一个通用的、语义上的解决方案。目前,我们正在尝试一种更简单的方法,该方法基于保持和保存推导历史以及应用外部手写算法来表示特定推导变换的想法。例如,这样的算法应该支持从一个参与者到另一个参与者的目标移动它应该更改创建目标的规则,将原始参与者替换为所需的参与者,它应该检查所有依赖关系链接和所有子目标,然后将相同的规则转换传播到94A. Novikau等人理论计算机科学电子笔记109(2004)85次级目标。除分解外,所有其他链接都应销毁。可以重新应用新的将对所有实例图进行类似的更新。同样的技术可以用于模型中的其他类型的重构一些推导转换算法可能需要分析师输入他/她的决策。例如,在将目标从一个参与者移动到另一个参与者时,分析师将如何处理图中特定类型的链接,或者分析师希望如何重命名目标。4相关工作在可视化建模的GR领域,有不同的方向,其中使用UML进行OO建模正在获得大量关注。特别是,几个- eral工程解决的一致性和语义的不同类型的UML图的问题。一些关于UML类图和序列图的一致性的工作使用属性化的GR来检查这两种图的一致性[4]。在[5]中,描述了一种基于UML图(如类、对象和状态图)的集成图语义的方法。本文的思想是,分析师关联图重写规则的类图中的类的操作。使用这些手写的规则和从状态图生成的其他规则,可以检查对象、序列和协作图的一致性。此外,在我们的方法中,我们使用GR作为Tropos模型的静态和动态视图之间一致性的基础。然而,我们的方法不需要分析师手工编写规则,因为一组预定义的规则足以支持考虑Tropos语言语义的实例化。在实现GR和高级编辑功能的可用工具中,我们考虑了GenGEd或DiaGen,两者都在[17]中描述。我们更喜欢使用AGG工具,因为我们的重点是提供一个图形转换引擎。然后,该引擎将集成到一个CASE工具中,该工具提供了更广泛的功能,并且正在我们的研究小组中开发。5结论和今后的工作在本文中,我们已经描述了我们的方法,基于GR,以支持在Tropos的可视化建模过程。我们已经给出了Tropos重写规则的例子,这些规则指定了Tropos语言的语法,并支持分析师构建正确的模型。这些规则已在AGG中实施GR方法提供了采用建模语言变量的灵活性,A. Novikau等人理论计算机科学电子笔记109(2004)8595蚂蚁,并可以适应允许部分正确的模型的定义。此外,派生转换似乎是一个有前途的方式来支持一个模型的重构一致的方式。我们目前正在定义一个适当的符号,用于表示推导历史,并完成AGG中所述技术的实施和验证我们在论文中介绍的工作只涵盖了需求阶段。 我们还打算推进图转换的使用在后期阶段(特别是建筑设计和详细设计),遵循Tropos方法的指导方针[10]。在这个扩展中,我们还将参考[18]中基于UML和GR的正式面向代理的建模方法所做的工作,该方法涵盖了从需求规范到分析和设计的不同活动。一个长期的目标是将GR集成到一个CASE工具中,旨在支持Tropos方法中的可视化建模。引用[1] OMG 集 团 。 统 一 建 模 语 言 规 范 。 当 前 版 本 : 1.5 。 2003. 另 请 参 见 UML OMG 站 点 :http://www.omg.org/uml/。[2] CASE工具列表按名称排序:http://www.cs.queensu.ca/Software-Engineering/tools.html。[3] Rational统一过程产品概述:www.example.comhttp://www-306.ibm.com/software/awdtools/[4] A. Tsiolakis和H.埃里希基于属性文法的UML类图和序列图的一致性分析。In H. Ehrig和G. 张文,《图形转换系统的应用程序》,北京,2000年。[5] M. Gogolla,P. Ziemann,and S.库什克面向UML的集成图基语义。在理论计算机科学电子笔记,第72卷。Elsevier,2003年。[6] A. 很好。在UML的约束语言OCL中增加图转换概念. 在电子笔记在理论计算机科学,卷44。Elsevier,2001年。[7] GT-VMT 02研讨会网站:http://www2.cs.fau.de/GTVMT02/。[8] F. Giunchiglia,J. Odell,and G.维斯,编辑。面向Agent的软件工程III,LNCS第2585卷。Springer-Verlag,2002. 2002年7月15日在意大利博洛尼亚举行的第三次国际讲习班。[9] E. Yu.面向代理的建模:软件与世界。面向Agent的软件工程,第206-225页,2001年[10] P. Bresciani,P. Giorgini,F. Giunchiglia、J. Mylopoulos和A.佩里尼Tropos:一种面向Agent的软件开发方法。自治代理和多代理系统,2003年。出版社。[11] A.富克斯曼湖Liu,M. Pistore,M. Roveri和J. Mylopolous。分析早期需求:一些实验结果。RE-2003,第11届IEEE国际需求工程会议,2003年。96A. Novikau等人理论计算机科学电子笔记109(2004)85[12] A. Perini和A.苏西农业综合生产决策支持系统的研制。环境建模与软件杂志,2003年。提交给。[13] Tropos项目网站:http://www.troposproject.org/。[14] C. Ermel,M. Rudolf和G.坦策AGG方法:语言和环境。在Handbook of Graph Grammarsand Computing by Graph Transformation,第2卷:应用,语言和工具。世界科学,1999年。另见AGG网站:http://tfs.cs。 tu-berlin.de/agg/。[15] D. Hirsch和U.蒙塔纳里两种基于图的软件体系结构重构技术。In M. Bauderon和A. Corradini,编者,《理论计算机科学电子笔记》,第51卷。Elsevier,2002年。[16] D. Hirsch和U.蒙塔纳里高阶超边缘替换系统及其转换:软件架构重构。In H.埃里希和G. Taentzer编辑,图形转换系统联合APPLIGRAPH/GETGRATS研讨会论文集(GRATRA2000),第215-223页[17] R. Bardohl ,G.Tae ntzer,M. Minas 和A.很好。 图变换在可视化语言中的应用。 在Handbook of Graph Grammars and Computing by Graph Transformation,第2卷:应用,语言和工具。世界科学,1999年。[18] R. 德普克河 他是凯尔,而J. M. 库斯特。基于UML和图变换的面向年龄的建模在科学。Comput.程序. 第44卷,第229-252页。Elsevier,2002年。
下载后可阅读完整内容,剩余1页未读,立即下载
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![ppt](https://img-home.csdnimg.cn/images/20210720083527.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 电力电子系统建模与控制入门
- SQL数据库基础入门:发展历程与关键概念
- DC/DC变换器动态建模与控制方法解析
- 市***专有云IaaS服务:云主机与数据库解决方案
- 紫鸟数据魔方:跨境电商选品神器,助力爆款打造
- 电力电子技术:DC-DC变换器动态模型与控制
- 视觉与实用并重:跨境电商产品开发的六重价值策略
- VB.NET三层架构下的数据库应用程序开发
- 跨境电商产品开发:关键词策略与用户痛点挖掘
- VC-MFC数据库编程技巧与实现
- 亚马逊新品开发策略:选品与市场研究
- 数据库基础知识:从数据到Visual FoxPro应用
- 计算机专业实习经验与项目总结
- Sparkle家族轻量级加密与哈希:提升IoT设备数据安全性
- SQL数据库期末考试精选题与答案解析
- H3C规模数据融合:技术探讨与应用案例解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)