新华书店图书管理系统需求分析报告
及系统设计报告
学校:xxxx
专业:xxxx
姓名:xxxx
学号:xxxxxxxxxxx
需求分析报告
一.概述
1.背景
在新华书店的正常运营中每天要面对大量的书籍信息、购书信息以及信息查询工作。传统的人工记录方法效率低,出错率又高,大大影响了书店的正常管理工作。所以,需要通过设计书店图书管理信息系统以克服这一系列的问题。
2.功能分析
(1)管理员:主要负责图书的分类整理、上架,图书信息录入、维护以及管理员信息的维护工作。
(2)收银员:主要负责图书信息的查询、结账以及收银员信息的维护工作。(3)图书信息:主要用于记录图书的编号、类型、名称、作者、出版社、价格、库存量等基本属性信息。
(4)售书信息:主要用于记录收银员编号、出售的图书编号、出售日期等信息。(5)有条件、多条件查询及交易记录查询:用于随时对图书、管理员、收银员信息进行查询、修改等操作以及交易记录的查询、统计操作。
3.可行性分析
(1)通过书店图书管理信息系统,可以简单、快速的将大量图书的基本信息存储到系统的图书信息当中。
(2)将管理员、收银员的信息分别存储到管理员信息和收银员信息当中。(3)同时,还可以通过系统的有条件、多条件查询功能快速、精确地实现各类信息的查询、修改等操作。
(4)通过交易记录查询功能能够快速地查阅图书的历史交易记录,以及实现对交易记录的统计和保存操作。
(5)以上功能既解决了传统的数据记录方式效率低、出错率高的问题,同时又节省了人力、物力,为书店带来了很大的效益。
二.业务流程
1.数据流图
2.E-R模型
系统设计报告
一.系统开发软件
系统界面开发使用的软件为 Microsoft Visual Basic 6.0。
数据库开发使用的软件为 Microsoft Office Access 2007。二、模块设计
依据系统分析,新华书店图书管理信息系统模块结构设计如下图所示:
说明:由于新华书店不提供借书服务,在图书出售时也不需要登记顾客信息,所以,在系统设计中没有顾客信息这一项。
三.数据库设计
1.关系模型
图书信息(图书编号,图书类型,名称,作者,出版社,价格,登记日期,库存量,备注)
管理员信息(管理员编号,姓名,性别,口令,权限)
收银员信息(收银员编号,姓名,性别,口令,权限)
售书信息(图书编号,收银员编号,出售日期,备注)
2.数据库结构图
四.代码设计
新华书店图书管理信息系统已经完全实现,代码已编入系统中,大多窗体、控件的属性是通过VB6.0软件的属性设置窗口设置来实现的。代码较多,此处仅以管理员登录子系统中的“图书信息维护”窗体的代码设计为例进行简单介绍(语句后面带单引号的内容为注释):
Private Sub Command4_Click(Index As Integer)
Select Case Index ' 运用选择结构的Select Case语句
Case 1
Adodc1.Recordset.MoveFirst 'MoveFirst语句查看第一条记录Case 2
Adodc1.Recordset.MovePrevious 'MovePrevious语句查看上一条记录If Adodc1.Recordset.BOF Then Adodc1.Recordset.MoveFirst
Case 3
Adodc1.Recordset.MoveNext 'MoveNext语句查看下一条记录
If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast
Case 4
Adodc1.Recordset.MoveLast 'Movelast语句查看最后一条记录
Case 5
Dim mno As String '以下7条语句是通过Find函数实现查找功能
mno = InputBox("请输入图书编号", "查找窗")
Adodc1.Recordset.Find "图书编号=" & "'" & mno & "'", , , 1
If Adodc1.Recordset.EOF Then
MsgBox "无此图书编号!", , "提示"
Adodc1.Recordset.MoveFirst
End If
Case 6
If Text1 = "" Or Text2 = "" Or Text3 = "" Or Text4 = "" Or Text5 = "" Or Text6 = "" Or Text7 = "" Or Text8 = "" Then
MsgBox "请完整输入信息再新增!", , "提示"
Else
Adodc1.Recordset.AddNew '通过Addnew语句实现添加新记录选项功能End If
Case 7
If Text1 = "" Or Text2 = "" Or Text3 = "" Or Text4 = "" Or Text5 = "" Or Text6 = "" Or Text7 = "" Or Text8 = "" Then
MsgBox "请完整输入信息再修改!", , "提示"
Else
Adodc1.Recordset.Update '通过Update语句实现修改功能
MsgBox "修改成功!"
End If
Case 8
If Text1 = "" Or Text2 = "" Or Text3 = "" Or Text4 = "" Or Text5 =
"" Or Text6 = "" Or Text7 = "" Or Text8 = "" Then
MsgBox "请完整输入信息再保存!", , "提示"
Else
Adodc1.Recordset.Update '通过Update语句实现保存功能
MsgBox "保存成功!"
End If
Case 9
Form3.Hide 'Hide语句隐藏窗体,对应窗体上的退出功能
End Select
End Sub
Adodc控件:
前台系统与后台数据库连接使用的是VB6.0中的Adodc控件,代码设计如下:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=shujuku.mdb
CommandType=adCmdTabel
Adodc1.Refresh