概要详细设计文档.docx
- 文档编号:8219916
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:33
- 大小:720.66KB
概要详细设计文档.docx
《概要详细设计文档.docx》由会员分享,可在线阅读,更多相关《概要详细设计文档.docx(33页珍藏版)》请在冰豆网上搜索。
概要详细设计文档
一、概要设计说明书
1引言:
通过简要的概述完成对本软件设计的轮廓描述
1.1编写目的
1.1项目背景
在需求分析的过程结束后,开始做手进行概要设计,在此基础上已经有了相应的数据流图,及在数据字典中的定义,需要完成:
确定系统应该做什么
1.2基本术语及定义——列出所用专用术语的定义和缩写词的原文
VIP会员:
按某一种规定成为了享有特权的用户,可以得到买书更大的折扣
普通会员:
曾经买书的人员,享有部分特权,享受部分优惠政策
管理员:
电子系统后台运行的管理者,负责对电子书籍的录入及电子相关会员信息等的管理
图书信息:
包含图书相关所有信息;
买家:
临时购买图书的人员
1.3参考资料
软件工程导论【张海藩】,SE课程实践报告模板【邵堃】
2任务概述
2.1目标
在后台可以实行管理员对书籍信息,会员信息的增删改动;
在前台可以实现图书购买,查看相关信息的功能
2.2运行环境
在WindowsXP以上(涵盖XP)
2.3条件与限制
缺少了优美的画面,同时不支持其他非Windows系统,在输入时按照指定方式进行
3总体设计
3.1处理流程
进入主界面
|
按照输入要求进行转入
|
电子后台管理电子购书退出系统
3.2总体结构和模块外部设计
3.3功能配置
图书信息管理:
会员信息管理功能
购书流程设置
4接口设计
4.1外部接口
voidfsshopping()电子购书功能
voidquit()退出网站
voidbsbook()图书信息管理
bspeople()会员信息管理
voidprint()显示图书信息
book*del1(book*h)按编号删除书籍
book*del2(book*h)按书名删除书籍
book*revise(book*h)修改图书信息
voidrprint()打印会员信息
*rdel1(people*rh)按编号删除会员信息
*rdel2(people*rh)按姓名删除会员信息
*rrevise(people*rh)修改会员的相关信息
voidpass()管理员信息认证
4.2内部接口
*change(book*&pt)应用于将数据库信息导入到指定缓冲区
voidsave(book*h)将被操作信息送回数据库
book*insert(book*h)将更改信息存入缓冲区
voidrsave(people*rh)保存会员信息
*rinsert(people*rh)将会员信息加入缓冲区
Setpay设置购书价格
5数据结构设计
5.1逻辑结构设计
买家信息;以表格的形式存在
客户姓名客户身份证号收货地址客户电话客户邮编
会员信息:
以顺序的形式存于数据库中
会员编号会员姓名会员密码会员等级
书籍信息:
以顺序的形式按照相应的属性对应存储
图书编号图书名称图书条形码图书作者图书出版社图书数量图书价格
5.2物理结构设计
买家信息:
以对象的方式存于内存,
会员信息:
以流的形式存于文件
书籍信息:
以流的形式存于文件
5.3数据结构与程序的关系
classpeople
{
intPeoplenumber;
charPeoplename[15],Password[15],grade[6];
people*next;
}链表形式连接的会员信息,内存中的表示方式
classbook
{
intBooknumber;//图书编号
charBookname[25];//图书名称
charBookID[15];//图书条形码
charBookauther[15];//图书作者
charBookpublisher[25];//图书出版社
doubleBooknum;//图书数量
doubleBookprice;//图书价格
book*next;
}以链表形式连接的书籍信息
classbuyer//客户类,它是类layfolk和类member的父类
{
protected:
charname[15];//客户姓名
charbuyerID[25];//客户身份证号
charaddress[25];//收货地址
charphonenumber[15];//客户电话
charpostnode[15];//客户邮编
}以一个对象的存在方式存于内存
6运行设计
6.1运行模块的组合
6.2运行时间
各模块运行时间均应控制在1~3秒内(其中大部分为响应用户的动作)。
由于系统采用事件驱动方式,有效提高计算机的利用率。
7出错处理设计
7.1出错输出信息
1,为按指定要求输入
您输入有误!
!
!
请重新输入:
2,文件无法打开
提示文件为空;
7.2出错处理对策及补救措施
如果文件无法打开,程序将自动关闭
输入有误,可以从新开始输入
8安全保密设计
管理员登录信息输入错误会输出
您输入的姓名或密码有误!
\n\n";
请重新输入:
\n\n\n";
输入三次不对以后
您已连续3次输入错误!
!
!
\n\n";
您将被强行退出程序!
\n\n";
正在退出程序\t";
有效的控制了非管理人员进行身份验证
9系统维护设计
本开发小组将在应用的过程中随时跟进以逐步排除错误
二、详细设计说明书
1引言
1.1编写目的
在总体设计的基础上,对各个模块的功能进行细分,划分,以按照详细设计的说明指定,来指挥小组开发的进程;需要完成,系统具体应该怎样做
1.2项目背景
已经完成了相应的总体设计分析,模块已经初步划分,在初步划分,总体结构底定之后进一步完成相应的设计功能
1.3基本术语及定义——列出所用专用术语的定义和缩写词的原文
Tpeople
{
public:
intPeoplenumber;
charPeoplename[15],Password[15],grade[6];
Tpeople*next;
}导入内存的基本会员信息
classTbook
{
public:
intBooknumber;
charBookname[25],BookID[15],Bookauther[15],Bookpublisher[25];
doubleBookprice,Booknum;
Tbook*next;
}导入内存的基本书籍信息
1.4参考资料
软件工程导论【张海藩】,SE课程实践报告模板【邵堃】
2软件结构描述
2.1需求概述
本软件是面向用户消息机制的,等待用户按照自己的所需输入
本软件运行于windows底下
若需要进入本网站购书,必须安装相对应的本软件
2.2软件结构图
3各个模块的程序描述
管理员模块{
图书管理信息管理
功能增加图书
输入项
增加的图书信息
输出项
已正确输入!
算法:
创建数据对象,将添加信息输入流进入数据对象,然后将其加入到整个读出的数据结点中,把整个内容在从写入文件
修改图书
输入项
输入要修改的相关信息
输出:
已正确输入!
算法
将所要更改的信息按序号查找到真正位置,然后进行修改,在从新保存至内存
删除图书
输入项
输入相关删除信息
输出项
已正确运行
算法
将所要删除内容按序号循环对比查找真正位置,然后再内存结构中删除,从新写回文件
打印图书
输入项
无
输出项
全部信息的输出
算法
将对应数据结构内容按指定方式输出
会员管理信息管理
功能增加会员
修改图书
输入项
输入要修改的相关信息
输出:
已正确输入!
算法
将所要更改的信息按序号查找到真正位置,然后进行修改,在从新保存至内存
修改会员
修改图书
输入项
输入要修改的相关信息
输出:
已正确输入!
算法
将所要更改的信息按序号查找到真正位置,然后进行修改,
删除会员
输入项
输入相关删除信息
输出项
已正确运行
算法
将所要删除内容按序号循环对比查找真正位置,然后再内存结构中删除,从新写回文件
打印会员信息
输入项
无
输出项
全部信息的输出
算法
将对应数据结构内容按指定方式输出
}
客户操作模块
{
购书流程指示
我们的相关信息显示
电子购书
功能电子选书
完善订单信息
验证是否会员,可享受优惠
提交订单
从新选购
算法:
通过递归的调用,switch的不断选择,来回进行选取购物书籍或取消书籍,将购买的书籍连接在链表中,最后进行统一操作
}
接口:
1、homepage.cpp:
系统主界面
2、pass.cpp:
系统管理员登录界面
3、backstage.cpp:
后台管理主界面
4、bsbook.cpp、bsbook.h:
图书信息管理系统
5、bspeople.cpp、bspeople.h:
会员信息管理系统
6、frontstage.cpp:
前台购书主界面
7、fsshopping.cpp、person.h:
电子购书系统
8、wait.cpp:
虚拟管理员登录等待状态
9、quit.cpp:
系统退出
模块一、homepage.cpp:
系统主界面
实现:
采用switchcase语句、dowhile语句及调用wait()、quit()、pass()、frontstage()函数实现其功能。
知识点:
switchcase语句、dowhile语句、system("cls")语句、system("color").......
system("colar02");是表示黑背景绿色字
颜色属性由两个十六进制数字指定--第一个为背景,第二个则为前景。
每个数字可以为以下任何值之一:
0=黑色8=灰色
1=蓝色9=淡蓝色
2=绿色A=淡绿色
3=湖蓝色B=淡浅绿色
4=红色C=淡红色
5=紫色D=淡紫色
6=黄色E=淡黄色
7=白色F=亮白色.
模块二、pass.cpp:
系统管理员登录界面
登陆成功,进入后台操作,若三次输入姓名和密码不相匹配,系统将会自动退出!
实现:
for循环,字符串比较
知识点:
strcmp(string1,string2);
模块三、backstage.cpp:
后台管理主界面
实现:
采用switchcase、dowhile语句及调用bsbook()、bspeople()、wait()、quit()函数实现其功能。
知识点:
switchcase语句、dowhile语句。
模块四、bsbook.cpp、bsbook.h:
图书信息管理系统
实现:
定义book类,采用switchcase语句、dowhile语句、链表、文件流操作及调用函数backstage()实现其功能。
book类成员:
Booknumber、Bookname、BookID、Bookauther、Bookpublisher、Bookprice
增加图书信息调用insert()函数
修改图书信息调用revise()函数
删除图书信息调用del1()、del2()函数
打印图书信息调用print()函数
图书信息保存调用save()函数
从文件BookInformation.txt中读取信息,并转化成链表调用change()函数
知识点:
类定义、链表、文件流、switchcase语句、dowhile语句、cerr、getch()函数
1.cerr与cout的区别:
cerr与cout的主要区分就是,cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。
例如下面程序编译后生成test.exe
//test.cpp
#include
intmain()
{
cout<<"helloworld---cout"< cerr<<"helloworld---cerr"< return0; } 在命令行模式下键入下面的命令: test>>cout.txt 运行结果是: 在生成的cout.txt文件中输出了"helloworld---cout",同时在显示器上输出了"helloworld---cerr"也就是说cout的输出可以重定向到一个文件中,而cerr必须输出在显示器上。 2.conio.h头文件 conio.h不是C标准库中的头文件。 conio是ConsoleInput/Output(控制台输入输出)的简写,其中定义了通过控制台进行数据输入和数据输出的函数,主要是一些用户通过按键盘产生的对应操作, 比如getch()函数等等。 包含的函数 cgets(char*); cprintf(constchar*,...); cputs(constchar*); cscanf(constchar*,...); inp(unsignedshort); inpw(unsignedshort); getch(void); getche(void); kbhit(void); outp(unsignedshort,int); outpw(unsignedshort,unsignedshort); putch(int); ungetch(int); void_Cdeclclreol(void); void_Cdeclclrscr(void); void_Cdecldelline(void); ……………… 模块五、bspeople.cpp、bspeople.h: 会员信息管理系统 实现: 定义people类,采用switchcase语句、dowhile语句、链表、文件流操作及调用函数backstage()实现其功能。 people类成员: Peoplenumber、Peoplename、Password、grade 增加会员信息调用rinsert()函数 修改会员信息调用rrevise()函数 删除会员信息调用rdel1()、rdel2()函数 打印会员信息调用rprint()函数 会员信息保存调用rsave()函数 从文件PeopleInformation.txt中读取信息,并转化成链表调用rchange()函数 知识点: 类定义、链表、文件流、switchcase语句、dowhile语句、cerr 模块六、frontstage.cpp: 网站前台购书主界面 实现: 采用swithcase语句、dowhile语句及调用wait()、quit()、fsshopping()、函数实现其功能。 知识点: swithcase语句、dowhile语句。 模块七、fsshopping.cpp、person.h: 电子购书系统 实现: 定义person类、Tbook类、Tpeople类,采用switchcase语句、dowhile语句及调用wait()、quit()函数来实现其功能。 buyer类成员: name、buyerID、address、phonenumber、postnode 定义buyer为基类,另外定义layfolk类及member类分别继承基类buyer,基类中display()和setpay()采用抽象方法。 Tbook类成员: Booknumber、Bookname、BookID、Bookauther、Bookpublisher、Bookprice 定义Tbook类用来打开文件BookInformation.txt文件,读入网站图书信息并将客户所购图书写到其定义的一个链表中 Tpeople类成员: Peoplenumber、Peoplename、Password、grade 定义Tpeople类用来打开PeopleInformation.txt文件,读入会员信息 知识点: 类、链表、文件流操作,switchcase语句、dowhile语句、fflush(stdin)函数。 fflush(stdin)函数 清除前面信息. 例如 gets(a); fflush(stdin); gets(b); 如果没有用fflush(stdin); 那么gets(b); 就会默认把上一次输入后的"回车"作为结果输给b; stdin就是标准输入 std即standard(标准),in即输入,合起来就是标准 输入。 一般就是指键盘输入到缓冲区里的东西。 模块八、wait.cpp: 虚拟网站管理员登录等待状态 知识点: 采用函数: sleep() 作用: 延时,程序暂停若干时间z。 时间,就是他的参数,单位是毫秒。 需调用windows.h 例如: Sleep(500); 就是到这里停半秒,然后继续向下执行。 \b表示退一格 \b表示退一格\\表示转义字符\而-、/、|即表示-、/、| 块九、quit.cpp: 系统退出 当管理员或购书用户退出系统时将出现此界面 三、用户操作手册 1引言 1.1编写目的 1.2项目背景 1.3定义基本术语及定义——列出所用专用术语的定义和缩写词的原文 1.4参考资料(包括项目计划任务书、合同或批文;项目开发计划、需求规格说明书;概要设计说明书;详细设计说明书;测试计划等) 2软件概述 2.1目标 2.2功能 2.3性能——数据精确度、时间特性、灵活性(软件应付操作方式、运行环境等变化的适应能力) 3运行环境 3.1硬件环境 3.2支持软件——有关操作系统、编译系统或汇编系统、数据库管理系统的名称和版本号等信息。 3.3数据结构 4使用说明 4.1安装和初始化 4.2输入 4.2.1数据背景 4.2.2数据格式 4.2.3输入举例 4.3输入 4.3.1数据背景 4.3.2数据格式 4.3.3输出数据举例 4.4出错和恢复 4.5求助查询 5运行步骤说明 5.1运行表——列出每种可能的运行情况,说明其运行目的 5.2运行步骤 5.2.1运行控制 5.2.2操作信息——运行目的、操作要求、启动方式、预计运行时间、操作命令格式及说明、其它事项。 5.2.3输入/输出文件——文件的名称及编号、记录媒体、存放目录、文件的支配(说明确定保留或废弃文件的准则,分发文件的对象,占用硬件的优先级别和安全控制等) 5.2.4启动或恢复过程 6非常规过程——应急或非常规操作的必要信息和操作步骤和注意事项 7操作命令一览表 8程序文件和数据文件一览表 9用户操作举例 四、测试计划 1引言 1.1编写目的 通过预先得测试计划完成以下要求 (1)能否实现基本功能 (2)是否有在计划以外的错误出现 (3)尽量减少错误的出现 1.2项目背景 在完成了相应的整体设计及详细设计,需要对测试计划进行了相应的编写,以完成对无法预知的错误的排查,及是否能实现程序所要求的基本功能 1.3参考资料 软件工程导论【张海藩】,SE课程实践报告模板【邵堃】 2任务概述 2.1目标: 验证系统是否能正确实行基本功能 对输入数据的不同形式验证系统是否出错,尽量排查错误 2.2运行环境: VC++调试环境 2.3需求概述: 相关软件及相应的测试人员 2.4条件与限制: 要按照指定的输入方式输入 3计划 3.1测试方案 按照指定的功能要求一个个检验其输出结果,查看其内部文档,看是否发生错误 输入非指定字符,查看出错处理的结果 3.2测试项目 1.电子购书系统主界面 管理员登陆成功界面 三次输入姓名和密码有误系统登录失败界面 3.后台登陆成功主界面 3.1电子图书信息管理主界面 3.2增加图书界面 3.3电子图书修改主界面 3.4电子图书删除主界面 3.5按编号删除图书界面 3.6按书名删除图书界面 3.7打印所有图书信息界面 4前台登录主界面 4.1会员消费说明界面 4.2购书流程说明 4.3_1电子购书开始选书界面 4.3_2继续购书界面 4.3_3选书流程结束 4.3_4确认购买书目界面 4.3_5购书人账号登录界面 4.3_5_1svip会员登录完善信息界面 4.3_5_2普通会员登录完善信息界面 4.3_6确认订单信息界面 4.3_7选择付款方式界面 4.3_8提交订单,购书成功退出电子购书系统 4.4联系我们界面 5,为按指定输入输入: 如指定数字输入字符; 3.3测试准备 准备各种不同情况的可能数据 3.4测试机构与人员 编程人员,测试方案设计人员,需求分析人员,及模拟客户一人 4测试项目说明(按照顺序逐个对测试项目进行说明) 4.1测试项目名称和测试内容 2.电子购书系统主界面 查看主界面是否能正确显示 管理员登陆成功界面 登录界面功能是否能正确执行 三次输入姓名和密码有误系统登录失败界面 验证安全设置能否成功 3.后台登陆成功主界面 3.1图书信息管理主界面 能否正确显示书籍管理界面 3.2增加图书界面 能否成功添加图书 3.3图书修改主界面 能否成功修改数据 3.4图书删除主界面 3.5按编号删除图书界面 能否成功按编号形式删除 3.6按书名删除图书界面 能否成功以名删除图书 3.7打印所有图书信息界面 能否显示成功书籍信息同时验证前几项功能 4前台登录主界面 4.1会员消费说明界面 能否正确显示消费说明界面 4.2购书流程说明 能否正确显示流程购书说明书 4.3_1电子购书开始选书界面 能否进入选书界面 4.3_2继续购书界面 能够继续执行购书 4.3_3选书流程结束 选书流程能否正确执行 4.3_4确认购买书目界面 能否进行确认功能 4.3_5购书人账号登录界面 账号登录能否执行 4.3_5_1svip会员登录完善信息界面 功能能否实现
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 概要 详细 设计 文档
