软件工程课程设计图书借阅管理系统.docx
《软件工程课程设计图书借阅管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计图书借阅管理系统.docx(28页珍藏版)》请在冰豆网上搜索。
软件工程课程设计图书借阅管理系统
《软件工程》
课程设计报告书
项目名称:
图书借阅管理系统
指导老师:
学生姓名:
专业:
班级:
日期:
信息科学与工程系
目录
一、项目计划1
(一)项目开发背景及内容1
(二)开发环境1
(三)进度安排1
二、结构化分析设计2
(一)数据流图2
(二)数据字典3
(三)加工说明(可用结构化语言描述、判定表、判定树)8
(四)结构图9
(五)流程图9
三、面向对象分析设计11
(一)用例图11
(二)对象行为模型12
(三)系统包图13
(四)类图14
(五)配置图15
四、系统实现15
(一)程序代码15
(二)功能演示(界面)25
五、测试27
六、软件发布28
七、参考文献28
八、总结体会29
一、项目计划
(一)项目开发背景及内容
随着计算机技术的不断发展,计算机作为知识经济时代的产物,已被广泛应用于社会各个行业和领域。
目前,我国的科技水平高速发展,计算机作为今天使用最广的现代化工具已深入到各个领域,并且正在成为未来社会——信息社会的重要支柱。
在这样的大背景下,现代图书馆的管理方式,资源建设等方面都发生了重大变化,这种变化表现在图书馆工作,管理和服务平台发生的变化,图书馆不再是传统的手工操作,人工管理,而是全面实行计算机管理。
图书馆的正常运营中总是面对大量的读者信息,图书信息以及两者相互作用产生的借书信息,因此要对读者资源,图书资源,借书信息进行管理。
本系统的开发就是在于提高图书借阅管理的工作效率,加强图书馆的管理,全面实行计算机管理。
(2)开发环境
开发环境:
Win7旗舰版
开发工具:
Visualbasic6.0ACCESS
作图软件:
MicrosoftVisio2010
(3)进度安排
该软件应用MicrosoftVisio2010和Visualbasic6.0,ACCESS进行编程作图,历时大概两周,最终完成了这个小型图书借阅管理系统。
由于时间仓促,该小型图书借阅管理系统并不完善。
我用了两天时间查找相关资料,两天时间编写代码和连接数据库。
其余三天开始用MicrosoftVisio2010画数据流图、结构图、流程图、用例图和包图类图。
整个过程系我们三人分工人完成。
二、结构化分析设计
(一)数据流图
图2.2.1系统的数据流图
图2.2.21层数据流图
(2)数据字典
在定义的图书借阅管理系统数据字典中,主要对数据流图中的数据项、数据流、数据存储和处理过程进行说明。
(1)数据项描述
1)数据项名称:
借书证号
含义说明:
惟一标识一个借书证
类型:
字符型
长度:
50
逻辑关系:
不允许为空
2)数据项名称:
用户名
含义说明:
读者的名称
类型:
字符型
长度:
20
逻辑关系:
不允许为空
3)数据项名称:
密码
含义说明:
对用户名和操作员管理员进行加密
类型;字符型
长度:
10
逻辑关系:
允许为空
4)数据项名称:
性别
类型:
字符型
长度:
10
逻辑关系:
允许为空
5)数据项名称:
所在系别
类型;字符型
长度:
10
逻辑关系:
允许为空
6)数据项名称:
所在班级
类型:
字符型
长度:
10
逻辑关系:
允许为空
7)数据项名称:
操作员名称
类型:
字符型
长度:
30
逻辑关系:
不允许为空
8)数据项名称:
操作员简称
含义说明:
惟一标识一个操作员
类型:
字符型
长度:
10
逻辑关系:
不允许为空
9)数据项名称:
操作员级别
含义说明:
对操作员和管理员进行区分
类型:
字符型
长度:
10
逻辑关系:
不允许为空
10)数据项名称:
图书编号
含义说明:
惟一标识一个图书
类型:
字符型
长度:
10
逻辑关系:
不允许为空
11)数据项名称:
图书名称
类型:
字符型
长度:
50
逻辑关系:
不允许为空
12)数据项名称:
作者
类型:
字符型
长度:
50
逻辑关系:
不允许为空
13)数据项名称:
出版社
类型:
字符型
长度:
50
逻辑关系:
不允许为空
14)数据项名称:
出版时间
类型:
日期时间型
长度:
8
逻辑关系:
不允许为空
15)数据项名称:
价格
类型:
整型
长度:
4
逻辑关系:
不允许为空
16)数据项名称:
备注
类型:
字符型
长度:
200
逻辑关系:
允许为空
17)数据项名称:
借书日期
类型:
日期时间
长度:
8
逻辑关系:
不允许为空
18)数据项名称:
还书日期
类型:
日期时间
长度:
8
逻辑关系:
不允许为
(2)数据结构描述
1)数据流名称:
用户情况
含义说明:
定义了一个读者的有关信息
组成结构:
用户情况=用户名+借书证号+密码+性别+所在系别+所在班级
2)数据流名称:
操作员情况
含义说明:
定义了一个操作员的有关信息
组成结构:
操作员情况=操作员名称+操作员简称+操作员级别+操作员密码
3)数据流名称:
图书情况
含义说明:
定义了一个图书的有关信息
组成结构:
图书情况=图书编号+图书名称+作者+出版社+出版时间+价格+备注
(3)数据流描述
1)数据流名称:
借书
含义:
读者借书时的记录
来源:
读者
去向:
审核借书
数据流量:
>50份/天
组成:
借书单=借书证号+图书编号+借书日期
2)数据流名称:
还书
含义:
读者还书时要填写的记录
来源:
读者
去向:
审核还书
数据流量:
>25份/天
组成:
还书单=图书编号+还书日期
(4)数据存储说明
1)数据存储名称:
图书数据表
含义说明:
存放图书的有关信息
组成结构:
图书编号+图书名称+作者+出版社+出版时间+价格+备注
说明;书号具有惟一性和非空性
2)数据存储名称:
用户信息表
含义说明:
存放读者的注册信息
组成结构:
用户名+借书证号+密码+性别+所在系别+所在班级
说明:
证号具有惟一性和非空性,性别只能是男和女
3)数据存储名称:
借书记录
含义说明:
存放读者的借书,还书信息
组成结构:
借书证号+图书编号+借书日期+还书日期
说明:
要求能够立即查询
(5)处理过程说明
1)处理过程名称:
图书管理
输入:
图书情况,
输出:
图书记录
处理说明:
对馆内所有图书按图书编号进行管理,将图书数据数据化,存储图书数据表中。
2)处理过程名称:
读者管理
输入:
读者情况,
输出:
读者记录
处理说明:
建立读者信息表,对读者进行统一编号,实现读者记录表的增删改维护功能。
3)处理过程名称:
查看数目
输入:
借书请求,读者
输出:
借书记录,图书信息
处理说明:
实现根据图书编号等查询图书。
4)处理过程名称:
借书处理
输入:
图书情况,读者,借书记录
输出:
借书记录
处理说明:
确认读者符合借书条件,办理借书手续。
5)处理过程名称:
还书处理
输入:
图书情况,
输出:
借书记录
处理说明:
对照相应的图书编号可办理还书手续。
6)处理过程名称:
安全管理
输入:
操作员情况,用户情况
输出:
操作员级别,操作员记录,用户记录
处理说明:
通过用户名和口令,确认用户身份,保证系统的安全型。
(三)加工说明(可用结构化语言描述、判定表、判定树)
图2.3.1借阅管理系统的判定树
(四)结构图
图2.4.1系统的结构图
(5)流程图
图2.5.1系统登录流程图
图2.5.2系统的借书流程图
图2.5.3系统的还书流程图
三、面向对象分析设计
(一)用例图
用例图在需求分析阶段有重要作用,它是作为参与者的外部用户所能观察到的系统功能模型图。
整个开发过程都是围绕需求阶段用例进行的。
图3.1.1系统的用例图
(2)对象行为模型
图3.2.1系统状态图
图3.1.2系统活动图
(三)系统包图
图3.3.1系统的包图
数据库包:
包含数据库中所有的数据信息
用户包:
包含要使用系统的用户及其属性
管理员包:
包含要使用系统的管理员及其属性
接口包:
表示系统和数据库的借口
系统包:
表示图书借阅管理系统
(四)类图
类是面对对象系统组成的核心。
类是对一组相同属性、操作、关系和语义的对象的描述。
这些对象包括了对现实世界中的物理实体、商业事务、逻辑事务、应用事务和行为事务等,甚至也包括了纯粹概念性的事务,它们都是类的实例。
图3.4.1系统的类图
(五)配置图
图3.5.1系统配置图
四、系统实现
(一)程序代码
图书借阅管理:
PublicSchCndAsString
PrivateSubCmd_Add_Click()
'初始化FrmBorrowEdit信息
'设置借阅编号为当前编号最大值+1
DimJYNoAsString
'取表中的最大借阅编号
JYNo="00"+Trim(Str(Val(MyBorrow.GetMaxNo())+1))
FrmBorrowEdit.txtBorrowNo="JY"+JYNo
FrmBorrowEdit.txtBorrowDate=Date
FrmBorrowEdit.txtReturnDate=""
FrmBorrowEdit.txtBCount=0
FrmBorrowEdit.txtCardNo=""
FrmBorrowEdit.txtName=""
FrmBorrowEdit.txtCardType=""
FrmBorrowEdit.txtMaxCount=0
FrmBorrowEdit.txtMaxDays=0
FrmBorrowEdit.txtBookNo=""
FrmBorrowEdit.txtBookName=""
FrmBorrowEdit.txtBookType=""
FrmBorrowEdit.txtLCount=0
FrmBorrowEdit.txtTotal=0
'设置添加图书按钮不能用
FrmBorrowEdit.Cmd_Add.Enabled=False
FrmBorrowEdit.Cmd_Del=False
FrmBorrowEdit.Cmd_Ok.Enabled=False
'设置图书信息不能用
FrmBorrowEdit.Frame2.Enabled=False
'启动编辑窗体
FrmBorrowEdit.Show1
'刷新DataGrid表格的内容
GridRefresh
EndSub
'单击“返回”按钮
PrivateSubCmd_Back_Click()
UnloadMe
EndSub
PrivateSubCmd_Push_Click()
'列出离应归还日期小于等于5天的图书
FrmPush.Show1
EndSub
PrivateSubCmd_Return_Click()
'归还调用FrmReturnEdit窗体,需要输入借阅证号,提取该证借阅信息
FrmReturnEdit.Show1
GridRefresh
EndSub
PrivateSubComboFlag_click()
GridRefresh
EndSub
'启动窗体