您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 网上书店-_软件工程课程设计报告
1摘要:随着网络信息的发展,网络在人们生活中的应用越来越广泛。人们越来越想在最短的时间内购买到自己所需的图书。但书目的繁多,给人们在繁忙的工作生活中购书带来了很大的麻烦,于是网上购书便成了人们向往的事情,此系统的开发为人们带来了很大的方便,使他们足不出户就可以轻轻松松地买到自己想要的书,既省时又省力。在电子商务网站中,网上书店是目前应用最广、最成功的典范之一。通过它用户可以在网络上通过Internet,突破时间和空间的限制而实现网上购书。网上书店的崛起对传统的图书流通体系产生了强烈的冲击,有效地缩短了图书流通发行环节,将广大读者、图书、出版者、发行者紧密地结合在一起,大大提高了图书流通率。它有着经营成本低、库存是虚拟的、用户检索方便、地域限制少等特点。本系统运用面向对象技术、UML及可视化的建模工具RationalRose2007及2003完成系统的需求分析与设计。并且以JSP为主要制作工具,实现了用户登陆、验证身份及用户数据的采集、书籍的预览查询、对书籍的购买通过购物车实现。关键词:网上书店,面向对象,RationalRose一、课程设计的目的与要求通过软件开发的实践训练,使学生进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下:1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;2.熟悉自动化的软件开发工具RationalRose,并将其运用于软件开发的全过程;3.进一步加强和提高软件工程文档的编写能力;4.培养协作能力和团队精神。2二、设计正文1.概述1.1课题描述随着网络信息的发展,网络在人们生活中的应用越来越广泛。人们越来越想在最短的时间内购买到自己所需的图书。但书目的繁多,给人们在繁忙的工作生活中购书带来了很大的麻烦,于是网上购书便成了人们向往的事情,此系统的开发为人们带来了很大的方便,使他们足不出户就可以轻轻松松地买到自己想要的书,既省时又省力。1.2系统目标网上书店既可以避免书目订货的局限和盲目,又可以克服看样订货投入大,费用高,管理难的不足,而且网上选择范围广能直观看样,可浏览内容,可随时添订,结算及时,快捷方便,周转高速。这些优势是其它交易方式难以达到的。图书网上交易是图书销售领域未来发展之必然,也是出版发行业摆脱困境,建立新的流通渠道,繁荣出版,繁荣市场的必由之路。1.3环境a)操作系统:Windows7,WindowsXP,Vistab)使用软件:代码编写:JSP数据库:MYSQL建模工具:RationalRose文档编写:MicrosoftWord2007.c)开发语言:JSP,JAVA2.系统需求分析网上书店是一种高质量,更快捷,更方便的购书方式。网上书店不仅可用于图书的在线销售,也有音碟、影碟的在线销售。而且网站式的书店对图书的管理更加合理化,信息化。售书的同时还具有书籍类商品管理、购物车、订单管理,非常灵活的网站内容和文章管理功能。根据宾馆的具体情况,系统的主要功能包括:1.用户功能:(1)注册功能:注册、登录、退出、个人管理(2)图书选购:浏览图书、购物车得管理(3)订单的管理:查看订单、修改订单、撤销订单2.管理员功能:(1)登录(2)用户管理:删除用户、查询用户(3)图书管理:添加图书、删除图书、修改图书、查询图书3(4)订单管理:查询订单、确认订单、删除订单2.1用例图a)管理者用例:1.登录:管理员登录。图表a.1管理者登录用例图2.订单管理:包括对订单的增加删除以及查询订单功能。图表a.2管理者对订单管理用例图3.图书管理:对图书的查询(通过年份、书名、作者查询)、删除、添加以及对图书的修改。4图表a.3管理者对图书管理用例图.4.用户管理:对用户的查询,删除用户。图表a.4管理者对用户管理用例图b)客户用例图1.登录:用户登录。5图表b.1客户登录用例图2.订单管理:让用户可以对自己订单进行查看、撤销、订单的查询、订单的日期查询、修改订单等等。图表b.2客户对订单管理用例图3.图书选购:通过刘丹图书的信息,当需要购买时创建购物车,通过购物车来进行对图书进行浏览、删除以及订单的生成和数量的修改等等。6图表b.3客户图书选购用例图4.注册:用户的注册。图表b.4客户注册用例图2.2类图系统采用MVC三层架构,另将数据库操作提取为单独一层。a)视图层:控制用户界面,及用户与系统的交互,此处省略。b)控制器层:控制具体业务。PersonRrcControl:控制管理员及前台人员。UserAction:用户进行对网页的浏览以及对图书的选购。AdminAction:图书管理者对用户订单的处理。7图表1控制层类图c)业务逻辑层:包括登录,图书管理以及订单处理等等。8图表2业务逻辑层类图d)持久层:控制数据库的增删查改操作。图表3持久层类图系统中用到的所有模型类图如下:Manager:系统管理员,字段包括管理者得等级。User:用户,字段包括用户身份姓名、密码。Order:订单,字段包括订单号、订单人的姓名、订单的花费、订购人的手机号、订单的日期、订单的状态。Book:图书信息,字段包括图书号、图书名、作者名、图书价钱、图书的类型、图书的简介、图书的出版日期。9图表4模型类图2.3顺序图a)管理者进行登录:管理者通过进行登录的动作响应(LoginAction),并且调用了登录服务函数(LoginService),通过姓名密码来对Person类进行核对来确定是否成功登录。10图表a管理者进行登录顺序图b)管理者对图书管理:这个顺序图里,由于功能较多用BookService()函数来进行查询图书、删除图书、添加图书、修改图书等等来进行对图书的管理,最后更行了BookDao。11图表b登录者对图书管理顺序图c)用户订单处理:用户通过UserAction进行对图书的查找,并且通过OrderService来进行对需要的图书加入购物车,进行对图书的修改等等,最终确定订单后对OrderDao进行结账。12图表c用户订单处理顺序图3.系统总体设计系统模块图:13网上书店用户系统管理员系统注册登录图书选购订单管理注册登录退出浏览图书购物车管理选购图书修改订单撤销订单查看订单登录用户管理图书管理订单管理个人管理密码修改删除用户添加图书删除图书修改图书查询图书确认订单删除订单查询用户查询订单删除物品修改数量查看详细信息查看详细信息生成订单143.1设计数据管理子系统用户表:User(username,password)管理员表:Admin(adminname,adminpsw)书籍表:Book(bookid,bookname,bookauthor,price,publish,publishtime,serialnum,info)订单表:Orders(orderid,username,ordernum,expense,address,phonenum,ordertime);3.2设计人机交互子系统1)管理者登录页面:2)管理员添加书籍界面:3)用户浏览图书页面154)购物车页面164.详细设计5.系统实现1)购物车类importjava.util.*;importcom.my.bookstore.model.BookpublicclassShoppingCart{MapBook,IntegeritemMap=newHashMapBook,Integer();doubleprice=0;publicShoppingCart(){}publicvoidupdatePrice(){price=0;IteratorBookit=itemMap.keySet().iterator();while(it.hasNext()){Bookb=it.next();price=price+b.getPrice();}}publicvoidaddItem(Bookbook){访问首页点击购物按钮进入ShoppingAction检查Session创建Shopcart添加图书浏览购物车不存在购物车存在17if(itemMap.containsKey(book)){intnum=itemMap.get(book);itemMap.put(book,num+1);}else{itemMap.put(book,1);}updatePrice();}publicvoidremoveItem(Bookbook){itemMap.remove(book);updatePrice();}publicvoidprint(){IteratorBookit=itemMap.keySet().iterator();while(it.hasNext()){Bookb=it.next();System.out.println(b.getBookname()+:+itemMap.get(b));}}}2)购物车ActionpublicclassShopcartActionextendsActionSupport{intbookid;Stringcommand;BookServicebookService=newBookService();@OverridepublicStringexecute()throwsException{//TODOAuto-generatedmethodstub/*additem*/HttpSessionsession=ServletActionContext.getRequest().getSession();if(command.equals(show)){ShoppingCartcart=(ShoppingCart)session.getAttribute(cart);if(cart==null){cart=newShoppingCart();session.setAttribute(cart,cart);}}if(command.equals(add)){ShoppingCartcart=(ShoppingCart)session.getAttribute(cart);18if(cart==null){cart=newShoppingCart();cart.addItem(getBookService().getBookById(getBookid()));session.setAttribute(cart,cart);}else{cart.addItem(getBookService().getBookById(getBookid()));session.setAttribute(cart,cart);}}/*deleteitem*/if(command.equals(delete)){ShoppingCartcart=(ShoppingCart)session.getAttribute(cart);cart.removeItem(bookService.getBookById(bookid));}returnSUCCESS;}}6.测试1)测试管理员登录:Admin登录成功界面2)测试管理员添加书籍1.管理员进入添加书籍界面,输入书籍信息。192.数据库变化3.首页变化3)测试用户点击购买按钮1.用户在首页点击购买按钮后进入购物车界面,用例中用户购买了设计模式。2.用户返回首页继续选择书籍。20三、课程设计总结或结论通过这次课设,我们通过了市场调研以及从网上收集信息我们知道了JSP网上书店,包括其他类型的网上书店,都是电子商务的传统的应用。电子商务是计算机网络的又一次的革命,旨在通过电子手段建立一种新的经济次序,它不仅涉及电子技术和商业交易本身,而且涉及到诸如金融、税务、教育等社会其他层面。从微观角度说,电子商务是指各种具有商业活动能力的实体(生产企业、商贸企业、金融机构、政府机构、个人消费等)利用网络和先进的数字化传媒技术进行的各项商业贸易活动,这里要强调两点:一是活动要有商业背景;一是网络
本文标题:网上书店-_软件工程课程设计报告
链接地址:https://www.777doc.com/doc-5084006 .html