基于UML的图书管理系统设计.docx
《基于UML的图书管理系统设计.docx》由会员分享,可在线阅读,更多相关《基于UML的图书管理系统设计.docx(34页珍藏版)》请在冰豆网上搜索。
基于UML的图书管理系统设计
基于UML的图书管理系统设计
20至20学年第学期
课程名称:
UML建模工具
课题名称:
UML图书管理系统设计
院系:
姓名:
班级:
专业:
学号:
指导教师:
第六章状态图和活地图
6.1基本概念
6.1.1关于状态图
6.1.2关于活动图
6.2系统状态图
6.3系统活动图
第七章组件图和部署图
7.1基本概念
7.1.1关于组件图
7.1.2关于部署图
7.2系统组件图和部署图
第一章绪论
背景,意义
首先说说图书馆的职能。
一、保存人类文化遗产。
图书馆里面很多有价值的文献保留着很重要的历史,和文化资源,有些资源本身就是古董珍品;二、开发信息资源。
图书馆能够提供很多信息,很多知识,里面大量的书记能够让人们学习到更多知识了解很多信息;三、参与社会教育的职能。
包括思想教育的职能,文明建设的教育职能,文化素质的教育职能,丰富群众文化生活教育的职能等。
通过里面的书籍使人们生活丰富视野开阔同时也可以更便捷地了解很多方面的东西。
总之,图书馆是一个专门收集、整理、保存、传播文献并提供利用的科学、文化、教育和科研机构。
现代社会,图书馆成为继续教育、终身教育的基地,担负了更多的教育职能。
图书馆主要是用来学习的,如果有人遇到问题,他可以通过图书管的书籍来解决问题。
但是为了图书馆的正常运行和保护图书,所以图书管理系统应运而生,它使图书馆变得井井有条。
图书馆管理系统主要由:
借阅者,图书管理员,系统管理员组成。
系统应具备如下操作功能:
用户登录进入系统,在系统允许的情况下,进行可以进行的操作,如借书、还书和预定书籍等;管理员可以管理书目,整理书籍和管理预订的书籍等;系统管理员可以管理借阅者信息等。
图书管理系统的产生意义重大:
使图书馆的管理变得不再繁琐,让管理员的工作变得轻松;读者借书阅读也变得方便,快捷;大大减少了图书的丢失和人员管理带来的不必要麻烦;减少人力与管理费用;提高信息准确度;改进管理和服务;建立高效的信息传输和服务平台,提高信息处理速度和利用率。
如图所示,为系统整体功能模块图,该系统分为3大子系统,分别为借阅者子系统、图书管理子系统,系统管理子系统。
借阅者子系统
图书管理子系统
系统管理子系统
图书管理系统
图1-1系统整体功能模块图
第二章需求分析
2.1对需求分析的认识
需求分析是系统中很主要的一个环节,它主要告诉我们在接下来的工作中该怎么做,该满足哪些要求。
软件工程中包含需求、设计、编码和测试四个阶段,其中需求工程是软件工程第一个也是很重要的一个阶段,需求分析是要决定“做什么,不做什么”。
在一个软件项目中,软件需求包括三个不同的层次-业务需求、用户需求和功能需求-也包括非功能需求:
业务需说明了提供给客户和产品开发商的新系统的最初利益,反映了组织机构或客户对系统、产品高层次的目标要求。
软件开发,能否获得成功,最重要的是需求分析的工作。
因此,软件需求分析能力和水平,对软件项目至关重要。
2.2图书管理系统的功能性需求
本系统的最终用户是面向管理员(图书管理员和其他),读者(老师学生和其他),管理员和读者是经常性用户系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工作。
维护人员为间隔性用户。
图书管理系统是一个用来进行图书管理的管理信息系统。
该信息系统能够方便的为借阅者提供各种借阅服务,也能够为图书管理员和系统管理员提供方便的管理服务。
图2-1.1系统数据流图
图2-1.2E-R图
2.3图书管理子系统
图书管理系统能够为一定数量的借阅者提供服务。
每个借阅者能够拥有唯一标识其存在的编号。
向每一个借阅者发放图书证,图书证中包含每一个借阅者的编号和个人信息。
系统通过一个单独的程序为借阅者提供服务,不需要管理人员的参与,这些服务包括提供查询图书信息,查询个人信息服务和预定图书服务等。
在图书馆管理子系统中,其功能概述如下:
1)管理书目信息,如增加、删除和更新,查看书目信息
2)预订信息管理,如增加、删除和更新,查看预订信息
3)对所归还的图书进行整理,以便对书籍进一步管理
4)对相关的书籍数目进行统计
其功能细化图如下:
书目信息管理
书籍归还和借阅管理
书籍预订管理
整理归还图书
统计书籍数目
图书馆管理系统
图2-2图书馆管理系统功能模块图
2.3.1书目信息管理
在书目信息管理子系统中,其功能概述如下:
1)增加书目信息,为借阅者提供最新书籍
2)删除书目信息,便于借阅者借阅书籍
3)更新书目信息,便于借阅者借阅书籍时查询书籍信息
4)查看书目信息,便于借阅者了解书籍的大致信息
其功能细化图如下:
书目信息管理
查看书目信息
删除书目信息
更新书目信息
添加书目信息
图2-3书目信息管理系统功能模块图
2.3.2预订
在预订信息管理子系统中,其功能概述如下:
1)增加预订信息,便于书籍预订管理
2)删除预订信息,便于借阅者借阅书籍
3)更新预订信息,便于借阅者借阅书籍
4)查看预订信息,便于管理员了解书籍预订情况
其功能细化图如下:
预定信息管理
查看预定信息
删除预定信息
更新预定信息
添加预定信息
图2-4预订信息管理系统功能模块图
2.4借阅者子系统
当借阅者需要借阅书籍,归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。
当借阅者借阅的图书超过限制时,不允许再次借阅。
当对借阅的图书超过期限时,需要对借阅者进行处罚。
借阅时需要图书证作为凭证,归还时不需要。
在借阅者子系统中,其子系统的一些主要功能如下:
1)借阅者可以通过网络查询书籍信息和预定书籍。
2)借阅者能够借阅书籍和还书。
3)借阅者能够进行留言
其功能细化图如下:
借阅者功能模块
留言
书籍查询
借阅信息查询
书籍预订
借阅书籍
归还书籍
图2-5借阅者管理系统功能模块图
2.5系统管理员子系统
系统管理员负责系统的管理维护工作,包括对图书的添加,删除和修改;书目的添加和删除;借阅者的添加,删除和修改。
并且系统管理员能够查询借阅者,图书和图书管理员的信息。
在系统管理子系统中,其功能概述如下:
1)管理借阅者信息,如添加,删除,更新和查看借阅者信息
2)管理留言,如删除,回复和查看留言
3)管理员工信息,如添加,删除,更新和查看员工信息
4)管理书籍信息,如添加,删除,更新和查看书籍信息
其功能细化图如下:
系统管理
员工信息管理
书籍信息管理
留言管理
借阅者信息管理
管理员登录管理
图2-6系统管理整体功能模块
2.5.1员工信息管理
在员工信息管理子系统中,其功能概述如下:
1)添加员工信息,便于管理员工
2)删除员工信息,便于管理员工
3)更新员工信息,便于管理员工
4)查看员工信息,便于了解员工的基本信息
其功能细化图如下:
员工信息管理
查看员工信息
添加员工信息
删除员工信息
更新员工信息
图2-7员工信息管理系统功能模块图
2.5.2书籍信息管理
在书籍信息管理子系统中,其功能概述如下:
1)添加书籍信息,便于管理书籍
2)删除书籍信息,便于管理书籍
3)查看书籍信息,便于了解书籍基本情况
其功能细化图如下:
书籍信息管理
查看书籍信息
添加书籍信息
删除书籍信息
图2-8书籍信息管理系统功能模块图
2.5.3借阅者信息管理
在借阅者信息管理子系统中,其功能概述如下:
1)添加借阅者信息
2)删除借阅者信息
3)更新借阅者信息,便于管理借阅者
4)查看借阅者信息,便于了解借阅者基本信息
其功能细化图如下:
借阅者信息管理
查看借阅者信息
添加借阅者信息
删除借阅者信息
更新借阅者信息
图2-9借阅者信息管理系统功能模块图
2.5.4留言管理
在留言管理子系统中,其功能概述如下:
1)回复留言,便于反馈个人看法
2)删除留言,便于删除已浏览的留言
3)查看留言,实时了解借阅者对管理人员的看法
其功能细化图如下:
留言管理
查看留言
回复留言
删除留言
图2-10留言管理系统功能模块图
2.6包括的系统模块
要实现系统的所有功能,必须使每个模块能够做到实现一定的功能,然后使得小模块组合完成系统的要求,主要包括下面几个模块。
2.6.1基本业务处理模块
基本业务处理模块主要用于实现图书管理员对借阅者借阅图书和归还图书的处理。
图书管理员通过合法的认证登录到该系统中,从而管理借阅者的借阅和归还等活动。
2.6.2信息查询模块
信息查询模块主要用于实现借阅者对信息的查询,包括图书信息的查询,自身信息的查询和对书籍的预定等功能。
2.6.3系统维护模块
系统维护模块主要用于实现系统管理员对系统的管理和数据库的维护,系统的管理包括对借阅者信息,图书信息,图书管理员信息和书目信息等信息的维护。
数据库的维护包括数据库的备份,恢复等数据库管理操作。
第三章用例图
3.1借阅者用例图
通过分析,在借阅者子系统中,该系统可以完成以下功能:
借阅者可以进行书籍查询,借阅信息查询,借书还书,书籍预订和留言。
以便于借阅者借阅图书,预订图书和留言。
用例图如下:
图3-1借阅者的用例图
用例文档:
留言用例编号:
0101
用例:
留言
简述:
借阅者可通过登录图书管理系统给管理员留言。
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统发出留言请求,用例开始2、系统显示留言界面3、借阅者成功编辑留言,发出发送请求4、系统确认留言成功,显示发送成功,用例结束。
其他流:
无
后置条件:
系统显示借阅者留言信息。
借阅者登录用例编号:
0102
用例:
借阅者登录
简述:
借阅者在进行一些操作时必须先登录进入系统。
参与者:
借阅者
前提条件:
无
主流:
1、借阅者向系统发出登录请求,用例开始2、系统显示登录界面3、借阅者输入相关信息4,、系统检查借阅者信息,如果输入的信息出现错误,转到<1>5、系统显示登录成功,用例结束
其他流:
<1>、系统要求借阅者重新输入相关信息或取消登录<2>、借阅者选择取消登录,则用例结束<3>、借阅者选择重新登录,转到3
后置条件:
系统显示借阅者登录成功。
书籍查询用例编号:
0103
用例:
书籍查询
简述:
借阅者可通过登录图书系统查询书目信息。
参与者:
借阅者
前提条件:
借阅者成功登录图书系统
主流:
1、借阅者向借阅系统发出“借阅”请求,用例开始。
2、系统要求借阅者输入个人要求。
3、用户输入个人要求。
4、系统确认要求并显示书籍信息,如果系统根据借阅者个人要求没显示相关信息,转到<1>。
5、结束
其他流:
<1>、则要求用户选择重新输入个人要求或取消输入<2>、借阅者选择取消输入个人要求,则用例结束<3>、借阅者重新输入个人要求,转到4
后置条件:
系统显示书籍信息。
借阅信息查询用例编号:
0104
用例:
借阅信息查询
简述:
借阅者可通过登录图书系统查询个人借阅的书籍信息。
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统提出查询请求,用例开始2、系统要求借阅者输入查询类别3、借阅者做出选择4、系统显示相应界面,5、借阅者输入信息6、系统确认信息,显示借阅个人书籍信息,用例结束
其他流:
无
后置条件:
系统显示借阅书籍信息。
书籍预订用例编号:
0105
用例:
书籍预订
简述:
借阅者可通过登录图书系统订阅书籍
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统发送个人请求,用例开始2、系统显示相应界面3、借阅者选择想要预订的书籍4、系统显示预订的书籍信息5、借阅者发送确定预订信息6、系统显示预订成功,用例结束
其他流:
无
后置条件:
系统显示订阅书籍成功。
书籍借阅用例编号:
0106
用例:
书籍借阅
简述:
借阅者可通过登录图书系统借阅书籍
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统提出个人借阅请求,用例开始2、系统要求用户输入想要借阅书籍信息3、借阅者输入个人要求4、系统显示书籍信息5、借阅者选择要借阅的书籍6、系统检查借阅者信息,显示借阅成功,如果系统没有找到与输的信息相应的书籍,转到<1>7、用例结束
其他流:
<1>系统要求借阅者重新输入要求或取消输入<2>、借阅者选择取消输入,则用例结束<3>、借阅者重新输入想要借阅书籍信息,转到5
后置条件:
系统显示借阅书籍成功。
归还用例编号:
0107
用例:
归还
简述:
借阅者可通过登录图书系统归还书籍
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统提出个人归还请求,用例开始2、系统要求借阅者输入想要归还的书籍的信息3、借阅者输入要归还的书籍信息,转到<1>4、系统检查归还书籍的信息,确认归还成功,用例结束
其他流:
<1>、如果输入的信息有错误,则系统要求用户重新输入要归还书籍信息或取消输入<2>、借阅者选择取消输入,则用例结束<3>、借阅者选择重新输入归还书籍的信息,转到3
后置条件:
系统显示归还书籍成功。
罚款用例编号:
0108
用例:
罚款
简述:
借阅者超期后罚款,交完罚金后方可再借阅书籍
参与者:
借阅者
前提条件:
借阅者成功登录系统
主流:
1、借阅者向系统发出缴纳罚金请求,用例开始2、系统要求借阅者输入个人信息3、借阅者输入个人信息,如果输入的个人信息不正确,转到
(1)4系统确认用户信息5、借阅者查看个人信息,缴纳罚金,如果输入的罚金数量不正确,转到
(2)6、系统确认缴纳信息,确认缴纳成功,用例结束
其他流:
(1)<1>、系统要求借阅者重新输入个人信息或取消输入<2>、借阅者选择取消输入,用例结束<3>、用户重新输入个人信息,转到4
(2)<1>、系统要求借阅者重新输入罚金数量<2>、借阅者重新输入罚金数量,转到6
后置条件:
系统显示成功缴纳罚金。
3.2图书管理员用例图
通过分析,在图书管理员子系统中,该系统可以完成以下功能:
书目信息管理,书籍归还和借阅处理,预订信息的管理,整理归还图书和统计书籍数目。
以便对图书的流动信息进行管理。
用例图如下:
图3-2图书管理员的用例图
用例文档:
书籍归还处理用例编号:
0201
用例:
书籍归还处理
简述:
管理员可通过登录图书管理系统对归还的书籍进行相关处理
参与者:
图书管理员
前提条件:
借阅者成功登录系统
主流:
1、图书管理员向图书管理系统发出请求2、系统要求管理员输入书籍信息3、图书管理员输入书籍信息4、系统检查书籍信息,显示归还成功,如果输入的图书信息出现错误,转到<1>5、用例结束
其他流:
<1>、系统要求管理员重新输入书籍信息<2>、管理员重新输入书籍信息,转到4
后置条件:
系统显示书籍成功归还。
收取罚金用例编号:
0202
用例:
收取罚金
简述:
管理员可通过登录图书管理系统对借书超过期限的学生进行处罚,未缴纳罚金的不予借书权利,即是设置为不可借阅
参与者:
系统管理员
前提条件:
借阅者借阅书籍超期
主流:
1、管理员向系统发出查看学生信息请求2、系统显示该学生有欠费信息3、管理员代替系统向该学生收取罚金,向系统发出“已收罚金”信息,如果系统显示费用未交齐,转到<1>4、系统确认收费,将学生更改为未欠费状态,用例结束
其他流:
<1>、系统要求重新缴纳费用或取消缴纳<2>、系统管理员取消缴费,用例结束<3>、系统管理员重新代缴费用,转到4
后置条件:
系统显示该学生借阅权限为不可借阅。
检查借阅凭证用例编号:
0203
用例:
检查借阅凭证
简述:
管理员可通过登录图书管理系统,输入学生借阅证号确定该学生是否可以进行借阅图书
参与者:
系统管理员
前提条件:
借阅者借阅书籍
主流:
1、管理员向系统发出检查学生借阅证信息请求,用例开始2、系统显示查询学生借阅证信息界面3、管理员输入学生借阅证信息,如果输入信息错误,转到<1>4、系统检查该学生信息,确认该学生为合法用户,用例结束
其他流:
<1>、系统要求管理员重新输入信息<2>、管理员重新输入借阅证信息,转到4
后置条件:
系统显示该学生的借阅权限。
删除预订用例编号:
0204
用例:
删除预订信息
简述:
管理员可通过登录图书管理系统删除学生的个人预订信息
参与者:
管理员
前提条件:
书籍成功借出书籍
主流:
1、管理员向书籍预定信息系统发出请求,用例开始2、系统显示该学生的借阅预定信息3、管理员选定要删除的预定信息,向系统发出删除请求4、系统显示删除成功,用例结束
其他流:
无
后置条件:
系统显示删除个人预订信息成功。
整理归还书籍用例编号:
0205
用例:
整理归还图书籍
简述:
图书管理员可以对已归还的图书进行分类等处理
参与者:
管理员
前提条件:
管理员成功登录系统
主流:
1、管理员向系统发出整理图书请求,用例开始2、系统要求管理员录入图书信息3、管理员录入图书信息,如果录入的书籍信息出错,转到<1>4、系统检查图书信息5、管理员要求系统整理图书6、系统将已录入的书籍按编号、分类进行整理,显示整理成功,用例结束
其他流:
<1>、系统要求图书管理员重新输入书籍信息或取消录入<2>、图书管理员选择取消登录,则用例结束<3>、用户选择重新登录,转到4
后置条件:
系统显示管理员登录成功。
统计馆藏用例编号:
0206
用例:
馆藏
简述:
管理员可通过登录图书管理系统统计图书馆内的书籍总数
参与者:
管理员
前提条件:
管理员成功登录系统
主流:
1、管理员向图书管理系统发出请求,用例开始2、系统显示图书管理界面3、管理员发出统计书籍总数的请求4、系统确认请求,显示图书馆书籍总数,用例结束
其他流:
无
后置条件:
系统显示图书馆内的书籍总数。
借出数目用例编号:
0207
用例:
借出数目
简述:
管理员可通过登录图书管理系统统计外借的书籍总数
参与者:
管理员
前提条件:
管理员成功登录系统
主流:
1、管理员向图书管理系统发出请求,用例开始2、系统显示图书管理界面3、管理员发出统计借出书籍总数的请求4、系统确认请求,显示图书馆已借出书籍总数,用例结束
其他流:
无
后置条件:
系统显示图书馆内的书籍总数。
3.3系统管理员用例图
通过分析,在系统管理子系统中,该系统可以完成以下功能:
书籍信息管理,员工信息管理,书籍信息的管理和留言的管理。
以便对整个图书馆的信息进行统一管理,同时可以保护这些信息的安全。
用例图如下:
图3-3系统管理子系统用例图
系统管理员登录系统用例编号:
0301
用例:
系统管理员登录系统
简述:
系统管理员在进行一些操作时得先登录
参与者:
系统管理员
前提条件:
无
主流:
1、用户向系统发出登录请求,用例开始2、系统显示登录界面3、用户输入相关信息,如果输入的信息出现错误,转到<1>4、系统显示登录成功,用例结束
其他流:
<1>、系统要求用户重新输入相关信息或取消登录<2>、用户选择取消登录,则用例结束<3>、用户选择重新登录,转到3
后置条件:
系统显示用户登录成功。
3.4.其他一些重要用例图
用例图如下:
书目信息管理子系统用例图
图3-4书目信息管理子系统用例图
预订信息管理子系统用例图
图3-5预订信息管理子系统用例图
书籍信息管理子系统用例图
图3-6书籍信息管理子系统用例图
留言管理子系统用例图
图3-7留言管理子系统用例图
第四章类图
4.1系统中的类
图4-1参与者相关的类
图4-2系统中用到的其他类
类的说明:
<1>Borrower类是借阅者的类,它的属性很多,包括借阅者的账户ID(userID)、
姓名(name)、地址(address)、邮编(zip)、所借书籍的书目(borrow_number)等。
其中主要操作有借书(borrow)和还书(return_back)。
<2>Librarian类是图书管理员的类,包括工作账号(WorkID)、姓名(name)和地址(address)等属性。
<3>Administrator类是系统管理员的类。
<4>Title类是记录书目信息的类,包括书籍的名字(name)、作者(author)、ISBN、此种书籍的总数量(total_number)、借出的数量(borrowed_number)以及是否允许借出(isAllowForBorrow)等属性。
5>Item类是具有某本书的类,包括书籍号(id),操作包括预订(reserve)、按书目查找(find_on_title)等。
<6>Loan类是某本书的借阅者信息类,包括所借阅书籍的ISBN、借阅的时间(date)等。
<7>Reservation类是预定信息类,每个预定信息包括预定日期(date)、所预定书籍的ISBN、预定书籍的用户ID(UserID)等属性。
4.2系统中类的关系
分析:
Title类是书库中的一条记录,而Item类是指具体的书籍。
现实中,每条记录都会有很多书存在,所以Title与Item之间是一对多得关系;Title与Reservation之间也是一对多的关系,也就是说,Title可以有多个预定记录,但是也可以没有预定记录。
Item与Reservation之间是一对一的关系,不可能存在同一本书被两个人预定的情况;Borrower与Loan以及Borrower与Reservation之间均是一对多的关系。
图4-3主要类图
图4-4其他主要类图
第五章顺序图
5.1系统管理员添加借阅者信息
图5-1系统管理员添加借阅者的时序图
时序图说明:
Create(string,string):
添加新的借阅者信息的函数。
系统管理员要添加新的借阅者信息,首先要与维护窗口交互,维护窗口负责创建一个新的借阅者账户。
5.2图书管理员处理书籍借阅
图5-2图书管理员处理书籍借阅的时序图
时序图说明:
<1>find(string):
查找书目的函数。
<2>find_item:
查找所要书籍的函数。
<3>find_on_title(Title):
根据书目的number从数据库中找到书目信息的函数。
<4>identify_borrower():
验证借阅者身份的函数。
<5>find(string):
根据借阅者的登录账号找到借阅者信息的函数。
<6>cr