4.4.UML常用开发工具

常用的UML设计工具有微软Office自带的Visio、Rational Rose、PowerDesign以及StarUML。在本文档中,我们使用StarUML来作为类图和时序图的设计工具。

4.4.1.StarUML开发工具的下载与破解

4.4.1.StarUML下载地址

(1)普通版本(免费):StarUML免费版_StarUML免费版官方下载[最新版]-下载之家

(2)V2.7.0_标准版本(推荐):https://www.duote.com/soft/15371.html

4.4.2. V2.7.0_标准版本StarUML的破解

V2.7.0_标准版本比普通版本的StarUML功能更符合,V2.7.0_标准版本StarUML的破解步骤如下所示。

(1)找到并打开安装目录下LicenseManagerDomain.js文件;

(2)在LicenseManagerDomain.js文件的try前面加上如下代码:

return {

  name:"0xcb",

  product:"StartUML",

  licenseType:"vip",

  quantity:"hello word",

  licenseKey:"later equals never"

};

例如:

(3)打开StarUML,Help->Enter License输入license(许可)信息:

Name: StarUML

Licence Key: 8888-000-8888

点击确认即可。例如:

如果提示下面的信息,则表示license(许可)注册ok,V2.7.0版本的StarUML破解成功:

4.4.2.StarUML开发工具的基本使用

4.4.2.1.创建UML项目

(1)创建UML项目

4.4.2.1-1项目的创建

(2)维护项目的名称

4.4.2.1-2项目的命名

(3)创建项目的模块。在新建的模块中,可以用来存储各种图(Diagram),例如类图(Class Diagram)、时序图(Sequence Diagram)等。

4.4.2.1-3项目模块的创建

(4)UML图的创建

右击“模块”->Add Diagram(图),在弹出的模态框中选择并创建相应的图:

4.4.2.1-4图的创建

注意:一个项目对应多个模块,一个模块可以创建多个相同或多种不同的图。

4.4.2.2.类图的基本操作

类图设计是一种结构模型设计,具体内容如下所示。

4.4.2.2.1.StarUML类图的基本组件

在类图中,常用设计组件如下所示:

(1)普通版本的类图组件

V_4.4.2.2.1-1普通版本的类图组件

(2)标准版本的类图组件及基本操作

单击选择Class,至工作区域内单机左键,即可创建一个类图。创建类图后,选中类图的某个区域,会显示一堆功能按钮,如下是各个功能按钮的作用:

1. 用来标识Class的可见性(默认为public);

2. 用来添加注释或说明;

3. 增加类的属性;

4. 增加类的操作方法;

5. 增加Reception(接收器,通常是一个方法,可以用来接受一个参数);

6. 增加子类;

7. 增加父类;

8. 添加已有的接口;

9. 添加需要的接口;

10. 添加关联关系类;

11. 添加聚合关系类;

12. 添加组合关系类;

13. 添加端口;

14. 添加部件。

注意:有向关联组件用来表示单向关联、自关联和多重性关联。

4.4.2.2.2.类的UML图示

在UML中,使用包含类名、属性和操作且带有分割线的长方形来表示类图。例如定义一个Student类,它包含属性id、name和方法getId()、setId()、getName()及setName(),对应的UML类图如下所示:

图4.4.2.2.2-1

对应的Java代码如下所示。

public class Student {

private Long id;

private String name;

public Long getId() {

return id;

}

public void setId(Long id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

4.4.2.2.3.接口组件

通过StarUML的接口组件设计接口时,默认情况下是一种棒糖型接口,如下图所示:

但通常我们希望显示为下图所示的类状接口

并且默认情况下,为接口新增方法后,接口组件无法显示方法名称,如果希望修改接口的样式并显示方法名称,那么可以按照如下步骤进行:

修改后的效果如下所示:

4.4.2.2.4.添加类图的属性

1)添加属性

UML规定属性的表示方式如下所示:

[访问修饰符]名称:类型[=默认值]

可以在StarUML中通过如下步骤来完成属性的添加:

图4.4.2.2.4-1

2)设置属性类型

根据第(1)步操作为类图添加属性后,这时在右侧的“Model Explorer”会显示添加的属性,然后选中该属性->“Properties”->“Type”,手动维护属性的类型:

图4.4.2.2.4-2

3)设置属性的访问修饰符

设置属性的访问修饰符是有必要的,在Java中,访问修饰符包括private(私有)、default(缺省)、protected(受保护的)和public(公共),在UML中分别用符号“-”、“~”(或“*”)、“#”和“+”来表示。但为了体现数据封装的完整性,通常会将属性设置为私有访问修饰符。StarUML设置访问修饰符有以下两种方式:

4.4.2.2.5.添加类图的方法

1)添加方法

UML规定方法的表示方式如下所示:

[访问修饰符]名称([参数1:类型,参数2:类型…])[:返回类型]

可以在StarUML中通过如下步骤来完成方法的添加:

图4.4.2.2.5-1

2)添加方法的入参

Model Explorer->选中方法->单击Properties的Parameters的右侧->在对话框中增加方法的参数:

选中新增的参数->保持“Visibility”为“public”,并通过“Type”来设置参数类型->修改“DirectionKind”为“IN”:

3)添加方法的返回类型

Model Explorer->选中方法->单击Properties的Parameters的右侧->在对话框中增加方法的参数,点击确认后,再将参数名设置为空, 设置“DirectionKind”为“RETURN”,并通过“Type”来设置返回值类型。

4)显示方法签名

默认情况下,新增的参数、参数类型等参数列表信息无法显示,需要设置方法的签名为“显示”状态:

5)设置方法的访问修饰符

4.4.2.2.6.生成Java文件

默认情况下,生成Java文件时会提示如下错误信息:

原因在于没有设置UML工程所需的Java profile,profile配置决定了工程所使用的规则和约定,可以通过如下步骤来配置profile:

设置好Java profile后,就可以生成类图对应的Java文件了:

4.4.2.2.6.逆向工程

StarUML还可以从现有的Java代码创建一个类图,这被称为“reverse engineering”。当你想从现有的代码生成图表,或者你修改了SU生成的代码,并且想在图表中反应出来的时候,逆向工程功能就非常有用了。在StarUML中可通过如下步骤从Java代码逆向生成类图:

4.4.2.2.8.V2.7.0版StarUML的生成Java文件与逆向工程

默认情况下,V2.7.0版StarUML没有自带生成Java文件和逆向工程的功能,需要手动安装相应的Java插件,可通过“Tools”->“Extension Manager”->搜索“Java”在线下载并安装插件:

单击“Tools”,这时我们就可以看到安装好的Java插件了,单击“Java”来使用相关功能:

4.4.2.3.时序图的基本操作

时序如图设计是一种行为模型设计(交互设计),具体内容如下所示。

4.4.2.3.1.创建时序图

通过“Model”-> “Add Diagram”->“Sequence Diagram”完成时序图的创建。

4.4.2.3.2.StarUML时序图的基本组件

4.4.2.3.3.StarUML时序图基本组件的使用

时序图中包括如下元素:角色,对象,生命线,激活期和消息。下面分别介绍如果在StarUML中创建时序图的元素。

4.4.2.3.3.1.新增角色

我们注意到,StartUML的时序图设计界面没有执行者角色组件,那么怎么添加角色呢?可按如下步骤进行:

效果如下所示:

4.4.2.3.3.2.新增对象/生命线

4.4.2.3.3.3.快捷增加时序图的元素

选中时序图的某个元素,元素进入快捷编辑状态,可以很方便地增加时序图的其他元素:

4.4.2.4.删除组件

选中需要删除的组件->Edit->Delete(假删除)或Delete From Model(真删除):

4.4.2.5.修改图形的字体和背景颜色

选中图形->Format->Font\Fill Color\Line Color来修改图形的字体、背景颜色等:

对于V_2.7.0.而言,默认情况下图形是没有背景颜色的,因此就可能需要设置图形的背景颜色,而按照上述方法设置图形的背景颜色的话,每创建一个图形,都需要手动设置样式,这是在费劲,那么有没有一种永久性的样式设置方案呢?实际上,我们可以参考如下步骤来修改图形的背景颜色:

(1)File->Preferences:

(2)General->Fill Color和Line Color:

将Fill Color设置为:#fefed2;将Line Color设置为:#a00000;再次绘图,效果如下所示。

UML建模与软件开发设计(三)——UML常用开发工具相关推荐

  1. UML建模与软件开发设计(七)——时序图设计

    在前面我们学习了类图相关知识,类图是一种静态结构模型视图,它是设计类及类间关系(即数据结构)的重要依据,但它无法刻画类的对象间的交互/通信行为,也就是说,类图无法描述类和类之间是如何通信.交互的,通俗 ...

  2. UML建模与软件开发过程模型

    UML建模与软件开发过程模型 现在谈到软件开发过程,大家可能也不会陌生,学过软件工程的人都能随口说上几个软件过程模型,现在要把这两种不同的模型拿到一起来讨论,一方面是软件开发的实际需要,另一方面也是U ...

  3. 电商生鲜网站开发(三)——后台开发:商品分类模块-Redis/Swagger/统一身份校验/IDEA技巧

    电商生鲜网站开发(三)--后台开发:商品分类模块-Redis/Swagger/统一身份校验/IDEA技巧 分类层级 在商品分类上需要继续做归类操作 分类设置成三级 层级太深的弊端:对用户不友好,不利于 ...

  4. Auto CAD:CAD软件之设计中心、右栏工具选项板使用方法简介之详细攻略

    Auto CAD:CAD软件之设计中心.右栏工具选项板使用方法简介之详细攻略 目录 CAD软件之设计中心 CAD软件之右栏工具选项板 (1).利用工具选项板填充图案

  5. UI设计三个常用配色法

    UI设计三个常用配色法 废话不多说,马上介绍: 首先打开你的PS,调出前景色窗口,选择"B" 第一种配色法:水平取色(水平取的是色相即平常说的不同的颜色如红橙黄绿蓝) 例子: 第二 ...

  6. PC设计开发过程中常用大小工具汇总

    PC设计开发过程中常用大小工具汇总 浏览器:Firefox Developer Edition / Google Chrome / 通讯:TIM(office QQ)/ 微信电脑版 / Foxmail ...

  7. UML建模与软件开发设计(二)——UML概述

    1.UML的定义 UML的全称为Unified Modeling Language,即统一建模语言或标准建模语言,是始于1997年一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开 ...

  8. UML建模与软件开发设计(四)——包图设计

    包图清晰地表达了包间关系.对于大型项目而言,良好的代码组织,对软件的可维护性至关重要.软件的架构设计,思路遵循由大到小,因此大型项目的结构往往从子系统.模块,包开始进行设计.与类图(Class Dia ...

  9. [提高工作开发效率]程序员常用的工具软件推荐

    前言 现如今,技术发展十分迅猛,开发者只有通过不断的学习才能跟得上时代的步伐.而为了便于学习和工作(减少996),涌现了很多优秀的开发工具用以帮助开发者提高工作效率.现在我把我工作多年来收集实用的开发 ...

  10. php三种web开发技术,三种WEB开发主流技术ASP-PHP-JSP的评价

    三种Web开发主流技术ASP-PHP-JSP的评价 [摘要]本文从程序开发者的角度,对现今社会盛行的WEB开发技术进行了分析,旨在让WEB 开发人员.使用者.准备学习的人对WEB开发技术有更加深入的了 ...

最新文章

  1. 职场不需要中年,但中年需要职场
  2. Django model层 mysql_Django模型层(models.py)之模型创建
  3. ngx_http_redis_module配置使用
  4. 搭建eclipse版的ssm+maven+tk.mybatis+redis及mybatis+spring多数据源配置集成的demo
  5. 【数据结构-查找】1.通俗易懂讲解 —— 顺序-折半-分块查找
  6. vijos p1347(最大乘积(整数划分?))(25—100分)
  7. centos7 致命错误:curl/curl.h:没有那个文件或目录 #include curl/curl.h
  8. VS2010解决闪退的方法
  9. usaco-2.1-frac1-pass
  10. SpringBoot整合mybatis一直失败差不到数据,解决方案
  11. 在Xcode8中使用Swift2.3
  12. mac苹果电脑有什么免费的系统清理软件?
  13. 未曾读过刘备的人,不足以谈人生
  14. 史上最长的介绍BI(商业智能)的干货
  15. stable diffusion制作韩国版AI女友关键词
  16. 〖2023·新星计划·第四季〗开启,Python赛道火爆预热中~ 欢迎小伙伴们报名~
  17. BasicDBObject 和Query 查询mongodb不同使用方式
  18. html渐变轮播,html简单的渐变轮播插件
  19. winrar40天试用完了
  20. html精灵图坐标如何确定,CSS实现精灵图与字体图标

热门文章

  1. spark编程基础python版 pdf_《Spark编程基础(Scala版)》.PDF
  2. 误差函数erf matlab,matlab求解erf误差函数方法(有详细注释 )
  3. harmonyos2.0刷机包,鸿蒙harmony os 2.0刷机包|鸿蒙harmony os 2.0系统刷机包 v1.021-520下载站...
  4. 开源音乐下载神器XMusicDownloader更新,支持歌单一键下载,支持无损音乐
  5. ffmpeg视频格式转换for windows and linux
  6. 输出100以内奇数和、偶数和(for和while两种)
  7. UFW、firewall、iptables防火墙配置
  8. matlab安卓官方下载,手机matlab软件下载-MATLAB Mobile手机版下载v5.1.0 安卓官方版-单机手游网...
  9. cssie兼容性配置
  10. java 继承 ppt_Java的继承机制详解.ppt