软件工程图书管理系统.docx

上传人:b****0 文档编号:8939017 上传时间:2023-05-16 格式:DOCX 页数:79 大小:772.23KB
下载 相关 举报
软件工程图书管理系统.docx_第1页
第1页 / 共79页
软件工程图书管理系统.docx_第2页
第2页 / 共79页
软件工程图书管理系统.docx_第3页
第3页 / 共79页
软件工程图书管理系统.docx_第4页
第4页 / 共79页
软件工程图书管理系统.docx_第5页
第5页 / 共79页
软件工程图书管理系统.docx_第6页
第6页 / 共79页
软件工程图书管理系统.docx_第7页
第7页 / 共79页
软件工程图书管理系统.docx_第8页
第8页 / 共79页
软件工程图书管理系统.docx_第9页
第9页 / 共79页
软件工程图书管理系统.docx_第10页
第10页 / 共79页
软件工程图书管理系统.docx_第11页
第11页 / 共79页
软件工程图书管理系统.docx_第12页
第12页 / 共79页
软件工程图书管理系统.docx_第13页
第13页 / 共79页
软件工程图书管理系统.docx_第14页
第14页 / 共79页
软件工程图书管理系统.docx_第15页
第15页 / 共79页
软件工程图书管理系统.docx_第16页
第16页 / 共79页
软件工程图书管理系统.docx_第17页
第17页 / 共79页
软件工程图书管理系统.docx_第18页
第18页 / 共79页
软件工程图书管理系统.docx_第19页
第19页 / 共79页
软件工程图书管理系统.docx_第20页
第20页 / 共79页
亲,该文档总共79页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

软件工程图书管理系统.docx

《软件工程图书管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程图书管理系统.docx(79页珍藏版)》请在冰点文库上搜索。

软件工程图书管理系统.docx

软件工程图书管理系统

软件工程项目实践报告

 

课题名称

图书管理系统

专业

计算机科学与技术

开发组长

名字1072485

开发组员

名字1072485名字3072509

名字2072417名字4072351

名字5072513

指导老师

朱XX

小组编号

第一组

完成时间

2009年12月20日

 

具体分工

序号

学号

姓名

角色

承担的工作(简介)

页码

备注

1

072485

名字1

组长

需求分析

总体设计

详细设计

编码

4-6

14-16

17-22

34-39

2.1-2.3

3.2

4.1-4.22

5.1-5.2

2

072351

名字4

副组长

测试

40-47

6.1-6.3

3

072509

名字3

副组长

需求分析

详细设计

6-8

11-12

22-27

2.4-2.5

2.7-2.9

4.23-4.25

4

072513

名字5

组员

可行性研究

需求分析

1-3

9-11

1.1-1.6

2.6

5

062417

名字2

组员

总体设计

详细设计

12-14

28-33

3.1

4.26-4.28

1可行性研究与项目开发计划

1.1引言

1.1.1问题定义

图书管理系统是指应用电子计算机为读者提供方便的图书借阅环境,并能满足所有授权用户对信息的各种功能需求的计算机应用软件系统。

1.1.2背景

所建议开发的软件系统的名称:

图书管理系统

本项目的任务提出者:

名字1、名字3、名字5、名字2、名字4

开发者:

名字1、名字3、名字5、名字2、名字4

产品用户:

图书管理员、借阅者

1.1.3编写目的

可行性研究报告是为“图书管理系统”开发的可能性、可行性、必要性提供论据,并导出系统的逻辑模型,探索出若干种可供选择的主要解法,为开发人员进行系统总体规划设计及具体实施开发工程提供必要的参考资料,在系统开发完成后期为系统的测试、验收提供帮助。

其编写过程由名字1、名字3、名字5、名字2、名字4合作完成,预期读者是从事“图书管理系统”开发的五个人。

1.2可行性研究的前景

1.2.1要求

a.功能:

这是一个图书管理系统,主要负责查询、添加、删除、修改书库的信息;查询持卡人的借书情况;处理借书,还书,续借等事务;统计图书流动情况。

b.数据的来源:

由学校图书馆提供 。

c.输入要求:

数据完整,详实。

输出要求:

简捷,快速,实时。

d.处理流程和数据流程用图表的方式:

表示出最基本的数据流程和处理流程,并辅之以叙述。

e.在安全与保密方面:

登陆系统时,需验证身份和密码,只有图书管理员才能对书籍信息进行修改以及处理借书还书等操作。

1.2.2目标

a.图书管理系统可以方便图书借阅管理,只需一台电脑和一个管理员就能轻松完成。

b.提高对新书入库、借阅图书、借阅信息统计以及学生信息管理的速度。

c.减少人力的投入的同时提高了信息处理的精度和准确度,在输入无误的基础上可保证数据的正确性。

d.改进了管理服务的质量,可由系统对入库图书进行自动分类、归类,借阅图书的分类和次数,学生信息整理、借阅情况登记入档。

e.改进人员的利用率,减少了前台操作人员,更多的人员可用于为借阅者服务、更新采购图书等其他事物,节省人力资源。

1.2.3条件、假定和限制

a.信息来源单一,客户需求分析主要来源于对图书管理员的采访和咨询。

b.技术方面本组人员对SQL还不熟悉,还处于学习阶段。

c.进行系统方案选择比较的时间较短,只有一至两个星期。

d.系统完成截止时间最晚为本学期期末。

1.2.4进行可行性研究的方法

复查系统规模和目标;对已有图书管理系统进行分析和研究;导出新系统的高层逻辑模型,并导出和评价供选择的解法。

1.2.5评价尺度

本软件开发项目为一个学生项目,由各组员通力协作、自主研发,充分调动主观能动性,故为零成本项目,并由于时间有限,所以开发时间也不会太长,操作界面方便即可。

1.3所建议的系统

1.3.1对所建议系统的说明

该软件是一个图书管理系统。

1)功能概括:

a.信息来源单一,客户需求分析主要来源于对图书管理员的采访和咨询。

b技术方面本组人员对SQL不熟悉,还处于学习阶段。

c.进行系统方案选择比较的时间较短,只有一至两个星期。

d.系统完成截止时间最晚为本学期期末。

2)系统环境以及工具:

a.运行环境:

WindowsXP

b.编程语言:

C#

c.数据库:

SQL2005

1.3.2影响

a.对设备的影响:

没有什么特殊的要求,该系统的信息量不是太大,一般的PC机都能使用。

b.对软件的影响:

WindowsXP、C#和MSSQL2005

c.对用户单位机构的影响:

使用该系统,客户原有体系几乎不需要太大的变化。

该操作简单,使用人员会计算机基本操作即可。

肯定会很快提高工作效率,减轻劳动负担。

1.3.3局限性

由于我们都是在校学生,缺乏实践经验,我们的图书管理系统做的比较不健全,只是适用性的东西。

该系统工作量小,一般情况下不会由于信息量大而造成麻烦。

有关数据库的存储量,就目前而言,客户的藏书量不是很大。

如果日后有所扩大,可以在原有基础上作相应的扩充,这在SQL中是很容易办到的。

1.3.4技术条件方面的可行性

技术方面,虽然我们对SQL不熟悉,但是本组同学有较强的钻研精神和学习能力,相信通过小组组员间的协作,我们能够顺利完成图书管理系统的开发。

1.4社会因素方面的可行性

1.4.1法律方面的可行性

法律方面我们已经调查研究过,我们用的软件都是正版的,此软件不存在侵犯专利权、侵犯版权等问题,所以在法律方面是可行的。

1.4.2使用方面的可行性

我们的软件操作简单,运行方便,用我们的软件来管理图书是没有什么困难的,所以在使用方面是可行的。

1.5结论

综上,此系统逻辑模型架构清晰,功能明确,有较强的实用性,在技术上可实现,故为一个可行的项目。

1.6工作进度表

可行性研究

1周

需求分析

2周

总体设计

1周

详细设计

1周

编码与测试

3周

总结

1周

2需求分析

2.1需求定义

2.1.1图书信息查询/借书信息查询

图书馆主要向读者提供图书借阅的服务。

读者为了借阅图书,一般情况下,需要在借书之前查询所要借阅的图书情况,所以图书馆需要为读者提供图书查询功能。

例如,读者可能想借阅某方面的书,但不知道图书馆在该方面有哪些图书可供借阅,所以需要对图书馆的图书进行查询;或者,读者知道想借阅的图书信息,但不知道该图书馆是否有该书或不知道图书在图书馆的位置、是否被借出、是否可以借阅等信息,这也需要使用图书查询功能。

一般的图书查询中,读者是通过图书登记卡、浏览图书登记卡中的信息得到图书信息的。

读者在查询图书时,可以依据以下条件查询:

1)图书的ID

2)图书的名称

3)图书的作者

4)图书的出版社

5)图书是否在库中

经过图书查询,读者获得图书馆是否有自己想要的图书,该图书的简单信息以及图书在图书馆的借阅位置等信息。

2.1.2新书入库/修改图书信息

为了能正常运行,图书馆要及时更新馆藏图书。

对于新书,要购进,供读者借阅;所以要设计到图书的批量入库。

对于批量入库,图书管理员要批量登记图书的信息,包括图书ID、图书名称、作者、出版社等信息。

在录入书时难免出现错误,因此增加修改图书信息功能

2.1.3借阅图书/归还图书

图书馆的基本功能之一就是为读者提供借阅服务,读者通过借阅这一过程,可以把图书带出图书馆,从而使读者能够更方便的浏览图书。

借书过程中,图书管理员要对读者的借书资格进行审查,对符合借书条件的读者,允许其借书,对其借书记录进行登记;对没有借书资格的读者,禁止其借书。

具体的步骤如下:

1)读者向图书管理员提交请求和图书借阅卡

2)图书管理员检查读者提供的借阅卡,如果该借阅证真实准确,读者已经借阅的图书并没有超过允许借书量,而且读者没有逾期未还的图书,则允许读者借书,否则,读者不能从图书馆借书。

3)读者拿到要借阅的图书,同时拿到自己的借阅卡,借书过程完毕。

4)当借阅图书的数量超过5本或者出现未按期归还图书的情况,则不好进行借阅处理。

图书馆的另一基本功能就是为读者提供还书服务,读者在一本图书借阅期满之前把该图书还给图书馆,一般的还书步骤如下:

1)读者把所借的图书和自己的借阅卡交给图书管理员。

2)图书管理员对图书进行检查,看有无损坏,如果出现图书的损坏情况,读者应进行相应的赔偿。

3)图书管理员查看是否超过规定借阅期限,如果已经过期,则读者要按规定交纳罚金。

4)图书管理员进行登记,同时把还书信息记入借阅卡。

5)读者拿回自己的借阅卡,还书过程借书。

6)读者逾期未归还图书超过三天,将按照每本每天进行一定的罚款。

2.2目标系统的数据分析与建模

数据的概念模型用E-R图表示如下:

 

2.3目标系统的功能需求与建模

2.4目标系统的行为需求与建模

用状态图来描述系统的行为模型

2.5数据字典

2.6IPO图

 

 

系统:

图书管理系统

模块:

查阅借书记录

编号:

NO.009

注释:

局部数据元素:

处理:

返回借阅人所借书的借书项

输出:

借书ID

输入:

借阅人ID

调用:

(借阅记录)

被调用:

借阅人

IPO表

 

2.7目标系统的性能需求

2.7.1数据精确度

用户的各种查询操作,管理员的各种更新操作均要求准确无误地进行数据库操作,给出正确的操作结果。

2.7.2响应时间

对于用户的各种操作请求应尽快给出响应,响应时间应控制在2s左右。

2.8运行需求

2.8.1用户界面

用户界面友好,与用户完成互动,满足用户需求,方便用户操作。

2.8.2故障处理

目标系统应对于能预测到的故障均进行预处理,从而可以有效的防止故障的发生,方便进行故障处理。

2.9其他需求

2.9.1可使用性

目标系统应该能够随时处于正常工作状态,以方便用户随时进行查询和管理。

2.9.2安全性

目标系统应该能够保证用户的个人信息安全,由管理员统一进行管理,而每个用户只可查看和修改个人信息。

2.9.3可维护性

目标系统应该具有良好的可维护性,以便在不花费很大代价的前提下被长时间使用。

2.9.4可移植性

目标系统应该具有良好的可移植性,以方便在不同平台上使用。

3总体设计

3.1系统设计

3.1.1系统功能分析

图书管理系统应具备的功能如下:

1)进入系统前需要身份验证、用户名、密码,输入正确后方可进入。

2)用户可以查询书库中书的信息和已借的书籍信息。

3)图书管理员可以根据需要进行书库管理,包括添加书籍,删除书籍,查询书籍信息,修改书籍信息等。

3.1.2运行环境

WindowsXP、VisualStudio2008和SQL2005

3.1.3层次图和结构图

3.2数据库设计

3.2.1数据库需求分析

在需求分析的基础上,结合数据流程图,通过对图书管理系统的工作内容和数据流程的分析,设置以下的数据结构和相关数据项:

(1)用户种类信息:

包括的数据项有:

用户ID,用户密码,用户权限。

(2)书籍信息:

包括的数据项有:

书的ID,书名,作者,出版社,是否在库中。

(3)借阅信息:

包括借阅人ID,书籍ID,借出时间。

根据以上分析得出的数据结构和数据项,进一步进行数据库概念结构设计和逻辑结构设计。

3.2.2数据库结构设计

3.2.3数据库逻辑结构设计

将概念结构设计阶段得到的各个数据结构及E-R图转换为SQL数据库系统支持的数据模型,也就是数据库的逻辑结构设计。

图书馆管理信息系统数据库中各个表格的设计结果如下所示,每个表格对应数据库中的一张表格,详细描述了各表格的存储信息规范。

表TableUser

列名

数据类型

备注

ID

varchar(50)

主键

书名

varchar(50)

作者

varchar(50)

出版社

varchar(50)

是否在库中

Bit

表TableRecord

列名

数据类型

备注

书的ID

varchar(50)

借书人ID

varchar(50)

借书时间

Datetime

表TableBook

列名

数据类型

备注

用户名

varchar(50)

权限

varchar(50)

密码

int

4详细设计

4.1人机界面设计

4.1.1设计概述

人机界面设计是接口设计的一个重要的组成部分。

对于交互式系统来说,人机界面设计和数据设计,体系结构设计及过程设计一样重要。

图书管理系统是基于对话框设计的,用到了三个对话框,分别为登录对话框,书库管理员对话框和借阅人对话框。

在用户登入时验证用户身份,如果是合法用户,则根据数据库中记录的用户权限转到管理员界面或者借阅人界面。

登录界面

书库管理员界面

借阅人界面

4.1.2系统响应时间

对于用户的各种操作请求应尽快给出响应,响应时间应控制在1s左右。

4.1.3出错信息处理

对于用户不符合要求的输入,系统会给出错误提示,并告知其错误原因。

4.2功能模块设计

4.2.1用户登录模块

此模块用于用户从登录界面进入主界面,通过判断用户名,用户密码的正确性来验证用户的合法性。

根据用户的权限不同跳至管理员界面和借阅人界面。

输入:

用户名,密码

输出:

管理员或借阅人界面

流程逻辑

4.2.2图书馆书籍查询模块

此模块用于实现用户对图书馆中的书籍查询的功能。

根据用户输入的相应的图书信息在数据库中搜索,给出用户相应的图书信息。

输入:

书的ID,书名,作者,出版社,是否在库中

输出:

符合要求的相关图书信息

流程逻辑

4.2.3已借书籍查询模块

此模块用于查询某用户已借的书籍。

如果是在管理员界面下则输入要查询用户的ID,

如果在借阅人界面下则无需输入。

输入:

用户名/无

输出:

该用户已借的书籍

流程逻辑

4.2.4新增图书模块

此模块实现新书的登记功能。

用户需输入新书的详细信息,如果书的ID不与库中已有书籍ID相冲突,则系统将信息保存在数据库中后,新书登记成功。

否则输出失败原因。

输入:

书的ID,书名,作者,出版社,是否在库中

输出:

添加成功消息/失败原因

流程逻辑

4.2.5删除图书模块

此模块实现书的删除功能。

用户需输入要删除书的ID,如果书库中有ID为该ID的书,则系统将删除数据库中该书的相关信息,并显示删除书籍成功,否则提示失败原因。

输入:

书的ID

输出:

删除成功消息/失败原因

流程逻辑

4.2.6修改图书信息

此模块实现书的信息修改功能。

用户需输入书的ID和要修改的信息,如果书库中有ID为该ID的书,则系统将更新数据库中与该书相关的信息,并显示信息修改成功,否则输出失败原因。

输入:

书的ID,书名,作者,出版社,是否在库中

输出:

修改成功消息/失败原因

流程逻辑

4.2.7借阅图书模块

此模块用于图书的借阅,系统根据借阅人ID是否合法,借阅人是否满足借阅条件(已借书籍小于5本且没有书超期不还(30天)),书的ID是否合法,书是否在库中来决定是否允许借阅。

如果允许,则修改数据库中的相应数据并输出借阅成功的消息。

否则输出借阅失败的原因。

输入:

借阅人ID,书的ID

输出:

借阅成功消息/借阅失败的原因

流程逻辑

4.2.8归还图书模块

此模块用于图书的归还,系统根据书的ID是否合法,书是否在库中来决定是否允许归还。

如果允许,则修改数据库中的相应数据并输出归还成功的消息。

否则输出归还失败的原因。

输入:

书籍ID

输出:

归还成功消息或归还失败原因

流程逻辑

5编码

5.1开发环境

WindowsXP、VisualStudio2008C#、SqlServer2005

5.2运行结果

5.2.1登录模块

5.2.2书籍查询模块

5.2.3已借书籍查询模块

 

5.2.4借书模块

5.2.5还书模块

5.2.6新书入库

5.2.7删除书籍

5.2.8书籍信息修改

6测试

6.1测试计划

6.1.1测试计划名称

图书管理系统测试计划

6.1.2引言

6.1.2.1问题定义

图书管理系统是指应用电子计算机为读者提供方便的图书借阅环境,并能满足所有授权用户对信息的各种功能需求的计算机应用软件系统。

6.1.2.2背景

所建议开发的软件系统的名称:

图书管理系统

本项目的任务提出者:

名字1、名字3、名字5、名字2、名字4

开发者:

名字1、名字3、名字5、名字2、名字4

产品用户:

图书管理员、借阅者

6.1.2.3编写目的

可行性研究报告是为“图书管理系统”开发的可能性、可行性、必要性提供论据,并导出系统的逻辑模型,探索出若干种可供选择的主要解法,为开发人员进行系统总体规划设计及具体实施开发工程提供必要的参考资料,在系统开发完成后期为系统的测试、验收提供帮助。

其编写过程由名字1、名字3、名字5、名字2、名字4合作完成,预期读者是从事“图书管理系统”开发的五个人。

6.1.3测试项

测试项名称

版本

修订级别

开始测试前逻辑或物理变换要求

用户登录模块

1.0

1.0

其余模块均已测试完毕

图书馆书籍查询模块

1.0

1.0

已借书籍查询模块

1.0

1.0

新增图书模块

1.0

1.0

删除图书模块

1.0

1.0

修改图书信息模块

1.0

1.0

借阅图书模块

1.0

1.0

归还图书模块

1.0

1.0

6.1.4被测试的特性

测试项名称

被测试的特性

用户登录模块

判断用户名,用户密码的正确性来验证用户的合法性。

根据用户的权限不同跳至管理员界面和借阅人界面。

图书馆书籍查询模块

根据用户输入的相应的图书信息在数据库中搜索,给出用户相应的图书信息。

已借书籍查询模块

此模块用于查询某用户已借的书籍。

如果是在管理员界面下则输入要查询用户的ID,如果在借阅人界面下则无需输入。

新增图书模块

用户需输入新书的详细信息,如果书的ID不与库中已有书籍ID相冲突,则系统将信息保存在数据库中后,新书登记成功。

否则输出失败原因。

删除图书模块

用户需输入要删除书的ID,如果书库中有ID为该ID的书,则系统将删除数据库中该书的相关信息,并显示删除书籍成功,否则提示失败原因。

修改图书信息模块

用户需输入书的ID和要修改的信息,如果书库中有ID为该ID的书,则系统将更新数据库中与该书相关的信息,并显示信息修改成功,否则输出失败原因。

借阅图书模块

根据借阅人ID是否合法,借阅人是否满足借阅条件(已借书籍小于5本且没有书超期不还(30天)),书的ID是否合法,书是否在库中来决定是否允许借阅。

如果允许,则修改数据库中的相应数据并输出借阅成功的消息。

否则输出借阅失败的原因。

归还图书模块

根据书的ID是否合法,书是否在库中来决定是否允许归还。

如果允许,则修改数据库中的相应数据并输出归还成功的消息。

否则输出归还失败的原因。

6.1.5不被测试的特性

工程中各模块使用的所有由微软提供的模块,如编辑框控件、按钮控件,所表现出来的特性。

不测试的原因是这些模块在微软提供给用户前已经过测试,其可靠性已有保证,无需再度测试。

6.1.6方法

本测试使用自底向上的测试方法。

测试流程如下图所示。

6.1.7项通过准则

如下表所示,每个模块在规定的输入下能得到正确的输出。

测试项名称

输入

输出

用户登录模块

用户名、密码

管理员或借阅人界面

图书馆书籍查询模块

书的ID,书名,作者,出版社,是否在库中

符合要求的相关图书信息

已借书籍查询模块

用户名/无

该用户已借的书籍

新增图书模块

书的ID,书名,作者,出版社,是否在库中

添加成功消息/失败原因

删除图书模块

书的ID

删除成功消息/失败原因

修改图书信息模块

书的ID,书名,作者,出版社,是否在库中

修改成功消息/失败原因

借阅图书模块

借阅人ID,书的ID

借阅成功消息/借阅失败的原因

归还图书模块

书籍ID

归还成功消息或归还失败原因

6.1.8暂停标准和再启动要求

暂停标准:

某模块在规定输入下未得到正确的输出。

再启动要求:

导致错误输出的错误被找到并改正。

6.1.9应提供的测试文件

项目总体设计与详细设计,全部工程文件(含源代码文件,应用程序文件等)。

6.1.10测试任务

尽可能的排除系统错误并提供系统可靠性预测。

6.1.11环境要求

MicrosoftWindowsvista系统或MicrosoftWindowsXP系统,VisualStudio2008编译、连接、调试。

6.2测试日志

6.2.1图书馆书籍查询模块测试日志

测试内容

测试方法

事件

时间

记录人

GetData()单元

代码审查

通过

2009/12/5

名字4

SearchConditon()单元,且stock==0

白盒测试

通过

2009/12/5

名字4

SearchConditon()单元,且stock==1

白盒测试

通过

2009/12/5

名字4

SearchConditon()单元,且stock==2

白盒测试

通过

2009/12/5

名字4

SearchNow()单元

代码审查

通过

2009/12/5

名字4

模块测试,

输入:

正确输出:

书库中所有书籍

黑盒测试

输出书库中所有书籍通过

2009/12/6

名字4

模块测试

输入:

ID=1

正确输出:

ID为1的书的信息

黑盒测试

输出ID为1的书的信息,通过

2009/12/6

名字4

模块测试,

输入:

ID=100

正确输出:

没有符合要求的图书

黑盒测试

输出:

没有符合要求的图书,通过

2009/12/6

名字4

模块测试,

输入:

作者名=金庸

正确输出:

书库中的所有作者为金庸的书籍

黑盒测试

输出书库中的所有作者为金庸的书籍,通过

2009/12/6

名字4

模块测试,

输入:

作者名=梁羽生

正确输出:

没有符合要求的图书

黑盒测试

输出:

没有符合要求的图书,通过

2009/12/6

名字4

模块测试,

输入:

是否在库中=是

正确输出:

书库中的所有在库的书

黑盒测试

输出书库中的所有在库的书,通过

2009/12/6

名字4

模块测试,

输入:

是否在库中=否

正确输出:

书库中的所有不在库的书

黑盒测试

输出书库中的所有不在库的书,通过

2009/12/6

名字4

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2