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

开通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++做一个图书管理系统。管理员类负责系统的日常管理和维护,包括添加、删除和修改图书信息,以及管理读者账户。读者类则专注于读者的操作,例如借书、还书和查询图书信息。用户类可能是一个更广泛的概念,可以涵盖管理员和读者,具体取决于系统的设计。书籍类则包含了图书的基本信息,如书名、作者、出版社和ISBN等。在实际开发中,https://zhidao.baidu.com/question/189422142869674644.html
2.图书馆系统(C++)图书馆管理系统c++代码图书馆系统(C++) 本文描述了一个基于C++编写的图书管理系统,包括添加、借阅、归还图书,查询图书,以及会员管理功能,如添加会员、查询会员信息和删除会员。 摘要由CSDN通过智能技术生成 #include<stdio.h> #include<string.h> #include<stdlib.h> #include<iostream>https://blog.csdn.net/qq_42391248/article/details/135833796
3.C/C++实现图书信息管理系统C语言这篇文章主要为大家详细介绍了c/c++实现图书信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!【 如果你想靠AI翻身,你先需要一个靠谱的工具!】本文实例为大家分享了c/c++实现图书信息管理系统的具体代码,供大家参考,具体https://www.jb51.net/article/230372.htm
4.interlib图书馆管理系统:用c++编写的图书管理系统项目,有增删改c++图书馆管理系统 开发语言:C++ 开发工具:Dev-cpp 其他特点:超过4.6万条的图书信息,超过1.5万条的用户信息,友好的可视化界面 介绍 概况 用c++编写的图书管理系统项目,已录入超过4.6 万条的图书信息和超过1.5万条的用户信息,有增删改查图书,增删改查用户,借还图书等功能。 https://gitee.com/aimaier4869/interlib-library-manager
5.c语言图书馆管理系统学会使用结构体51CTO博客c语言图书馆管理系统---学会使用结构体 c语言#include代码人生 题目: 一本书的关键信息有ISBN编码、书名、作者、价格、出版社,设计书的结构体类型,然后设计如下函数: (1)设计函数input(struct books mybook) (struct是前面设计的书结构体类型)从键盘读入1本书的信息。 https://blog.51cto.com/wangjinchan/4987083
6.图书管理系统项目总结(精选14篇)图书馆管理系统的主要功能在于对纸质书籍和期刊的管理,因此对于数字资源缺乏兼容性。随着数字图书馆和数字资源的迅速发展,不少图书馆在数字资源建设上的费用正逐步超过纸质资源,但现有的图书馆管理系统却无法整合这数字资源,数字资源和纸质资源、传统的文献服务与现代数字信息资源的服务是处于隔离状态的,对于图书馆整合馆藏https://www.hrrsj.com/gongzuozongjie/xiangmuzongjie/831296.html
7.C++课程设计(简单图书管理系统)6篇(全文)C++课程设计(简单图书管理系统)(精选6篇) C++课程设计(简单图书管理系统) 第1篇 //修改学生信息 void disp_ins_1(); // 显示本院学生信息 friend void file_in(University &unihttps://www.99xueshu.com/w/fileiuknvdrv.html
8.图书管理系统本文充分利用了C++ Builder和SQL Server 2000的优点,通过对管理系统模块的研究,提出一套构造图书信息管理系统模块的方法,并利用数据库、信息系统分析所学的知识,结合其它图书管理业务方面的常识,建立相关数据模型,利用面向对象开发工具对其进行设计与开发,在WINDOWS_XP系统平台上,使系统更加完善。 计算机代替人类来进行高https://wap.cnki.net/lunwen-2009053253.html
9.图书管理系统开题报告图书管理系统开题报告 1 一、开发背景及意义 二十一世纪是信息的社会,信息作为社会最主要的资源,将成为战略资源引起人们广泛的关注。如何获取信息?图书是我们最好的获取信息的方式,但由于图书馆图书收藏量大大增加,使传统的图书管理员的工作日益繁重起来。迫使人们起用新的管理方法来管理图书,如何把图书管理员从繁重的工https://www.unjs.com/fanwenwang/kaitibaogao/20110821165045_683280.html
10.信息公开网此外,采用通用图书馆集成管理系统,逐步实现纸质图书的数字化管理。截至2017年底,已编目入库图书27000余册。 四、教学与教学管理 (一)管理模式与运行机制 安徽电大构建出“五模块”教学管理模式,即教的管理、学的管理、教学资源管理、教学过程管理、教学点管理五个模块。 https://www.ahtvu.ah.cn/xxgk/detail?id=ljrtaiuphlhlqiksel14na
11.C++实现简单的图书管理系统C++实现简单的图书管理系统 今天再为大家介绍另一个常用的管理系统——图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果。 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:https://www.xiuzhanwang.com/a1/Cyuyan/2909.html
12.c++图书馆管理系统constintMaxb=100;//最多的图书 constintMaxbor=5;//每位读者最多借五本书 //读者类,实现对读者的信息的描述 classReader { private: inttag;//删除标记1:已删0:未删 intno;//读者编号 charname[10];//读者姓名 intborbook[Maxbor];//所借图书 http://www.360doc.com/document/18/0722/15/58020531_772375143.shtml
13.图书管理系统api接口(图书管理系统功能简介)1、图书管理系统毕业论文3000字 2、python后端开发需要学什么? 3、地学专业图书馆移动信息服务模式及关键技术探究 4、我有一个图书管理安全系统,需要连接VC++和ACCESS,我实在不会,能有高人帮我连一下么我可以给足分数 5、想要再linux下用C++和mysql实现一个小型图书管理系统,该如何下手? https://www.eolink.com/news/post/61446.html
14.图书管理系统c++数据结构实验报告.docx该【图书管理系统 c++ 数据结构实验报告 】是由【das】上传分享,文档一共【14】页,该文档可以免费在线阅读,需要了解更多关于【图书管理系统 c++ 数据结构实验报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您https://www.taodocs.com/p-979278932.html
15.vs2008+Access实现图书馆管理系统开发技术用vs2008+Access实现的图书馆管理系统,编译通过,下载后在个人电脑上配置下数据库,就可以使用。可以作为本科生自己C++课程的大作业或稍加修改作为自己的必要设计。点赞(0) 踩踩(0) 反馈 所需:1 积分 电信网络下载 ylh1234 2015-11-16 18:31:08 评论 很好用,是正确的https://www.coder100.com/index/index/content/id/1780272
16.河北建筑工程学院图书馆毕业生可在各级政府信息化部门、电子政务部门、档案部门,信息类企业中心;各类型企业的战略部与情报部,各种信息服务机构,各类型图书馆等从事信息采集、组织、加工、服务和开发利用等方面的工作。 信息管理与信息系统专业 培养目标 本专业培养具备良好的数理基础、管理学和经济学理论知识、信息技术知识及应用能力,掌握信息http://lib.hebiace.edu.cn/node/568.jspx
17.某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析【答案解析】阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(CheckOutBooks)”的详细描述如下。参与者:读者(Patronhttps://www.cnitpm.com/st/381417404.html
18.开源小程序:快捷管理个人图书馆的完美解决方案1.图书管理:Taro Library 允许用户添加、编辑和删除图书信息,包括图书封面、标题、作者、出版日期等。用户可以通过简单的操作对个人图书馆进行有效管理。 2.分类与搜索:该软件支持对图书进行分类,用户可以根据自己的需求将图书分组,以便更好地管理和浏览图书收藏。此外,Taro Library 还提供了方便的搜索功能,用户可以通过https://cloud.tencent.com/developer/article/2333560