软件设计总文档.docx

上传人:b****5 文档编号:6856138 上传时间:2023-01-11 格式:DOCX 页数:65 大小:970.98KB
下载 相关 举报
软件设计总文档.docx_第1页
第1页 / 共65页
软件设计总文档.docx_第2页
第2页 / 共65页
软件设计总文档.docx_第3页
第3页 / 共65页
软件设计总文档.docx_第4页
第4页 / 共65页
软件设计总文档.docx_第5页
第5页 / 共65页
点击查看更多>>
下载资源
资源描述

软件设计总文档.docx

《软件设计总文档.docx》由会员分享,可在线阅读,更多相关《软件设计总文档.docx(65页珍藏版)》请在冰豆网上搜索。

软件设计总文档.docx

软件设计总文档

 

实验报告

(2013/2014学年第二学期)

 

课程名称:

软件工程

实验名称:

图书馆管理软件开发

学生姓名:

杨见欢

班级学号:

11003507

主要负责:

需求、概要、详细设计说明书

图书馆管理需求说明书

1 引言

1.1编写目的

  编写本报告的目的是明确本系统的详细需求,提供给使用单位确认系统的功能和性能,并在此基础上进行修改和完善,同时作为设计人员进行软件设计的依据和使用单位的验收标准。

1.2背景

  图书管理系统需要满足来自两个方面的需求,分别是图书借阅者和图书馆管理人员,对读者资源,图书资源,借书信息进行管理。

1.3定义

  列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

1.4参考资料

  《软件工程》(英)IanSommerville著机械工业出版社

2 任务概述

2.1目标

 本系统主要实现对图书馆的信息进行管理,图书馆的正常运营中总是面对大量的读者信息,图书信息以及两者相互作用产生的借书信息,因此要对读者资源,图书资源,借书信息进行管理。

本系统的开发就是在于提高图书管理的工作效率,加强图书馆的管理。

2.2用户的特点

  本系统的最终用户是面向管理员(图书馆管理员和其他管理人员)和读者(教师和学生),他们都具有一定的计算机基础知识和操作计算机的能力,是经常性用户。

系统维护人员是计算机专业人员,熟悉操作系统和数据库,是间隔性用户。

3 需求规定

3.1对功能的规定

  本系统主要能实现以下几个功能,读者能查询图书的基本信息并借阅,图书管理人员能查询并修改图书的借还情况,并对逾期未还的进行罚款处理。

基本用例图如下:

3.1.1图书借阅

当读者需要借书时,将要借的书给图书管理员登记,由图书管理员登记好图书信息后,方可带出图书馆。

若借阅时间到期后还需继续借用,读者可以采用续借功能,图书管理员延长图书归还时间,读者能够继续借阅。

3.1.2图书归还

当用户还书时,图书管理员需要检查图书是否被损坏并查看是否按规定时间还书。

如果图书没有损坏而且按规定时间还书,那么图书管理员就修改该图书的信息,删除用户借书记录,登记还书时间。

如果图书被损坏用户必须交罚金,图书管理员除了收款外还要把图书和用户的信息修改好,并记录图书损坏的程度,以致其它用户借阅时方便。

3.1.3图书查询和预定

当用户登录系统查询图书时,系统会根据图书信息表查询出图书信息并反馈给用户。

用户可以检索到图书馆的馆藏书目、读者基本信息、读者借书、超期读者、罚款记录、最新图书、借阅频率最高的图书信息、图书具体的藏书位置。

用户还可以预定图书。

已登记但尚未到图书馆的新书或者已被其他读者用户借阅的图书可以通过预定功能提前预约图书,使读者尽快借到需要的图书。

3.1.4图书登记

图书管理员对未记录的图书登记图书的基本信息,对破损严重的图书进行清理,更新图书信息数据库。

图书信息表

3.2对性能的规定

3.2.1精度

  保证查询的查全率和查准率为100%,所有在相应域中包含查询关键字的记录都能查到,所有在相应域中不包含查询关键字的记录都不能查到。

图书信息:

图书编号+书名+书号+图书类别+作者+出版社+出版时间+单价+入库时间+操作员姓名+书架编号+图书状态

读者信息:

借书卡号+姓名+性别+读者类别+所属系部+部门或班级+联系电话+登记日期+操作员姓名+已借数

3.2.2时间特性要求

用户对系统性能无特殊的要求,只要查询图书的时候没有明显的延迟就可以了,一般不要超过3秒钟。

3.2.3灵活性

  满足运行环境在允许操作系统之间的安全转换和与其他应用软件的独立运行要求。

3.3输人输出要求

  解释各输入输出数据类型,并逐项说明其媒体、格式、数值范围、精度等。

对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。

3.4数据管理能力要求

  说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求作出估算。

3.5故障处理要求

  正常使用时不出错,对于用户的输入错误给出适当的改正提示信息,遇不可恢复的系统错误时,保证数据库的完好无损。

3.6其他专门要求

  如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。

4 运行环境规定

4.1设备

  计算机

4.2支持软件

  Windows操作系统,Vc++6.0运行环境

4.3接口

  1.可能涉及一些文档、报表的处理应该保持与常用软件的办公软件的接口

2.可能涉及数据的备份应该保持打印机和光盘刻录机的接口

4.4控制

  说明控制该软件的运行的方法和控制信号,并说明这些控制信号的来源。

概要设计说明书

1 引言

1.1编写目的

  由前面的需求分析,得出了系统的基本需求,和基本的数据流图,要实现整个系统,需要对用户的需求进行设计,概要设计主要是利用比较抽象的语言对整个需求进行概括,确定对系统的物理配置,确定整个系统的处理流程和系统的数据结构,接口设计,实现对系统的初步设计。

1.2背景

图书管理系统需要满足来自两个方面的需求,分别是图书借阅者和图书馆管理人员,对读者资源,图书资源,借书信息进行管理。

1.3定义

  列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

1.4参考资料

  软件工程(美)RogerS.Pressman著郑人杰马素霞等译

2 总体设计

2.1需求规定

主要输入输出项目:

图书信息:

(书名,定价,出版社,数量,是否可借)

用户信息:

(学号,姓名,性别,卡号,余额)

借阅信息:

(卡号,借书信息,借出日期,余额)

处理的功能性要求

按照需求分析文档中的规格要求,实现借书、还书和逾期未还的处罚等功能,使得信息传递准确、流畅。

同时,图书馆管理员能最大限度地查阅信息,更改记录等对图书信息和用户信息进行管理。

2.2运行环境

硬件环境:

最低配置:

CPU:

Pentium3800以上或其它兼容规格,内存:

256M以上,硬盘:

20GB以上空间

运行平台:

WindowsXP/Win7/Win8

2.3基本设计概念和处理流程

 顶层数据流图:

 

第一层图:

第二层图:

(1):

登陆子系统

(1):

处理新书购入

(2)处理学生借书

(3):

处理学生还书

(4):

处理图书注销

 

(5)处理学生信息查询

(6)处理图书信息查询

(7)查询子系统

2.4结构

 

说明:

身份验证:

提供系统的访问控制功能。

书库管理:

包括新书登记、借书、还书、书籍挂失、图书信息查询、借书信息查询等功能。

借阅证管理:

提供办理借阅证、借阅证信息查询、借阅证挂失功能。

系统管理功能:

包括添加账号、修改密码和退出系统等功能。

2.5功能需求与程序的关系

创建模块

查找模块

修改模块

删除模块

管理员添加图书信息

管理员修改书目信息

管理员删除书目信息

管理员添加新用户

管理员修改用户信息

管理员注销用户

用户更新个人资料

用户充值

用户检索图书

用户借阅图书

用户归还图书

2.6人工处理过程

  管理员对系统定期进行维护。

2.7尚未问决的问题

  对图书和用户进行编号,以确定每本书和每个用户都有唯一与之对应的编号。

3 接口设计

3.1用户接口

采用窗口化,菜单式进行设计,在操作时响应热键。

3.2外部接口

一卡通,扫描仪器

3.3内部接口

通过面向对象语言设计类,在public类中实现调用;类间实现严格封装;

4 运行设计

4.1运行模块组合

本程序主要是以一个窗口为模块,一般一个窗口完成一个特定的功能,主窗口通过打开另一个子窗口来实现模块之间不同功能的连接和组合。

各个模块之间相对独立,程序的可移植性好。

各模块之间主要以传递数据项的引用来实现模块之间的合作和数据共享。

4.2运行控制

只要符合操作说明书,用户可自由控制。

4.3运行时间

  程序运行以不超过3秒最好。

5 系统数据结构设计

5.1逻辑结构设计要点

 

数据结构

数据项

类型

长度

备注

图书信息

书名

CHAR

20

图书编号

CHAR

20

唯一标识书目

定价

FLOAT

6

出版社

CHAR

20

数量

INT

4

是否可借

BOOL

1

用户信息

身份编号

CHAR

10

唯一标识读者

姓名

CHAR

8

年龄

INT

2

性别

CHAR

4

开户时间

DATA

联系电话

CHAR

40

余额

MONEY

是否VIP

BOOL

1

累记金额

MONEY

8

借阅信息

用户编号

CHAR

10

图书编号

CHAR

20

数量

INT

2

借出日期

DATA

归还日期

DATA

押金

MONEY

6 系统出错处理设计

6.1出错信息

  用一览表的方式说朗每种可能的出错或故障情况出现时,系统输出信息的形式、含意及处理方法。

6.2补救措施

我们对于本程序的几种可能的错误进行了分析,分别进行了不同的处理。

主要的错误可能有:

(1)数据库连接错误:

这类错误主要是数据库设置不正确,或sqlserver异常引起的,我们只要取消本次操作,提醒用户检查数据库问题就可。

(2)输入错误:

这主要是用户输入不规范造成的,我们在尽量减少用户出错的条件的情况下,主要也是通过对话框,提醒用户,然后再次操作。

(3)其他操作错误:

对于用户的不正当操作,有可能使程序发生错误。

我们主要是中止操作,并提醒用户中止的原因和操作的规范。

(4)其他不可预知的错误:

程序也会有一些我们无法预知或没考虑完全的错误,我们对此不可能作出万全的异常处理,这时我们主要要保证数据的安全,所以要经常的进行数据库备份,并能及时的和我们联系,以逐步的完善我们的程序。

6.3系统维护设计

对于数据库的维护,本软件已经提供了数据库的备份和恢复的功能,可以方便的实现数据库的维护管理。

对于软件功能方面的维护,由于我们采用的是模块化的设计方法,每个模块(窗口)之间相互独立性较高,这样对软件的维护带来了很大的方便,对于单独功能的修改只需修改一个窗口就行了。

而对于功能的添加,只要再添加菜单项的内容即可,软件卖出后,我们将根据客户的要求和反映,定期的对软件进行维护修改。

详细设计说明书

1引言

1.1编写目的

图书管理系统详细设计是概要设计的下一个阶段,这个阶段的主要任务是在图书管理系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。

概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。

详细设计则要解决如何实现各个模块的内部功能,即模块设计。

具体的说,模块设计就是要为已经产生的图书管理各子系统设计详细的算法。

但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。

1.2背景

图书管理系统需要满足来自两个方面的需求,分别是图书借阅者和图书馆管理人员,对读者资源,图书资源,借书信息进行管理。

1.3定义

  列出本文件中用到专门术语的定义和外文首字母组词的原词组。

1.4参考资料

  软件工程

  

2程序系统的组织结构

程序系统的组织结构如图1

图1程序系统的组织结构

3登录系统设计

3.1程序描述

此模块负责用户的登陆,其中可分为管理员登陆与读者登陆两部分。

用户输入用户名密码进行登陆,然后进入其他模块完成相应的动作。

3.2功能

用户名密码输入:

提供输入窗体,进行用户名密码输入;

数据查询:

根据输入的用户名密码,从数据库进行相应的查询;

错误提示:

提示用户是否存在和密码是否正确;

密码验证:

进行用户名密码的验证工作;

登陆成功:

通过用户名密码验证,进入系统;

3.3输入项

用户名、密码;

3.4输出项

用户名是否存在提示、用户名密码错误提示、登陆成功提示;

3.5算法

begin

if输入帐号和密码、身份不为空then

begin

查询人员表;

end

else提示人员编号和人员密码、身份不能为空,返回;

if查询结果为空then

begin

提示出错信息,返回重新登陆;

end

else根据不同的身份进入相应的主界面;

end。

3.6流程逻辑

如图2流程逻辑图;

图2流程逻辑图

3.7接口

管理员信息管理接口、读者信息管理接口、图书信息管理接口、图书借阅接口、图书管理接口;

3.8存储分配

表1学生信息表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cVipID

学生编号

文本

6

必须非空

2

cVipName

学生姓名

文本

10

必须非空

4

cVipSex

学生性别

文本

1

可为空

5

vipAddTime

学生入学时间

时间日期

必须非空

6

vipEndTime

学生毕业时间

时间日期

必须非空

表2管理员信息表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cOperatorID

管理员编号

文本

5

必须非空

2

cOperatorName

管理员姓名

文本

10

必须非空

3

cOperatorPassword

密码

文本

6

必须非空

4

cOperatorAddTime

管理员加入时间

时间日期

10

必须非空

3.9测试要点

数据库连接情况:

正常情况,数据库文件缺少,外部系统异常。

系统设置获取:

正常情况,外部系统异常。

对用户输入的响应:

合法输入,能够正常调用子模块;

非法输入,系统能否辨别,并作出响应(提出警告);

子模块的异常状况,系统能否及时做出响应。

4学生信息查询

4.1程序描述

输入查询信息,在数据库中查找相应的信息,如果有,则显示查询结果,如果没有,则显示没有该学生信息。

4.2功能

功能类型:

查询学生的基本信息以及借阅图书的信息

功能概述:

显示查询结果

前提业务:

该生已经登陆

4.3输入项

需要查询的内容

4.4输出项

学生学号

姓名

性别

入学时间

毕业时间

借书编号

图书编号

借书时间

还书时间

是否归还

4.5算法

begin

select学生信息

from学生信息表

where条件like关键字;

if信息匹配then

begin

返回查询到的学生信息;

end

else返回空值;

end。

4.6流程逻辑

如图学生信息查询逻辑图3

图3学生信息查询逻辑图

4.7接口

与登陆系统相连接

4.8存储分配

表3学生信息表

序号

字段名称

字段说明

类型

位数

属性

备注

1

cVipID

学生编号

文本

6

必须非空

2

cVipName

学生姓名

文本

10

必须非空

4

cVipSex

学生性别

文本

1

可为空

5

vipAddTime

学生入学时间

时间日期

必须非空

6

vipEndTime

学生毕业时间

时间日期

必须非空

4.9测试计划

模块正常工作流程

对输入值的合法性与合理性检验

数据库连接异常能否做出适当处理

数据库数据异常时能否判断并给予适当处理

5图书信息查询

5.1程序描述

实现按条件对响应书目的查询;

5.2功能

根据查询者所提供的信息检索数据库中所有满足条件的书目;

5.3输入项

图书的基本信息,如书名、作者、图书编号、出版社等;

5.4输出项

符合所查询信息的所有项;

5.5算法

begin

select图书资料

from图书信息表

where条件like关键字;

if信息匹配then

begin

返回查询到的图书信息;

end

else返回空值;

end。

5.6流程逻辑

如图图书信息查询逻辑图4:

图4图书信息查询逻辑图

5.7接口

5.8存储分配

图书信息表(tBook),其字段列表如表4所示。

表4图书信息表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cBooksID

图书编号

文本

7

必须非空

2

cBooksName

图书名称

文本

20

必须非空

3

cBooksISBN

图书ISBN号

文本

15

可为空

4

cBooksAuthor

图书作者

文本

10

可为空

5

cBooksPublisher

图书出版社

文本

20

可为空

6

cBooksType

图书类型

文本

16

可为空

7

smBooksPrice

图书价格

货币

可为空

8

iBooksStoreQuan

图书库存量

整数

可为空

9

iBooksLeftQuant

图书副本数量

整数

可为空

10

iBooksTotalQuan

图书总数

整数

可为空

5.9测试计划

数据库连接正常;

数据库数据正常获得正确的查询结果并显示;

数据库数据异常给出警告;

数据库连接异常给出警告;

6图书借阅

6.1程序描述

完成对用户借书的相关信息的记录;

6.2功能

查验输入的读者学号或工号;

运行借书对话框;

获取该用户的相关信息;

查验输入的书号;

记录该借书信息;

6.3输入项

借书者的学号或工号、所借图书的编号;

6.4输出项

借书日期、借书操作是否正确完成;

6.5算法

begin

输入读者编号;

select状态

from读者表

where读者编号=输入的读者编号;

if状态=停借then

begin

提示读者欠费不能借书,返回;

end

else

begin

输入图书编号;

end

确定?

if确定then

begin

insertinto借阅表

values(读者,图书信息);

end

else输入到读者编号;

end

6.6流程逻辑

如图图书借阅逻辑图5:

图5图书信息查询逻辑图

6.7接口

登陆模块

6.8存储分配

图书借阅登记表(tBorrow),其字段列表如表5所示。

表5图书借阅登记表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cBorrowID

借书编号

文本

6

必须非空

2

cVipID

学生编号

文本

6

必须非空

3

cBooksID

图书编号

文本

7

必须非空

4

cBorrwTime

借书时间

时间日期

可为空

5

cReturnTime

还书时间

时间日期

可为空

6

cReturn

是否归还

文本

1

可为空

6.9测试计划

模块正常运行流程;

用户输入数据检查(读者证号、图书书号),包括数据合理性检查,以及合法性检查;

数据库操作;

数据库连接异常时的响应情况;

7图书归还

7.1程序描述

完成对用户借书的相关记录的删除;

7.2功能

运行还书对话框;

查验输入的图书书号;

对合法输入登录还输信息;

现实相关信息(本次还书操作信息,尚未归还图书的相关信息,读者信息);

7.3输入项

还书者的学号或工号、所还图书的编号、还书日期;

7.4输出项

还书操作是否正确完成、借书是非超期;

7.5算法

Begin

输入图书编号

select状态

from借阅表

where图书编号=输入的图书编号;

计算图书借阅时间;

if超期then

begin

计算罚款金额;

if未交付金额then

begin

update读者表set读者状态=停借;

end

end

end

7.6流程逻辑

如图图书归还逻辑图6:

图6图书归还逻辑图

7.7接口

登陆模块;

7.8存储分配

图书归还登记表(tReturn),其字段列表如表6所示。

 

表6图书归还登记表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cBorrowID

借书编号

文本

6

必须非空

2

cVipID

学生编号

文本

6

必须非空

3

cBooksID

图书编号

文本

7

必须非空

4

cBorrwTime

借书时间

时间日期

可为空

5

cReturnTime

还书时间

时间日期

必须非空

6

cReturn

是否归还

文本

1

必须非空

7

cNoReturn

归还异常

文本

8

可为空

7.9测试计划

模块正常工作流程;

对输入的查验,包括输入值的合法性与合理性检验;

数据库连接异常能否做出适当处理;

数据库数据异常时能否判断并给予适当处理;

8管理员信息管理

8.1程序描述

实现对管理员信息的管理;

8.2功能

添加、修改、删除管理员信息;

8.3输入项

要管理的管理员的登录名、密码、权限等相关信息;

8.4输出项

该操作是否成功;

8.5流程逻辑:

如图管理员信息管理逻辑图7:

图7管理员信息管理逻辑图

8.6接口

登陆模块;

8.7存储分配

管理员信息表(tOperators),其字段列表如表7所示。

表7管理员信息表的结构

序号

字段名称

字段说明

类型

位数

属性

备注

1

cOperatorID

管理员编号

文本

5

必须非空

2

cOperatorName

管理员姓名

文本

10

必须非空

3

cOperatorPassword

密码

文本

6

必须非空

4

cOperatorAddTime

管理员加入时间

时间日期

10

必须非空

5

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

当前位置:首页 > 工程科技 > 建筑土木

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

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