首页> 中国专利> 一种基于扩展UML的软件模糊自适应建模工具构造方法

一种基于扩展UML的软件模糊自适应建模工具构造方法

摘要

本发明公开了一种基于扩展UML的软件模糊自适应建模工具构造方法,包括以下步骤:该方法符合UML2.0规范,首先通过扩展统一建模语言定义软件模糊自适应元设施,该元设施包括构造型以及与该构造型对应的标记值和约束条件,生成领域语言;然后,利用新添加的元设施定义领域模型,该领域模型包含多个视图:分析视图即软件模糊自适应用例图、结构视图即软件模糊自适应类图、行为视图即软件模糊自适应顺序图;最后利用XML定义元设施和领域模型的存储结构,并构造软件模糊自适应领域插件,结合统一建模语言工具构成完整的建模环境。本发明能够兼容标准UML建模环境且构造方便,对于提高软件模糊自适应的开发效率具有重要作用。

著录项

  • 公开/公告号CN103955369A

    专利类型发明专利

  • 公开/公告日2014-07-30

    原文格式PDF

  • 申请/专利权人 中国人民解放军理工大学;

    申请/专利号CN201410175452.3

  • 申请日2014-04-28

  • 分类号G06F9/44(20060101);

  • 代理机构32203 南京理工大学专利中心;

  • 代理人朱显国

  • 地址 210000 江苏省南京市秦淮区海福巷1号

  • 入库时间 2023-12-17 00:30:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-17

    授权

    授权

  • 2014-08-27

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20140428

    实质审查的生效

  • 2014-07-30

    公开

    公开

说明书

技术领域

本发明属于属于软件新方法和软件建模技术领域,特别是一种基于扩展UML的软 件模糊自适应建模工具构造方法。

背景技术

软件自适应问题已成为软件工程领域所关注的一个焦点问题。从IBM的自治计算 (autonomic computing)、美国军方的DASADA计划、每年国际软件工程大会ICSE的 SEAMS研讨会等中都可看出软件自适应问题研究的重要程度。为了增强软件系统自身 的容错、异常处理和应对变化能力,人们开始追求并研究具备自适应能力的软件系统。 这种软件系统可以在运行环境或者用户需求变化产生扰动,导致软件服务质量无法满足 用户需求时,主动调整软件自身状态、行为和结构,以确保其服务质量符合用户需求。 这种能够根据用户制定的策略进行自我调整的软件系统称为自适应软件系统。

软件模糊自适应(Software Fuzzy Self-Adaptation,SFSA)(1.YANG Q L,LV J,TAO X P,et al.Fuzzy Self-Adaptation of Mission-Critical Software Under Uncertainty[J].Journal of  Computer Science and Technology,2013,28(1):165-187.)是在软件自适应技术的基础上提 出的,它是把模糊控制逻辑应用到自适应软件领域的一种新的自适应软件范型。它的提 出试图解决软件自适应环中日益凸显的不确定性和模糊性,消除模糊不确定性对自适应 过程的影响,实现在不确定条件下软件基于不完备信息的感知、决策和自适应。随着软 件模糊自适应技术的提出与应用,迫切需要一套能够贯穿从需求分析到设计、实现等全 过程的软件模糊自适应开发方法,目前针对SFSA的开发阶段做了大量工作。但针对软 件模糊自适应需求分析建模的研究还比较少,而需求分析建模是开发优秀软件的重要环 节,因此,需要一套专用辅助工具进行需求分析和设计阶段的建模。

统一建模语言(Unified Modeling Language,UML)作为面向对象建模的核心技术,通 过类、对象、关系等设施描述系统的静态结构信息,通过序列图、状态图等描述系统的 动态行为。UML对软件系统的抽象化描述方便了开发人员之间的思想交流,也为文档 处理提供了方便,为软件过程的标准化、软件开发效率的提高做出了巨大贡献。但由于 UML是一种抽象的语言,不包含具体领域的语义和语法描述,其在建模软件模糊自适 应系统时会出现语法结构表示不清晰、语义表述不准确的问题,且模糊自适应逻辑与应 用逻辑交织在一起,不便于模糊自适应逻辑的封装与重用。

发明内容

本发明的目的在于提供一种兼容性好、构造方便的基于扩展UML的软件模糊自适 应建模工具构造方法,以提高模糊自适应软件的开发效率。

实现本发明目的的技术解决方案为:一种基于扩展UML的软件模糊自适应建模工 具构造方法,该方法符合UML2.0规范,利用统一建模语言扩展机制定义软件模糊自适 应元设施,然后利用新添加的元设施定义领域模型,最后用XML定义领域模型的存储 结构并构造领域插件,结合统一建模语言工具构成完整的建模环境,具体步骤如下:

步骤1,通过扩展统一建模语言定义软件模糊自适应元设施,该元设施包括构造型 以及与该构造型对应的标记值和约束条件,生成领域语言;

步骤2,利用新添加的元设施定义领域模型,该领域模型包含多个视图:分析视图 即软件模糊自适应用例图、结构视图即软件模糊自适应类图、行为视图即软件模糊自适 应顺序图;

步骤3,利用XML定义元设施和领域模型的存储结构,并构造软件模糊自适应领 域插件,结合统一建模语言工具构成完整的建模环境。

本发明与现有技术相比,其显著优点为:(1)直接面向软件模糊自适应领域建模,在 表达模糊自适应的概念时针对性强,更能突出其领域特征;(2)基于统一建模语言扩展机 制构造建模工具,可视化程度高、通用性强、兼容性好;(3)从多角度建模软件的结构和 行为,信息全面,便于用户理解;(4)与传统自然语言相比,对象约束语言更能清晰、准 确地描述软件内部语义;(5)专为SFSA需求分析与设计阶段定制的工具,可大大提高软 件模糊自适应系统开发效率。

附图说明

图1是本发明基于扩展UML的软件模糊自适应建模工具构造方法的流程框图。

图2是软件模糊自适应概念的系统框架图。

图3是本发明方法中所需添加的元设施示意图。

图4是本发明方法中模糊用例Fuzzy Case包含子类的示意图。

图5是本发明方法中模糊类Fuzzy Class包含子类的示意图。

图6是本发明方法中模糊关系Fuzzy Association包含子类的示意图。

图7是本发明方法中基于扩展UML的软件模糊自适应建模工具的界面图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步详细说明。

为适应特定领域建模的需求UML2.0提供了一种扩展机制(构造型、标记值和约束 条件),用户可根据本领域特征,通过添加构造型、标记值和约束条件丰富UML的语法 和语义,定制适合本领域的软件建模工具。因此,本发明方法基于扩展UML的软件模 糊自适应建模工具构造方法符合UML2.0规范,利用统一建模语言扩展机制定义软件模 糊自适应元设施,然后利用新添加的元设施定义领域模型,最后用XML定义领域模型 的存储结构并构造领域插件,结合统一建模语言工具构成完整的建模环境,结合图1, 具体步骤如下:

步骤1,通过扩展统一建模语言定义软件模糊自适应元设施,该元设施包括构造型 以及与该构造型对应的标记值和约束条件,生成领域语言,具体为:

(1.1)通过扩展统一建模语言定义软件模糊自适应元设施,该元设施中的构造型包 括模糊用例、模糊类、模糊关系,其中:

模糊用例用以描述模糊自适应调节过程中各操作的协作关系,模糊用例包括模糊感 知、模糊推理、模糊执行、自适应目标设定,其中,模糊感知由感知和模糊化两个子 用例构成,模糊执行由去模糊化和执行两个子用例构成;

模糊类包括模糊感知器、模糊自适应器、模糊执行器、知识库、协调器,所述模糊 感知器负责采集软件内部状态及外部环境的实时数据,并将其做模糊化处理,筛选出需 要进行模糊自适应调节的有效信息;模糊自适应器基于模糊推理规则进行模糊自适应决 策;模糊执行器用于去模糊化操作并将清晰的模糊决策施加到应用逻辑,调整应用逻辑 的参数、行为或结构;知识库存放用以模糊化处理的隶属度函数和用以模糊推理操作的 推理规则;协调器用以协调多个模糊自适应控制环的交互;

模糊关系用以连接各模糊用例和各模糊类。

(1.2)分别定义模糊用例(Fuzzy Case)、模糊类(Fuzzy Class)、模糊关系(Fuzzy  Association)所需标记值,采用对象约束语言精确定义各构造型所需的约束条件。

步骤2,利用新添加的元设施定义领域模型,该领域模型包含多个视图:分析视图 即软件模糊自适应用例图、结构视图即软件模糊自适应类图、行为视图即软件模糊自适 应顺序图,分别如下:

(2.1)分析视图即软件模糊自适应用例图:用添加的构造型模糊用例和UML元设 施用例构造分析视图即软件模糊自适应用例图;

(2.2)结构视图即软件模糊自适应类图:用添加的构造型模糊类和UML元设施类 构造结构视图即软件模糊自适应类图;

(2.3)行为视图即软件模糊自适应顺序图:用添加的构造型模糊对象和UML元设 施对象构造行为视图即软件模糊自适应顺序图。

步骤3,利用XML定义元设施和领域模型的存储结构,并构造软件模糊自适应领 域插件,结合统一建模语言工具构成完整的建模环境,基于StarUML5.0具体步骤为:

(3.1)利用XML定义元设施和领域模型的存储结构,构造软件模糊自适应领域插 件配置文件:FACT.prl,配置所添加的元设施和领域模型的基本属性;

(3.2)添加软件模糊自适应领域插件所需的图标文件;

(3.3)结合统一建模语言工具构成完整的建模环境,将软件模糊自适应领域插件添 加到UML标准建模工具StarUML5.0中,构成完整的建模环境。

下面结合具体实施例对本发明作进一步详细说明。

实施例1

结合图1,本发明基于扩展UML的软件模糊自适应建模工具构造方法,步骤如下:

步骤1,通过扩展统一建模语言定义软件模糊自适应元设施。如图2所示,软件模 糊自适应(Software Fuzzy Self-Adaptation,SFSA)系统采用内嵌分离式的软件自适应框架 形式,在结构上根据关注点分离的思想分为两部分:模糊自适应逻辑和应用逻辑。应 用逻辑是为用户提供功能性需求的软件模块,可用标准UML进行需求分析与设计阶段 的建模。模糊自适应逻辑可视为一种特殊的基于模糊逻辑的自动控制软件模块,其涉及 到特定领域概念,如模糊化、去模糊化、模糊推理等,标准UML缺少相关设施,但UML 提供了一种扩展机制(构造型、标记值和约束条件),用户可利用这种扩展机制定制满足 本领域需求的工具。本发明方法通过扩展UML使其支持模糊自适应逻辑建模和设计。 如图3所示,根据需要本发明方法添加了模糊用例Fuzzy Case、模糊类Fuzzy Class和模 糊关系Fuzzy Association三种构造型表示SFSA的领域概念,并添加了与构造型对应的 标记值和约束条件,约束建模行为,具体为:

(1)基于UML的用例Use Case添加构造型模糊用例Fuzzy Case(如下图4)所示。模 糊用例Fuzzy Case用以描述模糊自适应调节过程中各操作的协作关系,Fuzzy Case定义 了模糊感知(Fuzzy-Sensing)、模糊推理(Fuzzy Inference)、模糊执行(Fuzzy-Acting)、自 适应目标设定(Set Self-Adaptation Objectives)四个子用例,将模糊自适应控制过程自然的 分为三个阶段,即模糊感知阶段、模糊自适应决策阶段和模糊施动阶段。其中, Fuzzy-Sensing划分为感知(Sense)和模糊化(Fuzzify)两个子用例;Fuzzy-Acting划分为去 模糊化(Defuzzify)和执行(Act)两个子用例。

(2)基于UML的类Class添加构造型模糊类Fuzzy Class。将步骤(1)识别出的模糊 用例,映射为具体的软件实体,如图5所示。结合图2软件模糊自适应概念模型和图4 用例分析,添加构造型模糊类Fuzzy Class。模糊类Fuzzy Class定义了模糊感知器 (FuSensor)、模糊自适应器(FuAdaptor)、模糊执行器(FuActuator)、知识库(KnowledgeBase) 和协调器(Coordinator)五个单元。模糊感知器(FuSensor)主要负责采集软件内部状态及外 部环境的实时数据,并将其做模糊化处理,筛选出需要进行模糊自适应调节的有效信息, 该单元由传感器(Sensor)和模糊化单元(Fuzzification)两部分组成;模糊自适应器 (FuAdaptor)根据模糊感知器(FuSensor)获得的模糊化的观测数据,在蕴含于模糊规则中 的知识指导下,采用某种推理机制进行自适应决策;模糊执行器(FuActuator)对模糊决策 结果进行去模糊化处理得到清晰化的决策,并通过调整应用逻辑的参数、行为或结构将 决策结果作用到目标软件上,该单元由去模糊化单元(Defuzzification)和执行器(Actuator) 两部分组成;知识库(KnowledgeBase)存放用以模糊化处理的隶属度函数(Membership)和 用以模糊推理操作的模糊规则(Fuzzy Role);协调器(Coordinator)用以协调多个模糊自适 应控制环的交织、缠绕问题。

(3)基于UML的Association添加构造型模糊关系Fuzzy Association。模糊关系Fuzzy  Association用以连接各模糊用例和各模糊类,包含trigger、precede、parallel、select、affect、 monitor、invoke和adjust八种连接关系(如图6所示),表1以控制流图的形式给出了部 分Fuzzy Association的语义描述。如触发关系<<trigger>>,“A[c];B”表示用例A执行后, 当其满足条件c时,用例B才能执行;<<precede>>表优先关系,用例B必须在用例A 执行完成之后才能执行。

表1模糊关系Fuzzy Association语义描述

(4)添加与构造型对应的标记值和约束条件。软件模糊自适应各软件实体有其特 殊性,本发明方法通过给各软件实体添加标记值(tagged value),为其增加新特性。以构 造型Sensor为例,Sensor根据使用场合的不同可分为三类:即State型、Resource型和 Envirenment型,因此可对其添加构造型Kind标注其特殊性(表2第1行)。表2给出部 分构造型的标记值。

表2标记值规范

为约束建模行为,本发明方法选用对象约束语言(Object Constraint Language,OCL) 定义类的操作的语义。下面以构造型FuAdaptor的操作run()为例,说明OCL使用过程:

表3构造型FuAdaptor的操作run()

这样就实现了对FuAdaptor的操作run()的约束,操作执行过程前后需要要满足一 定的条件,如不变式(Invariant)inv表示类的各个成员变量之间需要满足的关系,类的任 何操作不会该改变成员变量之间的关系(表3第2行);前置条件(Precondition)pre表示一 个类操作前需要满足的条件(表3第3、4行);后置条件(Postcondition)post表示一个类 操作结束时需要满足的条件(表3第5、6行)。若一个类的操作满足前置条件,操作完成 后不满足后置条件,即是异常。

步骤2,利用新添加的元设施定义领域模型。利用新添加的元设施定义领域模型, 该领域模型包含多个视图:分析视图即软件模糊自适应用例图SFSA Case Diagram、结 构视图即软件模糊自适应类图SFSA Class Diagram、行为视图即软件模糊自适应顺序图 SFSA Sequence Diagram,具体为:

(1)软件模糊自适应用例图SFSA Case Diagram

软件模糊自适应用例图SFSA Case Diagram由模糊用例Fuzzy Case和UML用例Use Case及部分模糊关系Fuzzy Association构成。模糊用例Fuzzy Case刻画了模糊自适应逻 辑的功能需求,UML用例Use Case刻画了应用逻辑的功能需求。故本方法将模糊用例 Fuzzy Case和UML用例Use Case放到同一视图下,构造软件模糊自适应用例图SFSA  Case Diagram,描述整个软件模糊自适系统的功能需求。

(2)软件模糊自适应类图SFSA Class Diagram

软件模糊自适应类图SFSA Class Diagram由模糊类Fuzzy Class和UML类Class及 及部分模糊关系Fuzzy Association构成。模糊类Fuzzy Class建模模糊自适应逻辑的各软 件实体,UML类Class建模目标软件内部的各软件实体。故本方法将模糊类Class和UML 类Class放到同一结构视图下,构造软件模糊自适应类图SFSA Class Diagram,描述整 个软件模糊自适应系统的内部结构。

(3)软件模糊自适应顺序图SFSA Sequence Diagram

软件模糊自适应顺序图SFSA Sequence Diagram由模糊对象Fuzzy Object和UML 对象Object及UML顺序图的基本设施构成。将模糊对象Fuzzy Object和UML对象Object 放到同一视图中,给出参与模糊自适应调节的一系列对象的交互顺序,构造软件模糊自 适应顺序图SFSA Sequence Diagram。

步骤3,利用XML定义元设施和领域模型的存储结构,并构造软件模糊自适应领 域插件。StarUML是一种用于创建UML用例图、类图等多种视图的建模平台,它具有 良好的扩展性,允许用户对特定领域进行扩展,构建符合领域需求的个性化统一建模语 言视图。因此,通过重新配置StarUML存储文件,添加Fuzzy Case、Fuzzy Class和Fuzzy  Association三种构造型和分析模型、结构模型和行为模型三种视图,构造软件模糊自适 应领域插件,基于StarUML5.0开发指南(“StarUML5.0Developer Guide”Chapter10. Extending Notation)具体步骤为:

(1)定义元设施和领域模型的存储结构,构造软件模糊自适应领域插件配置文件, 配置所添加的元设施和领域模型的基本属性。本方法将新添加的元设施和领域模型保存 到模型范式配置文件XML中,表4给出该存储文件FACT.prl的结构片段。

表4存储文件FACT.prl的结构片段

(2)添加软件模糊自适应领域插件所需的图标文件;

(3)结合统一建模语言工具构成完整的建模环境,将软件模糊自适应领域插件添 加到UML标准建模工具StarUML5.0中,构成完整的建模环境,图7为工具的一个界 面展示图。

本发明领域建模工具基于一般UML工具而建立,作为软件模糊自适应的CASE工 具可用在软件开发工程的需求分析与设计阶段。其使用方法同一般UML工具一样: SFSA Case Diagram刻画系统的功能需求;SFSA Class Diagram指定软件系统某些结构上 的特性,是一种结构视图;SFSA Sequence Diagram显示对象之间的交互顺序,是一种 行为视图。此外,本发明采用定制方式构造的软件模糊自适应建模工具,能够兼容标准 UML建模环境且构造方便,对于提高软件模糊自适应的开发效率具有重要作用。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号