软件工程详细设计说明书.docx
- 文档编号:14389838
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:10
- 大小:67.35KB
软件工程详细设计说明书.docx
《软件工程详细设计说明书.docx》由会员分享,可在线阅读,更多相关《软件工程详细设计说明书.docx(10页珍藏版)》请在冰点文库上搜索。
软件工程详细设计说明书
集团标准化工作小组#Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#
软件工程详细设计说明书
五、详细设计说明书
1.引言
编写目的
【阐明编写详细设计说明书的目的,指明读者对象。
】
图书馆管理员,系统设计人员
项目背景
【应包括项目的来源和主管部门等。
】
a.图书馆在正常运营中面对大量书籍、读者信息
b.人工记录方法既效率低又错误过多
定义
【列出文档中所用到的专门术语的定义和缩写词的原文。
】
booksManager本系统的名称
Reader系统权限:
普通读者
BookAdmin系统权限:
图书管理员
UserAdmin系统权限:
用户管理员
SuperAdmin系统权限:
超级管理员(系统管理员)
Undergraduate系统用户角色:
本科生
Graduate系统用户角色:
研究生
Teacher系统用户角色:
教师
参考资料
【列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括:
a.软件文档编写》高等教育出版社编者:
辛明海
b.清华《UML课程设计》机械工业出版社编者:
董兰芳
c.《软件工程》电子工业出版社编者:
赵池龙
d.《设计模式——可复用面向对象软件的基础》,ErichGamma等,机械工业出版社
2.总体设计
需求概述
立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高图书信息的现代化管理水平,实现信息资源的共享。
图书管理系统是一种基于集中统一规划的数据库数据管理新模式。
在对图书、读者的管理,其实是对图书、读者数据的管理。
本系统的建成无疑会为管理者对图书管理系统提供极大的帮助。
使用该系统之后,图书馆管理人员可以管理读者的登记、借出、归还、预约、等;还可以查询某位读者、某本图书的借阅情况,对当前借阅情况给出一些统计,给出统计表格,以全面掌握图书的流通情况。
本系统的宗旨是提高图书管理工作的效率,减少相关人员的工作量,使学校的图书管理工作真正做到科学、合理的规划,系统、高效的实施。
软件结构
【如给出软件系统的结构图。
】
3.程序描述
【逐个模块给出以下的说明:
】
功能
1、学生注册:
工作人员通过计算机对学生进行信息注册,发放借书证;
2、图书浏览查询:
学生们通过此模块来查询自己所需要的图书;
3、读者借书:
学生通过此模块来完成借阅图书;
4、图书预约:
学生通过此模块来完成预约图书;
5、读者还书:
学生通过此模块来完成退还图书;
6、打印信息:
图书管理人员通过此模块来完成打印学生信息的工作。
性能
1.在每周1-5的上午8:
00-11:
00和下午2:
00-5:
00是高峰时间,系统将能适应1000个用户同时使用,平均每个会话估计持续10分钟。
2.系统对用户请求的最大响应时间是5秒钟,在此时间内将响应结果显示在屏幕上
输入项目
学生信息,图书名号
输出项目
注册是否成功提示,查询书籍存在情况
算法
【模块所选用的算法。
】
classCBookDataSet:
publicCRecordset
{
public:
CBookDataSet(CDatabase*pDatabase=NULL);
CStringm_BOOK_ID;
CStringm_BOOK_NAME;
CStringm_AUTHOR;
CStringm_PRESS;
CTimem_PRESS_DATE;
CStringm_FLAG_BORROW;
}
classCBorrowDataSet:
publicCRecordset
{
public:
CBorrowDataSet(CDatabase*pDatabase=NULL);
CStringm_READER_ID;
CStringm_BOOK_ID;
CTimem_BORROW_DATE;
CStringm_B_CLERK_ID;
longm_ID;
}
voidCBookMDlg:
:
OnEnquery()
{
//TODO:
Addyourcontrolnotificationhandlercodehere
UpdateData(TRUE);
if()&&())
{
="";
();
DisplayRecord();
SetButtonState();
return;
}
BOOLmAll=FALSE;
if(!
())
{
="BOOK_ID='"+m_strBookIDQ;
=+"'";
mAll=TRUE;
}
if(!
())
{
if(mAll)
{
=+"ANDBOOK_NAME='";
=+m_strBookNameQ;
=+"'";
}
else
{
="BOOK_NAME='"+m_strBookNameQ;
=+"'";
}
}
();
DisplayRecord();
SetButtonState();
}
BOOLCBookMDlg:
:
DisplayRecord()
{
if()&&())
{
m_strBookID="";
m_strBookName="";
m_strPress="";
m_strAuthor="";
m_strFlag="";
}
else
{
if())
{
();
}
else
{
if())
{
();
}
}
m_strBookID=;
m_strBookName=;
m_strPress=;
m_strAuthor=;
m_strFlag=;
}
UpdateData(FALSE);
returnTRUE;
}
程序逻辑
【详细描述模块实现的算法,可采用:
a.标准流程图;
b.PDL语言;
c.N-S图;
d.PAD;
e.
判定表等描述算法的图表。
】
接口
本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,
分别进入相应的界面(如:
输入界面、输出界面)。
用户对程序的维护,最好
要有备份。
存储分配
无
限制条件
估计开发该系统需购买硬件、外部设备(P4微机一台、打印机一台、服务器),开发工作量约需6个人月工作量
测试要点
【给出测试模块的主要测试要求。
】
单元测试主要是针对编码阶段进行的,对每个功能模块进行测试,采用各种测试用例对模块接口、模块内部数据结构、逻辑路径、出错处理和边界条件进行测试。
如模块内部数据结构的测试,在程序编写过程中就要考虑数据的类型、范围等方面,测试时就要对这些方面进行测试。
输入一些不符合条件的数据,看能不能运行。
而它最终的目的是保证每个模块单独运行正确,我采用的是白盒测试法,检查模块控制结构的某些特殊路径,期望覆盖尽可能多的出错点。
综合测试主要是针对设计阶段进行的。
模块测试完成后,能保证每个功能模块能够单独地正常工作,但所有模块联结在一起能不能正常工作就是综合测试的任务了。
而在此系统中我采用的是自顶向下集成法,这种测试的优点在于能尽早地对程序的主要控制进行检验,因此能较早地发现错误。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 详细 设计 说明书