一、小结

用例图是UML用于描述软件功能的图形。用例图包括用例、参与者及其关系,用例图也可以包括注释和结束。

用例图的要素:

(1)参与者,即与用例存在交互关系的系统外部实体;

(2)用例,用来描述个相对独 立的软件功能 ;
(3)关系,包含参与者与用例的关系,参与者相互之间的关系,以及用例相互之间的关系等。

参与者(actor)也称为活动者,是与系统发生交互的外部实体。“小人”图标可以表示与系统进行交互的参与者。

参与者类型有四种类型:人、设备、其他系统、时间;参与者之间的关系有泛化关系和通信关系。

用例也被称为用况、用案。用例表示系统执行的一组动作,它会给系统或者参与者产生一组可观测的结果,用例描述系统的一个功能。它的含义是在一个应用场景下面,系统为用户提供一个完整的服务,这个服务的完成需要用户与系统直接发生一次完整的人机交互过程。
用例的表示:UML规定用椭圆来表示一个用例,用例的名字放在椭圆里面或者下方。因为用例用来描述系统的功能,因此用例的名字应该用动词或动词短语。

参与者与用例之间的关系:启动用例,获取用例提供的服务,为用例提供服务,给系统提供信息。用例之间存在泛化关系、包含关系、扩展关系。

用例图的作用:

1.描述软件功能

2.建立软件分析模型的依据

3.软件测试的依据

用法:

用例:用圆括号(),或者使用关键字来定义用例;

角色:用两个冒号包裹来表示,或者通过关键字actor来定义角色;用箭头-->连接角色和用例。
用例描述:用双引号来定义多行的用例描述,--,==为分隔符, 并且可以在分隔符中间放置标题。

连接:用箭头连接角色和用例,横杠越多箭头越长,可以在箭头定义的后面加一个冒号来添加标签;
继承:如果一个角色或者用例继承于另一个,用<|--符号表示。
注释:用note left of , note right of , note top of , note bottom of等关键字给一个对象添加注释。且注释还可以通过note关键字来定义,然后用..连接其他对象。

构造类型:用 << 和 >> 来定义角色或者用例的构造类型。
箭头:-越多,箭头越长。 通过在箭头定义的后面加一个冒号及文字的方式来添加标签。箭头的默认连接是竖直方向的,用--表示,可以用一个横杠或点来表示水平连接,也可以通过翻转箭头来改变方向。还可以通过给箭头添加left, right, up或down等关键字来改变方向(这些方向关键字也可以只是用首字母或者前两个字母的缩写来代替)。
二、图书馆管理系统

主要任务:图书信息管理、借书证管理以及图书借阅管理。

提取参与者:图书管理员和借阅者

功能用例:1.借书证管理、2.图书管理 3.图书借阅管理

1.@startuml
left to right direction
actor 图书管理员
rectangle 借阅证管理系统 {
  图书管理员 -- (办证)
  图书管理员 -- (补证)
  (办证) ..> (打印证件) : <<include>>
  (补证) ..> (打印证件) : <<include>>
  图书管理员 -- (注销)
  图书管理员 -- (查询证件)
}
@enduml

@startuml
left to right direction
actor 图书管理员
rectangle 图书管理系统 {
  图书管理员 -- (添加图书)
  图书管理员 -- (图书编目)
  图书管理员 -- (修改图书信息)
  图书管理员 -- (图书报废)
  图书管理员 -- (查询图书信息)
}

@startuml
left to right direction
skinparam packageStyle rectangle
actor 图书管理员
actor 借阅人员
rectangle 图书借阅管理系统 {
图书管理员 -- (书目查询)
图书管理员 -- (图书借阅信息查询)
图书管理员 -- (借书)
图书管理员 -- (还书)
(过期催还) .> (打印催还单) : <<include>>
图书管理员 -- (过期催还)
图书管理员 -- (丢失处理)
(书目查询) -- 借阅人员
(图书借阅信息查询) -- 借阅人员

}
@enduml

UML与软件建模:第一次作业(用例图绘制)的更多相关文章

  1. UML与软件建模:第一次作业(UML用例图绘制)

    uml第一次作业: 用例图是什么? 用例图我感觉就是把网站中各个用户的动作分解一下,再用rational rose软件把图画出来. 画例图主要分为三个步骤:a 确定系统角色  b 确定用例  c 对用 ...

  2. UML与软件建模:第二次作业(类图中类的表示)

    一.类图 (1)类图定义 类图,是UML(统一建模语言)中用于描述"类"以及"类与类"之间的示意图.它形象的描述出了系统的结构,帮助人们理解系统. 类图是在&q ...

  3. C# 词频统计 东北师范大学 软件项目管理 第一次作业

    一.作为杨老师的学生第一次听杨老师讲课,印象最深的就是:工程中所有步骤之间是乘法,如果任何一步为0,工程就做不出来了.以前所有老师讲到的都是不要太在乎结果,努力的过程很重要,但是这在软件工程中不合适了 ...

  4. UML作业第一次:UML用例图绘制

    UML第一次作业 一. 用例图:用例图(usecase diagram)是UML用于描述软件功能的图形.用例图包括用例.参与者及其关系,用例图也可以包括注释和约束.程序员要画时序图啥的用其他的比较麻烦 ...

  5. UML第一次作业:UML用例图绘制

      UML用例图绘制 一.plantuml用例图语法小结 1.用例 用法:用例用圆括号(),或者使用关键字来定义用例 示例1: @startuml (First UML) (Another UML)a ...

  6. ****** 四十九 ******、软设笔记【UML分析和意义】-建模的意义,UML的特点、结构,用例图

    UML UML又称同一建模语言或标准建模语言,是一个支持模型化和软件系统开发的图形化语言,它的作用域不仅支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程. 建模的意义: 模型是对现实的 ...

  7. [本体论][UML][统一建模语言][软件建模][OWL]从本体论到UML到OWL

    以下内容,是关于软件建模的方法与思路. UML与OWL都是基于本体论的建模语言. 本体论(哲学) 本体论(信息科学) UML(统一建模语言) more info 参考:[设计语言][统一建模语言][软 ...

  8. UML第一次作业

    一. 用例图:用例图(usecase diagram)是UML用于描述软件功能的图形.用例图包括用例.参与者及其关系,用例图也可以包括注释和约束.程序员要画时序图啥的用其他的比较麻烦,用plantum ...

  9. 使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处

    使用 UML 进行业务建模:理解业务用例与系统用例的相似和不同之处   作者:Arthur V. English 出处:IBM   本文内容包括: 背景 业务用例模型与系统用例模型有什么相似之处? 业 ...

随机推荐

  1. OpenGL——外部读档+异常报错

    从外部读取shader文件: 先添加Shader类: 再创建vertexSource.txt和fragmentSource.txt两个文件: 如图填入shader: 在shader.h宣告: 在sha ...

  2. c# ASP.NET Core2.2利用中间件支持跨域请求

    1.public void Configure(IApplicationBuilder app, IHostingEnvironment env)方法里面 不要加上:app.UseCors(); 2. ...

  3. supervisor 从安装到使用

    (转)https://www.jianshu.com/p/3658c963d28b 一.安装 源码安装 先下载最新的supervisor安装包:https://pypi.python.org/pypi ...

  4. 修改AD FS

    https://technet.microsoft.com/en-us/windows-server-docs/identity/ad-fs/operations/ad-fs-user-sign-in ...

  5. python学习笔记之线程、进程和协程(第八天)

    参考文档: 金角大王博客:http://www.cnblogs.com/alex3714/articles/5230609.html 银角大王博客:http://www.cnblogs.com/wup ...

  6. css3 手风琴

    1.看了网上很多关于css的手风琴案例,但是都没有讲到相关的原理. 主要原理1. 利用target属性.2.锚点链接. <!doctype html><html><hea ...

  7. Win10环境下 HTTP 错误 500.19 - Internal Server Error 问题及其解决方法

    记一下今日份小bug... 明天要做软件架构实验了,今天打算测试下运行web项目,于是乎,找出了以前用JSP写的web项目测试运行不了,我再打开浏览器测试Tomcat服务器,在地址栏键入http:// ...

  8. Prometheus监控学习笔记之Prometheus从1.x升级到2.x

    详细参考这篇文章 https://cloud.tencent.com/developer/article/1171434 prometheus 2.0于2017-11-08发布,主要是存储引擎进行了优 ...

  9. 自制操作系统Antz(10)——实现shell(上)

    我已经规范了系统代码风格,类似于按照linux分包,把各部分功能区分开了 Antz系统更新地址 Linux内核源码分析地址 Github项目地址 在之前的任务中,我们已经通过直接操作显卡驱动完成了简单 ...

  10. AndroidStudio生成APK注意的几个问题

    生成APK遇到两个问题:一是生成的APK安装失败(没有勾选V1所致),二是生成APK后,百度与谷歌地图不显示(SHA1值改变所致). 通过Build>Generate Signed APK生成A ...