View on GitHub

随心点餐宝

The documents about Software Analysis & Design Team Work

UMLet 使用说明之绘制用例图

UMLet 是一款简单实用、开源的轻量级 UML 建模工具,它能够帮助我们快速地构建 UML 用例图、UML 静态图、UML 行为图和 UML 实现图等各种 UML 模型。UMLet 可以在 Windows、OS X 和 Linux 上独立运行,与大型软件 Visio 相比,更加灵活轻便,易于安装。

安装

  1. 运行 UMLet 需要电脑上安装有 java 运行环境,可以前往 Oracle 官网 ,根据自己的电脑系统下载相应的 JDK

  2. 安装好 java 运行环境后,前往UMLet官网下载相应的安装包,目前最新版本为 UMLet 14.2 stand-alone,下载完成后进行解压。

  3. 如果是 Windows 系统,直接在解压的目录内双击 “Umlet.exe” 即可打开;如果是 Linux 或者 OS X 系统,则在解压目录下打开终端,输入如下命令即可打开:

    $ java -jar umlet.jar
    

主要界面

UMLet 的主要界面如下:这里写图片描述

我们主要使用的是四个区:

绘制用例图

这里写图片描述 下面,我们将使用一个简单的小程序点餐系统 小程序点餐 来展示 UML 用例图主要元素的使用及绘制。

创建系统

在 UML 模型中,一个系统代表一个应用,它包含了自己的名字以及所有合适的用例,通常用一个矩形代表一个系统。在 UMLet 中,把 System 元素拖拽到工作区中某个位置,然后在文本控制区中把系统的名字改成 小程序点餐 ,把标题改成位于中间:这里写图片描述

一个 Actor 元素代表与系统进行交互的一个外部实体(可以是人或者其他外设),每一个 Actor 都必须至少参与一个 Use caseActor 主要分为如下两类:

我们这个小程序点餐系统的 main actor 只有一个,就是客户,我们将其命名为 customer 。而 secondary actor主要有:

把各个 Actors 添加进工作区中,注意 main actor 一般置于系统的左边,secondary actor 一般置于系统的右边:这里写图片描述

添加 Use case

一个 Use case 代表了系统与用户进行交互的一组动作序列(注意是一组动作而不是一个动作!),系统在完成该组动作序列后将会产生相应的结果返回给参与到该用例中的 Actors 。每一个 Use case 都必须具有如下过程:

这里写图片描述

总体上说,每一个 Use case 都代表了系统所提供给用户的一项服务,因此,Use case 的名字必须以动词开头!在 UML 用例图中,Use case 主要使用一个椭圆来表示。

在我们的酒店预定系统中,主要有以下的 Use case

在 UMLet 的模版选择区中选择相应数量的 Use case 元素添加到 小程序点餐 系统的方框中,并修改为相应的名字:这里写图片描述

includes:包含其他 Use case

一个 Use case 可以包含其他的 Use case 。如果 Use case B includes Use case A ,则我们说 Use case B 依赖于 Use case A ,也就是说要完成 Use case B 中的所有动作,必须要完成 Use case A 中的所有动作,即 Use case A 中的动作序列是 Use case B 中不可或缺的。包含操作在 UML 用例图中使用一个上方标记有 <<includes>> 的虚线箭头 ----> 来表示,没有箭头的一端表示包含者 (includes),有箭头的一端表示被包含者 (included),如在上例中表示为 Use case B (includes)------> Use case A

在我们的小程序点餐系统中,查找菜式 这个 Use case 需要包含 选择菜确认菜式选择数量 三个 Use case这里写图片描述

extends:扩展其他 Use case

对于某些用例来说,在完成基本功能的前提下,还可以提供一些额外的可选的(非必需)功能,这个时候可以把这些可选的功能转化成另一些 Use case ,然后作为扩展功能补充到原来的 Use case 中去。如果 Use case A extends Use case B,则说明 Use case A 中实现的功能可以作为可选的功能添加到 Use case B 中去。扩展操作在 UML 用例图中使用一个上方标记有 <<extends>> 的虚线箭头 ----> 来表示,没有箭头的一端表示扩展的用例 (extends),有箭头的一端表示被扩展的对象 (extended),如在上例中表示为 Use case A (extends)------> Use case B。 这里写图片描述

这里写图片描述

总结

以上是我个人在学习使用 UMLet 工具进行 UML 建模时进行的一个实践,利用这篇博客来进行总结,希望能对学习 UML 的童鞋有所帮助。