完整图书馆管理系统(包含设计思路图形界面后台数据库)

开通VIP,畅享免费电子书等14项超值服

首页

好书

留言交流

下载APP

联系客服

2019.12.28

实验题目:

图书馆管理系统

实验目的:

1、掌握面向对象分析与设计的思想与方法。

2、使用UML进行系统的面向对象分析与设计:用例图,类图,顺序图,状态图,活动图,组件图等。

3.系统功能用Java或C++语言实现,并与后台数据库连接,实现系统的基本功能。

实验设备及环境:

硬件:多媒体计算机

软件:Windows7操作系统、RationalRose建模工具

实验内容及要求:

(1)书籍信息录入

图书管理员录入书籍的书号、名称,修改录入的出错(维护),形成图书表。

(2)读者信息录入

系统管理员录入读者的个人信息,修改录入的出错(维护),形成读者表。

(3)借阅情况的录入

图书管理员在读者借阅图书时录入信息,修改录入的出错(维护),形成借阅表和历史借阅表。

(4)计算扣款金额

(5)读者、图书管理员及图书信息的查询

完成步骤和要求:

完成用户需求的分析,找出系统的执行者、用况,画出用况模型图(包括用例描述)。

找出系统的概念类,建立基本模型。

建立系统顺序/通信图,找出系统与外界交互的消息。

建立系统活动图,找出系统的主要业务流程与关键操作流程。

建立系统中主要对象的状态机图,找出对象在其生存期内因响应事件所经历的状态序列。

给出系统的问题域部分设计的思路,结合2建立类设计模型图。

给出系统的关键界面设计图,并予以说明。

给出数据管理部分的设计结果。

给出控制驱动部分的设计思路。(可选)

设计系统的构件图和部署图。(可选)

四、实验结果及分析

1.根据用户的需求画出用况图:

在本系统中一共包含了三个参与者:

其中读者的主要用例包括查询读者账户(即查询自己的个人信息以及查询自己的账户和借阅情况)、借书、还书和查询图书信息。

图书管理员的主要用例是查看读者的账户,包括读者的个人信息以及读者的账户和借阅情况。在对书籍的信息进行管理的时候能够查看并添加添加图书的各种信息,修改图书的信息,以及删除图书的信息。在对借书记录和还书记录进行管理时图书管理员可以判断读者的借书情况是否超期,根据超期的情况决定是否需要罚款。

系统管理员有五个用例,管理借阅者信息,包括添加新生信息和删除毕业生信息。在对图书的信息进行管理的时候,也能够添加新书的信息和删除已损坏图书的信息。同时,系统管理员也可以查询现有所有图书的信息,来决定是否需要引进新书。系统管理员也可以管理借书记录和还书记录,主要是当图书管理员遇到问题时,系统管理员也可以实现借还书的功能。

另外,图书管理员和系统管理员都继承于图书馆内部人员这个父类。

2.根据用况图建立本系统的类图:

本系统一共设计了七个类:。

读者类:属性包含(1)读者证号(2)密码(3)最大借书数量

(5)查询图书信息(6)交罚款

图书管理员类:属性包含(1)管理员账号(2)密码

方法包括(1)查询图书信息(2)修改图书信息

书架类:属性包含(1)书架号(2)类型(3)位置(4)存放数量

方法只有存放图书

图书类:属性包含(1)书号(2)书名(3)数量(4)价格(5)出版社

(6)馆藏册数(7)在馆册数

方法包括(1)查看用户个人信息(2)修改用户个人信息

后台系统类:属性包含(1)级别(2)配置

方法包括(1)存储用户个人信息(2)存储图书信息(3)存储借阅信息

Item类:属性包含id

方法包括(1)创建(2)销毁(3)更新(4)显示图书信息(5)显示借阅次数

Person类是读者类和工作人员类的父类,它包含了所有人都有的三个属性:姓名、性别和年龄。读者类和工作人员类继承于Person类,这就简化了这两个子类的属性。

类之间的关系先从图书管理员讲起,图书管理员能够为读者提供服务,因此,二者之间应该是服务与被服务的关系。另外,图书管理员能够管理书架和图书,而且书架与图书之间是存放与被存放的关系,所有的图书都被存放于图书馆的书架中。最后,图书管理员还能够查看Item,Item类有点类似于超市中在购物后产生的小票,当读者在完成整个借阅的操作之后,后台系统会自动生成一个Item,因此,在类图中Item与后台系统之间是一种聚合的关系,而读者也可以查看Item,因为当读者在完成借阅之后,Item便可以证明借书是否成功以及后台系统是否发生故障。

除了图书管理员之外,同样继承于工作人员的系统管理员类也与其他类有着很多联系,比如说系统管理员同样与图书类有着维护与被维护这样的关系,但与图书管理员不同的是,系统管理员只负责通过从后台系统中的添加、修改或者删除来管理图书,而不是像图书管理员一样去管理实体的图书。另外,系统管理员可以管理后台系统,控制后台系统中所存储的信息以及当后台系统在发生一些故障时,系统管理员能够提供及时的维修。

借书过程的时序图:

此时,后台系统调用其Item功能,当图书管理员修改完借阅表之后,后台系统生成一张纸质书单,即类似于超市购物时的小票,图书管理员得到小票确认无误后将纸质小票返回给借阅者,借阅者可以得到实体的图书,整个借阅过程结束。

还书过程的时序图:

之后借阅者需要支付扣款的金额,支付完毕后,图书管理员需要修改借阅信息,即进入后台数据库的借阅表删除这条借阅信息,后台系统自动将删除的借阅信息添加到后台数据库的历史借阅表中。另外,后台系统还需要修改图书的馆藏册数,将所还图书的馆藏册数加一,并返回馆藏信息。

最后,借阅者可以归还实体的图书,图书管理员将会请求生成一张还书书单,后台系统启用其Item功能生成一张还书书单并返回给读者,整个还书操作结束。

4.进行还书操作时的活动图:

读者在进行借书操作时,可以向图书管理员发送借阅请求,图书管理员在收到消息后可以向后台系统输入借阅信息,并查看对应图书的馆藏信息,并根据馆藏信息,产生一个分支判断。若馆藏册数为0,则不可借阅,返回错误信息并拒绝读者的借阅,之后结束整个借书操作。若馆藏册数不为0,则可借阅,后台系统返回可借阅信息。

完成这两个操作之后,借阅者可以得到实体的图书,整个借阅过程结束。

5.读者从未登记到还书成功时的状态图:

读者在进行借书与还书操作之前首先需要通过注册来验证身份,学校中的图书馆借阅者以学生为主,学生在登记学生信息之后一直处于未注册的状态。通过图书馆管理员对其进行注册操作,读者的状态才由未注册转向已注册。另外,读者在已注册的状态下也可以修改个人信息,此时借阅者的状态不变。

注册完之后的读者在身份验证成功之后就可以进入到系统,进行图书信息和自己个人信息的查询。已注册的读者此时处于可借阅的状态,若读者借书数量小于等于10本时,在办理借阅手续之后就可以对图书馆中的图书进行借阅。在取完实体书之后,借阅者便进入一个未还书的状态。

若借阅者处于未还书状态超过2个月,则借阅者进入欠款状态,若借阅者处于未还书状态不超过2个月,则借阅者依旧处于未欠款状态。当借阅者在欠款状态时,需要进行还款,还款之后返回到未欠款状态。通过还书,借阅者进入已还书的状态。

此时可选择继续借阅或者是直接结束,若是通过继续借阅返回,则需要进行判断,当读者借书数量小于等于10本时,才可以继续借阅,若是读者借书数量大于10本,则直接结束,无法再借。

6.系统的界面设计:

系统的页面包括主界面、录入界面、查询所有学生界面和查询单个学生界面。

主界面:是所有分界面的总和,所有的分界面都展示在主界面上。

查询所有学生界面:图书管理员可以通过“查询所有”这个界面来查询所有借阅者的信息以及借书的数量。

查询单个学生界面:通过输入单个借阅者的姓名来查询对应借阅者的借阅信息。

THE END
1.C++的图书管理系统//***图书管理系统*** #include<iostream> #include<string.h> #include<cassert> #include<iomanip> #include<fstream> #include<stdlib.h> #include<conio.h> #include<malloc.h> #include<bits/stdc++.h> #include<cstring> #definemaxsize 30 usingnamespacehttps://blog.csdn.net/m0_63755691/article/details/144318346
2.C++实现简单的图书管理系统C语言本文给大家分享的是使用C++实现简单的图书管理系统的代码,本系统采用了面向对象的程序设计方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!【 如果你想靠AI翻身,你先需要一个靠谱的工具!】今天再为大家介绍另一个常用的管理系统https://www.jb51.net/article/70568.htm
3.图书管理系统开题报告尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好图书馆信息而设计的。 图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用https://www.unjs.com/fanwenwang/kaitibaogao/20110821165045_683280.html
4.图书管理系统图书管理系统,图书馆,管理信息系统,数据库,面向对象, 图书管理系统是典型的信息管理系统。图书管理工作繁琐,借阅频繁,包含大量的信息数据,因此就需要一个完善的图书管理系统来实现对https://wap.cnki.net/lunwen-2009053253.html
5.图书管理系统(C++)studyhardforever是管理端与用户端结合到一起的,没有摘出来分为管理端与用户端(其实复制粘贴过去应该就能实现两个代码),这里添加了登录情况,可以直接登录为管理端或客户端(当然这次代码里没有使用管理端(注释掉了,取消注释也可以直接用))//对于书籍查询的继承,由于一开始写的是查询与修改写到了一起(管理端),用户端查询与借阅https://www.cnblogs.com/study-hard-forever/p/14387283.html
6.图书管理系统api接口(图书管理系统功能简介)传统手工管理对图书馆管理员而言,工作繁琐而艰巨,同时对读者借阅在时间和空间上也带来诸多不便,逐渐出现信息资源流通效率低、服务不够细致严密等问题。 如何才能更有效的发挥校园图书馆这个信息交换中心的应用效率。图书馆管理系统打破了传 统的图书管理模式,以系统性、实用性为原则,最大限度提高图书馆管理各个环节的https://www.eolink.com/news/post/61446.html
7.图书管理系统c++数据结构实验报告.docx该【图书管理系统 c++ 数据结构实验报告 】是由【das】上传分享,文档一共【14】页,该文档可以免费在线阅读,需要了解更多关于【图书管理系统 c++ 数据结构实验报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您https://www.taodocs.com/p-979278932.html
8.图书管理系统的出现意义图书管理系统注意事项这些人需要的是较高的授权以便于对图书馆的图书进行管理。而作为用户就不需要如此高的授权,只需要提供图书借阅、图书归还等服务就可以。 相信大家已经知道了图书管理系统对于现代人的意义,也明白了图书管理系统在设计时需要注意的事项。在这里还是建议大家多多的去回归书本,那才是真正可以直达心灵的东西。https://cloud.tencent.com/developer/article/1851631
9.图书馆书目检索系统图书馆书目检索系统 高级检索Accelerated C++中文版:通过示例进行编程实践 图书 基本信息 元数据(MARC)在AT&T工作的近15年中,参与了第一个使用C++编写商业产品的开发项目,负责管理公司第一个C++编译器项目无论是 刚入门的新手还是有经验的C++开发人员都能从本书中受益。借阅趋势 收起相关资源 收起https://libsys.sdufe.edu.cn/space/searchDetailLocal/m1510d4173e99d840d6d69abb3de2af05
10.某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析【答案解析】阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(CheckOutBooks)”的详细描述如下。参与者:读者(Patronhttps://www.cnitpm.com/st/381417404.html
11.C++实现简单的图书管理系统C++实现简单的图书管理系统 今天再为大家介绍另一个常用的管理系统——图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果。 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:https://www.xiuzhanwang.com/a1/Cyuyan/2909.html
12.图书管理系统毕业论文网图书馆管理系统提供丰富的报表(供有几十种报表),不仅可以打印出来,还可以导出到各种格式文件的文件,可以直接发布到校园网络上或提供给其他部门使用。可以说目前图书馆所需要的各种报表,系统都能提供。特别是根据学校用户要求开发的一些功能很受学校图书馆用户的欢迎,例如毕业班催还清单报表、图书借阅或读者排行榜、按https://www.zboao.com/cgal/9114.html
13.图书管理系统开题报告1.能够输入图书的综合情况和进行新书入库、现有图书信息修改以及删除; 2.能够实现对读者档案的查询和编辑管理; 3.能够进行罚款功能; 能够进行借阅历史的查询功能; 三.开发平台 1.使用Visual C++6.0作为本次系统的开发工具,开题报告《图书管理系统开题报告》。因为Visual C++6.0是功能最为强大可视化开发工具,它不仅支持https://www.yjbys.com/bylw/kaitibaogao/109809.html
14.C语言数据结构应用(图书借阅系统)51CTO博客C语言数据结构应用(图书借阅系统) /*** @title: 数据结构实验 @name: <实验2-1> 线性表(顺序表)的应用--我的图书馆 @object: [实验目的] 应用线性表解决问题. 有若干图书,借出的书需要登记下来. 用两个线性表分别保存现有图书和借书信息, 并实现增加新书,借书,还书,打印等功能https://blog.51cto.com/u_16107545/6264019
15.图书馆借书系统腾讯云开发者社区开发一个小型的图书管理应用软件,使用该软件可以实现图书信息的登记、浏览、借书、还书、删除和更新等操作。通过该系统的实现可以了解C++连接数据库的原理和技术,掌握VC界面的设计方法。https://cloud.tencent.cn/developer/information/%E5%9B%BE%E4%B9%A6%E9%A6%86%E5%80%9F%E4%B9%A6%E7%B3%BB%E7%BB%9F
16.基于Qt的简易图书管理系统设计与实现Qt是一个功能强大的跨平台C++库,用于开发GUI应用程序。本文介绍了一个基于Qt的简易图书管理系统的设计与实现。该系统包括图书的增删改查、借阅管理以及用户管理等功能。文章最后将提供完整的Qt代码和运行结果。 1.引言 图书管理系统是图书馆和书店等场所必备的工具,它可以帮助管理人员高效地管理图书信息。使用Qt实现一https://developer.aliyun.com/article/1470128