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

开通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++完成图书信息管理系统在实际操作中,不仅可以提升个人技能,也能为图书馆信息化建设贡献价值。 展开 图书信息管理系统通常是一个涉及数据库操作、用户界面管理以及基本业务逻辑的应用程序。在C++中构建这样的系统,可以分为以下几个步骤: 设计数据结构:首先需要定义图书类(Book),包含属性如书名(title)、作者(author)、ISBN号码(isbn)、出版https://wenku.csdn.net/answer/7vo5hm50ao
2.C++实现简易图书馆管理系统C语言本文实例为大家分享了C++实现简易图书馆管理系统的具体代码,供大家参考,具体内容如下 思路 在本程序中共有四个类: book类:此类有书的基本信息:书名,编号,作者,价格等,和基本的get()和set()方法。类图如下: library类:此类中有一个存放的书的数组,并且可以对书进行,查询,借阅,归还,添加,等相关操作。类图如下:https://m.jb51.net/article/240545.htm
3.基于Java的图书馆管理系统源代码码农集市专业分享IT编程学习资源基于Java的 图书馆管理系统源代码,简单好用点赞(0) 踩踩(0) 反馈 所需:3 积分 电信网络下载 weixin_40973250 2017-11-07 16:05:41 评论 什么破烂被拦截了,不知道重新下载扣积分不freshman217 2015-06-29 14:11:30 评论 只能说 稍微能用 蛮多的bughttps://www.coder100.com/index/index/content/id/498474
4.图书管理系统(C语言实现)(全部代码)!printf("***欢迎使用图书管理系统***\n"); while(1){ printf("---\n"); printf("请输入项目前编号执行相关操作:\n"); printf("\n[1] 管理员入口\n\n[2] 学生入口\n\n[0] 退出\n\n"); switch(land()){ case'1': while(1){ ifhttps://www.jianshu.com/p/4a22997df007
5.C++课程设计(简单图书管理系统)6篇(全文)C++课程设计(简单图书管理系统) 第3篇 随着计算机技术的迅猛发展, 很多新的、高效的软件开发技术应运而生。《C++程序设计》就是应潮流与需求而发展起来的一门优秀的程序设计语言, 它受到许多计算机专业人士及程序设计人员的青睐,在很多高等院校中《C++程序设计》都被列为计算机专业教学体系中的一门重要的主干课。但https://www.99xueshu.com/w/fileiuknvdrv.html
6.图书管理系统项目总结(精选14篇)图书馆管理系统的主要功能在于对纸质书籍和期刊的管理,因此对于数字资源缺乏兼容性。随着数字图书馆和数字资源的迅速发展,不少图书馆在数字资源建设上的费用正逐步超过纸质资源,但现有的图书馆管理系统却无法整合这数字资源,数字资源和纸质资源、传统的文献服务与现代数字信息资源的服务是处于隔离状态的,对于图书馆整合馆藏https://www.hrrsj.com/gongzuozongjie/xiangmuzongjie/831296.html
7.图书馆管理系统数据库mysql代码mob6454cc7aec82的技术博客3、注册界面的代码 总结 前言 主要是实训需要用C#做一个东西,然后选择了数据库,选题选了图书馆管理系统,之后再b站学习了一下想把这阶段做的东西来一个汇总。 一、数据库的选择 Access的话驱动和我电脑有点冲突,所以我用的是sql server 二、数据库的安装 https://blog.51cto.com/u_16099345/11993008
8.图书管理系统开题报告使无论是管理人员或是普通用户通过登录,都可以进入书库管理系统的网页,通过输入关键词,责任者,题名,分类号等任意一个检索点,快速并准确地查询图书的信息。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好图书馆https://www.unjs.com/fanwenwang/kaitibaogao/20110821165045_683280.html
9.某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析【答案解析】阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(CheckOutBooks)”的详细描述如下。参与者:读者(Patronhttps://www.cnitpm.com/st/381417404.html
10.基于Qt的简易图书管理系统设计与实现Qt是一个功能强大的跨平台C++库,用于开发GUI应用程序。本文介绍了一个基于Qt的简易图书管理系统的设计与实现。该系统包括图书的增删改查、借阅管理以及用户管理等功能。文章最后将提供完整的Qt代码和运行结果。 1.引言 图书管理系统是图书馆和书店等场所必备的工具,它可以帮助管理人员高效地管理图书信息。使用Qt实现一https://developer.aliyun.com/article/1470128
11.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
12.图书管理系统的出现意义图书管理系统注意事项随着信息化时代的不断深入发展,越来越多的书籍实现了电子化。然而,纸质化的书籍与电子化的书籍相比,仍有着不可被磨灭的作用。在一些大型的图书馆进行书籍的查找时十分的不方便。图书管理系统就此产生。下面就来为大家介绍一下这个系统及其设计时的注意事项。https://cloud.tencent.com/developer/article/1851631
13.C++实现简单的图书管理系统今天再为大家介绍另一个常用的管理系统——图书管理系统,希望大家可以亲自动手实践一下,下面就与大家一起分享我的劳动成果。 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能: (1)图书信息录入功能(图书信息用文件保存) https://www.xiuzhanwang.com/a1/Cyuyan/2909.html
14.图书管理系统api接口(图书管理系统功能简介)1、图书管理系统毕业论文3000字 2、python后端开发需要学什么? 3、地学专业图书馆移动信息服务模式及关键技术探究 4、我有一个图书管理安全系统,需要连接VC++和ACCESS,我实在不会,能有高人帮我连一下么我可以给足分数 5、想要再linux下用C++和mysql实现一个小型图书管理系统,该如何下手? https://www.eolink.com/news/post/61446.html
15.图书管理系统本文充分利用了C++ Builder和SQL Server 2000的优点,通过对管理系统模块的研究,提出一套构造图书信息管理系统模块的方法,并利用数据库、信息系统分析所学的知识,结合其它图书管理业务方面的常识,建立相关数据模型,利用面向对象开发工具对其进行设计与开发,在WINDOWS_XP系统平台上,使系统更加完善。 计算机代替人类来进行高https://wap.cnki.net/lunwen-2009053253.html