当前位置:文档之家› 软件详细设计说明书实例

软件详细设计说明书实例

软件详细设计说明书实例
软件详细设计说明书实例

软件详细设计说明书实例

2020年8月

目录

1 引言....................................................... 错误!未定义书签。

编写目的............................................... 错误!未定义书签。

项目背景............................................... 错误!未定义书签。

定义................................................... 错误!未定义书签。

参考资料............................................... 错误!未定义书签。

2 总体设计................................................... 错误!未定义书签。

需求概述............................................... 错误!未定义书签。

软件结构............................................... 错误!未定义书签。

3 程序描述................................................... 错误!未定义书签。

01登陆模块............................................. 错误!未定义书签。

02管理模块............................................. 错误!未定义书签。

031图书信息查询模块 .................................... 错误!未定义书签。

032学生信息查询模块 .................................... 错误!未定义书签。

021入库管理模块 ........................................ 错误!未定义书签。

022学生借书模块 ........................................ 错误!未定义书签。

023学生还书模块 ........................................ 错误!未定义书签。

024图书注销模块 ........................................ 错误!未定义书签。

接口设计............................................... 错误!未定义书签。

测试要点............................................. 错误!未定义书签。

文档名称:详细设计规格说明书

项目名称:图书馆管理系统

项目负责人:陈新光

编写 TEST _____年_____月_____日

校对所有小组成员 _____年_____月_____日

审核所有小组成员 _____年_____月_____日

批准 XXX _____年_____月_____日

开发单位__________________________________________

组员:TEST1 TEST2 TEST3

1引言

1.1编写目的

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

概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的内部功能,即模块设计。具体的说,模块设计就是要为已经产生的图书管理各子系统设计详细的算法。但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。

1.2项目背景

根据XX学校希望能够充分利用现代科技来提高图书管理的效率,在原有的办公系统基础上进行扩展,将一些可以用计算机来管理的都进行计算机化,使得图书馆管理人员工作更加方便,工作效率也更加的高。

1.3定义

?Mysql:数据库管理软件

?DBMS:数据库管理系统

?Windows 2000/2003/XP:运行环境

?JSP :软件开发语言

?Myeclipse :开发工具

1.4参考资料

《软件工程导论——第5版》张海藩编著清华大学出版社

《实用软件工程》Leszek Bruc Lee Liong著

机械工业出版社

2总体设计

2.1需求概述

按照需求分析文档中的规格要求,使用条形码扫描器进书、借书、还书,使得信息传递准确、流畅。同时,系统最大限度地实现易安装,易维护性,易操作性,运行稳定,安全可靠。

2.2软件结构

系统由3大模块,6小模块组成:

序号编号名称

1,01 登陆模块

2,02 管理模块

3,031 图书信息查询模块4,032 学生信息查询模块5,021 入库管理模块

6,022 学生借书模块

7,023 学生还书模块

8,024 图书注销模块

9,040 基础信息设置

3程序描述

3.1 01登陆模块

具体格式见下表:

功能编号01功能名称登陆模块内容功能流程图

3.1.1功能流程图

功能流程图如下图所示。

需要说明的问题:

(1)录入项检测使用javascript实现(各项必须非空)

(2)登陆.jsp页面也包含查询按钮,在此的登陆.jsp提交的数据只是用户名和密码。

3.1.2功能描述

(1)功能类型:查询数据

(2)功能描述:提高系统的安全性

(3)前提业务:无

(4)后继业务:02 (管理模块)

(5)功能约束:权限约束

(6)约束描述:

(7)操作权限:图书馆管理员

3.1.3界面设计

(1)基础信息处理

动作说明:

动作编号动作名称动作描述

信息恢复原先状态

A03图书信息查询点击将页面转至到图书

信息查询.jsp页面

A04学生信息查询点击将页面转至学生信

息查询.jsp页面

(2)数据要求

(1)功能类型:数据查询

(2)数据描述:

页面显示录入字段如下:

字段名称长度录入方式是否非空项数据检验默认显示

3.1.4登陆数据处理.jsp的内部逻辑

登陆数据处理:

关键点两点:1,数据库连接;2,记录登陆信息及信息处理;

1,数据库连接:

如下:

public class lib_system_Conn extends Object{

public lib_system_Conn(){

}

private Connection conn = null;

private ResultSet rs;

String re = "";

ewInstance();

String url ="jdbc:"+dbip+":3306/"+dbName+"user="+use+"&password="+pass+"&useUnicode=true&chara cterEncoding=GBK" ;

conn= (url);

}

catch(Exception e){

();

}

return ;

}

}

sp页面。取得帐号密码这两个从页面传入的值,然后跟数据库当中管理员表中的账号和密码比较。如果正确的话,在JSP的SESSION中存入一个标记属性,表示当前已经有管理员登陆了。处理完毕后,跳转到管理页面,如果失败,则提示登陆失败,并重新进入到登陆页面。

具体的逻辑如下:

<%

String username=(request,"admin_ID");

2007-11-26

生借书.jsp页面

A03学生还书点击按钮将页面转至学

生还书.jsp页面

A04图书注销点击按钮将页面转至图

书注销.jsp页面

(1)数据要求

功能类型:其他

3.2031图书信息查询模块

具体格式如下:

内容功能流程图功能编号031功能名称图书信息查

询模块

3.2.1功能流程图

功能流程图如下图:

需要说明的问题:

录入项检测使用javascript来实现(各项非空);

操作权限:面向所有用户

3.2.2功能描述

(1)功能类型:查询数据

(2)功能概述:显示查询结果

(3)前提业务:无

(4)后继业务:

(5)功能约束:没有约束;

(6)约束描述:

(7)操作权限:面向所有用户

3.2.3界面设计

(1)基础信息处理

下表是动作说明:

动作编号动作名称动作描述

生信息查询.jsp页面(2)数据要求

(1)功能类型:数据查询

(2)数据描述:

页面显示字段见下表:

字段名称长度录入方式是否非空项数据检验默认显示

内容

(3)图书信息查询的输出项

书名

图书类型

作者

译者

ISBN

出版社

价格

书架名称

现存量

简介

书名

图书类型

3.2.4模块内部逻辑

1,用于显示界面的内容,给用户显示一个查询接口

2,用来调度所有的页面,它根据传入的参数来决定包含哪一个jsp 页面来显示内容;

在页面中,

它根据传入的参数来决定包含哪一个jsp页面来显示内容;则可

以通过”/>,利用jsp:include

标签来被动态加载发送到相应页面;

3,用来处理数据查询和显示查询到的结果列表。

在这个页面中,数据要求是以列表的形式显示到输出页面。

由于查询到的结果可能过多,所以采用分页形式显示;

对于分页功能的内部逻辑:

4,用来显示查询到的图书的各项属性。

3.2.5存储分配

图书目录文件(Book):

序号字段名类型长

小数位

默认

允许

说明

3(Title)书名nvarchar200

4(TSLX)图书类型Nvarchar50√5(Author)作者Nvarchar20√6(Translator)译者Nvarchar20√7(ISBN)ISBN Nvarchar20

8(CBS)出版社Nvarchar30√10(SJMC)书架名称Nvarchar20√11(XCL)现存量Smallint2√12(KCZL)库存总量Smallint2√13(RKSJ)入库时间Datatime√14(CZY)操作员Nvarchar10√15(JJ)简介Nvarchar200√16(JCCS)借出次数Smallint2√17(SFzhuxiao)是否注

Nvarchar2√

借书文件表(JSWJB):

序号字段名类型长度精度小数

位数默认

允许

主键外键说明

图书编号

Int10√

3(StuID)

学生编号

Datatime8√

4(JYSJ)借

阅时间

Datatime8√

5(DQSJ)到

期时间

6(XJCS)续

Smallint2√

借次数

Nvarchar10√

7(CZY)操

作员

8(ZT)状态navarchar50√

3.3032学生信息查询模块

具体格式如下:

功能编号032功能名称学生信息查

内容功能流程图

询模块

3.3.1功能流程图

功能流程图如下图:

需要说明的问题:

录入项检测使用javascript来实现(各项非空);

操作权限:面向所有用户

3.3.2功能描述

(8)功能类型:查询数据

(9)功能概述:显示查询结果

(10)前提业务:无

(11)后继业务:

(12)功能约束:没有约束;

(13)约束描述:

(14)操作权限:面向所有用户

3.3.3界面设计

(4)基础信息处理

下表是动作说明:

动作编号动作名称动作描述

书信息查询.jsp页面(5)数据要求

(3)功能类型:数据查询

(4)数据描述:

页面显示字段见下表:

字段名称长度录入方式是否非空项数据检验默认显示

(6)学生信息查询的输出项

姓名

性别

生日

证件号码

联系电话

登记日期

有效期至

已借书数

3.3.4模块内部逻辑

5,用于显示界面的内容,给用户显示一个查询接口

6,用来调度所有的页面,它根据传入的参数来决定包含哪一个jsp 页面来显示内容;

在页面中,

它根据传入的参数来决定包含哪一个jsp页面来显示内容;则可

以通过”/>,利用jsp:include

标签来被动态加载发送到相应页面;

7,用来显示查询到的结果列表。

8,用来显示查询到的学生的各项属性。

★★注释:学生信息查询模块与图书查询模块属于同一类功能。实现可以完全类似。

3.3.5存储分配

学生文件:

序号字段字段名类型长度精度小数

位数默认

允许

主键说明

2Name姓名nvarchar10

3Sex性别nvarchar2√4ZJH证件号码nvarchar25√5LXDH联系电话nvarchar40√6DJRQ登记日期datetime8√7YXQZ有效期至datetime8√8YJSS已借书数smallint2√9RuleID学生规则

ID

int10

10ZT是否挂失nvarchar2√借书文件:

序号字段

名类型长度精度小数

位数

默认

允许

主键外键说明

编号

3学生

编号

Int10√4借阅

时间

Datatime8√

5到期

时间

Datatime8√

6续借

次数

Smallint2√

3.4 021入库管理

具体格式如下: 功能编号

021

功能名称

入库管理模块

内容 功能流程图

3.4.1 功能流程图

(1) 执行数据库操作的时候要验证权限

(2) 录入项检验用javascript 来实现(选项非空)

3.4.2 功能描述

(1) 功能类型:添加数据

(2) 功能描述:增加图书目录文件中的图书信息。 (3) 前提业务:管理模块 (4) 后继业务:无 (5) 功能约束:权限约束

相关主题
文本预览
相关文档 最新文档