软件工程网上商城项目详细设计说明书_第1页
软件工程网上商城项目详细设计说明书_第2页
软件工程网上商城项目详细设计说明书_第3页
软件工程网上商城项目详细设计说明书_第4页
软件工程网上商城项目详细设计说明书_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1引言 21.1 编写目的 21.2 背景 21.3 定义 21.4 参考资料 22 程序系统的结构 33 程序 1(标识符)设计说明 43.1 程序描述 43.2 功能 43.3 性能 43.4 输人项 43.5 输出项 53.6 算法 63.7 流程逻辑 63.8 接口 83.9 存储分配 83.10 注释设计 83.11限制条件 93.12 测试计划 93.13 尚未解决的问题 99 (标识符)设计说明 2 程序 4详细设计说明书1 引言1.1 编写目的该阶段开发以正式进入软件的实际开发阶段, 本阶段完成系统的详细设计并明确系统的数据结构 与软件结构。在软件设计阶段主要是把一个软件需求转

2、化为软件表示的过程, 这种表示只是描绘出软件的总的 概貌。 本详细设计说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌, 把它加工成 在程序细节上非常接近于源程序的软件表示。软件开发小组的每一位参与开发成员应该阅读本说明, 以清楚产品在技术方面的要求和实现策略, 本手册将进行技术评审和技术的可行性检查。1.2 背景说明:A. 软件系统的名称: BS 网上商城系统B. 任务提出者: BS 电子商务公司开发者: LEI_SKY 软件开发小组C. 本系统将是一个独立的系统,目前所产生的输出都是独立的本系统将使用 MySql 作为数据库的存储系统1.3定义A. .B/S ( Brower/Se

3、rver )B. .IIS 5.0 (In ternet In formation Server )C. .HTML ( Hypertext Markup Language,超文本标记语言)D. .CSS (Cascading Style Sheets,层叠样式表单)E. .JSP (Java Server Pages)1.4参考资料相关的文件包括:网上商城电子商务系统案例研究项目BS内部文件A.B.BS网上商城电子商务系统案例研究项目合同20110710 - 01C.BS网上商城电子商务系统案例研究项目可行性分析 参考资料:A. 国家标准软件需求说明书(GB856T 88);B. 网站开发项

4、目教程陈密方 中国铁道岀版社软件测试朱少名电子工业岀版社合同:A.BS网上商城电子商务系统案例研究项目合同20110710 - 012程序系统的结构前台功能模块商品查询商品展示商品购物商城公告用户管理订单查询新品上架特价商品销售排行购物车收银台会员注册会员登录会员资料图1 : BS网上商城前台功能结构图后台功能模块 会员修改用户管理类别管理产品管理订单管理统计分析退出系统订产类产产订单单品别品品删添修删查修除加改除看改会 员 删 除会员查看类别添加类别 修 改网站访问列表会 员 购 买 比 例 列 表图2: BS网上商城后台功能结构图3产品管理程序设计说明3.1程序描述产品管理程序功能的描述:

5、商品的种类信息,详细信息全部通过终端保存在数据库服务器,管理员可以对这些信息进行增加,修改和删除操作.软件应该提供对管理员的增加,修改和删除的操作。3.2功能系统名称BS网上商城模块名称产品模块模块编号T001作者XXX日期2011/7/16模块简述此模块用于对产品进行增加、修改、删除、搜索等调用模块添加、查看、修改、删除、搜 索模块被调用模块无输入项目一个指定产品的信息或添加一个新产品格式所有信息严格按照数据库中表的字段的数据类型填入处理当输入产品的信息通过系统调用查看、修改、添加、删除、搜查时,对 应的信息被数据库保存。当提交的信息不成功是,提示相应的处理并返回输出新产品被输入或者旧的产品

6、信息被新的产品信息所代替并保存在数据 库局部数据元素约束条件无注释涉及的表:产品信息表(Product)表1 :产品信息管理程序模块 IPO表3.3性能管理,会员,订单,商品(在输入产品信息时严格执行数据库表所要求的精度,在执行数据员)增加的时候,不允许岀现因为程序的原因导致增加操作失败,也不允许发生重复增加的数据 ;在执行数据删除操作的时候,不允许因为程序的原因发生多删除数据,删除失败的情况;数据的修改也要求保持对应的准确性 ;管理员输入的精度要求主要取决于数据库的相关数据类型要求:在数据库为系统管理员提供的多种视图中将有各类数据库对象的相关数据类型及精度要求。管理员工作过程中可以利用工具或

7、查询有关数据库对象的精度信息已决定输入的参数。如果管理员输入的参数与要求不符将得到提示并重新进行操作。用户输入精度的要求取决于相应功能所需参数的精度要求:用户浏览的页面内如果需要用户输入相关的信息或参数将给岀详细的数据类型说明,并且如果用户在非恶意的情况下输入了错误的数据类型参数,系统将自动提示用户再次输入正确的参数3.4输人项名称标识数据类型有效范围输入方 式输入媒体输入数据来源安全保密条件数量频度新产品varchar255手动输入键盘、 鼠标商城新产品无待定待定指定以 产品修 改varchar255手动输入键盘、 鼠标数据库 中也有 产品无待定待定指定以 产品删 除数据库 中已有 产品无待

8、定待定产品搜 索varchar255手动输入键盘、 鼠标数据库 中已有 产品无待定待定表2:输入项信息表3.5输出项名称 是否 添加是 新产 品产 品添 加界 面否是 是否 修改 产品 信息 产品 修改 界面否标识数据类型有效范围输岀方式输出媒体对应图 形符号 说明安全保密条件数量频度新产品被添加varchar255自动输出无待定待定对应产 品被修 改varchar255自动输出无待定待定对应产 品被删 除自动输出无待定待定对应产 品被搜 索varcharK255产品列表自动输出无待定待定表3:输出项信息表3.6算法产品添加算法:fun cti on check() Var selectedC

9、ategorydocume nt.formAdd.categoryld.opti on sdocume nt.formAdd.categoryld.selectedl ndex; var selectedValue = selectedCategory.value;2) if(二级分类不等于);请选择第二级分类!污牥?document.formAdd.categoryld.focus();return false; else 0; pid selectedCategory.value = 将二级分类的设为return true;多个产品一块删除算法:String idArray = reque

10、st.getParameterValues(id);if(idArray = n ull | idArra y.len gth = 0) );out.pri ntln(ID 号输入错误!return;public void delete(Stri ng idArray) Stri ng con diti on Str =where id in (;for (i nt i = 0; i idArra y.len gth; i+) con diti on Str += idArrayi;con diti on Str +=,;con diti on Str = con diti on Str.re

11、placeAll(.$,);/con diti on Str = con diti on Str.substr in g(0, con diti on Str.le ngth() - 1) + );System.out.pr intln(con diti on Str);dao.delete(c on ditio nStr);学资学习网3.7流程逻辑是否删除是产品产品删除界面否是是否上传产品上传界面否结束:产品模块流程图 7图3.8 接口丄用.m*比 主”册亠* 凸盯肾占 IBtlfir19Mb4MJ UgiOass*jTr厂If帕岂.卒肿興U.AmsaomsiaQiR鶴 JHH*4養斥社 护

12、廿 R-A If Si乍羊吕 BI丄哪图8 :产品模块界面与本程序关联的 Product表:杞位盍引“儷融垸器I谨项注记奠型长厦+遊位11允许空LL卜idirit110namevardur2550descrvarthr2550normalpricedouble00Amerrberprioedotible00pdatedatetime00ricategoryidint110图9: Product表信息图3.9存储分配本模块由及其自动分配内存。3.10注释设计1. 模块首部的注释:用户验证程序。MD52. 对调用函数的注释:调用加密函数3.11限制条件当系统第一次使用时,具有统一的用户ID和密码:

13、超级用户和 123456。在三次验证错误后,系统自动关闭。3.12测试计划对本单元进行单元测试。进行黑盒测试,检验能否实现功能。输入正确的条件,预期结果,输岀信息。输入错误的条件, 预期结果,无法输岀信息,提示输入正确条件。进行白盒测试,检验各程序路径是否能执行到。3.13尚未解决的问题需求中的问题在本设计中已经全部实现,但是,基于一般的考虑, 并且在开发工程中可能会岀现功能不完善或者是功能模块缺少的等工程或者后期版本中增加的功能包括:1、公告通知模块;2、统计分析模块;3、广告模块;/广告模块是整个网上商城系统中的盈利板块之一4、 完善个人信息空间;/增设空间留言、空间网页游戏、空间交友、产

14、品分享、购买心得等板块,这样可以增加用户的在线时间,收录更多的好 友,更加方便的了解产品的信息。4用户管理程序设计说明4.1程序描述用户管理程序功能描述:会员的信息全部通过终端保存在数据库服务器,管理员可以对这些信息进行增加 ,修改和删除操作.软件应该提供对会员的增加,修改和删除的操作;会员本身可以对自 身信息进行增加、查看、修改等功能4.2功能系统名称BS网上商城模块名称用户管理模块模块编号T002作者XXX日期2011/7/16模块简述此模块用于对用户信息进行查看、修改、删除等调用模块会员查看、修改、删除、搜索 模块被调用模块无输入项目会员的新信息或指定会员的信息格式所有信息严格按照数据库

15、中表的字段的数据类型填入处理当输入会员的信息通过系统调用查看、修改、添加、删除时,对应的信 息被数据库保存。当提交的信息不成功是,提示相应的处理并返回输出新会员被输入或者旧的会员信息被新的会员信息所代替并保存在数据库或会员信息被删除局部数据元素约束条件管理员通过后台登陆成功进入用户管理模块注释涉及的表:会员信息表(User)表4 :用户管理程序模块 IPO表4.3性能在输入会员信息时严格执行数据库表所要求的精度,在执行数据(商品,订单,会员,管理员)增加的时候,不允许岀现因为程序的原因导致增加操作失败,也不允许发生重复增加的数据;在执行数据删除操作的时候,不允许因为程序的原因发生多删除数据,删

16、除失败的情况;数据的修改也要求保持对应的准确性;管理员输入的精度要求主要取决于数据库的相关数据类型要求:在数据库为系统管理员提供的多种视图中将有各类数据库对象的相关数据类型及精度要求。管理员工作过程中可以利用工具或查询有关数据库对象的精度信息已决定输入的参数。如果管理员输入的参数与要求不符将得到提示并重新进行操作。用户输入精度的要求取决于相应功能所需参数的精度要求:用户浏览的页面内如果需要用户输入相关的信息或参数将给岀详细的数据类型说明,并且如果用户在非恶意的情况下输入了错误的数据类型参数,系统将自动提示用户再次输入正确的参数4.4输人项名称标识数据类型有效范围输入方 式输入媒体输入数据来源安

17、全保密条件数量频度会员查看varchar255手动输入键盘、 鼠标数据库 中的已 有会员会员信 息被严 格保密待定待定指疋 会员修 改varchar255手动输入键盘、 鼠标数据库 中已有 会员会员信 息被严 格保密待定待定指疋 会员删 除数据库 中已有 会员会员信 息被严 格保密待定待定表5:用户管理程序模块输入信息表4.5输出项名称标识 会员 删除数据类 型是有效范 围是 否删 除会 员输岀方 式输出媒 体对应图 形符号 说明安全保密条件数量频度会员信 息被输 出界面varchar255否自动输出会员信 息被严 格保密待定待定对应会 员信息 被修改varchar255结束自动输出会员信 息

18、被严 格保密待定待定对应会 员信息 被删除自动输出会员信 息被严 格保密待定待定表6:用户管理程序模块输出信息表4.6算法会员列表信息算法:f inal int PAGE_SIZE = 2; /每页显示多少条记录final int PAGES_PER_TIME = 10;/ 每次显示多少个页码链接 int pageNo = 1;Stri ng strPageNo = request.getParameter(pageNo);if (strPageNo != null & !strPageNo.trim().equals() try pageNo = In teger.parseI nt(str

19、PageNo); catch (NumberFormatExcepti on e) pageNo = 1;if (pageNo = 0)pageNo = 1;List users = new ArrayList();int totalRecords = User.getUsers(users, pageNo, PAGE_SIZE);int totalPages = (totalRecords + PAGE_SIZE - 1) / PAGE_SIZE;if (pageNo totalPages)pageNo = totalPages;%int start = (pageNo - 1) / PAG

20、ES_PER_TIME) * PAGES_PER_TIME + 1; for(int i=start; i totalPages) break;if(pageNo = i) %   a href=UserList.jsp?pageNo= 采用如上所示的分页算法。4.7流程逻辑会员列表是否添加是新会员会员添加界面否是是否修改会员信息会员修改界面图io:会员管理模块流程图4.8 接口* 1可谓* r=&K 上订 VI耳艸語 0 HiHHf -3 空世ian-BossiissrrwJ网SUlWlACATkJr134344454 56時:辺:驴砂 hiuc ga

21、 try 怙*m1世 支1 畫 awit: w.yi -用土宕-性和-:壬于吕打-waMU3 1/2wmz L/IjKFZ J_ QI 审 I I I I 学资学习网会员管理模块界面:11图与本程序关联的 User表:栏位索引imt廨岌器选项|述记长度1十进位允许空九idnt110 /usemamevgrcher400passwordvarchar出0phonevarchar恥0addrvarchar2550Tdatedate time00图12: User表的信息图4.9存储分配本模块由及其自动分配内存。4.10注释设计1. 模块首部的注释:用户验证程序。2. 对调用函数的注释:调用加密函数

22、MD54.11限制条件当系统第一次使用时,具有统一的用户ID和密码:超级用户和 123456。在三次验证错误后,系统自动关闭。4.12测试计划对本单元进行单元测试。进行黑盒测试,检验能否实现功能。输入正确的条件,预期结果,输岀信息。输入错误的条件, 预期结果,无法输岀信息,提示输入正确条件。进行白盒测试,检验各程序路径是否能执行到。4.13尚未解决的问题并且在开发工程中可基于一般的考虑,但是,需求中的问题在本设计中已经全部实现, 能会岀现功能不完善或者是功能模块缺少的等工程或者后期版本中增加的功能包括:1、公告通知模块;2、统计分析模块;3、广告模块;/广告模块是整个网上商城系统中的盈利板块之

23、一4、 完善个人信息空间;/增设空间留言、空间网页游戏、空间交友、产品分享、购买心得等板块,这样可以增加用户的在线时间,收录更多的好 友,更加方便的了解产品的信息。5订单管理程序设计说明5.1程序描述订单管理程序功能的描述:订单的信息全部通过终端保存在数据库服务器,管理员可以对这些信息进行增加,修改和删除操作.软件应该提供对订单的增加和删除的操作.;会员可以通过登录查看自己的订单信息及过去的交易记录5.2功能系统名称BS网上商城模块名称订单模块模块编号T003作者XXX日期2011/7/16模块简述此模块用于对订单进行查看、修改、删除等调用模块订单的查看、修改、删除模块被调用模块无输入项目产品

24、的订单列表信息格式所有信息严格按照数据库中表的字段的数据类型填入处理当订单的信息通过系统调用查看、修改、删除时,对应的信息被数据库 保存。当提交的信息不成功是,提示相应的处理并返回输出原订单信息被新的信息代替,并保存在数据库局部数据元素约束条件无注释涉及的表:订单信息表(SalesOrde)表7 :订单程序模块的IPO表5.3性能在执行数据(商品,订单,会员,管理员)增加的时候,不允许岀现因为程序的原因导致增加操作失败,不允许因为程序的原因发生多删除数:在数据库为系统管理员提供的管理员工作过程中可以利用工具或也不允许发生重复增加的数据;在执行数据删除操作的时候 据,删除失败的情况;数据的修改也

25、要求保持对应的准确性 管理员输入的精度要求主要取决于数据库的相关数据类型要求 多种视图中将有各类数据库对象的相关数据类型及精度要求。查询有关数据库对象的精度信息已决定输入的参数。如果管理员输入的参数与 要求不符将得到提示并重新进行操作用户输入精度的要求取决于相应功能所需参数的精度要求:用户浏览的页面内如果需要用户输入相关的信息或参数将给岀详细的数据类型说明,并且如果用户在非恶意的情况下 输入了错误的数据类型参数,系统将自动提示用户再次输入正确的参数5.4输人项名称标识数据类型有效范围输入方 式输入媒体输入数据来源安全保密条件数量频度订单查看varchar255手动输入键盘、 鼠标数据库 中的已

26、 有订单订单会 员信息 被严格 保密待定待定指疋 订单修 改varchar255手动输入键盘、 鼠标数据库 中已有 订单订单会 员信息 被严格 保密待定待定指疋 订单删 除数据库 中已有 订单订单会 员信息 被严格 保密待定待定表8:订单程序模块的输入项信息表5.5输出项名称标识数据类型有效范围输岀方式输出媒体对应图 形符号 说明安全保密条件数量频度订单信 息被输varchar255自动输出订单会 员信息待定待定出否 是否 修改 订单 修改被严格保密界是订 单状 态面否对应订单信息被修改varchar255订单列 表自动输出订单会 员信息 被严格 保密待定待定对应订 单信息 被删除 订单 明细

27、 界面是是否 查看 订单 明细自动输出订单会 员信息 被严格 保密待定待定表9:订单程序模块的输出向信息表5.6算法订单列表所用到的算法: 分页算法%Stri ng strPageNo = request.getParameter(page no);int pageNo = 1;if(strPageNo != null) pageNo = In teger.parse In t(strPageNo);if(pageNo %/get all the usersList orders = new ArrayList();int totalRecords = OrderMgr.getI nsta n

28、ce().getOrders(orders, pageNo, PAGE_SIZE);int totalPages = (totalRecords + PAGE_SIZE - 1) / PAGE_SIZE;if(pageNo totalPages) pageNo = totalPages;%按id进行展现算法:SalesOrder so = OrderMgr.get In sta nee ().lo adById(uid);public SalesOrder loadByld(int id) Connection conn = DB.getConn();Statement stmt = DB.g

29、etStatement(conn);ResultSet rs = null;SalesOrder so = null;try String sql = select salesorder.id, salesorder.userid, salesorder.odate, salesorder.addr, salesorder.status , +user.id uid, user.username, user.password, user.addr uaddr, user.phone, user.rdate from salesorder +join user on (salesorder.us

30、erid = user.id) where salesorder.id = + id;rs = DB.getResultSet(stmt, sql);if(rs.next() User u = new User();u.setId(rs.getInt(%uid);u.setAddr(rs.getString(%uaddr); u.setUsername(rs.getString(%username);u.setPassword(rs.getString(password);u.setPhone(rs.getString(phone); u.setRdate(rs.getTimestamp(da

31、te);so = new SalesOrder();so.setId(rs.getInt(id); so.setAddr(rs.getString(addr);so.setODate(rs.getTimestamp(odate);so.setStatus(rs.getInt(status);so.setUser(u); catch (SQLException e) e.printStackTrace(); finally DB.close(rs);DB.close(stmt);DB.close(conn);return so;学资学习网5.7流程逻辑结束图13:订单管理程序模块流程图二离胃片n

32、 订PIP*订卑蟻 r MH4W tttif5.8 接口ID dani3 bddr:占t 上1 EijnsJei null 网 1-W-1S 1 酬3912tDO甲涓爼 工甲搭产刘悶 #11 上一贡FT 斥负图14:产品模块界面表:salesorder与本程序关联 的.栏15 画外謹儒玻幕|孫而|牡记S类型点度允许空?“ 1idint11Qn /useridint11Caddr2550cdatetfetetne00ita+usmt110图15: salesorder表的信息图5.9存储分配本模块由及其自动分配内存。5.10注释设计1. 模块首部的注释:用户验证程序。2. 对调用函数的注释:调用

33、加密函数MD5。5.11限制条件当系统第一次使用时,具有统一的用户ID和密码:超级用户和123456。在三次验证错误后,系统自动关闭5.12测试计划对本单元进行单元测试。进行黑盒测试,检验能否实现功能。输入正确的条件,预期结果,输岀信息。输入错误的条件, 预期结果,无法输岀信息,提示输入正确条件。进行白盒测试,检验各程序路径是否能执行到。5.13尚未解决的问题需求中的问题在本设计中已经全部实现,但是,基于一般的考虑, 并且在开发工程中可能会岀现 功能不完善或者是功能模块缺少的等工程或者后期版本中增加的功能包括:、公告通知模块;1.2、统计分析模块;3、广告模块;/广告模块是整个网上商城系统中的

34、盈利板块之一4、完善个人信息空间;/增设空间留言、空间网页游戏、空间交友、产品分享、购买 心得等板块,这样可以增加用户的在线时间,收录更多的好友,更加方便的了解产品的信息。6类别管理程序设计说明6.1程序描述类别管理程序功能的描述:商品的种类信息,详细信息全部通过终端保存在数据库服务器,管理员可以对这些信息进行增加,修改和删除操作.软件详细展示商品的类别信息。并且商品的添加必 须在二级子类别及以下添加。6.2功能系统名称BS网上商城模块名称类别管理模块模块编号T001作者XXX日期2011/7/16模块简述此模块用于对类别进行查看、增加、修改、删除等调用模块添加、查看、修改、删除模块被调用模块

35、无输入项目一个指定类别的信息或输入一个 新的类别格式所有信息严格按照数据库中表的字段的数据类型填入处理当输入产品的类别信息通过系统调用查看、修改、添加、删除时,对应 的信息被数据库保存。当提交的信息不成功是,提示相应的处理并返回输出新产品类别被输入或者旧的产品类别信息被新的产品类别信息所代替 并保存在数据库局部数据元素约束条件无注释涉及的表:类别表(Category)表10:类别管理程序模块的IPO表6.3性能在输入产品信息时严格执行数据库表所要求的精度,在执行数据(商品,订单,会员,管理员)增加的时候,不允许岀现因为程序的原因导致增加操作失败,也不允许发生重复增加的数数;删除失败的情况,不允

36、许因为程序的原因发生多删除数据,在执行数据删除操作的时候;据据的修改也要求保持对应的准确性;管理员输入的精度要求主要取决于数据库的相关数据类型要求:在数据库为系统管理员提供的多种视图中将有各类数据库对象的相关数据类型及精度要求。管理员工作过程中可以利用工具或查询有关数据库对象的精度信息已决定输入的参数。如果管理员输入的参数与要求不符将得到提示并重新进行操作。用户输入精度的要求取决于相应功能所需参数的精度要求:用户浏览的页面内如果需要用户输入相关的信息或参数将给岀详细的数据类型说明,并且如果用户在非恶意的情况下输入了错误的数据类型参数,系统将自动提示用户再次输入正确的参数6.4输人项名称标识数据类型有效范围输入方 式输入媒体输入数据来源安全保密条件数量频度新产品类别varchar255手动输入键盘、 鼠标商品新类别无待定待定指定以 产品修 改varchar255手动输入键盘、 鼠标数据库 中已有 产品类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论