图书管理系统示例
- 格式:doc
- 大小:844.00 KB
- 文档页数:17
新疆大学电气工程学院课程设计(图书馆图书管理系统)指导老师:李振恩班级:能动141姓名:何照云学号:201421062182014年12月19日图书管理系统实例一、系统简介1、本图书管理系统,包含了对图书、作者、读者等基本信息的管理,也包含了借书信息,还书信息等的查询,和管理。
本系统具有如下功能:能够修改、输入、查询、与图书有关的信息,如图书信息、读者信息、作者信息、图书借阅信息等:能打印图书信息,图书借阅信息等2 ,本系统的总体结构设计树状图。
二,具体操作步骤。
1,数据库设计(1)创建三个自由表,各自由表的字段值如下。
(2)创建一个数据库,并把三个表添加到数据库中,建立索引和关联。
2.界面设计(1)系统启动表单在数据库中创建一个表单,命名为登录界面。
添加一个标签控件,两个命令按钮按照自己的喜好分别设置他们的属性。
在确定按钮的Click事件下写入如下代码:sele user1locate for allt(thisform.Text1.value)==allt(用户名)if found()if allt(thisform.Text2.value)==allt(密码)messagebox("登陆成功!",0+64,"恭喜")do 主界面.mprthisform.releaseelsemessagebox("密码错误!请检查后重新输入!",0+64,"错误")thisform.Text2.value=""thisform.Text2.setfocusendifelsemessagebox("该用户不存在,请检查您的用户名!",0+64,"错误")endif双击退出按钮,并在它的Click事件写下如下代码:quit (2)创建主表单创建一个表单保存为“主表单”并且设置它的ShowWindows属性为“2——作为顶层表单”如图设置它的其他控件属性。
图书管理系统1、需求分析1.1系统任务概述这里我们将图书管理系统的应用对象定位在中小型图书馆。
图书馆的主要功能是为注册用户提供图书借阅,主要涉及对图书的管理,借阅者管理,以及图书借阅信息的管理。
其中对图书的管理主要是指:对馆藏图书的增删改查;对借阅者信息的增删改查,还有挂失;对借阅者借阅信息的管理。
除此之外,只有合法用户才能使用该系统,要实行用户密码登陆。
1.2功能需求图书管理系统完整功能需求如下:1)借阅者管理每个通过审查的人可以办理一张借阅卡,拥有用户名、密码,成为注册用户。
此卡包含所有个人信息,以后所有图书借阅活动凭此卡进行,直至该卡被注销或删除。
因此,对借阅者的管理包括相关信息的添加、修改、删除、检索。
2)图书信息管理●新书入库:每本新到图书需将详细信息添加入库,方可对外借阅。
●图书检索:馆藏图书丰富,须提供图书快速查询检索功能。
●图书信息修改:图书基本信息入库时已基本确定,但是一些辅助信息,如存放位置,是否接触等会有变化,须提供修改功能。
●图书信息删除:对于太过破旧被淘汰或者丢失的书籍,要从系统信息中删除。
3)图书借阅信息管理系统核心功能之一。
图书管理系统最主要的功能是对图书的借出和归还。
主要涉及被借阅的图书和借阅者,即图书基本信息,借阅者部分信息,借出归还日期等。
具体来说,对于借书,首先获得借阅者的信息,看其是否有权利借书,其次检查相关书籍,看其是否被可以被外借;对于还书,同样也需要借阅者信息和图书信息才能还书,同时还要计算本次借阅是否超期,超期要计算出罚款金额,借阅者交了足额罚款才能还书成功。
此外,对于历史借还记录要提供查询功能;同时由于存储空间限制,不能永久保存历史记录,还需提供删除记录功能。
4)用户登录该系统用户主要有系统管理员和普通注册用户(即持有借阅卡的借阅者)两种。
系统管理员拥有所有功能权限,普通注册用户只能管理个人信息和检索需要图书。
系统要对不同的用户给予不用权限,每个合法用户凭登录名和密码登陆此系统。
图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2、系统功能需求分析(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理基于UML的图书馆管理系统建模设计满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
二、系统动态建模1、用例图、图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
图书管理系统UML建模与设计模式实验报告计算机与信息工程学院一、实验目的在熟悉用例概念与应用的基础上,掌握用例模型的建立,包括:1.掌握用例图的建立。
2.掌握用例描述文档的编写。
3.掌握建模工具的使用。
二、实验内容根据以下需求设计一个图书馆管理系统的用例图模型,包括:用例图和主要用例的描述文档。
基本功能要求:图书管理:新书登记,图书查询,图书注销;借阅管理:借书,还书,查询今日到期读者;读者管理:增加读者、删除读者、查询读者、读者类别管理(可以设置不同类的读者,并使不同类读者对应不同类的图书流通参数,如可借册数,可借天数,可续借次数,可续借天数等);报表管理:包括图书借阅统计报表,被注销图书统计报表等;报表可以有多种格式可供选择;可以把报表输出到文件中,可以预览报表、打印报表等。
系统管理:系统管理员使用,包括用户权限管理(增加用户,删除用户,密码修改等),数据管理(提供数据修改、备份、恢复等多种数据维护工具),系统运行日志,系统设置等功能。
三、实验思想(1)分析系统需求;(2)确定系统参与者:读者、图书管理员、图书管理系统;(3)确定系统用例;四、实验结果借阅人用例图:图书系统管理员用例图:图书管理员用例图:1.用例名称:登录用例描述:根据用户输入的用户名和密码判断用户的身份,赋予相应的权限。
前置条件:无后置条件:根据用户所有的权限进入相应的操作界面。
基本操作流程:1输入用户名2输入密码2校验密码是否正确。
3根据用户身份进入相应的操作界面。
可选流程:如果密码不正确,提示重新输入密码;如果用户名不正确,提示没有此用户。
2.用例名称:查询图书用例描述:由读者进行操作,查询图书馆中有没有需要图书,如果有,显示该图书编号、书名、作者、出版日期、当前借阅状态等信息。
前置条件:以顾客身份登录后置条件:无基本流程:1 以读者身份登录。
2输入图书的名称或作者名称。
3显示相关图书的信息。
可选流程:如果没有该图书,返回提示信息:“没有找到图书”。
图书馆管理系统用例图、活动图、类图、时序图第一篇:图书馆管理系统用例图、活动图、类图、时序图图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2、系统功能需求分析(1)读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2)书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3)借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理基于UML的图书馆管理系统建模设计满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
二、系统动态建模1、用例图、2图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规X化和自动化.能够对图书进展注册登记,也就是将图书的根本信息〔如:书的编号、书名、作者、价格等〕预先存入数据库中,供以后检索.能够对借阅人进展注册登记,包括记录借阅人的某某、编号、班级、年龄、性别、地址、等信息.提供方便的查询方法.如:以书名、作者、、时间〔确切的时间、时间段、某一时间之前、某一时间之后〕等信息进展图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进展检索;以名称查询联系方式信息.提供对进展的预先预订的功能.提供旧书销毁功能,对于淘汰、损坏、丢失的可与时对数据库进展修改.能够对使用该管理系统的用户进展管理,按照不同的工作职能提供不同的功能授权.提供较为完善的过失控制与友好的用户界面,尽量防止误操作.2、系统功能需求分析<1> 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等.<2> 管理:根本信息制定、输入、修改、查询,包括编号、类别、关键词、备注.<3> 借阅管理:包括借书,还书,预订,续借,查询,过期处理和丢失后的处理.<4>系统管理:包括用户权限管理,数据管理和自动借还书机的管理满足以上需求的系统主要包含有一下几个子系统〔1〕根本业务功能子系统:该系统中主要包含了借书还书和预订等功能.〔2〕根本数据录入功能子系统:该子系统主要包含有信息和读者信息录入功能.〔3〕信息查询子系统:包含了多功能的查询信息和读者信息.〔4〕数据库管理功能子系统:主要包含了借阅信息管理功能,信息管理功能和预订信息管理功能.〔5〕帮助功能子系统.二、系统动态建模1、用例图、图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例.管理员所包含的用例有:(1)登录系统:管理员可以通过登录该系统进展各项功能的操作(2)管理:包括对的增删改等.(3)借阅管理:包括借书、还书、预订、逾期处理和丢失处理等等.(4)读者管理:包含对读者的增删改等操作.(5)自动借书机的管理.读者所包含的用例有:(1)登录系统(2)借书:进展借书业务.(3)还书:读者具有的还书业务.(4)查询:包含对个人信息和信息的查询业务(5)预订:读者对的预订业务.(6)逾期处理:就是过期后的缴纳罚金等.(7)丢失处理:对丢失后的不同措施进展处理.(8)自动借书机的使用等.2、时序图时序图是显示对象之间交互的图,对象是按时间顺序排列的.该图书馆管理系统主要含有以下几个重要的时序图,其他对象的时序图和也类似.(1)借书时序图(2)还书时序图(3)罚款时序图1、借书时序图图书馆管理系统借书时序图[时序图说明](1)login〔〕:登录系统.(2)checkstu_card<>:对读者信息进展验证,检查是否符合本图书馆借书条件.(3)showinformation〔〕:显示该读者的根本信息函数.(4)borrow〔〕:读者借书函数.(5)getreaders〔〕:取得读者信息函数.看该读者是否符合借书条件,假如符合,如此返回可借信息.(6)gettitle〔〕:取得信息.(7)getreservation〔〕:检验是否被预订函数.(8)getnoreservation〔〕:没被预订或取消预订函数.(9)create〔borrower,item〕:创建外借函数.借书时,读者先将书拿予管理员,管理员对和读者进展检验,假如和读者都符合借书条件,如此借书成功.2、还书时序图图书馆管理系统还书时序图[时序图说明](1)login〔〕:登录系统.(2)getitem<>:取得条目信息.(3)update〔〕:对图书馆条目和借阅者信息进展更新条目.还书时,读者先将书交给管理员,由管理员扫描,假如没有过期等违规现象,如此对和读者借阅信息进展更新,同时还书成功.3、罚款时序图图书馆管理系统的罚款时序图[时序图说明]管理员对进展扫描,假如发现已经超过了图书馆规定的还书期限,如此按每天一定金额进展罚款,过期天数和罚款金额由系统自动计算.用户交完罚金后,如此对读者借阅信息进展更新.4.4、系统的状态图图书馆的状态图如图7所示.[状态图说明]在未变成图书馆在库时,为新加状态.处于在库状态时既可以预订也可以外借,外借后变为借出状态.处于预订状态时也可以外借,超出预订时间期限如此从预订状态直接转为可用状态.借阅者在规定的预订时间内也可以考虑取消预订,取消预订后的状态转为可用.外借归还后变为可用状态.图书馆的状态图3、活动图活动图描述的是某流程中的任务的执行,活动图描述活动是如何协同工作的,当一个操作必须完成一系列事情,而又无法确定以样的顺序来完成事情时,活动图可以更清晰地描述事情..在本图书馆管理系统中,我们主要描述了图书馆系统的借书、还书和预订的活动图.<1>借书活动图[借书活动图说明]管理员首先要扫描读者的借书证,检验证件是否符合图书馆借书条件,假如该读者的借书数量还未达到最大规定数量,并且其所借均未属于过期X围,如此符合借书条件.如此再扫描条形码,检查是否是不可借或者已经被预订,假如被预订,如此取消预订,方可借书.在条件都符合时如此更新信息和读者的借阅信息,记录好借书的时间.图书馆管理系统的借书活动图<2>还书活动图[还书活动图说明]图书管理员对进展扫描,假如已经过期,如此要求读者还请欠款才能还书,读者缴应交罚款后,更新信息和读者信息.图书馆管理系统的还书活动图<3>预订图书活动图[预订活动图说明]读者先进入系统查询自己所需要的,显示信息,检验是否属于可预订,假如符合条件如此检查是否已经被预订或已经被外借,假如都未成立,如此读者登录系统,并对该进展预订.图书馆管理系统预订活动图4、图书馆管理系统的类图[类图说明](1)reader类是借阅者的类,它的属性很多,包括借阅者的账户ID 〔reader_id〕、某某〔reader_Name〕、地址〔Address〕、班级〔class〕、所借的〔borrowed〕等.其中主要操作有借书〔addborrowed〕和还书<deleteborrowed>和预订<reservation>等.(2)admin类是管理员类,他有编号和某某属性,操作主要是的增删改和读者的增删改等等.〔3〕 Title 类是记录信息的类,包括的名字〔name〕、作者〔author〕、book_id 等属性.〔4〕 Item 类是具体某本书的类,属性包括号〔id〕.操作包括预订〔reserve〕、按查找〔find_on_title〕等.〔5〕 borrow类是某本书的借阅信息类,包括所借阅的ISBN、借阅的时间〔date〕等.〔6〕 Reservation类是预订信息类,每个预订信息包括预订日期〔date〕、所预订的ISBN、预订的用户ID〔UserID〕等属性.<7> persistent store类是永久的存储类,在数据库中的存储数据,其他对与有关的活动都要经过其存储类.图书馆管理系统的类图与关系三.实验心得此次实验我们实现了对网上选课系统的设计,通过UML建模,把事物从抽象到实例化的过程,对每个对象进展细化分析,从而得到简单而方便,容易理解的模型结构.通过UML模型可以高效完成软件设计,通过此次试验收获很大.在教师和同学们的帮助下,使我能够成功的掌握了UML模型.在此,对教师和同学们的帮助表示感谢.。
图书管理系统设计(5篇范例)第一篇:图书管理系统设计图书管理系统设计1、需求分析图书管理信息采用文件保存,因而要提供文件的输入输出操作;要实现对图书基本信息的查询,则要提供查找操作(提供按书名、作者名查询两种查询方式)和显示操作;要实现对撤销图书信息的删除则要提供文件记录的删除操作;办理借书或还书手续需要提供修改操作;另外还要提供键盘式选择菜单以实现功能选择。
2、总体设计整个系统被设计为数据输入模块、数据查询模块、数据删除模块和数据修改模块。
3、详细设计数据结构采用结构体,设计图书信息结构体:Struct bookManageInfo{Char bookName[20];//图书名称Char bookCode[20];//图书编号Float price;//图书价格Char author[10];//作者Int state;//存在状态,0代表可以出借,1代表已经借出Char borrowerName[10];//借书人姓名Int sex;//借书人性别,0代表女,1代表男Char stuNo[10];//借书人学号}bookMInfo;(1)数据输入模块采用fwrite或fprintf把图书基本信息写入图书信息文件。
(2)数据查询模块通过菜单选择查询方式,提供按书名查询和按作者名查询两种查询方式。
采用基本查找算法即可。
(3)数据删除模块通过菜单选择删除操作,由于C语言没有提供直接删除文件记录的函数,因而需要自己实现:读记录,判断是否要删除(与输入的要删除的记录比较),如果要删除,则舍弃;否则重新写入文件。
(4)数据修改模块办理借书手续时,先要在文件中查找要借的书的存在状态,若可以出借,则允许借出,把借书人姓名、性别和学号添加到该书的记录中,并把存在状态改为已经借出;否则,显示“抱歉,该书已借出”。
办理还书手续时,在文件中查找该书的记录,然后把存在状态改为允许出借,把借书人姓名、性别和学号删除。
图书管理系统用例图
后置条件:借书成功,更新图书和读者的借阅信息。
基本流程:
1以图书管理员身份登录系统。
2选择借书操作。
3读入读者借书卡的条码。
4读入所选图书的条码。
5校验读者的借书资格是否符合要求。
6如果符合要求,更新图书和读者的借阅信息。
可选流程:如果读者的借书数量已达上限,提示无法借阅。
4.用例名称:还书
用例描述:由图书管理员把读者的借书卡的条码读入计算机,再将读者所还图书的条码读入计算机,计算出该读者所借图书的借阅期限和超期天数,如果超期,根据规定的罚款标准计算罚款,同时更新该读者的借阅信息。
前置条件:以图书管理员的身份登录系统。
后置条件:还书成功,更新图书和读者的借阅信息。
基本流程:
1以图书管理员身份登录系统。
2选择还书操作。
3读入读者借书卡的条码。
4读入所还图书的条码。
5计算借阅期限和超期天数。
6如果超期,计算罚款。
7更新图书和读者的借阅信息。
可选流程:如果读者没有超期,不需要计算罚款。
4进行相应的操作,修改或注销图书。
5保存操作。
改写:
借书:
续借:
还书:
新书登记:
修改或注销图书:。
图书管理系统Rose模型设计过程一、模型总体设计1 创建系统的Use Case 视图Use Case框图显示系统中的使用案例与角色及其相互关系,角色是与所建系统交互的对象(人或物),使用案例是系统提供的高级功能模块,演示了人们如何使用案例。
首先创建主Use Case框图,显示系统的总体视图。
下图是图书馆管理系统的用例图,所建系统的需求组成所有使用案例和角色设置。
这个框图中有系统角色、系统用例和它们之间的关系。
Borrower图1.1图1.1中有两个系统角色:借阅者和图书管理员,四个系统使用案例:借阅图书、归还图书、预约图书和取消预约。
较好的描述了系统的使用功能:借阅者通过图书管理员可以借阅书刊、归还书刊、预约书刊和取消预约,所有这些操作要通过图书管理员来完成,也就是说图书管理员是本系统的直接使用者。
本系统的系统角色Borrower可以是一个人,也可以是其他的图书馆,能够对图书进行借阅和预约。
图1.2描述了系统的另一个方面的功能——系统维护的功能。
本系统的维护是由图书管理员来维护的,他可以增加书籍、删除或更新书籍、增加条款、删除条款、增加新的借阅者、删除或更新借阅者。
这个用例用到了其他的一些用例:Add Title用例、Remove or Update Title用例、Add Item用例、Remove Item用例、Add Borrower用例和Remove or Update Borrower用例。
Remove or Update Borrower图1.22 创建系统的Logical 视图首先在Logical视图中创建Sequence框图和Collaboration框图,也就是Interaction框图。
Interaction 框图一步一步显示使用案例的流程。
包括:流中需要什么对象;对象相互发送什么消息;什么角色启动流;消息按什么顺序发送。
图1.3是系统添加新用户的Sequence 框图。
在添加的时候要查找是否数据库中有该用户的信息,如果没有的话则进行添加,用户信息有四个字段:用户姓名、用户地址、邮政编码、国家地区。
图书管理系统数据库设计示例第一篇:图书管理系统数据库设计示例图书管理系统数据库设计一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息以及学生的借阅信息。
此系统功能分为面向学生和面向管理员两部分,其中学生可以进行借阅、续借、归还和查询书籍等操作,管理员可以完成书籍和学生的增加,删除和修改以及对学生,借阅、续借、归还的确认。
一、需求分析针对一般图书管理信息系统的需求,通过对图书管理工作过程的内容和数据流程分析,设计如下面所示的数据项:1.读者信息属性:读者学号,读者姓名,读者性别,联系电话,所在系,生效日期,失效日期,违章状况,累计借书,备注主键:读者学号2.书籍信息属性:ISBN,书名,作者,出版社,出版日期,简介,备注主键:ISBN 3.管理员信息属性:工作号,姓名,性别,电话,家庭住址,备注主键:工作号数据流程通过对系统的调查和可行性分析,画出系统的数据流程图:1.读者学生对图书管理系统的要求有:1)能按各种方式(比如书名、编号、作者)查询图书馆的藏书情况。
2)能够方便地借阅图书、续借图书、归还图书3)能够查询自己的基本资料、图书情况4)能够熟悉图书管理系统的使用。
读者进入系统工作的流程为:注册→查询→修改信息→借阅续借→图书归还→注销2.图书管理员他们对图书管理系统的要求有:1)能方便的对图书进行录入登记,注销陈旧的书籍。
2)能够方便地对新生进行登记,或注销已经毕业的学生信息(基本信息,借阅信息)。
3)能够随时发布一些诸如各学院学生借阅图书超期情况、馆内藏书情况、借情况等信息,以便各学院能够随时获知本院学生的一些借书信息。
图书管理员工作的流程为::注册→录入图书→录入新生→注销图书→注销学生→注销→修改个人信息→超期处理二、概念模型设计数据库需要表述的信息有以下几种:1.读者信息2.书籍信息3.管理员信息4.读者与书籍之间的关系(借阅关系E-R图)5.管理员与书籍之间的关系(管理员_书籍E-R图)6.管理员与学生之间的关系(管理员_学生 E-R图)三、逻辑设计从理论‘E/R模型’到理论‘关系模型’的整理转换,通过E/R模型到关系模型的转化,可以得到如下关系模式:借阅关系属性:工作号,读者学号,ISBN,是否续借,借书日期,还书日期,备注。
vfp综合设计实例图书管理系统1图书管理系统实例梅毅一、系统简介1、本图书管理系统,包含了对图书、作者、读者等基本信息的管理,也包含了借书信息,还书信息等的查询,和管理。
本系统具有如下功能:能够修改、输入、查询、与图书有关的信息,如图书信息、读者信息、作者信息、图书借阅信息等:能打印图书信息,图书借阅信息等。
2、本系统的总体设计树状图二、具体操作步骤1、创建项目,名为图书管理系统2、数据库设计(2)在项目中创建一个数据库,并把五个表添加到数据库中。
在图书表中,为书号建立主索引,为作者编号建立普通索引,通过该索引和作者表之间创建关联。
在作者表中,为作者编号设置主索引。
在读者表中,读者编号为主索引。
在借阅表中,为读者编号、书号字段创建普通索引,通过书号和图书表之间关联;通过读者编号和读者表之间关联。
在用户表中,为读者编号建立索引,通过读者编号和读者表建立关联。
最终形成如下图所示的数据库。
3、界面设计(1)系统启动表单在项目中创建一个表单,命名为启动。
如下图,添加一个标签控件,两个命令按钮,按照自己的喜好分别设置他们的属性。
在登录按钮的Click事件下写入如下代码:ThisForm.ReleaseDo form 身份验证双击退出按钮,并在它的Click事件写下如下代码:Clear event(2)创建身份验证表单在项目中创建,一个表单,保存为“身份验证”并按以下图添加控件,设置属性。
打开他的数据工作环境,把“用户”表添加到其中,在进入的click事件写入如下代码:locate for 用户名=bo1.valueif alltrim(thisform.Text1.value)alltrim(密码)messagebox("读不起,密码有误!你不能进入本系统",0,"请注意:")elsethisform.releasedo form 主表单endif在退出的click事件下写如下代码:thisform.releaseclear event(3)创建住表单创建一个表单保存为“主表单”并且设置它的ShowWindows 属性为“2——作为顶层表单”如图设置它的其他控件属性。
图书管理系统1、需求分析1.1系统任务概述这里我们将图书管理系统的应用对象定位在中小型图书馆。
图书馆的主要功能是为注册用户提供图书借阅,主要涉及对图书的管理,借阅者管理,以及图书借阅信息的管理。
其中对图书的管理主要是指:对馆藏图书的增删改查;对借阅者信息的增删改查,还有挂失;对借阅者借阅信息的管理。
除此之外,只有合法用户才能使用该系统,要实行用户密码登陆。
1.2功能需求图书管理系统完整功能需求如下:1)借阅者管理每个通过审查的人可以办理一张借阅卡,拥有用户名、密码,成为注册用户。
此卡包含所有个人信息,以后所有图书借阅活动凭此卡进行,直至该卡被注销或删除。
因此,对借阅者的管理包括相关信息的添加、修改、删除、检索。
2)图书信息管理●新书入库:每本新到图书需将详细信息添加入库,方可对外借阅。
●图书检索:馆藏图书丰富,须提供图书快速查询检索功能。
●图书信息修改:图书基本信息入库时已基本确定,但是一些辅助信息,如存放位置,是否接触等会有变化,须提供修改功能。
●图书信息删除:对于太过破旧被淘汰或者丢失的书籍,要从系统信息中删除。
3)图书借阅信息管理系统核心功能之一。
图书管理系统最主要的功能是对图书的借出和归还。
主要涉及被借阅的图书和借阅者,即图书基本信息,借阅者部分信息,借出归还日期等。
具体来说,对于借书,首先获得借阅者的信息,看其是否有权利借书,其次检查相关书籍,看其是否被可以被外借;对于还书,同样也需要借阅者信息和图书信息才能还书,同时还要计算本次借阅是否超期,超期要计算出罚款金额,借阅者交了足额罚款才能还书成功。
此外,对于历史借还记录要提供查询功能;同时由于存储空间限制,不能永久保存历史记录,还需提供删除记录功能。
4)用户登录该系统用户主要有系统管理员和普通注册用户(即持有借阅卡的借阅者)两种。
系统管理员拥有所有功能权限,普通注册用户只能管理个人信息和检索需要图书。
系统要对不同的用户给予不用权限,每个合法用户凭登录名和密码登陆此系统。
5)系统基本信息管理●对借阅者类别的设置:对于借阅者设置不同类别,不同类别的借阅者设置不同的借阅图书数量上限。
●对图书类别的设置:不同类别图书的借阅期限不同,超期后的罚款金额也不同。
●对系统用户的管理:本系统暂定两类用户,系统管理员和普通注册用户,不同用户拥有不同的使用权限。
1.3数据流图借还书的过程要和时间挂钩,所以还要有一个数据源点为“系统时钟”,因此得到图书管理系统的基本数据流图1-1。
图1-1 基本数据流图通过对需求的深入分析,对“图书管理系统”加工进一步细化,得到功能级数据流图1-2。
图1-2 功能级数据流图通过对图1-2的分析,发现上述的三个加工在工作过程中要涉及一些数据存储。
因此得到改进后的功能级数据流图,如图1-3所示。
图1-3 改进后的功能级数据流图再仔细分析图1-3的每个加工是否还能细化,或者还有没有可以补充的加工。
我们发现系统中还需要一个加工来专门负责“基本信息的维护”,这样得到进一步的数据流图,如图1-4所示。
那么,对于图1-4是否还需要细化呢?比如“借阅者管理”还要先“添加”再“查询”等,这些都是一些比较细节的东西,不需要在需求分析里作过多关注。
图1-4 最终数据流图1.4数据字典对于数据流图中的每个元素,都可以额通过数据字典加以描述,以保证数据定义的严格性,针对上述系统的数据字典如下:借阅者管理=[添加借阅者|修改借阅者|删除借阅者|检索借阅者]图书管理=[添加图书|修改图书|删除图书|检索图书]借阅信息管理=[添加借阅信息|修改借阅信息|删除借阅信息|检索借阅信息]管理个人信息=[检索个人信息|修改个人信息]基本信息维护请求=[对借阅者类别信息的维护|对图书类别信息的维护|对登陆用户的维护]对借阅者类别信息的维护=[对借阅者类别信息的添加|对借阅者类别信息的修改|对借阅者类别信息的删除|对借阅者类别信息的检索]对图书类别信息的维护=[对图书类别信息的添加|对图书类别信息的修改|对图书类别信息的删除|对图书类别信息的检索]对登录用户的维护=[对用户信息的添加|对用户信息的修改|对用户的删除|对用户信息的检索]时间=年+月+日借阅卡信息=借阅卡号+姓名+性别+身份证号+单位+家庭住址+联系电话+借阅者类别+办证日期+已借书数目+是否挂失注册用户=借阅卡信息注册用户=借阅者借阅卡号=8{数字}8性别=[男|女]身份证号=18{数字}18联系电话=(区号)+7{数字}7区号=4{数字}4借阅者类别=[一级读者|二级读者|三级读者]描述:在本系统中一级读者可借10本,二级读者可借5本,三级读者可借3本办证日期=年+月+日已借书数目=[0|1|2|3|4|5|6|7|8|9|10]是否挂失=[挂失|没挂失]挂失=1没挂失=0图书信息=图书号+书名+作者+出版社+出版日期+单价+图书类别+存放位置+入库日期+是否借出图书=图书信息图书号=7{数字}7+同一本书副本编号同一本书副本编号=[0|1|2|3|4|5|6|7|8|9]出版日期=年+月+日图书类别=[一类图书|二类图书|三类图书|四类图书|五类图书|六类图书]入库日期=年+月+日是否借出=[借出|未借出]借出=1未借出=0借阅信息=借阅卡号+姓名+图书号+书名+借出日期+实际归还日期+罚款金额借出日期=年+月+日实际归还日期=年+月+日系统基本信息=[借阅者类别信息|图书类别信息|系统用户]借阅者类别信息=借阅者类别+能借书的数量借阅者类别=[一级读者|二级读者|三级读者]能借书的数量=[1|2|3|4|5|6|7|8|9|10]单位:本图书类别信息=图书类别+可借天数+图书超期每天罚款金额图书类别=[一类图书|二类图书|三类图书|四类图书|五类图书|六类图书]可借天数=[10|20|30|40|50|60|70]单位:天图书超期每天罚款金额=[0.1|0.2]单位:元系统用户=用户名+密码+是否管理员用户名=1{字母|数字}16密码=1{字母|数字}8是否管理员=[是管理员|不是管理员]是管理员=1不是管理员=01.5 ER图根据上一小节的数据字典,得到系统E-R图,如图1-5。
图1-5 图书管理系统的E-R图对应图书管理系统有六张表,分别是:表1-1“借阅者表”,表1-2“图书表”,表1-3“借阅表”,表1-4“借阅者类别表”,表1-5“图书类别表”,表1-6“系统用户表”。
表1-1借阅者表字段名称数据类型是否关键字是否可以为空借阅卡号decimal 是否姓名Varchar(20) 否否性别Boolean 否否身份证号Varchar(30) 否否单位Varchar(30) 否是家庭住址Varchar(30) 否是联系电话Varchar(30) 否是借阅者类别Varchar(30) 否否办证日期datetime 否否已借书数目int 否是是否挂失boolean 否是表1-2图书表字段名称数据类型是否关键字是否可以为空图书号decimal 是否书名Varchar(20) 否否作者Varchar(20) 否否出版社Varchar(20) 否否出版日期datetime 否否单价money 否否图书类别否否存放位置Varchar(30) 否是入库日期datetime 否是是否借出boolean 否否表1-3借阅表字段名称数据类型是否关键字是否可以为空借阅卡号decimal 是否图书号decimal 是否姓名Varchar(20) 否是书名Varchar(20) 否是借出日期datetime 否否实际归还日期datetime 否否罚款金额money 否是表1-4借阅者类别表字段名称数据类型是否关键字是否可以为空借阅者类型Varchar(30) 是否图书类别Varchar(30) 是否可借天数int 否否图书超期每天罚款金额money 否是用户名Varchar(20) 是否密码Varchar(20) 是否是否是管理员boolean 否是1.6性能要求总体来说,系统在性能上没有太多的特殊要求,只要进行图书查询时没有明显的延时就行了,希望查询的响应时间不超过3秒,其他一些要求如下:●系统最小寿命:在无重大改动的情况下,正常运行5年以上。
●设备要求:计算机稳定性良好,整套系统经济实惠。
●在使用上:要求系统易理解,易学习,易操作。
●在安全性上:要求系统安全可靠,容错,易恢复。
●在数据集中上:要求用统一的数据库实现数据的完整性和实时性。
●在可维护性上:要求系统可修改,可测试,可扩充,可移植。
2、系统设计2.1总体设计通过对需求分析阶段文档做更深入的分析,我们进一步复查和细化数据流图,得到改进后的数据流图,如图2-1所示。
图2-1 细化的系统数据流图可以看出图2-1的数据流图并没有一个很明显的事务中心,因此可以把它看成一个变换流,通过使用一个面向数据流的设计方法得到系统的软件结构图,如图2-2所示。
图2-2图书管理系统的软件结构图该图是未经精化的软件结构图,通过对用户需求的进一步分析,结合软件设计的高内聚和低耦合标准,得到精化后的软件结构图,如图2-3所示。
图2-3精化后的系统结构图2.2详细设计根据前面总体设计的软件结构图,下面我们依次具体设计每个模块实现的方法和相关的交互界面。
2.2.1用户登陆模块由于本系统有系统管理员和注册用户,不同的用户登陆后拥有不同的权限,所以在系统开始时,需要有登陆模块来实现此功能。
该模块可以给任何人使用。
模块的输入:用户名、密码。
模块的处理:系统根据用户输入的用户名和密码到后台数据库相应的记录中查找,如果没有则给出相应的提示不予进入,如果有则根据其不同身份进入不同处理界面。
模块的输出:对于非法用户给出相应提示,对于合法用户,进入相应处理界面。
用户登陆模块的PAD图如图2-4所示。
图图2-4登陆模块的PAD图该模块的交互界面设计,如图2-5所示。
图2-5用户登陆模块的交互界面3、系统编码4、软件测试4.1概述4.1.1图书管理系统概述本系统的主要功能包括入库图书的管理、图书借阅卡的管理、图书借还的管理以及系统使用者的管理。
4.1.2系统的测试计划(1)需求分析阶段列出的系统的每个功能都要求是“可测试”的。
(2)设计阶段每个具体功能的实现都要考虑到其测试用例的设计。
(3)编码实现阶段对每个模块做单元测试,然后做集成测试。
(4)最后和用户一起做验收测试。
4.1.3测试人员安排系统的需求工程师扮演测试负责人的角色,负责对测试的总体把握;每个模块的编码者负责自己模块的单元测试;另外一名专门的软件测试工程师负责系统的集成测试并配合测试负责人的工作。
4.2测试方法和步骤4.2.1系统的测试方法本系统各个模块的功能集中在对数据库的处理以及对用户交互界面的设计,系统内部并没有设计复杂的算法和数据结构,因此测试方法采用侧重测试功能的黑盒测试为主,对个别重要模块可以额辅以白盒测试。