基本信息
文件名称:软件工程形形考作业3:基于UML的大学图书馆图书信息管理系统设计实验.docx
文件大小:733.56 KB
总页数:18 页
更新时间:2025-06-29
总字数:约3.95千字
文档摘要

形考作业3:基于UML的大学图书馆图书信息管理系统设计实验

一、实验内容说明

对实验2的面向对象分析结果进行系统概要设计和详细设计。

设计系统构架,勾画出整个系统的总体结构,这项工作由全组成员参加,包括主要子系统及其接口,主要的设计类和中间件等系统软件。设计时要考虑系统的可维护性,以简单为第一原则——简单的类、简单的接口、简单的协议、简单的描述。

使用UML的配置图描述系统的物理拓扑结构以及在此结构上分布的软件元素。

用类图和顺序图对主要用例:借书、还书、处罚进行设计,并对其中的类进行详细说明,包括属性设计和方法设计。

二、实验目的

通过本实验使学生掌握UML建模语言的常用图形,面向对象的设计方法和过程。特别是熟悉包图、顺序图、配置图和类图的应用。

以小组形式完成本实验,锻炼同学之间的协作和沟通能力、自我学习和管理能力。

学生在实验过程中熟练掌握常用的CASE工具。

三、实验学时

8学时

四、实验步骤

根据实验2画出的系统用例图和需求规格说明书规划系统的物理结构。

组长和小组成员共同协商一份设计规范:设计用的图形符号、字体、大小规范,界面设计规范,用语规范等。

对借书用例、还书用例、处罚用例进行用例设计和类设计。

对借书用例、还书用例、处罚用例使用顺序图设计类之间的消息通信。

编写系统设计规格说明书。

五、实验要求

4人一组,分工如下:1名组长,负责整个小组的人员安排,工作计划,文档质量,整体项目的协调等工作;2名系统分析员,专门负责需求分析,1名分析员,专门负责系统的验收测试用例。虽然各有分工,但大家必须协同工作。

使用VISO或IBMRationalROSE工具软件。各种说明书使用WORD软件。

六、结果

实验结果包括:

系统配置图及其说明。

系统体系结构划分及其说明。

借书用例、还书用例、处罚用例的详细设计类图及其属性、方法说明。

用顺序图分别对借书用例、还书用例、处罚用例设计类之间的消息通信说明。

系统设计说明书。

七、成绩评定

组长给小组内每名成员评分,小组的成绩由指导教师给出,小组成绩作为组长的成绩,每名成员的成绩=(组长评分+教师评分)/2。

请查看系统设计规格说明书模板,按照要求完成后提交你的实验结果。(本次实验得分将直接计入形成性考核总成绩,务必重视!满分为10分)

基于UML的大学图书馆图书信息管理系统设计实验

系统简介

本系统为一个小型的图书管理系统,需要完成以下工作:

借书、还书

在图书馆中添加或删除一本书

按作者或专业领域查找一批书

找出被某位读者接触的一批书

找出最近借出某本书的读者

系统的用户有两类:图书管理员和普通读者。功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。

本系统需满足以下限制

图书馆中所有未借出的书可供读者随时借阅

在同一时刻,一本书不能既被借出又可供阅读

一个读者一次借出图书的数目不能超过预定值

2、用例分析与设计

从以上系统简介内容中可以看出,本系统有以下几类参与者:图书管理员Admin

读者Reader

读卡器CardReader

服务器Syetem

在上述参与者中,图书管理员和读者与系统进行交互,通过对交互场景进行归类和抽象,本系统应具有以下用例:

借书lendBook

还书returnBook增加图书addBook删除图书delBook

按作者、专业检索图书findBook_Author

按读者检索图书findBook_Reader

按书检索读者findReader_Book

生成用例图

以上用例分析可以生成用例图,如图2.1所示

用例的顺序图

为了使每个用例的操作流程跟简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。

借书

函数说明:InsertCard():刷卡ReadCard():读卡

ifMax():判断借书数量是否达到上限ReturnReaderInfo():返回读者信息

Return(true):该读者可以继续借书LendBook():输入借书信息Update():跟新数据库

还书

函数说明:

BookInfo():输入还书信息Update():跟新数据库ReturnReaderInfo():返回读者信息

增加图书

函数说明:

addBook():输入增加的图书信息ifAllowAdd():判断是否允许添加Update():跟新图书信息

Return(true):返回添加成功

删除图书

函数说明:

delBook():输入删除的图书信息ifAllowDel():判断是否可以删除ifSure():是否确定删除Return(true)5:确定删除Update():