一种反射式建模工具及其重构方法

文档序号:6354686阅读:169来源:国知局
专利名称:一种反射式建模工具及其重构方法
技术领域
本发明涉及信息处理技术领域,更具体地,本发明涉及一种建模工具及其重构方 法。
背景技术
统一建模语言是对象管理组织发起的一个面向对象建模语言标准,目前已经成为 面向对象建模的事实标准。统一建模语言通过类、对象、关系等描述系统的静态结构信息, 通过序列图、状态转换图等来描述系统的动态行为。与基于统一建模语言的统一建模工具 (如Rational Rose)不同,领域建模工具具有很强的业务针对性,难以使用统一建模语言 的语义、语言规范来约束。领域建模语言的针对性主要表现为由于不同的领域建模所涉及 的领域模型存在差异,工具需要在领域模型的描述、表示以及操作等方面进行定制。一般而言,可视化建模工具的设计以可视化建模语言和建模规范为指导;语言的 语义部分,即概念模型,对应工具的语义对象系统;语言的表示法部分,对应工具的图元系 统;建模规范,对应模型相关的操作约束与逻辑。根据领域建模语言及建模规范的特点、对 建模工具进行定制,进行相应软件模块的设计、编码,并与工具的其它相对稳定的模块(如 界面、文档系统、模型库系统等)进行集成,但该方式成本高、周期长。基于元建模技术的工具重构是当前较流行的方案,通过元建模、生成元模型相关 的代码框架、集成插件等技术支持工具的重构,提高了建模工具开发的效率和质量。但是, 该方案对建模平台要求较高,代码编写、集成、维护工作较多,实现步骤复杂;并且当应用 领域具有很多相似特性时,运用该方案性价比不高。

发明内容
为克服现有技术的上述缺陷,本发明提出一种建模工具及其重构方法。根据本发明的一个方面,提出了一种基于反射技术的建模工具,包括元类包、模型 元素包、元行为包和图形包,其特征在于,所述元类包用于实现软件对象的自描述,通过类 型描述、属性描述、对象实例注册提供包括类型识别、动态创建、对象管理的基础服务,并且 用于在高抽象层次实现对象初始化、复制、序列化、数据可视化的涉及对象类型识别、属性 线形映射的行为;所述模型元素包用于基于黑箱实现原理在基界面上对模型元素的特性和 行为进行抽象;所述元行为包用于基于开放实现原理在元界面上对模型元素的特性和行为 进行抽象;所述图形包包括矢量图元实现模块,用于支持模型信息的可视化表示。根据本发明的另一个方面,提出了一种建模工具的重构方法,包括步骤10)、在基界面上,对具有不同功能职责的模型元素进行抽象,形成稳定的核 心概念系统;模型元素构成建模工具的基对象集;步骤20)、在元界面上,通过模型域描述模型元素在应用域中的具体类型、信息结 构以及语义约束,使得模型元素种类的扩展不受限制,且使得在高的抽象层次上实现模型 信息的录入与验证;
步骤30)、一个模型元素对应绑定一个模型域,一个模型域挂接多个元行为执行 体,实现基对象与元对象的关联;引入元类机制对对象类型、结构进行自述,并提供包括类 型识别、动态创建、复制、序列化的基础服务;步骤40)、通过工具重配置文件对元界面进行定制。本发明基于反射技术构建具有自适应特性的工具架构,使得架构仅通过重配置就 能适应领域建模的需求变化,为实现工具重构提供了一种新的可行方案,以所见即所得、 支持图形交互式开发建模工具重配置描述文档的工具。基于元建模技术的工具重构,虽然有元建模平台的支持,本质上是代码级的重构, 且重构过程复杂,对技术实现及配套的工具设施要求较高,当应用领域具有很多相似特性 时性价比不高。与之相比较,本发明基于反射技术构建具有自适应特性的工具架构,使得 架构仅通过重配置就能适应领域建模的需求变化,为实现工具重构提供了一种新的可行方案。运用开放实现原理设计的软件系统具有良好的适应性,通过将基界面(功能界 面)与元界面(实现策略选择界面)相分离,开放实现使得系统可以有针对地暴露接口改 变内部的部分实现策略以及行为,以满足不同应用环境下的功能需求。


图1示出元建模平台中的工具和语言;图2示出基于元建模技术定制建模工具的流程;图3示出基于反射技术定制建模工具的顶层结构;图4示出元类包;图5示出模型元素包;图6示出元行为包;图7示出工具重配置文档对概念模型及其相关特性的描述示例。
具体实施例方式下面结合附图和具体实施例对本发明提供的一种建模工具及其反射式重构方法 进行详细描述。现有技术中,提出基于元建模技术的工具重构方法,其基本思路既然建模工具可 以用于描述软件应用系统、并通过自动化手段生成软件产品,以支持软件应用系统的快速 开发;那么,将建模工具本身作为应用,也可以设计对建模工具进行建模的工具,即元建模 工具。从语言的角度而言,建模工具以建模语言为规范并描述模型,元建模工具以元建模语 言为规范并描述元模型。元建模平台中的工具、语言以及它们之间的关系如1所示。建模语言以及元建模 语言均由语义、表示法两个部分构成,用于对工具的语义对象系统、图元对象系统进行规 范。元建模语言的语义采用了 M0F2.0,建模语言的语义(即元模型)由元建模工具描述。 元建模语言、建模语言的表示法都可通过表示法定义工具进行描述,该工具基于表示法定 义语言描述图元、并将图元与语义进行绑定,也可视为一个可视化建模工具。在该框架下,对领域建模工具进行定制的方法如图2所示,其中,代码模版管理部 分用于编辑和管理代码模版。代码模版库中的代码模版用于把特定的模型转换为指定的代码。把元模型作为输入,代码生成部件基于代码模版为工具生成元模型相关的程序代码。代 码维护与集成部件负责维护代码并把代码与预制的插件相集成,直至产生可执行的建模工 具。以下描述基于反射技术的工具重构方法。反射是系统的一种对自身进行推理和作 用的能力,是开放实现的一种行之有效的技术手段。引入反射技术设计一个具有自适应特 性的工具架构,使得工具的模型描述、表示和操作部分可通过重配置进行调整,是支持工具 重构的一个可行思路。本发明的实施例将描述体系对抗、虚拟样机、编队作战指挥三个建模领域。但本发 明的建模工具的重构方法不仅适用于上述三个建模领域。其中,建模工具均支持复杂系统 多视图、多粒度建模方法;多视图表现为提供多个角度、对系统进行刻画和展示,并能建立 各个视图之间的相互关联和映射;多粒度表现为能有效表达系统的层次性,支持模型的组 合性、复合性,实现不同层次、不同粒度模型的互操作和重用。针对设计阶段以及面向用户的特点,工具均提供了业务视图、开发视图、部署视 图三个正交的设计空间;业务视图面向领域专家,用于描述业务知识;开发视图面向软件 开发人员,基于面向对象的思想实现领域模型至软件元素的映射、抽象和封装;部署视图面 向系统实现人员,用于将系统分解为进程、组件两个层次,并基于应用需求、软件资源重用 的考虑,进行领域模型的部署。以该建模方法为指导,仅业务视图中的内涵会因领域而异 体系对抗建模关注武器装备以及装备之间的装配、编组、通信关系等;虚拟样机建模关注系 统的组成、内部接口关系等;编队作战指挥系统建模关注战位、战位之间的指挥信息流程及 逻辑等。针对不同的应用领域,工具的界面风格、操作模式、建模流程以及一些框架性的功 能(如文档存储与管理、操作回溯、基于模型库的模型重用、模型查询与导航)相对稳定,相 关软件实现可以固化;而业务视图中概念模型的差异,使得工具的设计需要在以下方面进 行定制1)模型的描述为各种类型的模型提供对知识进行抽象的数据结构表示。2)模型信息的录入与验证提供人机界面支持模型信息的录入,并根据语义上的 约束进行验证。3)模型的组织均采用模型资源树的形式对模型进行组织,需要提供具有领域特 色的模型分类机制、排序规则。4)模型的表示提供的模型可视化图符应具有专业特色。5)模型的操作模型元素与用户的交互模式,即操作入口、方式、过程、目的需要 进行定制。基于反射技术的工具重构方法反射(Reflection)技术是提高软件适应性的有效方案之一,一般地,反射是一种 计算系统能监控自己状态并能改变自身运行方式的一种能力。也就是说,基于反射的软件 通过某种方式来实现对自己行为的描述和观察,并能根据自身行为的状态和结果,调整或 修改所描述行为的状态和相关的语义。通常,基于反射的系统实现时在体系结构表现为分 层系统,其中最低层称为基本层,它通常由与应用有关的软件对象构成;除此之外的层称为 元层,多个元层构成了反射塔。元层由元对象(Meta-Object)构成,其提供的访问接口协议称为元对象协议(Meta Object Protocol, MOP) 因果关联(causally connected)禾口系统自描述(self-representation)是反射 的两个基本特征之一。所谓因果关联是指对反射系统自描述的改变能够立即反映到系统底 层的实际状态和行为,反之亦然。换句话说,即底层的状态或行为与上层的描述具有一致 性和相互关联性。根据这种一致性,一个反射系统的工作过程可以描述为基本层对象为 实现应用功能而开始运行活动,其运行活动被元层对象捕获(trap),导致计算上下文切换 到元层(这个过程称为上行活动shift-up action),元对象根据其运行逻辑将元计算结 果反过来作用和影响基本层的对象,上下文再次切换到基本层(这个过程称为下行活动 shift-down action)0运用反射技术设计面向对象的软件系统,包括1)基于软件系统的功能和潜在的变化需求,抽象分离出基界面和元界面。基界面 用于实现系统功能,对软件系统的共性部分进行抽象;元界面用于对基界面上的某些结构、 行为进行自述,并可通过某种机制进行自适应调整。2)基于面向对象的方法分别对基界面和元界面进行封装。3)确定元界面的自适应策略,即通过何种方式实现对元界面对象及对象数据的修 改。4)确定基界面对象与元界面对象之间的关联模式,定义实现计算活动在两个界面 上进行上行、下移的接口以及策略。因为反射系统所具有的开放特性,本发明引入反射技术来设计工具的架构;通过 对模型的描述、表示、数据录入与验证、组织、操作几个方面进行自述,并基于因果关联机制 实现相关结构和行为的自适应。工具架构的设计思路为1)在基界面上,对具有不同功能职责的模型元素进行抽象,形成一个稳定的核心 概念系统;模型元素构成了工具的基对象集。2)在元界面上,通过模型域描述模型元素在应用域中的具体类型、信息结构以及 语义约束,使得模型元素种类的扩展可以不受限制,且使得在高的抽象层次上实现模型信 息的录入与验证成为可能;通过具有不同功能职责的元行为执行体来执行各种类型的元计 算,元计算的结果将作用到模型元素的标识特性、组织特性、可视化特性以及操作模式。模 型域、元行为执行体构成了工具的元对象集。3) 一个模型元素绑定一个模型域,一个模型域挂接多个元行为执行体,实现基对 象与元对象的关联。模型元素的某些软件计算,如获得默认标识、创建可视化图元、判断操 作是否合理、判断操作目的等,需要通过模型域、交由相应的元行为执行体捕获并执行;为 了便于扩展,基对象与元对象之间的通信采用统一的接口形式。4)引入元类机制对对象类型、结构进行自述,并提供类型识别、动态创建、复制、序 列化等基础服务。5)通过工具重配置文件对元界面进行定制。重配置文件描述了工具所支持的模型 域以及其挂接的元行为执行体,工具启动时被加载,元界面的对象被实例化;文件中,每个 模型域对象还需映射一个模型元素类标识,当属于该域的模型创建时,通过该标识查找得 到模型元素的元类对象,通过该元类对象动态创建一个模型元素,并将其与模型域对象进 行绑定。
在上述技术方案中,针对工具在概念模型上的潜在变化需求,合理地抽象出由模 型域、元行为执行体构成的元界面对其进行描述;元界面中的对象及对象数据可通过配置 进行定制,从而使得在不需要改动代码的情况下、实现工具在概念模型上的重构;因而,基 于反射的工具架构具有良好的适应性。方案的实现采用了两种反射模型元类机制中,元 类与对象之间的关系属于元类反射模型;模型元素与模型域之间的关系属于元对象反射模 型。基于反射技术的工具架构图3给出了工具架构的顶层结构,由四个包组成,分别是元类包(MetaClass)、模 型元素包(ModelingItem)、元行为包(MetaBehavior)和图形包(Shape),其中1)元类包 (MetaClass)用于实现软件对象的自描述,通过类型描述、属性描述、对象实例注册等经典 手段,其一,提供类型识别、动态创建、对象管理等基础服务;其二,为在高的抽象层次实现 对象初始化、复制、序列化、数据可视化等涉及对象类型识别、属性线形映射的行为提供可 能。2)模型元素包(ModelingItem)基于黑箱实现原理,在基界面上对模型元素的特性和 行为进行抽象;其组成为核心概念模型。3)元行为包(MetaBehavior)基于开放实现原理, 在元界面上对模型元素的特性和行为进行抽象;其组成为模型域及元行为执行体。4)图形 包(Shape)矢量图元实现模块,用于支持模型信息的可视化表示。元类包如图4所示,包括1)元类信息(MetaClassInfo)封装了类型标识、属性 信息、对象实例信息以及动态创建对象的入口,内部通过元类实例的树状关联建立类型识 别网。2)属性信息(AttributeInfo)封装了属性的名称、相对地址、数据类型、属性类型 (基本、扩展、家族成员)、大小、聚合信息;对象属性信息的自述使得可以在高的抽象层次 上实现对对象属性的操作(如拷贝、序列化、可视化)。3)聚合信息(AggregateInfo)用 于描述属性聚合的类型(静态实例、动态实例),以及静态实例模式下聚合的数量。4)对象 基类(BaseObject)提供类型识别、对象复制、元类信息获取、序列化等基础服务,并提供 事件处理的多态入口 ;将其纳入元类包,是为了使元类包成为一个完整的、可重用于多应用 领域的、支持对象自描述机制的通用基础开发包;它是应用层、具有自描述特性的所有对象 的基类。5)对象序列化(ObjArchive)—个抽象类,提供读取类型信息、读取对象、写入类 型信息、写入对象的虚接口 ;应用层的序列化操作体现为内存中对象数据与终端数据之间 的线性映射,典型终端数据如文件中的二进制或格式化数据、网络数据包、中间件数据包、 显示数据等;根据具体应用及交换协议,序列化模块需要从其派生,接口实现需要具体化。模型元素包根据模型元素的功能职责进行进一步抽象,可得到如图5所示的模型元素包。模 型元素包与其外界的关系体现为模型元素派生于对象基类,以获得元类支持;模型元素 与模型域绑定,并通过元行为包提供的元行为执行接口触发元计算;语义元素可关联多个 图元元素,而图元元素与视图之间为一种组成关系。1)模型元素(ModelingElement)泛指与建模任务相关的软件对象;分为可视化 元素、分类元素、视图三大类。模型元素具有可标识特性,内部提供树状数据结构支持模型 元素的自组织,并通过一个动态指针(ModelParas)存储模型信息的字段值。其一个主要的 抽象任务是,在基界面上实现模型元素的显示(至模型资源树)、标识修改、删除(基于引用 技术实现)、创建操作菜单、查看详细信息、创建子节点元素、聚焦、执行拖放操作等功能,这种实现表现为提供功能执行的入口、将功能执行的逻辑流程以固定的策略实现,而功能执 行过程中部分参数、逻辑条件、输出行为的确定则是基于反射机制实现,即需要提交给元界 面执行元计算获得。此外,重载于对象基类的事件响应函数(DoEvent),用于接收以下三类 消息来自窗口模块的用户操作、来自元界面的消息、服务于模型元素通信目的的消息。模 型元素存在两种角色识别问题,即软件对象领域中的对象类型识别、应用领域中的模型类 型识别,前者从元类包获得支持、后者从元界面中的模型域中获得支持。2)标识(ObjIdentify)包含主标识、辅助标识。主标识用于保证模型元素的唯一 性,且由于主标识可能需要映射至可执行软件资源中的有效标识,因而有严格的词法规范、 不能为空;而辅助标识可根据用户喜好定义,目的是使用户能够更好的理解模型元素。3)目录(Folder)用于实现分类目的的辅助元素。4)视图(Diagram)进行模型信息可视化表示的图纸,是图元元素的载体。5)语义元素(SemiElement)模型语义的载体,可进一步分解为模型实体、关联两 种类型;语义元素通过可视化的手段可在多个视图中借助图元元素表达模型信息,因而可 关联多个图元。6)模型实体(ModelingEntity)泛指设计与建模各个阶段,用户所关注的对象; 如作战指挥流程建模领域中的战位、体系对抗建模领域中的装备和平台、软件开发视图中 的类和包、部署视图中的组件和进程等;设计与建模的过程体现为定义模型实体、描述其语 义、刻画它们之间的关联关系。7)关联关系(Association)用于表达模型实体之间的某种二元关联关系,如作 战指挥流程建模领域中战位之间的信息交联关系、体系对抗建模领域中装备间的装配关 系、软件开发视图中类型之间的派生关系等。元行为包元行为包提供了对概念模型进行自表示的数据结构,并通过这些数据结构支持元 计算,其组成如图6所示。工具选择实现策略的过程,即为元行为包中对象实例化的过程, 实例化信息来源于工具重配置文件。1)模型域(ElementDomain)模型域的域名属性用于在应用域中对模型进行角色 分类,采用这种方式,而非通过软件对象模版进行分类,使得工具在理论上可支持对任意类 型的模型元素进行建模;模型域关联了一个模型元素的软件类模版标识,使得由该对象模 版创建的模型元素能与该模型域建立映射,进而使得在基界面上触发元行为成为可能;模 型域通过聚合ModelPara (模型参数),来描述模型的信息结构及语义约束;模型域挂接了 多个元行为执行体,即各种MetaBehavior类型的实例,去分别承担不同类别的元计算任 务;当模型域通过ExcuteMetaBehavior接口捕获到一个元计算请求时,遍历元计算执行 体,将请求及其参数传递给执行体执行,执行体根据参数flag (行为标志类型枚举量)判断 职责归属,执行元计算并将结果返回;一个元计算只可能被一个执行体捕获,实现策略为 当元计算被某个执行体捕获执行后,将通过返回值截断剩余执行体的元计算执行请求。2)模型参数(ModelPara)描述模型的某个属性字段,包括名称、数据类型、偏移 地址、大小、聚合信息、语义约束。3)语义约束(SemaConstriant)对模型某个属性字段的值进行约束,目前支持值 约束(ValueConstraint)、对象引用约束(RefConstraint)两种类型;前者给出值区间,后者给出可作为引用关系的模型元素的域类型。4)元行为类型(BahaviorType)枚举元界面支持的元计算类型,每一种元计算类 型映射了一种开发实现的策略。5)元行为(MetaBehavior)所有元计算执行体的基类,提供执行元计算的虚接 口 ;目前,工具支持三种元计算执行体,分别用于调整模型元素的标识特性、模型资源树节 点特性、可视化特性。6)标识特性(IdentifyProp)描述模型元素的默认标识前缀以及标识的 唯一性策略。该执行体负责执行获得默认标识(GetDefaultIdf)、标识有效性检测 (IsIdentifyValid)两个元计算。7)模型资源树节点特性(TreeltemProp)该执行体对模型资源树上 模型元素节点的表现形式、支持的操作类型进行定制,负责的元计算包括是否上 显(GetIsDisplayTreeItem)、获得图标资源(GetTreeItemIcon)、获得显示排序优 先级(GetTreeItemSortIdx)、是否允许删除(GetCanDelete)、是否允许修改标识 (GetCanEditLable)、是否允许查看细节(GetCanViewDetail)、可创建的子节点元素 (GetPossibleChildltems)、拖放操作类型判断(TestDraggingType)。8)拖放操作特性(DraggingProp)描述模型元素可能的拖放目的端域类型以及 拖放操作的行为类型(部署、归类等)。9)可视化特性(VisualProp)挂接多个可视化条目信息,用于描述模型元素在不 同视图下的图元特征。负责的元计算为创建图元(CreateDrawShape),当执行该元计算时, 通过其中的视图域类型参数找到匹配的可视化条目,创建与视图匹配的图元。10)可视化条目信息(Visualltemlnfo)关联一个视图类型、一个图元工厂,以描 述一种模型元素在某个视图下的唯一图元表现形式。11)图元工厂(DrawShapeFactory)图元工厂基类,封装了标识、位置信息,提供 创建图元的虚接口 ;目前,工具系统支持四种图元工厂矩形(RectShapeFactory)、文本 (TextShapeFactory)、连接线(LinkShapeFactory)、复合(CompositeShapeFactory) 0应用实例分析基于上述的技术思路和软件实现方案,设计得到了面向多领域的反射式建模工具 SIMDEM0。SIMDEM0是支持MDA的建模仿真平台SIMFaster的一个子工具,用于支持分布式 仿真领域的系统建模,并辅助生成运行于HRFW中间件环境下的仿真应用的软件制品。目 前,通过重配置体系,SIMDEM0已在体系对抗、虚拟样机、编队作战指挥三个领域的可视化建 模中得到应用。SIMDEM0所支持的概念模型,公共部分包括信息、事件、总线、交互关系、 类、包、继承关系、组件、成员、部署关系等;体系对抗专属的包括装备性能、实体、代理、装 配关系、搭载关系、指控关系等;虚拟样机、编队作战指挥专属的包括子系统、台位、功能、 信息流程逻辑等。限于篇幅,仅以编队作战指挥系统中的台位为例,给出工具重配置文档中 对概念模型及其相关特性的描述示例,图7的工具重配置文档对概念模型及其相关特性的 描述示例最后应说明的是,以上实施例仅用以描述本发明的技术方案而不是对本技术方 法进行限制,本发明在应用上可以延伸为其他的修改、变化、应用和实施例,并且因此认为 所有这样的修改、变化、应用、实施例都在本发明的精神和教导范围内。
权利要求
1.一种基于反射技术的建模工具,包括元类包、模型元素包、元行为包和图形包,其特 征在于,所述元类包用于实现软件对象的自描述,通过类型描述、属性描述、对象实例注册 来提供包括类型识别、动态创建、对象管理的基础服务,并且用于在高抽象层次实现对象初 始化、复制、序列化、数据可视化的涉及对象类型识别、属性线形映射的行为;所述模型元素 包用于基于黑箱实现原理在基界面上对模型元素的特性和行为进行抽象;所述元行为包用 于基于开放实现原理在元界面上对模型元素的特性和行为进行抽象;所述图形包包括矢量 图元实现模块,用于支持模型信息的可视化表示。
2.根据权利要求1所述的建模工具,其特征在于,所述元类包包括元类信息,封装类 型标识、属性信息、对象实例信息以及动态创建对象的入口,其中通过元类实例的树状关联 建立类型识别网;属性信息,封装属性的名称、相对地址、数据类型、属性类型、大小、聚合信 息;聚合信息,用于描述属性聚合的类型,以及静态实例模式下聚合的数量;对象基类,用 于提供包括类型识别、对象复制、元类信息获取、序列化的基础服务,并提供事件处理的多 态入口 ;对象序列化,用于提供读取类型信息、读取对象、写入类型信息、写入对象的虚接
3.根据权利要求1所述的建模工具,其特征在于,所述模型元素派生于对象基类,以获 得元类支持;模型元素与模型域绑定,并通过元行为包提供的元行为执行接口触发元计算; 语义元素可关联多个图元元素,图元元素与视图之间为一种组成关系。
4.根据权利要求1所述的建模工具,其特征在于,所述模型元素包包括模型元素,指 与建模任务相关的软件对象;包括可视化元素、分类元素、视图;标识,包含主标识、辅助标 识,主标识用于保证模型元素的唯一性,辅助标识根据用户喜好定义,用于用户理解模型元 素;目录,用于实现分类目的的辅助元素;视图,进行模型信息可视化表示的图纸,是图元 元素的载体;语义元素,是模型语义的载体,包括模型实体、关联,语义元素通过可视化手段 在多个视图中借助图元元素表达模型信息,关联多个图元;模型实体,指设计与建模各个阶 段,用户所关注的对象,设计与建模的过程体现为定义模型实体、描述其语义、刻画它们之 间的关联关系;关联关系,用于表达模型实体之间的二元关联关系。
5.根据权利要求4所述的建模工具,其特征在于,所述模型元素具有可标识特性,内部 提供树状数据结构支持模型元素的自组织,并通过一个动态指针存储模型信息的字段值; 模型元素包括软件对象领域中的对象类型识别、应用领域中的模型类型识别。
6.根据权利要求1所述的建模工具,其特征在于,所述元行为包提供对概念模型进行 自表示的数据结构,并通过这些数据结构支持元计算,包括模型域,用于在应用域中对模型进行角色分类,支持对任意类型的模型元素进行建模; 模型参数,描述模型的某个属性字段;语义约束,对模型某个属性字段的值进行约束;元行 为类型,枚举元界面支持的元计算类型,每一种元计算类型映射了一种开发实现策略;元行 为,所有元计算执行体的基类,提供执行元计算的虚接口 ;标识特性,描述模型元素的默认 标识前缀以及标识的唯一性策略;模型资源树节点特性,该执行体对模型资源树上模型元 素节点的表现形式、支持的操作类型进行定制;拖放操作特性,描述模型元素可能的拖放目 的端域类型以及拖放操作的行为类型;可视化特性,挂接多个可视化条目信息,用于描述模 型元素在不同视图下的图元特征;可视化条目信息,关联一个视图类型、一个图元工厂,以 描述一种模型元素在某个视图下的唯一图元表现形式;图元工厂,用于封装标识、位置信息,提供创建图元的虚接口。
7.根据权利要求6所述的建模工具,其特征在于,所述模型域通过聚合模型参数,描述 模型的信息结构及语义约束;模型域挂接了多个元行为执行体,分别承担不同类别的元计 算任务。
8.根据权利要求6所述的建模工具,其特征在于,所述模型资源树节点对模型资源树 上模型元素节点的表现形式、支持的操作类型进行定制,负责的元计算包括是否上显、获得 图标资源、获得显示排序优先级、是否允许删除、是否允许修改标识、是否允许查看细节、可 创建的子节点元素、拖放操作类型判断。
9.根据权利要求6所述的建模工具,其特征在于,所述可视化特性负责创建图元,当执 行该元计算时,通过其中的视图域类型参数找到匹配的可视化条目,创建与视图匹配的图元。
10.一种建模工具的重构方法,包括步骤10)、在基界面上,对具有不同功能职责的模型元素进行抽象,形成稳定的核心概 念系统;模型元素构成建模工具的基对象集;步骤20)、在元界面上,通过模型域描述模型元素在应用域中的具体类型、信息结构以 及语义约束,使得模型元素种类的扩展不受限制,且使得在高的抽象层次上实现模型信息 的录入与验证;步骤30)、一个模型元素对应绑定一个模型域,一个模型域挂接多个元行为执行体,实 现基对象与元对象的关联;引入元类机制对对象类型、结构进行自述,并提供包括类型识 另O、动态创建、复制、序列化的基础服务;步骤40)、通过工具重配置文件对元界面进行定制。
11.根据权利要求10的方法,其中,步骤20)还包括通过具有不同功能职责的元行为 执行体来执行各种类型的元计算,元计算的结果将作用到模型元素的标识特性、组织特性、 可视化特性以及操作模式。
12.根据权利要求10的方法,其中,步骤30)还包括模型元素的软件计算通过模型域 并交由相应的元行为执行体捕获并执行;其中,基对象与元对象之间的通信采用统一的接 口形式。
13.根据权利要求10的方法,其中,步骤40)还包括重配置文件描述工具所支持的模 型域以及其挂接的元行为执行体,工具启动时被加载,元界面的对象被实例化;文件中,每 个模型域对象映射一个模型元素类标识,通过该标识查找模型元素的元类对象,通过该元 类对象动态创建模型元素,并将其与模型域对象进行绑定。
14.根据权利要求13的方法,其中,步骤40)中,根据工具在概念模型的变化需求,抽象 出由模型域、元行为执行体构成的元界面对其进行描述;元界面中的对象及对象数据通过 配置进行定制,使得在不需要改动代码的情况下实现工具在概念模型上的重构。
全文摘要
本发明提供一种建模工具的重构方法,包括在基界面上,对具有不同功能职责的模型元素进行抽象,形成稳定的核心概念系统;模型元素构成建模工具的基对象集;在元界面上,通过模型域描述模型元素在应用域中的具体类型、信息结构以及语义约束,使得模型元素种类的扩展不受限制,且使得在高的抽象层次上实现模型信息的录入与验证;一个模型元素对应绑定一个模型域,一个模型域挂接多个元行为执行体,实现基对象与元对象的关联;引入元类机制对对象类型、结构进行自述,并提供包括类型识别、动态创建、复制、序列化的基础服务;通过工具重配置文件对元界面进行定制。
文档编号G06F9/44GK102103504SQ20111004152
公开日2011年6月22日 申请日期2011年2月21日 优先权日2011年2月21日
发明者方伟, 温玮, 黄晓东 申请人:方伟, 温玮, 黄晓东
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1