例子详细设计说明书.docx

上传人:b****1 文档编号:2436200 上传时间:2023-05-03 格式:DOCX 页数:61 大小:117.26KB
下载 相关 举报
例子详细设计说明书.docx_第1页
第1页 / 共61页
例子详细设计说明书.docx_第2页
第2页 / 共61页
例子详细设计说明书.docx_第3页
第3页 / 共61页
例子详细设计说明书.docx_第4页
第4页 / 共61页
例子详细设计说明书.docx_第5页
第5页 / 共61页
例子详细设计说明书.docx_第6页
第6页 / 共61页
例子详细设计说明书.docx_第7页
第7页 / 共61页
例子详细设计说明书.docx_第8页
第8页 / 共61页
例子详细设计说明书.docx_第9页
第9页 / 共61页
例子详细设计说明书.docx_第10页
第10页 / 共61页
例子详细设计说明书.docx_第11页
第11页 / 共61页
例子详细设计说明书.docx_第12页
第12页 / 共61页
例子详细设计说明书.docx_第13页
第13页 / 共61页
例子详细设计说明书.docx_第14页
第14页 / 共61页
例子详细设计说明书.docx_第15页
第15页 / 共61页
例子详细设计说明书.docx_第16页
第16页 / 共61页
例子详细设计说明书.docx_第17页
第17页 / 共61页
例子详细设计说明书.docx_第18页
第18页 / 共61页
例子详细设计说明书.docx_第19页
第19页 / 共61页
例子详细设计说明书.docx_第20页
第20页 / 共61页
亲,该文档总共61页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

例子详细设计说明书.docx

《例子详细设计说明书.docx》由会员分享,可在线阅读,更多相关《例子详细设计说明书.docx(61页珍藏版)》请在冰点文库上搜索。

例子详细设计说明书.docx

例子详细设计说明书

详细设计说明书

1引言

1.1编写目的

根据《需求规格说明书》、《概要设计说明书》,在仔细考虑讨论之后,我们对《图书管理系统》软件的功能划分、数据结构、软件总体结构的实现有了进一步的想法。

我们将这些想法记录下来,作为详细设计说明书,为进一步设计软件、编写代码打下基础。

1.2背景

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

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

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

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

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

1.3定义

 文档中采用的专门术语的定义及缩略词简要如下:

LMS:

LibraryManagementSystem,图书管理系统

1.4参考资料

[1]费贤举关于图书管理系统的批文

[2]郑人杰,殷人昆,陶永雷。

《实用软件工程》(第二版)。

北京:

清华大学出版社,1997。

[3]王立福,麻志毅。

《软件工程》(第二版)。

北京:

北京大学出版社,2001。

[4]唐学忠,王文。

《VisualBasic程序设计教程》北京:

中国电力出版社,2002。

 

2程序系统的结构

 

3程序(标识符)设计说明

3.1主模块

功能

建立与数据库连接

获取系统设置

运行主对话框

根据输入调用子模块

退出系统时断开与数据库的连接

●输入项目

用户鼠标点击输入

●程序逻辑

见右图

●存储分配

内部数据:

数据库连接m_pConnection_ConnectionPtr数据库连接指针

m_IsConnectedBOOL数据库连接指示

系统设置m_MaxLBNumint可借图书数上限

m_MaxLBDayint借书天数上限

子对话框m_BookOutDlgCBookOutDlg借书对话框

m_BookInDlgCBookInDlg还书对话框

m_BookQuiryDlgCBookQuiryDlg图书查询对话框

m_SysDlgCSysDlg系统操作对话框

●测试要点

数据库连接情况:

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

系统设置获取:

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

对用户输入的响应:

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

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

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

3.2借书模块

●功能

查验输入的读者证号

运行借书对话框

获取该读者的相关信息

查验输入的图书号

登记借书

●输入项目

读者证号、图书书号(用户输入)

●输出项目

读者信息(姓名);读者已借图书信息(书名、借书日期);

●程序逻辑

 

●接口

调用形式:

voidCBookDlg:

:

LendBook(const_ConnectionPtrpConnection,

constintMaxLBNum)

传入参数:

pConnection数据库连接指针

MaxLBNum系统参数(可借图书上限)

传出参数:

●存储分配

内部数据:

数据库m_pConnection_ConnectionPtr数据库连接指针

用户界面m_strReaderNameCString读者姓名

m_strLBInfCString已借图书信息

m_strLBNumCString已借图书数显示

m_lBookIDlong欲借图书书号

内部参数m_lReaderIDlong当前读者证号

m_MaxLBNumint可借图书数上限

●测试要点

模块正常运行流程

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

数据库操作

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

3.2.1读者查验模块

●功能

查验输入的读者证号是否合法(即是否存在与该读者证号对应的读者记录)

●输入项目

读者证号(整型常数),读者姓名(引用型字符串)

●输出项目

查验结果(BOOL值)

●程序逻辑

生成数据库查询语句

调用数据库查询模块

IF返回结果集为空(不存在该读者证号)

置读者姓名字符串为空

返回”非法读者证号”

ELSE

置读者姓名字符串

返回”合法读者证号”

●接口

调用形式:

BOOLCheckReader(constlongReaderID,CString&strReaderName)

传入参数:

ReaderID(常量参数传入)待查验的读者证号

m_pConnection(借书模块内的全局变量)数据库连接指针

传出参数:

读者证号存在/不存在标志(返回值)

strReaderName(传入的引用参数)读者证号对应的读者姓名

(读者证号不存在时置为空)

●存储分配

局部变量:

数据库pReader_RecordsetPtr数据库查询结果集指针

查询参数vtQuiry_variant_t查询命令

vNull_variant_t查询连接

类型转换strQuiryCstring查询命令类型转换

vtemp_variant_t查询结果类型转换

●测试要点

数据库连接正常时

输入合理合法参数

输入参数不合理

输入参数不合法

数据库连接异常;数据库数据异常(读者姓名为空)

3.2.2图书查验模块

●功能

查验输入的图书书号是否合法

●输入项目

图书书号(整型常量)

●输出项目

查验结果(BOOL值)

●程序逻辑

生成数据库查询语句

调用数据库查询模块

IF返回结果集为空(不存在该图书书号)

返回”非法图书书号”

ELSE

返回”合法图书书号”

●接口

调用形式:

BOOLCheckBook(constlongBookID)

传入参数:

BookID(整型常量)带查验的图书书号

传出参数:

书号合法/不合法标志(返回值)查验结果

●存储分配

局部变量:

数据库pBook_RecordsetPtr数据库查询结果集指针

查询参量vtQuiry_variant_t查询字符串

vNull_variant_t查询连接参量

类型转换strQuiryCstring查询命令类型转换

●测试要点

数据库连接正常

数据库数据正常

输入的书号合理合法

输入的书号不合理

输入的书号不合法

数据库数据异常

数据库连接异常

3.2.3相关信息获取模块

●功能

获取合法读者的借书记录

●输入项目

合法读者证号(整型常量);读者已借图书信息(引用型字符串)

●输出项目

查询操作结果(BOOL值)

●程序逻辑

生成数据库查询语句

调用数据库查询模块

IF操作成功

WHILE查询结果集未读至文件尾

读取各项值

置入读者已借图书信息字符串

返回”操作成功”

ELSE

置空读者已借图书信息字符串

返回”操作失败”

●接口

调用形式:

BOOLGetLBInf(constlongReaderID,CString&strLBInf)

传入参量:

ReaderID(整型常量)查询参数

strLBInf(引用型字符串)返回用的格式化的查询信息

传出参量:

查询成功/失败标志(BOOL值)查询操作结果信息

●存储分配

局部变量:

数据库pRecords_RecordsetPtr数据库查询结果集指针

查询参数vtQuiry_variant_t查询命令字符串

vNull_variant_t查询连接参量

类型转换strQuiryCString查询命令类型转换

●测试要点

数据库连接正常

数据库数据正常

输入正常(读者证号合法)

输入异常(读者证号非法)

数据库数据异常

数据库连接异常

3.2.4借书登记模块

●功能

登录借书信息

●输入项目

读者证号(整型常量);图书书号(整型常量)

●输出项目

操作结果(BOOL值)

●程序逻辑

生成数据库操作命令

调用数据库操作模块

IF操作成功

返回”操作成功”

ELSE

返回”操作失败”

●接口

调用形式:

BOOLWriteBlrecord(constlongReaderID,constlongBookID)

传入参数:

ReaderID(整型常量)操作参数(借阅者读者证号)

BookID(整型常量)操作参数(借阅图书书号)

传出参数:

操作成功/失败标志(返回值)

●存储分配

局部变量:

操作命令参数vRecsAffected_variant_t操作影响

vtCommand_variant_t操作命令

类型转换strCommandCString操作命令类型转换

strTodayCString借书日期类型转换

oleTodayCOleDateTime借书日期

●测试要点

数据库连接正常

数据库操作正常

输入参数合法

输入参数非法

数据库操作异常

数据库连接异常

4还书模块

●功能

运行还书对话框

查验输入的图书书号

对合法输入登录还书信息

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

●输入项目

图书书号(用户输入)

●输出项目

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

程序逻辑

 

●接口

调用形式:

CBookInDlg:

:

ReturnBook(const_ConnectionPtrpConnection,

constintMaxLBDay)

传入参量:

pConnection(数据库连接指针常量)提供数据库连接

MaxLBDay(整型常量)系统参数(借书天数上限)

传出参量:

●存储分配

内部变量:

数据库m_pConnection_ConnectionPtr数据库连接指针

m_pRecords_RecordsetPtr数据库查询结果集指针

用户界面m_lBookIDlong欲还图书书号

m_strLenderIDCString借阅者图书证号显示

m_strLenderCString借阅者姓名

m_strRBInfCString已还图书信息显示

m_strNRBInfCString未还图书信息显示

m_strRBNumCString已还图书数显示

m_strNRBNumCString未还图书数显示

内部参数m_lCurrIDlong当前还书者读者证号

m_intRBNumint已还图书计数

m_MaxLBDayint借书天数上限

●测试要点

模块正常工作流程

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

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

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

4.1借书记录查验模块

●功能

查验借书记录是否存在(即是否存在与指定书号相对应的借书记录)

●输入项目

图书书号(传入参数)

●输出项目

查验结果(返回值);查询结果集(图书书号、书名、状态、出借日期)

●程序逻辑

生成数据库查询语句

调用数据库查询模块

IF操作成功

IF查询结果集不为空(存在该借书记录)

返回”记录存在”

ELSE

警告”记录不存在”

ELSE

警告”查询失败”

返回”记录不存在”

●接口

调用形式:

BOOLCheckBlrcord(constlongBookID)

传入参量:

BookID(整型常量)

传出参量:

书号合法/非法标志(BOOL型)

●存储分配

局部变量:

查询参数vtQuiry_variant_t查询命令

vNull_variant_t查询连接

类型转换strQuiryCString查询命令类型转换

引用的全局变量:

m_pConnection_ConnectionPtr使用

m_pRecords_RecordsetPtr写(打开)

●测试要点

数据库连接正常

数据库数据正常

合法的图书书号返回“真”查验结果

不合法的图书书号返回“假”查验结果,给出警告提示

数据库数据异常返回“假”查验结果,给出数据异常警告

数据库连接异常返回“假”查验结果,给出数据库连接异常警告

4.2相关信息获取模块

●功能

获取指定读者(读者证号)的借书记录,获取的信息包括所借图书书名,借书日期以及所借图书的总本数。

●输入项目

读者证号(传入参数);相关(借书)信息(公共变量)

●输出项目

已借图书数(返回值)

●程序逻辑

生成数据库查询命令

IF操作成功

初始化(相关信息字符串置为空已借图书计数置为0)

WHILE未读至查询结果集尾

置相关信息字符串

计数累加

返回计数值

ELSE

置相关信息字符串为”操作异常”

返回”失败标志”(-1)

●接口

调用形式:

intGetLBInf(constlongReaderID)

传入参数:

ReaderID(整型常量)指定的读者证号

传出参数:

获取的相关记录数(整型)如发生异常,返回值置为负

●存储分配

局部变量:

查询参数vtQuiry_variant_t查询命令

vNull_variant_t查询连接

类型转换strQuiryCString查询命令类型转换

vtemp_variant_t查询结果类型转换

oleDateCOleDateTime借书时间类型转换

记录计数countint计算获取的记录数

引用的全局变量:

m_pConnection_ConnectionPtr使用

m_pRecords_RecordsetPtr写(打开、关闭)

m_strNRBInfCString写

●测试要点

数据库连接正常

数据库数据正常

可获取的借书记录数为零返回结果为0,引用字符串置空

可获取的借书记录数不为零返回记录数,并将相关信息记录在引用字符串中

数据库数据异常返回异常指示,给出警告

数据库连接异常返回异常指示,给出警告

4.4还书信息记录模块

●功能

记录本次还书操作的信息,包括图书书名,超期天数。

●输入项目

包含相关信息(书名、借书日期)的查询结果集(公共变量)

●输出项目

更新后的格式化还书信息(公共变量)

●程序逻辑

WHILE传入的查询结果集未读至文件尾

读取书名,置入还书信息字符串

读取借书日期

计算超期天数

置入还书信息字符串

光标移至下一个记录

●接口

调用形式:

voidSaveRBInf(void)

传入参数:

传出参数:

●存储分配

局部变量:

类型转换vtemp_variant_t查询结果类型转换

strExcessCString超期天数类型转换

计算变量oleDateCOleDateTime借书日期

oleExcessCOleDateTimeSpan超期天数

intExcessint超期天数

引用的全局变量:

m_pRecords_RecordsetPtr读(关闭记录集)

m_strRBInfCString更新

m_MaxLBDayint读

●测试要点

查询结果集正常

查询结果集异常

4.5还书登记模块

●功能

登记还书(删除借书记录,更新图书状态)

●输入项目

图书书号(输入参数)

●输出项目

操作成功/失败标志(返回值)

●程序逻辑

生成数据库操作命令(更新)

IF操作成功

生成数据库操作命令(删除)

IF操作成功

返回”操作成功”

返回”操作失败”

●接口

调用形式:

BOOLDelBlrecord(constlongBookID)

传入参数:

BookID(整型常量)返还图书书号

传出参数:

操作成功/失败标志(BOOL值)

●存储分配

局部变量:

操作参数vtCommand_variant_t操作命令

vRecsAffected_variant_t操作影响参数

类型转换strCommandCString操作命令类型转换

引用的全局变量:

m_pConnection_ConnectionPtr使用

●测试要点

数据库连接正常

图书书号合法

图书书号不合法

数据库连接异常

5图书查询模块

●功能

根据给定查询条件,查询数据库,获取图书信息

●输入项目

查询方式指定以及查询关键字

●输出项目

查询结果列表显示

程序逻辑

 

 

●接口

调用形式:

CBookQuiryDlg:

:

QuiryBook(const_ConnectionPtrpConnection)

传入参数:

pConnection(数据库连接指针)

传出参数:

●存储分配

内部变量:

数据库m_pBooks_RecordsetPtr数据库查询结果集指针

用户界面m_strAuthorCString作者关键字

m_bAuthorBOOL作者查询选择状态

m_strBookNameCString书名关键字

m_bBookNameBOOL书名查询选择状态

m_strPublisherCString出版社关键字

m_bPublisherBOOL出版社查询选择状态

m_intYear1int出版时间关键字

m_intYear2int出版时间关键字

m_intMonth1int出版时间关键字

m_intMonth2int出版时间关键字

m_bPubTimeBOOL出版时间查询选择状态

m_intTimeTypeint出版时间查询方式选择

局部变量:

查询参数vtQuiry_variant_t查询命令

vNull_variant_t查询连接

类型转换strQuiryCString查询命令类型转换

●测试要点

数据库连接正常

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

数据库数据异常给出警告

数据库连接异常给出警告

5.1查询命令生成模块

●功能

根据用户界面的输入生成查询命令

●输入项目

用户界面的输入值(公共变量)

●输出项目

查询命令(返回值)

●程序逻辑

读取各复选框的值

IF选中AND关键字不为空

生成查询条件

生成数据库查询命令

返回生成的查询命令

●接口

调用形式:

CStringGetQuiryString()

传入参数:

传出参数:

查询命令(CString)

●存储分配

局部变量:

strQuiryCString查询命令字符串

strTempCString临时字符串

●测试要点

用户输入合理

用户输入不合理(没有指定查询方式,没有输入查询关键字)

5.2数据库查询模块

●功能

根据输入的查询命令查询数据库

●输入项目

查询命令(传入参数)

●输出项目

数据库查询结果(返回值);数据库查询结果集(公共变量)

●程序逻辑

查询数据库

IF操作成功

返回”操作成功”

ELSE

返回”操作失败”

●接口

调用形式:

BOOLDBQuiry(constCStringstrQuiry)

传入参数:

strQuiry(字符串型常量)数据库查询命令

传出参数:

查询操作成功/失败标志(BOOL值)

●存储分配

局部变量:

查询参数vtQuiry_varaint_t数据库查询命令

vRecsAffected_variant_t数据库查询连接

引用的全局变量:

m_pConnection_ConnectionPtr使用

m_pBooks_RecordsetPtr读

●测试要点

数据库连接正常

输入查询命令合法

获取非空查询结果集返回“真”返回值,查询结果保存在查询结果集中

获取空查询结果集返回“真”返回值,查询结果集为空

输入查询命令不合法返回“假”返回值,查询结果集指针指向空,给出警告

数据库连接异常

5.3数据显示模块

●功能

按一定格式列表显示查询结果,并根据用户要求重排列

●输入项目

查询结果集(传入参数);输出项名称(传入参数);

查询结果表参数,包括行数、列数(传入参数)

●输出项目

用户界面显示

●程序逻辑

初始化(设置行数、列数、列名称,载入输入的查询结果集内的数据)

显示列表

WHILE用户未输入“返回”

IF用户拖动列的标题栏

重新设置列的位置

排序

刷新显示

返回

●接口

调用形式:

CListShowDlg:

:

ShowList(const_RecordsetPtrpRecords,

CString*strArray,

constintcols,constintrows)

传入参数:

pRecords(数据库查询结果集指针)需要显示的查询结果

strArray(字符串数组头指针)显示项的名称(列名)

cols(整型常量)列表列数

rows(整型常量)列表行数

传出参数:

●存储分配

内部数据:

数据库m_pRecords_RecordsetPtr数据库查询结果集

内部参数m_strArrayCString[20]列名存储数组

m_intColsint列表列数

m_intRo

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

当前位置:首页 > 求职职场 > 简历

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

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