您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
   
 
     
   
 订阅
  捐助
EA模型的仿真—验证未来
 
作者:刘利,俎涛(火龙果软件工程)
548 次浏览     评价:  
 2020-9-3
 

模型为什么需要仿真

建模的目的是能够预测未来的结果,而仿真无疑让预测更加真实。通过模型仿真可以:

  • 发现未来的业务或者系统中潜在的瓶颈、低效或问题,
  • 验证行为模型的正确性,
  • 降低不确定性带来的返工成本。
  • 模型仿真具有以下优点:

  • 可以对概念模型的行为进行仿真,验证行为模型的正确性。
  • 可以动态跟踪并突出显示模型中的活动节点。
  • 更好地理解模型是如何工作运行的。
  • 改善沟通和可视化系统是如何真正运作的。
  • 降低复杂性和风险。
  • 分析变更对系统或业务流程的影响。
  • 支持UML活动(活动图)、交互(顺序图)、状态机(状态图)和BPMN业务流程(BPMN)的仿真。
  • 可以对哪些图进行仿真

    在EA中可以对哪些图进行仿真

  • 活动图
  • 状态图
  • 时序图
  • BPMN等


  • 下面简要介绍一下这些仿真。

    顺序图仿真

  • 模拟对象之间按照时间的进行的消息交互,
  • 在仿真的时候可以对其中的判定条件进行选择,
  • 也可以对已有的软件逆向生成顺序图。


  • 状态图仿真

  • 建模状态图。
  • 模拟事件观察状态的变化。
  • 可以设置断点暂停仿真。
  • 可以检查调用堆栈,在运行时检查仿真变量。


  • 活动图仿真:

  • 建模活动图。
  • 启动仿真,按照时序执行活动过程。
  • 可以设置断点。
  • 可以监视变量、调用堆栈。


  • BPMN仿真

  • 建模BPMN工作流程。
  • 仿真BPMN工作流执行过程。
  • 分析业务流程,以确定瓶颈。
  • 更改仿真的性能参数,评估业务流程的性能。


  • EA中的仿真器有哪些功能

    EA中的仿真的功能是由仿真器(Simulator)负责的,它可以支持以上提到的各种仿真,具有如下功能:

  • 触发器
  • 监护条件
  • 事件
  • 堆栈
  • 断点设置
  • 变量监视


  • 如何进行仿真

    仿真属于EA中比较复杂的功能,需要正确的建模,严谨的操作。下面以贷款审批为例讲解仿真的应用方法。

    这个仿真示例项目包括如下部分:

  • 业务流程建模(BPMN工作流图)
  • 业务决策建模(状态图)
  • 界面原型建模(界面原型图)
  • 如下图所示:


    如下是贷款申请、审批业务流程的模型(采用BPMN建模):


    BPMN建模的业务流程图可以进行仿真。操作方法是:选择Simulate,点击Start开始仿真,如下图:

     

    接下来进行决策影响分析,根据贷款系统用户管理功能用例,设计用户登录的状态图,如下图:

     

    对于登录的判定逻辑采用状态图进行建模,然后对界面原型建模。如下图:

     

    把登录判定的状态图和界面原型关联,以便进行联合仿真。进入登录状态的时候会显示界面,然后界面上输入的用户名和密码会发送给状态图的判定条件,以便执行相应的判定规则,判断是否登录成功,会根据判定结果转入不同的状态,如下图:


    基于SysML的参数图仿真

    EA还可以进行SysML的参数图仿真,方法如下:

  • 首先建立参数图以便描述算法,包括输入、输出和算法单元。
  • 然后定义输入的参数来源。
  • 选择监视到输出参数。
  • 执行仿真,显示输出的参数面板,了解计算的结果。


  • EA的Sys ML参数图仿真 可以对接三种执行环境:

  • Matlab Simulink
  • OpenModelica
  • GNU Octave
  • 如下是EA结合 Matlab Simulink的仿真界面截图:


    如下是基于OpenModelica编译与运行环境的仿真界面截图:


    如下是EA结合Octave的仿真界面截图:


    EA具有的多种仿真功能,可以帮助用户根据需要选择适合的仿真:

  • 如果是工作流建模,采用BPMN+BPSim仿真
  • 如果是状态建模,采用状态图仿真
  • 如果是状态模型+code生成,采用可执行状态机仿真;
  • 如果是算法,采用Sys ML参数图仿真,可以根据需要选择3中执行环境:MatlabSimulink、Octave、OpenModelica。
  • 如果是活动过程,可以采用活动图仿真。
  • 如果要描述对象之间的交互,采用顺序图仿真。

  • 如果您希望了解更多信息:

    下载 pdf版:《EA模型的仿真-验证未来》

    本文使用的建模工具为EA,可以下载试用版http://tool.uml.com.cn/ToolsEA/download.asp

     

     

     

    后记

    希望您读了此文后有所受益。

    如果您有经验乐于分享,欢迎投稿给我们。

    如果您对我们的培训、咨询和工具感兴趣:

  • 课程:基于UML和EA进行分析设计
  • 课程:MBSE(基于模型的系统工程)  
  • 课程:基于模型的需求管理)方法与实践
  • 课程:基于SysML和EA进行系统设计与建模  
  • 课程:企业架构建模
  • 课程:系统架构建模方法与案例
  • 课程:领域驱动的建模与设计
  • 课程:基于模型的设计
  • 课程:业务建模与业务分析
  • 建模工具:EA
  • 基于模型的需求管理工具:iSpace
  • 咨询方案:MBSE(基于模型的系统工程)
  • 咨询方案:基于UML的模型驱动的开发
  • 欢迎联系我们: 俎涛 Zutao@uml.net.cn

       
    548 次浏览     评价: 订阅 捐助
     
    相关文章

    UML概览
    UML图解:用例图(Use case diagram )
    UML图解:活动图(activity diagram )
    UML图解:类图(class diagram )
     
    相关文档

    UML统一建模语言参考手册
    网上商城UML图
    UML建模示例:JPetStor
    UML序列图编写规范
     
    相关课程

    UML与面向对象分析设计
    UML + 嵌入式系统分析设计
    业务建模与业务分析
    基于UML和EA进行系统分析设计
    最新课程计划
     
    最新文章
    iPerson的过程观:要 过程 or 结果
    “以人为本”的工程哲学
    企业架构、TOGAF与ArchiMate概览
    UML 图解:顺序图( sequence diagram )
    UML 图解:对象图( class diagram )
    最新课程
    基于UML和EA进行系统分析设计
    UML+EA+面向对象分析设计
    基于SysML和EA进行系统设计与建模
    UML + 嵌入式系统分析设计
    领域驱动的建模与设计
    更多...   
    成功案例
    某电信运营供应商 应用UML进行面向对象分析
    烽火通信 UML进行面向对象的分析设计
    西门子 UML与嵌入式软件分析设计
    航天科工某子公司 从系统到软件的分析、设计
    深圳某汽车企业 模型驱动的分析设计
    更多...