一、小结

用例图是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. 北京大学Cousera学习笔记--6-计算导论与C语言基础--计算机的基本原理-认识程序设计语言 如何学习

    1.是一门高级程序语言 低级语言-机器语言(二进制) 汇编语言-load add save mult 高级语言:有利于人们编写理解 2.C语言的规范定义非常的宽泛 1.long型数据长度不短于int型 ...

  2. Oracle中hex和raw的相互转换

    可以参考以下语句: select hextoraw(rawtohex('你好')) from dual select utl_raw.cast_to_varchar2(hextoraw('E4BDA0 ...

  3. JavaScript之jsx&react

    1.Virtual DOM 1.将网页所有内容映射到一颗树形结构的层级对象模型上,浏览器提供对dom的支持,用户可以是用脚本调用dom,api来动态修改dom节点,从而达到修改网页目的,这种修改是浏览 ...

  4. ava新手入门详细介绍

    Java总有它的千般好处使你选择它,但这些随便翻翻书或在网上逛一圈就能找到答案.在本文中,笔者把自己学习Java的一些切身体会和过程写出来,供初学者做个参考. 我在学习Java的过程中主要围绕以下几个 ...

  5. An owner of this repository has limited the ability to open a pull request to users that are collaborators on this repository.

    git 无法发起:pull request,提示:An owner of this repository has limited the ability to open a pull request ...

  6. John Deere Service Advisor with Nexiq clone 90% Worked

    FYI, John Deere Service Advisor 90% works with Nexiq China clone. Topic 1: John deere SA possible wi ...

  7. tensorflow学习笔记2:c++程序静态链接tensorflow库加载模型文件

    首先需要搞定tensorflow c++库,搜了一遍没有找到现成的包,于是下载tensorflow的源码开始编译: tensorflow的contrib中有一个makefile项目,极大的简化的接下来 ...

  8. Python Iterables Iterators Generators

    container 某些对象包含其它对象的引用,这个包含其它对象引用的对象叫容器.例如list可以包含int对象,或者由其它数据类型(或数据结构)的对象组成一个list. 对其他对象的引用是容器值的一 ...

  9. BZOJ 4195: [Noi2015]程序自动分析 并查集+离散化

    LUOGU 1955BZOJ 4195 题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量 ...

  10. 安全检查,Windows更新出现8024402F错误如何解决

    背景,每个月都要进行例行检查,需要更新windows补丁包,病毒库等操作,谁知今天windows报错了: windows 代码8024402f 错误,原因是更新日志和缓冲出了问题. 解决步骤 : 1. ...