- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
可执行UML建模技术的研究
可执行UML建模技术的研究
摘要:能够降低软件开发成本、提高软件生产效率、可移植性、增加软件的可重用性的技术越来越受到人们的关注,通过可执行UML技术,使得软件开发在前期可以得到执行和验证,通过可执行UML的动作语言可以解释对象之间的行为等。
关键词:可执行UML;UML;平台无关
中图分类号:TP37 文献标识码:A
1 引言
UML是模型驱动架构的一种关键技术,每一个由模型驱动架构构建的模型都是基于一个平台无关的UML模型。但是,UML的语义不是十分精确;UML在软件分析设计阶段是不可以执行,不能验证的,增加了后期开发的风险;UML无法直接表示数据处理过程,如对象与对象是如何产生实际的连接等。为了解决建模的这些问题 OMG对UML进行了扩充,在UML中加入了动作语义使得模型可以是可执行的。
2 可执行UML概述
可执行UML规定了一个简单,一致的UML符号的子集。这些符号的选择是基于现实世界中的结构,而不是基于在某个软件系统的构造中用到的个别结构。不仅仅这些符号本身是简单的,而且组织和集成它们的方式也必须遵循严格的规则,而这些规则能够保持整个系统规约的清晰性。
核心UML加上动作语义就成为可执行UML[1](Executable UML)。可执行UML用动作规约语言对UML进行扩充,使得模型可以被更精确地描述,得到可执行的平台无关模型PIM,同时可执行UML去掉了庞大的UML体系中语义较弱的部分,解决了UML歧义问题,使得建模过程更加简洁明了。
可执行UML就是UML的一个可执行版本[2],它还包括了:
一个被清洗定义的简单模型结构;
精确地动作语义,这些语义已经成为UML标准的一部分;
一个适应性很强的动作规约语言;
一个配套的关键过程:MDA,该过程面向:可执行建模,大规模复用,基于模式的设计。
3可执行UML建模过程
(1)系统用例建模
用例仅从用户使用系统的角度描述系统中的信息,并不描述系统内部对该功能的具体操作方式,确定系统能够做什么?谁来使用这个系统?用例它描述了待开发系统的功能需求,它将系统看做黑盒,从参与者的角度来理解系统,它驱动了需求分析之后各阶段的开发工作,不仅在开发过程中保证了系统所有功能的实现,而且用于验证和检测所开发的系统。建立用例的过程是一个不断细化的过程,刚开始建立的用例可能比较粗糙,随着对需求的不断挖掘和理解,逐步细化用例。
(2)域的划分
系统分解的基本单元是域。域表示一个大的可复用组件,采用由UML包图和依赖关系构成的域图来描述。建立一个系统涉及许多不同的主题并把它们连贯起来形成一个整体。每个主题都是一个域,是能够被理解和使用可执行UML建模的。我们可以为每个域建立一个或多个可执行UML模型。
域的类型有可以分为以下四种它们分别是:应用域、服务域、体系结构域、实现域。
(3)使用域进行平台无关建模
建立一个域的平台无关模型将在3个层次中构建:
第一层次是对域中的类建模。
平台无关模型的主要组成部分是类图,每个域都有一个类图。类图是系统的静态视点。它描述了类和关系。类图描述了被分析的系统的抽象表示,以及这些抽象表示之间的关联关系。类图不描述什么时候创建或删除一个类或关系的实例,也不描述如何使用对象或如何查询关系。换句话说,类图是声明性规约。对于域的类图的正确答案不是唯一的,对于任何域,都有多个可能的类图能够满足相关要求。
第二层次是定义域的动态行为。
模型需要定义类之间如何互相实现域中要求的行为。在可执行UML中提供了两种状态机的表现形式,一种是状态图,状态图显示了状态,事件,和转换,提供了状态机的图形表示,但图不能涵盖所有可能的组合;一种是状态转换表(state transition table 简称SST),使用状态转换表确保底层模型的完整性。一个是代表性的图形,但不完整,另一种是表格,显示状态和事件的所有组合。在状态转移表,每行代表一个状态,每列表示一个事件。这些单元格指定什么时候会发生在一个给定的状态(行)检测到一个特定的事件(列)的对象,这些单元格被称为效果。
第三层次是详细定义动作,即用动作语言来表示。
动作语言是平台无关的语言,用来在可执行UML模型的上下文中详述处理行为。该语言的目的就是为将要被系统执行的处理行为提供无歧义的、精确的且易读的定义。UML并没有定义动作语言,而是在UML标准中加入了动作语义。而动作语言符合UML的动作语义
(4)验证PIM
我们可以用模拟器来验证每个域的PIM是否表现出我们所要求的行为,最后,我们通过集成一系列相互兼容的域来完成系统的集成。
4 可执行UML
原创力文档


文档评论(0)