实验三 UML建模工具的安装与使用

一、 实验目的                          

  1.学习使用 EA(Enterprise Architect) 开发环境创建模型的一般方法;

  2.理解 EA 界面布局和元素操作的一般技巧;

  3.熟悉 UML 中的各种图的建立和表示方法;

  4.掌握如何通过 EA 工具完成相关模型的建立

二、 实验内容及步骤           

  1.熟悉EA 环境

  2.采用EA工具完成以下ATM示例系统的UML模型的建立。

  3.通过 EA 工具完成相关 UML 图的绘制。在建立过程中尝试理解模型元素,模型元素之间的关系。

  提示:EA打开 toolbox 的快捷键为 alt+5

三、实验过程记录                

  新建项目ATM,在EA的提示下勾选需求模型、分析模型、用例模型和逻辑模型四个模块。

    实验三 UML建模工具的安装与使用

  给模型和四个视图改名。

    实验三 UML建模工具的安装与使用

1、需求建模       

  打开需求建模,在需求模型下面创建功能性需求和非功能性需求两个子包。

    实验三 UML建模工具的安装与使用 

    实验三 UML建模工具的安装与使用

   在功能性需求下创建查询余额、卡处理、取款、用户登录和用户界面五个子模块。

    实验三 UML建模工具的安装与使用

  打开每一个功能性子模块的需求图,创建需求元素。从工具箱内将需求元素直接拖动到需求图中并命名。使用快捷连接线创建子需求。

  (1)卡处理

  识别卡:判断银行卡是否有效 

  退卡:当操作结束或银行卡无效时将银行卡从ATM机退出

    实验三 UML建模工具的安装与使用

  (2)取款

    实验三 UML建模工具的安装与使用

   (3)查询余额

    实验三 UML建模工具的安装与使用

   (4)用户界面

    实验三 UML建模工具的安装与使用

   (5)用户登录

    实验三 UML建模工具的安装与使用

   打开功能性需求视图,将其下面的每一个子包拖动到图中形成包图,为此图命名为“ATM系统功能性需求”。

    实验三 UML建模工具的安装与使用

2、用例建模      

  描绘用户使用ATM时使用的三个用例。

    实验三 UML建模工具的安装与使用

3、行为模型      

   在ATM模型下创建行为模型视图,在该视图下创建3个行为图分别为活动图、状态图和顺序图。

    实验三 UML建模工具的安装与使用

   (1)活动图

  活动图的3个主体:用户、ATM机、银行主机。分区将3个主体标示出来。ATM系统的取款活动是由用户发起的。

    实验三 UML建模工具的安装与使用

  (2)状态图(视频在此处中断了,没有找到对应的系统状态图,只能画到这里)

  在状态图中不区分主体,ATM系统在不同的时刻显示不同的状态,事件的发生触发状态的转变。

    实验三 UML建模工具的安装与使用

  (3)顺序图

    实验三 UML建模工具的安装与使用

    实验三 UML建模工具的安装与使用

    实验三 UML建模工具的安装与使用

四、思考题        

  【Q】通过网络查找相关资料,了解有哪些工具可以支持UML模型与C++或JAVA或PYTHON代码的相互转换,并给出网络链接及说明。

  【A】(1)Rational Rose(http://www-03.ibm.com/software/products/en/ratirosefami

     Rose2002功能上可以完成UML的9种标准建模,即静态建模(用例图类图对象图组件图配置图)和动态建模(合作图序列图状态转移图活动图),为了使静态建模可以直接作用于代码,Rose提供了类设计到多种程序语言代码自动产生的插件。同时,作为一款优秀的分析和设计工具,常用UML建模工具Rose具有强大的正向和逆向工程能力。正向工程这里指的是由设计产生代码,逆向工程指由代码归纳出设计。通过逆向工程Rose可以对历史系统作出分析,然后进行改进,再通过正向工程产生新系统的代码,这样的设计方式我们称之为再工程。

      (2)Visual Paradigm for UML(http://www.visual-paradigm.com/product/vpuml/

       Visual Paradigm for UML (VP-UML)是一款功能强大、跨平台、使用最便捷、直观的UML建模和CASE工具,它可以整合在其他CASE工具或者其他IDE工具中,这种“一站购物式”的软件解决方案要远远优于常规的Model-Code-Deploy的开发进程。 Visual Paradigm for UML支持UML建模、数据库建模、对象关系映射、逆向工程和Java双向工程等等,功能异常强大。

     (3)UMLet(http://www.umlet.com/

       UMLet是开源的UM建模工具,有单独软件和Eclipse插件两种安装形式。UMLet是跨平台的,底层为JAVA,且是绿色版的。

     (4)Astah(https://astah.net/

                   Astah是一款非常实用的uml建模工具,是一个百分之百的使用Java应用程序,可以多功能跨平台在各种主流操作系统中使用。支持各种标准格式。可以与其它建模工具交互模型。

     (5) BOUML(https://www.bouml.fr/

       BOUML是一个开源的UML2建模工具,这款建模软件界面简洁,使用方便,并且可以支持很多常见的语言可生成包括 C++/Java/Idl/PHP/Python 等代码,支持操作系统包括:Unix/Linux/Solaris,MacOS X 和 Windows。

        (6)MagicDraw UML(https://www.nomagic.com/products/magicdraw

      MagicDraw UML是一款UML建模和面向对象系统设计分析工具,适用于商业分析师、软件分析员、程序员、质量评估工程师、文档编制者以及企业管理者使用,支持团队开发的UML建模和CASE工具。支持J2EE, C#, C++, CORBA IDL, .NET, XML Schema, WSDL, 数据库建模, DDL生成和反向工程。

五、实验小结       

   一开始下载了最新版本的EA,结合视频看了之后感觉到EA不同版本之间的差别还是挺大的。在给Model命名时发现无法像视频里那样直接更改,也没有找到解决方法,所以还是重新下载了version10的EA。跟着视频做下来大概花了一个多小时,其中活动图和顺序图比较复杂,耗费的时间比较长。经常用Visio画流程图,用了EA之后能明显感觉到,EA更加适合用来做更专业更详细的系统建模。EA对一个系统可以做多个方面的建模,在整个实验的过程中能够感觉到逻辑的缜密和全面。虽然照着视频验证一遍没有什么难度,但是想要做一个功能完备、性能优良的系统模型还是存在一定的难度的。结合思考题,我认为EA与各种语言之间的交互会让建模变得十分便利和灵活,也有利于系统在设计上更加人性化。