图书馆管理系统概要设计方案.docx

上传人:b****7 文档编号:10190177 上传时间:2023-02-09 格式:DOCX 页数:16 大小:123.86KB
下载 相关 举报
图书馆管理系统概要设计方案.docx_第1页
第1页 / 共16页
图书馆管理系统概要设计方案.docx_第2页
第2页 / 共16页
图书馆管理系统概要设计方案.docx_第3页
第3页 / 共16页
图书馆管理系统概要设计方案.docx_第4页
第4页 / 共16页
图书馆管理系统概要设计方案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

图书馆管理系统概要设计方案.docx

《图书馆管理系统概要设计方案.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统概要设计方案.docx(16页珍藏版)》请在冰豆网上搜索。

图书馆管理系统概要设计方案.docx

图书馆管理系统概要设计方案

实验报告

 

课程名称软件工程

实验工程名称图书管理系统—概念设计说明书

实验学生班级05计算机科学与技术(控制技术)

实验学生姓名侯芬

学生所属院部信息技术学院

同组学生姓名陈青、鞠久勤、肖静、何南、朱纪超

实验时间2008年12月8日、2008年12月15日

实验地点B407

实验成绩评定

指导教师签字年月日

一、实验目的和要求

1、实验目的

根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《图书管理系统》软件的功能划分、数据结构、软件总体结构进行设计,从而完成概要设计,作为软件详细设计的基础。

2、实验要求

《图书管理系统》针对的用户是单个中小型图书室或者个人,藏书的种类和数量较少,读者的数量和来源受到一定的限制。

相应的需求有:

1)能够存储一定数量的图书信息,并方便有效的进行相应的书籍数据操作和管理,这主要包括:

①图书信息的录入、删除及修改。

②图书信息的多关键字检索查询。

③图书的出借、返还和资料统计。

2)能够对一定数量的读者进行相应的信息存储与管理,这其中包括:

①读者信息的登记、删除及修改。

②读者资料的统计与查询。

3)能够对需要的统计结果提供打印输出。

4)能够提供一定的安全机制,提供数据信息授权访问,防止随意删改,同时提供信息备份的服务。

二、实验主要仪器和设备

系统开发平台:

VisualBasic6.0

数据库管理系统软件:

SQLServer2000

运行环境:

Intel486以上系列、AMDK6以上系列等PC台式机和便携式电脑;运行时占用内存:

≤1MB;所需硬盘空间:

≤5MB;

软件平台:

中文Windows95/98/NT4.0或更高版本;

三、实验原理

㈠实验背景

随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的方式来管理自己的书籍。

在计算机日益普及的今天,对个人而言若采用一套行之有效的图书管理系统来管理自己的书籍,会方便许多。

对图书管理部门而言,以前单一的手工检索已不能满足人们的要求,为了便于图书资料的管理需要有效的图书管理软件。

 图书管理系统软件是一套功能比较完善的数据管理软件,具有数据操作方便高效迅速等优点。

该软件采用功能强大的数据库软件开发工具进行开发,具有很好的可移植性,可在应用范围较广的DOS,WINDOWS系列等操作系统上使用。

除此以外,它还可以通过访问权限控制以及数据备份功能,确保数据的安全性。

㈡系统定义

LMS:

LibraryManagementSystem,图书管理系统。

㈢数据库的设计原理

数据库的设计分为以下6个阶段:

1、需求分析:

是整个设计过程的基础。

任务是通过详细调查现实世界要处理的对象,充分了解原系统工作简况,明确用户的各种需求,然后在此基础上确定新系统的功能。

2、概念结构设计:

将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。

设计概念结构通常有四种方法:

自顶向下、自底向上、逐步扩张、混合策略。

3、逻辑结构设计:

任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

设计逻辑结构时一般分3步进行:

(1)将概念结构转换为一般的关系、网状、层次模型。

(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换。

(3)对数据模型进行优化。

4、物理结构设计:

为一个给定的逻辑数据模型选取一个最合适应用要求的物理结构的过程就是数据库的物理设计。

分为两步:

(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构。

(2)对物理结构进行评价,评价的重点是时间和空间效率。

5、数据库实施:

包括两个重要的工作:

一项是数据的载入,另一项是应用程序的编码和调试。

6、数据库运行和维护:

运行数据库应用程序,执行对数据库的各种操作,测试应用程序的功能是否满足设计要求。

由于应用环境在不断变化,数据库运行过程中物理存储也会不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是审计工作的继续和提高。

㈣软件测试的基本模型

四、实验方法与步骤

1、总体设计流程图

(1)、图书馆流通流程图(见图1):

2、总体结构和模块外部设计

(1)、总体结构设计(见图2):

(2)、模块外部设计

1)、主模块:

输入:

操作系统传递至的各种消息以及用户的输入数据

输出:

用户界面显示

2)、图书流通模块:

输入:

用户口令

输出:

相应的界面

3)、图书查询模块:

输入:

用户的输入

输出:

查询方式及相应的查询关键字

4)、系统操作模块:

输入:

用户口令

输出:

各个对话框

5)、借书模块:

输入:

读者证号、图书书号

输出:

读者信息、相关借书信息

6)、还书模块:

输入:

图书书号

输出:

相关读者信息

7)、图书查验模块:

输入:

图书书号

输出:

图书允许/禁止出借标志

图1

图2

 

8)、读者查验模块:

输入:

读者证号

输出:

合法\非法读者标志

9)、借书记录查验模块

输入:

图书书号

输出:

借书记录存在/不存在标志,借书记录

10)、图书库操作模块:

输入:

与图书库操作子对话框有关的用户输入及系统消息

输出:

操作结果显示.

11)、读者库操作模块:

输入:

与读者库操作子对话框有关的用户输入及系统消息

输出:

操作结果显示

12)、数据统计模块:

输入:

统计方式及其关键字

输出:

统计结果视图显示

13)、系统设置模块:

输入:

用户的输入

输出:

根据用户的输入显示相应的对话框

14)、数据备份模块:

输入:

用户的操作输入

输出:

操作结果显示

15)、数据恢复模块:

输入:

用户的操作输入

输出:

操作结果显示

16)、更改口令模块:

输入:

用户的操作输入

输出:

操作结果显示

 

17)、录入模块:

输入:

相应的信息

输出:

相应的结果

18)、修改模块:

输入:

相应的信息

输出:

相应的结果

19)、删除模块:

输入:

相应的信息

输出:

相应的结果

20)、帮助模块:

输入:

输出:

帮助信息

21)、退出模块:

输入:

退出命令

输出:

22)、数据库操作模块:

输入:

数据操作命令

输出:

操作结果显示

23)、数据库查询模块:

输入:

数据查询命令

输出:

查询结果集

3、功能分配

浏览功能:

图书库操作模块读者库操作模块

查询功能:

图书查询模块数据统计模块读者查验模块

插入功能:

图书库操作模块读者库操作模块借书模块

修改功能:

图书库操作模块读者库操作模块借书模块还书模块

删除功能:

图书库操作模块读者库操作模块还书模块

接口设计

4、外部接口

1)、用户界面

按Windows应用软件用户界面的规范来设计,使用以对话框为主的用户界面,便于用户使用。

主对话框:

由五个功能按钮构成:

图书流通、图书查询、系统操作、帮助、退出

借书对话框:

图书书号编辑框:

用于输入图书书号;

读者信息显示区:

用于显示读者信息(姓名);

读者已借图书信息显示区:

用于显示读者已借图书信息;

书号提交按钮:

提交借书请求;

退出按钮:

退出借书对话框。

还书对话框:

图书书号编辑框:

用于输入图书书号;

读者信息显示区:

用于显示本次图书归还者信息(读者证号、读者姓名);

已还图书信息显示区:

用于显示读者本次已还图书信息(书名、超期天数);

未还图书信息显示区:

用于显示读者尚未归还的图书信息(书名、借书日期);

提交按钮:

用于提交还书请求;

返回按钮:

用于退出还书对话框。

图书查询对话框:

查询方式复选框:

用于选择查询所需满足的条件(作者、书名、出版社、出版时间);

关键字编辑框:

用于输入查询关键字(作者、书名、出版社);

时间条件单选框:

用于选择出版时间所需满足的条件类型;

时间编辑框:

用于编辑年与月;

开始查询按钮:

用于提交查询请求;

退出查询按钮:

用于退出图书查询对话框;

系统操作对话框:

由八个功能按钮构成:

图书库操作、读者库操作、数据统计、系统设置、数据备份、数据恢复、更改口令、返回。

图书库操作对话框:

图书书号编辑框:

用于显示图书书号;

书名编辑框:

用于显示编辑图书书名;

作者编辑框:

用于显示编辑作者;

单价编辑框:

用于显示编辑图书单价;

出版社编辑框:

用于显示编辑出版社;

出版年月编辑框:

用于显示编辑图书出版的年月;

图书状态单选框:

用于显示编辑图书状态(在库、借出、异常);

纪录总数显示:

用于显示图书记录的总数;

当前记录序号显示:

用于显示当前记录在记录集中的位置;

“前一个”按钮:

显示和编辑前一个记录;

“后一个”按钮:

显示和编辑后一个记录;

“移动到”按钮:

显示和编辑指定图书书号的记录;

“加入”按钮:

增加图书记录;

“删除”按钮:

删除当前的图书记录;

“退出”按钮:

退出图书库操作对话框。

读者库操作对话框:

读者证号编辑框:

用于显示读者证号;

读者姓名编辑框:

用于显示编辑读者姓名;

联系方法编辑框:

用于显示编辑读者联系方法;

读者电话号码编辑框:

用于显示编辑读者电话号码;

读者电子邮件编辑框:

用于显示编辑读者电子邮件;

纪录总数显示:

用于显示读者记录的总数;

当前记录序号显示:

用于显示当前记录在记录集中的位置;

“前一个”按钮:

显示和编辑前一个记录;

“后一个”按钮:

显示和编辑后一个记录;

“第一个”按钮:

显示和编辑第一个记录;

“最后一个”按钮:

显示和编辑最后一个记录;

“移动到”按钮:

显示和编辑指定读者证号的记录;

“加入”按钮:

增加读者记录;

“删除”按钮:

删除当前的读者记录;

“退出”按钮:

退出图书库操作对话框。

数据统计对话框:

统计条件单选框:

用于选择统计条件类别(图书、读者、借书情况);

图书统计条件复选框:

用于指定统计条件包含的相关项(图书书号、书名、作者、单价、出版社、出版时间、图书状态);

读者统计条件复选框:

用于指定统计条件包含的相关项(读者证号、读者姓名、联系方法);

借书情况统计条件复选框:

用于指定统计条件包含的相关性(图书相关、读者相关、出借日期);

统计输出设置单选框:

用于选择统计结果的输出类别;

图书统计输出设置复选框:

用于指定输出项(图书书号、书名、作者、单价、出版社、出版时间、状态);

读者统计输出设置复选框:

用于指定输出项(读者证号、姓名、联系方法);

借书情况统计输出设置复选框:

用于指定输出项(图书相关、读者相关、出借日期);

条件选择下拉列表栏(数字项):

用于指定具体统计条件(>、<、=);

条件选择下拉列表栏(字符项):

用于指定具体统计条件(=、包含);

条件选择下拉列表栏(日期项):

用于指定具体统计条件(先于、后于、介于);

条件选择下拉列表栏(图书状态项):

用于指定具体统计条件(在库、出借、异常);

关键字编辑框:

用于输入编辑统计关键字;

“开始统计”按钮:

提交统计请求;

“返回”按钮:

退出数据统计对话框。

数据备份对话框

路径编辑框:

用于输入编辑备份路径。

BROWSE按钮:

用于选择路径

确定按钮:

确定数据备份

退出按钮:

退出数据备份系统

数据恢复对话框

确认按钮:

确定此项操作

文件对话框:

用于输入存数据的路径

更改口令对话框

原始口令编辑框:

用于输入原始口令

新口令编辑框:

用于输入新口令

确定按钮:

确定此项操作

2)、软件接口:

使用Access数据库的驱动程序,通过COM接口访问。

3)、硬件接口:

鼠标。

(2)、内部接口

模块间接口采用数据耦合方式,通过参数表传送数据,交换信息。

5、数据结构设计

(1)、逻辑结构设计

图书表:

由多个图书记录构成

图书记录的数据结构如下:

图书编号(BookID)整数(唯一标示符)

图书书名(BookName)变长字符串

图书作者(Author)变长字符串

图书出版社(Publisher)变长字符串

图书单价(BookPrice)实数

图书状态(BookStatus)整数

读者表:

由多个读者记录构成

读者记录的数据结构如下:

读者证号(ReaderID)整数(唯一标示符)

读者姓名(ReaderName)变长字符串

读者联系方法(Address)变长字符串

读者电话号码(TelephoneNumber)整数

读者电子邮件(Email)变长字符串

借书记录表:

由若干个借书记录构成

借书记录的数据结构如下:

借阅图书(BookID)整数(与图书库中的图书编号对应)(唯一标示符)

借阅者(ReaderID)整数(与读者库中的图书编号对应)

借阅时间(BorrowDate)日期

系统设置表:

有单个系统设置记录构成

系统设置记录的数据结构如下:

记录号(id)整数(系统自动生成,唯一标示符)

最多可借图书数(MaxBLNum)整数

最多借书天数(MaxBLDays)整数

系统操作员记录表:

由若干个系统操作员记录构成

系统操作员记录的数据结构如下:

记录序号(id)整数(系统自动生成,唯一标示符)

账号(Addminister)变长字符串

口令(Password)变长字符串

权限级别(Level)整数(0-7)

(2)、物理结构设计

采用链表结构

(3)、数据结构与程序的关系

主模块:

连接数据库

借书模块:

读者查验模块:

读入读者号,对应输出读者姓名,读者联系方法,读者电话号码以及电子邮件。

图书查验模块:

读入图书号,对应输出图书书名,图书作者,图书出版社,图书单价和状态。

借书登记模块:

读入图书号,修改图书状态,在借书记录表中加入读者号,图书号,借书时间。

还书模块:

借书记录查验模块:

读入图书号,对应输出借书记录表中的读者号,借书时间。

还书登记模块:

读入图书号,修改图书状态,删除借书记录表中的读者号,图书号,借书时间。

图书查询模块:

指定图书查询条件,对应输出相应的图书信息,如图书书名,图书作者,图书出版社,图书单价等。

系统操作模块:

系统操作权限查验模块:

读入帐号,口令,输出相应的信息。

图书库操作模块:

增加,修改,删除图书表中的信息。

读者库操作模块:

增加,修改,删除读者表中的信息。

数据统计模块:

指定统计条件,输出相应的信息。

数据备份模块:

复制图书表,读者表,借书记录表,系统设置表,系统操作员记录表。

数据恢复模块:

读取图书表,读者表,借书记录表,系统设置表,系统操作员记录表。

系统设置模块:

增加,修改,删除系统操作员记录表中的信息,修改系统设置表中的最多可借图书数,最多借书天数。

6、运行设计

(1)、运行模块的组合

程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。

(2)、运行控制

本软件控制流程:

主程序运行,等待用户的输入,根据用户的输入调用各子模块

(3)、运行时间

检索业务响应时间<2s。

运行响应时间<1s。

7、出错处理

(1)、出错输出信息

根据不同的出错情况给出不同的出错信息,一般用对话框给出。

(2)、出错处理对策

对一般错误,给用户提示信息,让用户重新输入或退出。

对于严重错误,启动备份文件恢复,建议使用帮助文件。

8、安全保密设计

为每个操作人员设置账号及口令,规定每一级操作人员的权限。

9、维护设计

由于此工程比较小,除了严格按照软件工程的科学方法开发软件、认真建立文档、编码阶段写详细的注释外,没有特殊的维护设计,如:

设置维护模块等。

五、实验原始记录

在实验中,我在数据库中添加相应的数据表格并向这些表格中添加了一些初始的数据。

后来根据各个模块的需要,又向数据库中添加了用户相应的数据。

在对系统进行测试时,运行各个功能的添加界面时,我向各表中都添加了数据。

添加这些数据是为了检测系统是否符合要求。

指导教师签字:

六、实验记录处理(计算过程与结果、数据曲线、图表等)

在图书管理系统中添加数据库是为了更加方便的访问系统中的数据,并且能够通过相应的系统权限查看系统中的全部数据,利于系统使用者的宏观控制。

 

七、实验结果分析

由于时间比较短,使用计算机不方便以及对于网络编程不熟悉,本图书馆管理系统并没有提供数据的远程访问功能。

对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,安全性能有待进一步完善。

八、实验结论

在实验中对图书管理系统进行了测试,验证了该系统基本上完成了预计的要求,完成系统所要求被实现的功能。

九、实验分析(误差、现象、思考题等)

通过两周对软件工程实训和十几周的课程的学习,从对软件工程没有什么认识慢慢的对软件工程有了个初步的认识,收获挺多的。

通过此次学习,了解了更多的基础知识,为以后的工作打下良好的基础。

通过这次实验,我拓宽了知识面,锻炼了能力,同时使个人的综合素质得到较大提高。

安排实验的基本目的在于通过理论与实际的结合、人与人的沟通,进一步提高思想觉悟。

尤其是观察、分析和解决问题的实际工作能力。

作为整个学习体系的有机组成部分,实验课程虽然安排的课时比较少,但不是否定它的重要性。

它的一个重要功能,在于运用学习成果,检验学习成果。

运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。

检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。

对我们计算机专业来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教案是远远不够的,必须从课堂走向实践。

这也是一次预演和准备毕业设计工作。

通过完成实验,让我们找出自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的过渡时间。

在短短的几个课时的实验之后,我们普遍感到不仅实际动手能力有所提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1