二手书交易系统详细设计.docx

上传人:b****6 文档编号:7149657 上传时间:2023-01-21 格式:DOCX 页数:24 大小:429.34KB
下载 相关 举报
二手书交易系统详细设计.docx_第1页
第1页 / 共24页
二手书交易系统详细设计.docx_第2页
第2页 / 共24页
二手书交易系统详细设计.docx_第3页
第3页 / 共24页
二手书交易系统详细设计.docx_第4页
第4页 / 共24页
二手书交易系统详细设计.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

二手书交易系统详细设计.docx

《二手书交易系统详细设计.docx》由会员分享,可在线阅读,更多相关《二手书交易系统详细设计.docx(24页珍藏版)》请在冰豆网上搜索。

二手书交易系统详细设计.docx

二手书交易系统详细设计

 

二手书交易系统详细设计

二手书交易平台

详细设计报告

学院:

信息与软件工程学院

班级:

软件工程一班

学号:

201421220101

姓名:

唐海洋

 

2014年11月04日

·1引言

·1.1编写目的

编写本说明书的目的在于对在本阶段中对系统所做的所有

详细设计进行说明。

本文档供项目经理、设计人员、开发人员、测试人员参考。

·1.2背景

开发软件名称:

XX二手书交易系统

项目任务提出者:

项目开发者:

用户:

运行软件的中心:

本系统采用B/S,采用Tomcat服务器作为操作系统的工作站,采用Mysql5.0作为开发软件的数据库服务程序。

·1.3定义

B/S:

全称Browser/Server,即浏览器/服务器。

·1.4参考资料

1.《详细设计说明书》(GB8567-88)

2.编号:

oldbook’strade_kexingxingfenxi《二手书交易系统可行性分析报告》

3.编号:

oldbook’strade_xuqiufenxi《二手书交易系统需求分析报告》

4.编号:

oldbook’strade_gaiyaosheji《二手书交易系统概要设计说明书》

5.《软件工程导论》张海藩,清华大学出版社

6.《软件项目管理》郭宁,清华大学出版社

2程序系统的结构

图1系统程序功能层级图

表1程序功能与模块的关系

会员登录

购物车

订单

会员信息

管理员登陆

图书信息

检索图书

加入购物车

提交订单

修改会员信息

查询订单

修改图书信息

维护图书信息

录入图书信息

冻结会员

解冻会员

订单处理

用户:

1.检索图书(SelectBook):

根据书籍的书名、作者、ISBN、版本等信息,调用书籍信息模块进行检索;

图2检索图书程序

2.修改会员信息(UserInfo):

需要会员登录,可以修改会员的所有信息,包括学号、姓名、密码、专业等等,以保证会员的信息正确性;

图3修改会员信息程序

3.加入购物车(ShopCart):

需要会员登录,调用购物车模块和图书信息模块,将选购的图书加入购物车,方便对图书的统一管理;

图4加入购物车程序

4.提交订单(Order):

需要会员登录,调用购物车模块和图书信息模块,获得购物车中图书信息信息,以及用户地址、联系方式等信息,然后提交订单,调用订单模块生成订单;

图5提交订单程序

5.查询订单(OrderItem):

需要会员登录,调用订单模块,列出订单的订单号、地址、金额等信息;

图6查询订单程序

管理员:

6.录入图书信息(UpdateBookInfo):

需要管理员登陆,调用图书信息模块,将新购的图书信息录入,包括书名、作者、ISBN、版本等信息;

图7录入图书信息程序

7.修改图书信息(ChangeBookInfo):

需要管理员登陆,调用图书信息模块,对图书信息进行修改,包括书名、作者、ISBN等信息;

图8修改会员信息程序

8.维护图书信息(BookInfo):

需要管理员登陆,调用图书信息模块,记录并维护新购入和已卖出的图书信息;

图9维护图书信息程序

9.处理订单(ProcessOrder):

需要管理员登陆,调用订单模块,处理会员提交的订单信息,

图10处理订单程序

10.冻结会员(FreezeUser):

需要管理员登陆,调用会员信息模块,会员有不良交易记录,需要冻结会员一段时间,使其不能继续交易;

图11冻结会员程序

11.解冻会员(UnfreezeUser):

需要管理员登陆,调用会员信息模块,当会员的冻结时间到了之后就需要解冻会员,使其可以正常交易;

图12解冻会员程序

3会员购书程序设计说明

3.1程序描述

本程序包括会员检索图书、加入购物车、提交订单三个子模块,这三个模块是有着前后的逻辑顺序,即后面的以前面的为基础,其目的是为了实现会员买书的功能。

本程序的特点是非常驻内存、是子程序、不可重人的、无覆盖要求、是顺序处理。

3.2功能

 

图13会员购书程序IPO图

1.检索图书模块输入的是图书关键字信息(书名,作者,ISBN等等),然后经过系统对数据库查找,输出与之匹配的图书信息。

2.在会员检索图书之后,需要对购买的图书加入购物车,以便于对图书信息统一管理,这个过程由系统处理,然后输出的就是购物车图书信息。

3.会员在完成检索图书、加入购物车模块之后,系统将图书信息和会员基本信息绑定生成订单信息,以方便管理员的统一操作。

3.3性能

3.3.1精度

查询图书请求信息:

文本

有关价格信息:

货币人民币,数字保留小数点后两位

有关日期信息:

年/月/日格式

输出信息全部为文本信息。

3.3.2时间特性要求

用户检索,系统及时响应(<=3s)。

加入购物车,系统响应时间(<=3s)

用户提交订单,系统及时处理(<=3s)。

3.3.3灵活性

1.操作方式上的变化:

用户可以根据关键字对图书信息进行模糊查询。

2.同其他软件的接口的变化:

数据库接口发生变化时,修改相应的模式接口,以保证页面显示不变。

3.精度和有效时限的变化:

订单如果一周内不被签收,撤回订单。

4.计划的变化或改进:

对业务要求的变化,团队统一讨论、修改、确定并执行。

3.4输入项

表2会员购书程序输入项

名称

标识

格式类型

有效范围

输入方式

数量频度

输入媒体

数据来源

安全保密

书名

bookName

Varchar

长度不超过20

系统生成

加入购物车之前

系统

系统生成

书号

Isbn

Varchar

长度不超过20

系统生成

加入购物车之前

系统

系统生成

作者

author

Varchar

长度不超过20

系统生成

加入购物车之前

系统

系统生成

出版社

publish

Varchar

长度不超过20

系统生成

加入购物车之前

系统

系统生成

出版日期

publishDate

Date

2000年以后到现在日期

系统生成

加入购物车之前

系统

系统生成

价格

price

Float

0.00~100.00

系统生成

加入购物车之前

系统

系统生成

分类

separate

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

图片号

picture

Varchar

手动输入

每次输入

键盘

手动输入

用户地址

location

Varchar

长度不超过20

手动输入

生成订单之前

手动输入

手动输入

联系方式

telephone

Varchar

长度不超过20

手动输入

生成订单之前

手动输入

手动输入

3.5输出项

表3会员购书程序输入项

名称

标识

格式类型

有效范围

输出方式

数量频度

输出媒体

输出图形符号说明

安全保密

书名

bookName

Varchar

长度不超过20

系统生成

检索图书之后

系统

作者

author

Varchar

长度不超过20

系统生成

检索图书之后

系统

出版社

publish

Varchar

长度不超过20

系统生成

检索图书之后

系统

出版日期

publishDate

Date

2000年以后到现在日期

系统生成

检索图书之后

系统

分类

separate

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

图片号

picture

Varchar

手动输入

每次输入

键盘

手动输入

价格

price

Float

0.00~100.00

系统生成

检索图书之后

系统

用户地址

location

Varchar

长度不超过20

系统生成

提交订单之后

系统

联系方式

Telephone

Varchar

长度不超过20

系统生成

生成订单之后

系统

3.6算法

无特殊算法

3.7流程逻辑

 

图14会员购书流程图

以上流程图是会员购书流程,会员首先登录系统,然后进入首页检索图书,可以按照书籍的关键字信息(书号、书名、作者、ISBN)查找图书,然后将要购买的图书加入购物车,然后如果想继续购书可以重复上面的操作,如果会员已经买够了,最终将订单提交,交由管理员处理。

3.8接口

表4检索图书

执行条件

输入检索内容,书名、作者、ISBN、版本等

属性

Stringmessage;

DBConnectiondb;

方法

PublicvoidSeek(Stringmessage)

{db.executeQuery(message);}

表5加入购物车

执行条件

选择订购图书

属性

StringbookId,bookName,;

doubleprice,allBooksPrice;

intamount;

ShoppingCartshoppingCart;

方法

publicvoidaddBooks(StringbookId,StringbookName,doubleprice,intamount){

}

publicvoiddeleteBooks(StringbookId){

}

publicvoidchangeAmount(StringbookId,intamount){

}

publicdoublegetAllBooksPrice(){

returnthis.allGoodsPrice;

}

publicvoidclearShoppingCart(){

this.allGoodsPrice=0;

}

表6提交订单

执行条件

确认选购图书的信息

属性

Stringusername;

Stringtelephone;

Stringaddress;

ShopCartshopcart;

方法

Publicvoidaddorder(ShopCartshopcart,Stringusername,Stringtelephone,Stringaddress)

{}

a.“检索图书”模块界面接口如图1所示

图15会员检索图书界面

b.“加入购物车”模块界面接口如图2所示

图16加入购物车界面

c.“提交订单”模块界面接口如图3所示

图17会员提交订单界面

各个模块与主模块会员购书模块及其他模块的关系如图所示:

图18模块关系图

以上三个模块与主模块及其他模块的关系如下:

a.检索图书模块

①直接被主模块会员购书模块调用,生成图书检索页面,用户在文本框中输入检索内容,页面显示图书信息;

②该模块通过链接调用加入购物车模块,用户把需要购买的图书加入购物车。

b.加入购物车模块

①通过检索模块被主模块调用,把图书信息添加到购物车;

②该模块调用提交订单模块,用户把购物车中的图书作为订单提交。

c.提交订单模块

①通过购物车模块被主模块调用,用户修改确认订单信息后,点击提交按钮提交订单。

3.9存储分配

无特殊要求

3.10注释设计

为每一个类编写类注释,说明本该类的作用、使用方法、作者列表、当前版本和完成时间、参考类;

为每一个方法编写方法注释,说明该方法的作用、输入参数的作用和取值范围、返回值、抛出的异常;

为每一个属性编写属性注释,说明其作用、取值范围、注意事项,为局部变量编写行末注释;

对使用的循环、分支、抛出异常块编写注释,说明该逻辑实现的功能。

3.11限制条件

a.检索图书信息

1.输入的检索信息不能为空;

2.输入的图书书号(isbn)必须是字符,不超过20位,不能为空,且不能与数据库中其他书号重复;

3.输入的图书名字(bookName)必须是字符,不超过20位,不能为空;

4.输入的图书作者(author)必须是字符,不能为空;

5.输入的出版社(publish)必须是字符,不超过20位,不能为空。

b.提交订单

订单中图书数量不能为0。

3.12测试计划

a.测试技术要求

1.进行人工静态检查,保证代码的逻辑正确性、清晰性、规范性、一致性;

2.进行动态测试,通过设计测试用例,执行待测程序来跟踪比较实际结果与预期结果来发现错误或缺陷。

b.检索图书

1.测试搜索框的输入数据长度是否符合3.11中的规定,如果有不符合,提示该项“**必须在**长度内”,若符合,则满足要求;

2.测试搜索框的内容是否为空,若为空,提示“该框不能为空”,若不为空,则满足要求。

c.提交订单

测试订单中图书数量是否为0,若为0,提示“图书数量不能为0”,若大于0,则满足要求。

3.13尚未解决的问题

4管理员管理图书信息程序设计说明

4.1程序描述

本程序设计说明仅以“图书管理模块”为例说明如何书写程序设计说明,其他模块可参考本设计说明。

“图书管理模块”用于图书信息录入、维护和修改。

管理员登陆是本模块执行的前提,只有管理员登陆之后才有权对图书信息进行管理。

4.2功能

图19管理员管理图书程序的IPO图

图书信息修改的功能是修改图书的书号(isbn)、书名(bookName)、作者(author)、出版社(publish)、出版日期(PublishDate)、价格(price)、分类(separate),图片(picture),检查格式更新数据库后显示成功更新数据库。

图书信息录入的功能是把图书信息录入数据库,然后显示成功插入数据库提示信息。

维护图书信息即对新买入和已卖出的图书信息进行记录。

4.3性能

4.3.1精度

有关价格信息:

货币人民币,数字保留小数点后两位

有关日期信息:

年/月/日格式

图书中其他的信息:

文本

4.3.2时间特性要求

图书信息修改模块占用图书数据库时间<3s

4.3.3灵活性

当图书缺少数据库里给出的图书属性时,可默认为缺省值

4.4输人项

表7输入图书信息表

名称

标识

格式类型

有效范围

输入方式

数量频度

输入媒体

数据来源

安全保密

书号

isbn

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

书名

bookName

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

作者

author

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

出版社

publish

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

出版日期

publishDate

Date

由Date的类型决定

手动输入

每次输入

键盘

手动输入

价格

Float

保留小数点后两位

0.00~100.00

手动输入

每次输入

键盘

手动输入

分类

separate

Varchar

长度不超过20

手动输入

每次输入

键盘

手动输入

图片号

picture

Varchar

手动输入

每次输入

键盘

手动输入

4.5输出项

以JSP网页的形式显示输出项

A在修改图书信息程序中,当修改图书信息成功时,显示“修改数据成功”,并显示修改的图书信息

B在录入图书信息程序中,当录入图书信息成功时,显示“插入数据成功”,并显示录入图书信息

4.6算法

4.7流程逻辑

图19管理员管理图书模块的流程逻辑图

4.8接口

表8修改图书信息

执行条件

修改图书信息

属性

Stringsql;

DBConnectiondb;

方法

PublicvoidModifyBookInfo(Stringsql)

{db.executeUpdate(sql);

}

表9录入图书信息

执行条件

录入新购的图书信息

属性

Stringsql;

DBConnectiondb;

方法

PublicvoidInsertBookInfo(Stringsql)

{db.executeUpdate(sql);

}

a.“修改图书信息”模块界面接口如下图所示

图20修改图书信息界面

b.“录入图书”模块界面接口如下图所示

图21录入图书信息界面

修改图书信息模块与主模块及其他模块的关系如下:

1模块直接被主模块管理员管理图书模块调用,生成窗体,供用户输入数据使用。

2该模块直接调用数据库连接模块,取得数据库连接。

录入图书信息模块与主模块及其他模块的关系如下:

1模块直接被主模块管理员管理图书模块调用,生成窗体,供用户输入数据使用。

2该模块直接调用数据库连接模块,取得数据库连接。

4.9存储分配

无特殊要求

4.10注释设计

a.加在程序单元首部,说明本程序的作用。

b.对程序中的变量代表的意思、范围进行注释。

c.对程序中的函数或过程所起的作用进行注释。

4.11限制条件

a.修改图书信息

1.输入项中图书书号(isbn)必须是字符,不超过20位,不能为空,且不能与数据库中其他书号重复;

2.输入项中图书名字(bookName)必须是字符,不超过20位,不能为空;

3.输入项中图书作者(author)必须是字符,不能为空;

4.输入项中出版社(publish)必须是字符,不超过20位,不能为空;

5.输入项中出版日期(PublishDate)必须是Date类型,不能为空;

6.输入项中价格(price)必须是Float类型,小数点保留两位,不能为空。

b.录入图书信息

1.输入项中图书编号(id)必须是字符类型,不超过20位,不能为空,且不能与数据库中其他编号重复;

2.输入项中图书书号(isbn)必须是字符,不超过20位,不能为空,且不能与数据库中其他书号重复;

3.输入项中图书名字(bookName)必须是字符,不超过20位,不能为空;

4.输入项中图书作者(author)必须是字符,不超过20位,不能为空;

5.输入项中出版社(publish)必须是字符,不超过20位,不能为空;

6.输入项中出版日期(PublishDate)必须是Date类型,不能为空;

7.输入项中价格(price)必须是Float类型,小数点保留两位,不能为空。

4.12测试计划

a.修改图书信息

1.若图书书号与数据库中其他书号重复,则提示“书号重复,请重新填写”,若不重复,则满足要求;

2.分别测试所有输入框的输入数据长度是否符合3.11中的规定,如果有不符合,提示该项“**必须在**长度内”,若符合,则满足要求;

3.分别测试所有输入框是否为空,若为空,提示“该框不能为空”,若不为空,则满足要求;

4.若出现写数据库错误,则提示无法连接的具体原因。

若无,则满足要求。

b.录入图书信息

1.若图书编号与数据库中其他编号重复,则提示“编号重复,请重新填写”,若不重复,则满足要求;

2.若图书书号与数据库中其他书号重复,则提示“书号重复,请重新填写”,若不重复,则满足要求;

3.分别测试所有输入框的输入数据长度是否符合3.11中的规定,如果有不符合,提示该项“**必须在**长度内”,若符合,则满足要求;

4.分别测试所有输入框是否为空,若为空,提示“该框不能为空”,若不为空,则满足要求;

5.若出现写数据库错误,则提示无法连接的具体原因。

若无,则满足要求。

4.13尚未解决的问题

 

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

当前位置:首页 > 高等教育 > 其它

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

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