图书管理系统用例图和描述_UML用例图(Use Case Diagram)概述

本文介绍UML用例图的概念,通过图书管理系统为例,解析参与者、用例及它们之间的关系,包括扩展、包含和继承,旨在帮助理解和绘制用例模型。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

26c2464ba8ad22e89094386c2738ba3f.png

最近在学习软件工程课程,因此想借此机会以尽可能简洁的方式整理一下UML(Unified Modelling Language)的相关知识点,帮助自己以后的复习与工作,也希望能够帮助到大家。

用例模型是从应用领域(Application domain)的角度,面向用户的一种模型,旨在描述用户眼中(而非程序员眼中)此系统的功能行为。以下是一张用例图,先有一个大致的印象:

76dabb65548e7dc9bc28ad2598b1ec87.png
一个售票系统的用例图

用例图体现了该系统能够为参与者提供的种种功能以及这些功能之间的联系。要画好一张用例图,需要把握三个元素:参与者(Actor)、用例(Use Case)和用例间的关系(Relationship)。

一、 参与者

参与者代表的是参与使用系统的一类角色,例如,读者就是图书馆这个系统的参与者。要正确把握参与者,需要注意以下几点:

1. 参与者本身并不属于系统结构之中,位于系统之外

2. 参与者代表的是一类角色而不是一个具体对象,换言之,你可以说参与者是猪,而不能说参与者是“佩奇”;

3. 参与者不一定是人,也可以是另一个外部的系统、环境等等。

UML中用一个小人图形表示参与者。我们给每一个参与者取特定的名字,并可以在文档中对用例进行描述。

63f991a04b5fa12c5ce05db65671a9af.png
UML中名为Passenger的参与者

二、 用例

每个用例代表系统能够提供的一类功能,UML中使用一个椭圆形表示用例。

c24839e1be6eefe3d295f4541c5bb4f8.png
UML中名为PurchaseTicket的用例

每个用例在文档中都需要进行详细说明,说明中需要包含:

1. 用例名称

2. 用例的参与者:使用该用例的参与者;

3. 用例的进入条件:满足什么条件可以使用该用例;

4. 用例的离开条件:满足什么条件可以结束该用例的使用;

5. 流程:参与者使用该用例的步骤;

6. 特殊需求:包含对用例性能上的需求或者拓展业务。

三、 关系

用例之间的关系只要包括三种,分别是扩展包含继承

1. 扩展

扩展关系是在一个已有用例的基础上扩展新的功能而产生的关系,常用于对特殊情况的补充。比方说,购票“选票->付钱->出票->找零”本身是一个完整用例,但是在过程中可能出现零钱不足、缺票、用户中途取消等特殊状况,处理这些特殊状况的功能就是扩展功能。

扩展功能在UML中用<<extends>>和箭头表示,由子用例指向主用例。箭头的方向与主语->宾语一致。即 A extends B, 代表A扩展了B的功能,所以箭头由A指向B。

015cfc3cf4736145ea78ed3a5d4b1304.png
UML中扩展关系的应用

2. 包含

包含关系指一个主用例包含子用例。包含关系常用于子用例频繁被使用的情况。例如下图所示的例子,买单次票与买多次用卡的用例中都包含了收费这一子用例,为避免重复书写子用例,我们使用包含关系。

f0d8a3af4f983448e31f298997e2eea1.png
UML中包含关系的应用

包含关系在UML中用<<includes>>和箭头表示,箭头指向由主用例指向子用例。箭头方向依然可以用语法判断,若A包含B,箭头方向就是A指向B。

3. 继承

处于继承关系中的用例在不同抽象层,其中被继承的一方是继承的一方更概括抽象的概念。例如:主用例是“用户识别”,“人脸识别”是用户识别的一种,“指纹识别”也是用户识别的一种。在继承关系中常常出现“…是…的一种”(is a kind of)这样的关系,这可以帮助大家识别继承关系。下面是一个例子:

a94bbea28dc8658676e2f30af7d4c3e0.png
UML中继承关系的应用

在UML中,继承关系由一个空心箭头表示,由继承的一方指向被继承的一方(具体的一方指向抽象的一方)。

在用例图中,用例关系的箭头方向是比较容易出错的一点,我的记忆方法是带入“A extends B”,“A includes B” 和 “A inherits B”这样的句型,箭头永远从主语指向宾语

以上是用例模型的概述,本人依然在学习的过程中,欢迎大家指正交流。

图书馆管理系统 一.图书馆管理系统需求分析 1、系统目标设计 系统开发的总目标是实现内部图书借阅管理的系统化、规范化自动化。 能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。 能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。 提供方便的查询方法。如:以书名、作者、版社、版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映图书的借阅情况;以借阅人编号对借阅人信息进行检索;以版社名称查询版社联系方式信息。 提供对书籍进行的预先预订的功能。 提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。 能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。 提供较为完善的差错控制与友好的用户界面,尽量避免误操作。 2、系统功能需求分析 (1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。 (2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。 (3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理书籍丢失后的处理。 (4)系统管理:包括用户权限管理,数据管理自动借还书机的管理 UML的图书馆管理系统建模设计 2 满足以上需求的系统主要包含有一下几个子系统 (1)基本业务功能子系统:该系统中主要包含了借书还书预订等功能。 (2)基本数据录入功能子系统:该子系统主要包含有书籍信息读者信息录入功能。 (3)信息查询子系统:包含了多功能的查询书籍信息读者信息。 (4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能预订信息管理功能。 (5)帮助功能子系统。 二、系统动态建模 1用例图、 3 图书馆管理系统的用例图用例图中我们可以看管理员读者之间对本系统所具有的用。 管理员所包含的用有: (1) 登录系统:管理员可以通过登录该系统进行各项功能的操作 (2) 书籍管理:包括对书籍的增删改等。 UML的图书馆管理系统建模设计
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值