首页 《软件工程》网上购物系统设置

《软件工程》网上购物系统设置

举报
开通vip

《软件工程》网上购物系统设置《软件工程》大型作业题目:**网上购物系统设计设计成员:*****班级:*****  指导教师:*****时间:2008年5月25日目录4第一章需求分析41引言41.1编写目的41.2背景71.3定义91.4参考资料92任务概述92.1目标92.2用户的特点102.3假定和约束103需求规定103.1对功能的规定113.2对性能的规定133.3安全可靠性153.4数据管理能力要求153.5故障处理要求164运行环境规定164.1运行环境:164.2运行环境要求164.3开发工具简述174.4用户界面174.5硬件接...

《软件工程》网上购物系统设置
《软件工程》大型作业题目:**网上购物系统设计设计成员:*****班级:*****  指导教师:*****时间:2008年5月25日目录4第一章需求分析41引言41.1编写目的41.2背景71.3定义91.4参考资料92任务概述92.1目标92.2用户的特点102.3假定和约束103需求规定103.1对功能的规定113.2对性能的规定133.3安全可靠性153.4数据管理能力要求153.5故障处理要求164运行环境规定164.1运行环境:164.2运行环境要求164.3开发工具简述174.4用户界面174.5硬件接口174.6软件接口18第二章详细设计181:该系统的总用例图如下:181.1、用户登陆时序图191.2、管理员和客户的信息交流时序图192、该系统的角色的用例:192.1、网上购物系统的用例202.2、加入购物车时序图212.3、从购物车中删除商品的时序图212.4、浏览购物车中的商品222.5、结帐时序图232.6、浏览店内的商品233、网上购物构件图244、网上购物类图245、网上购物状态图256、网上购物购物车活动图256.1、结帐状态图256.2、浏览商品状态图266.3、网上购物首页状态图267、网上购物的协作图268、网上购物的部署图27第三章系统的实现273.1系统实现使用的技术283.2数据库连接:293.3JavaBean在系统中的体现:323.4Servlet在系统中的体现:35第四章系统测试354.1编写目的、背景及意义354.2测试概要354.3测试结果及发现354.3.1功能测试364.3.2测试用例364.4对软件功能的结论364.5分析摘要364.5.1能力374.5.2缺陷和限制374.5.3建议374.5.4评价374.6测试资源消耗38第五章用户 手册 华为质量管理手册 下载焊接手册下载团建手册下载团建手册下载ld手册下载 385.1引言385.1.1编写目的385.1.2背景及范围385.1.3定义385.1.4参考资料385.2运行环境的要求385.2.1支持软件395.2.2硬件环境395.3软件的描述395.3.1目标及作用范围395.4使用过程405.4.1安装与初始化过程405.4.2输入415.4.3输出42总结第一章需求分析1引言信息社会的高科技,商品经济化的高效益,随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,电子商务已经成为网上的一股潮流。我们相信要不了太长有时间,顾客就可以在网络世界上获得他们在现实世界上可以获得的所有商品和服务。1.1编写目的恩施作为一个正在发展的城市,铁路、高速公路即将通车。闭塞的恩施马上就要应来一个全新的世界,特别是信息产业的加速发展。为了适应时代潮流和恩施的发展,我们设计了本系统----恩施网上购物系统.本文是网上购物模拟系统的实际研发工作。本系统采用了基于Web的三层架构,即浏览器、服务器和数据库。本系统是基于JSP开发的。利用HTML标签的扩展,插入JSP脚本代码(主要为Java语言),构成JSP页面(扩展名为.jsp),其中对于脚本代码,是在服务器端(Server-Side)处理,它对脚本的处理采用的是一种全新的先对代码进行转换、编译,而后再执行的方式,即编译执行。1.2背景1.2.1网上购物的发展近年来,随着Internet的迅速崛起,互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通领域。于是电子商务开始流行起来,越来越多的商家在网上建起在线商店,向消费者展示出一种新颖的购物理念。网上购物系统作为B2B,B2C(BusinesstoCustomer,即企业对消费者),C2C(CustomertoCustomer,即消费者对消费者)电子商务的前端商务平台,在其商务活动全过程中起着举足轻重的作用。本文主要考虑的是如何建设B2C的网上购物系统网上购物是一种具有交互功能的商业信息系统。它向用户提供静态和动态两类信息资源。所谓静态信息是指那些比经常变动或更新的资源,如公司简介、管理 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 和公司制度等等;动态信息是指随时变化的信息,如商品报价,会议安排和培训信息等。网上购物系统具有强大的交互功能,可使商家和用户方便的传递信息,完成电子贸易或EDI交易。这种全新的交易方式实现了公司间文档与资金的无纸化交换。1.2.2网上购物系统的现状、目前在国内PHP与ASP应用最为广泛。而JSP由于是一种较新的技术,国内采用的较少。但在国外,JSP已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。采用PHP的网站如新浪网(sina)、中国人(Chinaren)等,但由于PHP本身存在的一些缺点,使得它不适合应用于大型电子商务站点,而更适合一些小型的商业站点。首先,PHP缺乏规模支持。其次,缺乏多层结构支持。对于大负荷站点,解决方法只有一个:分布计算。数据库、应用逻辑层、表示逻辑层彼此分开,而且同层也可以根据流量分开,组成二维阵列。而PHP则缺乏这种支持。还有上面提到过的一点,PHP提供的数据库接口支持不统一,这就使得它不适合运用在电子商务中。ASP和JSP则没有以上缺陷,ASP可以通过MicrosoftWindowsd的COM/DCOM获得ActiveX规模支持,通过DCOM和TranscationServer获得结构支持;JSP可以通过SUNJava的JavaClass和EJB获得规模支持,通过EJB/CORBA以及众多厂商的ApplicationServer获得结构支持。三者中,JSP应该是未来发展的趋势。世界上一些大的电子商务解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 提供商都采用JSP/Servlet。比较出名的如IBM的E-business,它的核心是采用JSP/Servlet的WebSphere;西方另外一个非常著名的电子商务软件提供商,Intershop。它原来的产品Intershop12,3,4占据了主要的电子商务软件份额。它们都是通过CGI来提供支持的。但去年10月后它推出了Enfinity,一个采用JSP/Servlet的电子商务ApplicationServer,而且声言不再开发传统软件。总的来说,ASP,PHP,JSP三者都有相当数量的支持者,而这三者也各有所长,在开发过程中,我们应该根据实际的需要来使用最合适的技术,本系统则采用较新的jsp技术,一方面jsp的安全性和跨平台性比较好,另一方面,我也希望能从开发该系统的过程中,深入学习一下这门编程语言。1.2.3电子商务的发展电子商务最早产生于60年代,发展于90年代,其产生和发展的重要条件主要是:计算机的广泛应用为EC的应用提供了基础,网络的普及和成熟为EC的发展提供了应用条件,信用卡的普及应用为EC中的网上支付提供了重要的手段。电子安全交易协议制定于1997年5月31日,由美国VISA和Mastercard国际组织等联合指定的SET(SecureElectronicTransferProtocol),即电子安全交易协议的出台,得到大多数厂商的认可和支持,为在网络上开发电子商务提供了一个关键的安全环境。自1997年欧盟发布了欧洲电子商务协议,美国随后发布“全球电子商务纲要”以后,电子商务受到世界各国政府的重视,许多国家的政府开始尝试“网上采购”,这为电子商务的发展提供了有利的支持。90年代以来,基于国际互联网的电子商务由于使用VAN(Value-AddleNetwork,增值网)的费用很高,仅大型企业才会使用,因此限制了基于EDI(ElectronicDataInterchange)的电子商务应用范围的扩大。20世纪90年代中期后,国际互联网(Internet)迅速走向普及化,逐步地从大学、科研机构走向企业和百姓家庭,其功能也已从信息共享演变为一种大众化的信息传播工具。从1991年起,一直排斥在互联网之外的商业贸易活动正式进入到这个王国,因此而使电子商务成为互联网应用的最大热点。以直接面对消费者的网络直销模式而闻名的美国戴尔(Dell)公司1998年5月的在线销售额高达500万美元,该公司期望2000年在线收入能占总收入的一半。另一个网络新贵亚马逊(Amazon.com)网上书店的营业收入从1996年的1580万美元猛增到1998年的4亿美元。几年前开办的eBay公司是互联网上最大的个人对个人的拍卖网站,这个跳蚤市场1998年第一季度的销售额就达1亿美元。象这样的营业性网站已从1995年的2000个急升为1998年的42.4万个。面对电子商务如此迅猛的发展趋势,弗雷斯特(Forrester)公司不得不将它对2002年电子商务交易额的预测由原来的3270亿美元改为8427亿美元。互联网已成为全球最大的互联网络,已经覆盖150多个国家和地区,连接了1.5万多个网络,220万台主机。几年前,被誉为“英特尔之父”的VintCerf曾预测,到2003年全球将会有1亿因特网用户,然而,因特网的发展事实让他跌破眼镜。目前,全球已有近1.5亿因特网用户,据2002年国际数据公司(IDC)报告显示:2001年度电子商务交易额超过6000亿美元,2003年度预计将超过13000亿美元。互联网工业年鉴的调查分析显示:2000年6月全球上网人数为2亿人,2002年度达4亿人,2003年度预计将达到7.65亿人。据CNNIC2005年1月19日发布的最新统计报告显示,我国上网用户总数为9400万,比半年前增长8%,其中使用宽带上网的人数达到4280万;上网计算机达到4160万台,比半年前增长了14.6%;CN下注册的域名数、网站数分别达到43万和66.9万,分别比半年前增长了5万和4.2万;网络国际出口带宽总数达到74429M,IPv4地址总数59945728个,分别比半年前增长38%和21%。自1994年互联网商业化应用以来,有90%以上的世界500强企业建立了网站,30%的企业商务网站开始为顾客提供售后服务或直接进行在线商务活动。目前,我国大约有七万家国有大中型企业,其中的50%已联入了互联网,其中一些企业拥有了自己的网站和服务器,一部分有进出口权的企业能熟练从事国际电子商务贸易业务,而且越来越多的企业决策者将企业的下一步发展方向和注意力集中到了电子商务上。互联网上的电子商务市场将发展成为最为广泛的快捷的市场。1.3定义1.3.1电子商务简介仅仅是在几年间,在世界范围内,无论是信息的提供方式还是使用方式都因Internet而发生了改变。其硬件和软件技术使得每个人不仅能够成为信息的使用者,而且几乎所有人都能够作为信息的提供者。Internet-特别是WorldWideWeb(WWW)在非常短的时间内就已经被公众认为是最重要的信息共享的平台,许多组织都在尽力创建有用的Web应用,从而为使用者提供更大的价值。电子商务的发展是网络技术发展日益成熟的结果,它形成了一种全新的经济运行模式。在这一模式推动下,社会生活许多方面都将发生根本性变革。电子商务代表着未来贸易方式的发展方向。电子商务网站是企业开展电子商务活动的基本手段,是企业电子商务系统的前台,企业通过电子商务网站为企业的伙伴、客户、采购商、供应商提供了一个访问企业内部各种资源的统一平台,离开了网站也就谈不上开展电子商务。根据世界贸易组织电子商务专题报告的定义:电子商务EC就是通过电信网络进行的产品的生产、广告营销、销售和流通的过程;联合国经合组织OECD对电子商务的定义:指在开放网络上发生的商品交易,包括B2B,B2C。1.3.2JSP简介JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的动态网页技术 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 。它是传统的HTML代码中,利用HTML标签的扩展,插入JSP脚本代码(目前主要是Java语言),构成JSP页面(扩展名为.jsp),其中对于脚本代码,是在服务器端(Server-Side)处理,它对脚本的处理采用的是一种全新的先对代码进行转换、编译,而后再执行的方式。服务器在遇到客户端发来的一个JSP页面请求时,首先由JSP引擎把一种有HTML代码和JSP脚本代码的混合代码转换成Servlet代码,然后由JSP引擎调用服务器端的Java编译器对Servlet代码进行编译,把它变成字节码(.class)文件,再由JVM(JavaVirtualMachine,Java虚拟机)执行此字节码文件,并把结果返回给请求的客户端。·jdkv1.4.2:Java语言的开发工具包。·Tomcat5.0服务器:Apache组织开发的一种JSP引擎,本身具有Web服务器的功能,可以作为独立的Web服务器来使用。但是,在作为Web服务器方面,Tomcat处理静态HTML页面时不如Apache迅速,也没有Apache健壮,所以我们一般将Tomcat与Apache配合使用,让Apache对网站的静态页面请求提供服务,而Tomcat作为专用的JSP引擎,提供JSP解析,以得到更好的性能。并且Tomcat本身就是Apache的一个子项目,所以Tomcat对Apache提供了强有力的支持。对于初学者来说,Tomcat是一个很不错的选择。本身还可兼当JSP引擎和Web服务器。1.4参考资料齐治昌,谭庆平,宁洪,《软件工程》,高等教育出版社王利福,张世琨,朱冰,<<软件工程>>,北京大学出版社李绍原,<<数据库原理及应用>>,科学出版社⑴张龙祥著,《UML与系统分析设计》,人民邮电出版社,2002。⑵杨学瑜、王志军、刘同利著,《JSP入门与提高》,清华大学出版社,2002。⑶齐治昌、谭庆平、宁洪《软件工程》,高等教育出版⑷各大网站。2任务概述2.1目标通过本系统软件,能够方便恩施广大人民群众快速对商品搜索、了解、购买。不仅能满足顾客的需要,更能加快恩施信息产业的发展。现在流行的网上购物系统不仅要有漂亮的网页,更要有严谨的规划,注重每一个细小的环节。这样才能使得在电子交易时避免不必要错误发生。我们将使用HTML、JSP等技术来编辑网页,并运用JDBC技术把数据库和动态网页相关联。传统的管理信息系统信息获取方法是由专业文字录入人员将信息输入到管理系统的数据库中,这种方法在数据量不大时有很多的应用场合。当数据量比较大,并且有较强的专业性时,录入的费用和出错的可能性都相应上升。本设计在实际应用中的解决方案是建立网站,以及自己的数据库,使得所需商品信息可以及时的保存、更新,可以更好的及时了解商品买卖的情况。2.2用户的特点本软件适用于电子商务,对用户来说可以随时搜索、了解、购买商品。2.3假定和约束经验不足,时间有限,经费不足,不能实地调查。3需求规定3.1对功能的规定网上购物是一个在互联网上进行商品销售管理的电子商务系统。该系统具有基本以下功能:·会员注册登陆功能。非法用户即未注册用户,不能进行如查询、搜索、订购等一切操作。客户根据注册模快要求进行注册,注册后成为会员就可以进行会员所具有的操作,如查询、搜索、订购等。同时商店管理者对注册的用户信息进行管理,可进行用户资料的新增修改,能够查询获取丢失的密码,最重要的是对注册用户进行授权,检查用户是否被授权访问该资源,拦截所有访问受保护资源的请求。·商品管理功能。该部分功能包括商品的管理和商品的浏览查询两大部分,商品管理是面向商店管理者,分商品类别、商品、商品品种管理等3个部分,这3个部分都包括各自数据的新增、删除、修改、和查询等功能。按实际需要,商品分类可多级设置,每个商品类别下有不同的商品,每个商品中又有不同的具体规格,图片上传功能等。面向商店顾客的主要是商品的查询和搜索功能,有条件的查询并且多页显示一个类别下的所有商品,可以全文查询,也可模糊查询。·购物车管理功能。商店客户在浏览商品时,可以根据自己愿意购买的商品加入到购物车,同时,也可以对购物车进行修改、查询和删除。当进行结帐上时,购物车变为定单。·定单管理功能。可以根据具体情况选择支付方式,购物车中商品转变为一个新的定单。定单管理分为两种:面向商店管理者和面向商店客户,商店管理者可以查询定单,修改定单状态,如是否已经结算,是否已经发货,是否已经结单等。商店客户可以查询定单状态。根据上述系统功能需求的描述,本系统功能模块图如下:3.2对性能的规定3.2.1精度为了能够实现对数据库中所有内容的检索,我们使用了模糊查询的方法(即按照查询的条件与查询的关键字进行匹配)。例如:我们设置的搜索条件有:按(商品名称,价位,发布日期,品牌,类别)等,用户自己可选择查询的关键字:用户自己输入当用户选择按商品名称查询,那么就在数据库中检索所有商品名称带有用户输入的关键字的商品。3.2.2数据库性能设计要求主要数据类型的描述如下:C(n)定长字符型,表示长度为n个单字节字符的固定长度字符串;VC(n)变长字符型,表示最大长度为n个单字节字符的可变长度字符串;I整型数值型(smallint)SI短整数值型(int)D(n,m)浮点数值型,表示总位数是n位(不包括小数点),其中小数点后位数为m位的浮点数;D日期型,记录精确到日的时间信息;DT时间型,记录精确到秒的时间信息;M金额型(money),表示金额方式的浮点型数据I Image型,存储图像;表的命名规则说明1管理员基本信息表(admInfo) 列名 列中文名 数据类型 允空 缺省值 主键 参照表 Id 自动编号 I n Y Aid 管理员登陆账号 C(20) n Apassword 管理员登录密码 C(20) n 2用户基本信息表(userInfo) 列名 列中文名 数据类型 允空 缺省值 主键 参照表 Id 自动编号 I N Uid 用户登录账号 C(20) N Y Uname 用户真实姓名 C(10) N Upassword 用户登录密码 C(20) N Utel 用户联系方式 C(11) N Uemail 用户常用邮箱 C(30) N uadr 用户家庭地址 C(50) N 3商品基本信息表(goodsInfo) 列名 列中文名 数据类型 允空 缺省值 主键 参照表 Id 自动编号 I N Gid 商品编号 C(20) N y Gname 商品名称 C(20) N Gpublish 商品生产厂家名称 C(30) N Gprice 商品价格 I N Gcontent 商品的基本描述 C(100) N Gnum 商品的库存 I N 4订单基本信息(bookInfo) 列名 列中文名 数据类型 允空 缺省值 主键 参照表 Id 自动编号 I N Uid 用户登录账号 C(20) N Y userInfo Gid 商品编号 C(20) N Y goodsInfo Gname 商品名称 C(30) N Gprice 商品价格 I N Gnum 商品的订购数量 I N 3.3安全可靠性通常一套成熟的商业系统会根据系统的结构将整个系统划分为多个模块,然后在模块中进行功能的划分,而由于操作员所处的部门的不同,操作员工作岗位、身份级别的不同往往对不同的模块和不同的功能具有不同的操作权限,因此几乎任何一套中等或以上规模的管理软件都需要有一套完善的用户权限管理体系。根据对各种系统的分析我们最终确定这套购物系统的用户及权限管理模块需要具备以下功能:1、模块和功能的维护:模块和功能属于包含关系,即一个系统往往包含多个模块,而一个模块中往往又包含多个功能,因此必须要有对模块和功能进行维护的功能,本功能主要包含对模块的添加、修改、删除和对模块对应的功能的添加、修改、删除的功能。2、权限组的定义:虽然有很多的系统直接为用户定义功能和模块的权限,但采用此种办法当用户数量较多而且变动频繁的时候用户信息的维护将变得效率低下,目前通常比较流行的方法是先对特定的用户定义为用户组并对用户组进行权限配置,然后将用户设置到属于某个用户组中,采用这种方式对权限的控制十分灵活,而且对用户信息的定义也非常的简单。权限组定义具备权限组的添加、修改、删除功能和权限组权限定义的功能。3、用户配置:本功能具有对用户信息进行添加、修改、删除、密码初始化、用户修改密码等功能,用户信息包含用户帐号、姓名、别名、所属部门、用户等级、所属权限组等信息;密码初始化是指当用户密码遗忘以后需要管理员对密码进行初始化设置,此处限制管理员不能随意修改用户的密码,而只能通过密码初始化功能将用户密码恢复为“111111”;用户修改密码为普通用户提供修改密码的功能。4、用户登陆功能:当用户进入系统前必须先进行登陆,否则无法进入系统,本功能提供用户登陆界面,当用户输入正确密码后完成对系统所需session的设置,如果用户输入信息错误或取消登陆系统都将清空所有session。5、用户权限检测:本功能虽然在界面中是无法体现的,但却是本模块中不可缺少的重要功能,本功能提供一个全局函数,通过传递模块ID和功能ID参数,检测该用户是否具备该模块或功能的访问权限,并返回一个bool值以提供给程序员对对应的程序界面进行处理。同时本功能还提供对用户登陆信息的检测,通过一个函数检测用户是否已经登陆,如果未登陆则提示错误信息并自动跳转到登陆界面。6、退出登陆:用户执行本功能退出登陆,清空所有session。SHAPE\*MERGEFORMAT3.4数据管理能力要求我们设计的数据库具有很好的更新能力,由于本系统是一个大型作业,故对磁盘和内存容量没有很高的要求,但是数据库能够对并发事件,脏数据具有较强的识别处理能力。3.5故障处理要求考虑到软件的范围不大,所以故障处理一般由操作系统完成,系统只要保持与操作系统的接口即可。只要操作系统没有大的故障程序一般是比较稳定的。考虑到用户对数据的安全性要求,程序可以有独立于操作系统之外的数据备份功能与过程,以及系统崩溃后的数据恢复功能,这点在数据库软件中已经达到了,只要稍微在其上再增加用户所需要的附加功能即可。4运行环境规定4.1运行环境:本系统是用MyEclipse5.5集成开发环境(jdk1.6Tomcat5.0),数据库为Mysql5.04.2运行环境要求运行JSP至少要三样东西:JSP引擎、Web服务器和JVM。他们的功能如下:·JSP引擎:对JSP代码的转换,把它转换成Servlet代码,且作出判断,是否要对Servlet代码进行编译及重新编译,还是直接执行,然后向JVM发出 通知 关于发布提成方案的通知关于xx通知关于成立公司筹建组的通知关于红头文件的使用公开通知关于计发全勤奖的通知 。·Web服务器:完成服务器的最基本功能,如接受客户端请求,并把结果传回给客户端。还有这个Web服务器必须支持JSP服务的服务器,不然它将无法和JSP引擎进行沟通。·JVM:完成对Servlet代码的编译和对字节码的执行;他接受来自JSP引擎的通知,只得到要干什么,然后用自己的命令完成动作,并把结果告知JSP引擎。4.3开发工具简述·jdk1.6:Java语言的开发工具包。·Tomcat5.0服务器:Apache组织开发的一种JSP引擎,本身具有Web服务器的功能,可以作为独立的Web服务器来使用。但是,在作为Web服务器方面,Tomcat处理静态HTML页面时不如Apache迅速,也没有Apache健壮,所以我们一般将Tomcat与Apache配合使用,让Apache对网站的静态页面请求提供服务,而Tomcat作为专用的JSP引擎,提供JSP解析,以得到更好的性能。并且Tomcat本身就是Apache的一个子项目,所以Tomcat对Apache提供了强有力的支持。对于初学者来说,Tomcat是一个很不错的选择。本身还可兼当JSP引擎和Web服务器。环境变量设置:JDK:PATH=C:\jdk16\binJAVA_HOME=C:\jdk16CLASSPATH=.;C:\jdk16\lib\tools.jar;C:\jdk16\lib\dt.jarTOMCAT:TOMCAT_HOME=c:\tomcat连接数据库Mysql的用户名:root,密码为:111111,端口为:33064.4用户界面·用户和系统之间的界面对所有的顾客都开放。允许用户搜索当前在线产品信息。允许用户输入定单信息或汇款信息等用户的个人资料。·销售人员与系统之间的界面谨对拥有口令的销售人员开放。允许销售人员查看定单信息验证用户付款金额等行为4.5硬件接口软件较小除硬盘外,基本没有与外界硬件的联系,不过考虑到数据库大量数据的备份等要求可以保持与磁带机和光盘刻录机的接口,这点较易实现。奔腾133,64兆以上内存的pc机。4.6软件接口在这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。例如Microsoft的office系列。另外用户还有用户所需要的软件接口,这些应在用户需求定义时明了。操作系统为MicrosoftWindowsXP以上,数据库为MySql5.1;Web服务器运行环境为WindowsXPServer(SP6),浏览器为IE6.0以上版本。第二章详细设计1:该系统的总用例图如下:该系统中包含了用户和管理员各自的功能,新用户在通过注册后就能登陆到购物网站上查看商品信息,订阅商品和管理远员交流有关商品的信息,用户可以通过购物车来实现对商品的购买,删除等操作,管理员通过购物车来接受定单,并给客户分发商品.1.1、用户登陆时序图用户向管理员发出注册信息,管理员接受并验证后返回给用户,授权给用户登陆.1.2、管理员和客户的信息交流时序图用户跟管理员进行关于商品的交流2、该系统的角色的用例:·选购商品·向购物车添加商品·从购物车删除商品·购买商品并结帐·预览商品客户登陆首页时将会选择商品,根据客户需求,客户将选择商品,然后在将商品加入购物车中。客户将根据浏览商品的资料判断是否删除商品,如果客户对购物车的商品表示满意,客户将去结帐2.1、网上购物系统的用例网上购物系统的用例图在整个系统中,用例描述系统的功能需求.在分析阶段,利用他们来检查某个域类是否已定义.在设计阶段,可以用来证实技术反噶是否能够处理要求的功能.根据以上角色图和用例图就可以得到整个系统的用例如下.网上购物系统的用例2.2、加入购物车时序图该时序图描述了拥护在登陆主页到向购物车内添加商品的整过程。对象从左到右布置时序图的顶部。从每个对象伸展的虚线叫做对象的生命线。在生命线声的窄矩形框被称做激活,激活表示正在执行的某个操作。如上图所示,当顾客登陆主页时,他即将看到数据库提供给他的一些商品,当顾客选择商品点击addtoCard按钮时,首页就将用户选择商品的信息传递给,在内将信息入数组并添加到购物车内。每次用户在Eshop.jsp页内加入一件物品,页面就向控制servlet发送一个请求。由servlet依次决定适当的动作,然后处理要加入的物品的请求参数。然后它例示一个新的CDBean表示所选物品,并在会话内更新购物车对象。2.3、从购物车中删除商品的时序图该时序图描述了用户从购物车中删除商品随时间变化的过程。如上图所示,当顾客点击Delete按钮时,Cart.jsp将用户选择的商品信息再一次传递给ShoppingServlet进行处理,并在通过它对购物车的商品进行操作。2.4、浏览购物车中的商品如上图,在用户将选择的商品添加到购物车内以后,如果用户点击购物车内的按钮预览商品时,Cart.jsp就会把用户点击的那一行商品的信息发送到Disc.jsp内,在由它进行判断该商品的序号是那一种商品,然后在显示该商品的资料.2.5、结帐时序图Checkout.jsp仅从会话中取出购物车和所有请求的总数,然后显示所选的物品及总价格。显示了结帐时客户端的时序图。一旦用户结帐,购物车商品的数量、价格等参数传递给ShoppingServlet,由它在进行处理运算,并把最终的结果再传递个Checkout.jsp,再又它显示出来。2.6、浏览店内的商品当客户登陆首页时,用户选择的商品完全是由数据库提供的,用户可以对菜单中的商品进行选择.3、网上购物构件图构件之间存在的唯一关系是构件的依赖性。构件依赖性指一个构件依赖于另一个构件。构件依赖性画成构件之间的虚线箭头。如下图箭头指的构件表示被依赖,也就是说,Cart、Eshop、Checkout都依赖于ShoppingServlet。下图描述的是在网上购物系统中几个构件之间的依赖关系。网上购物购件图4、网上购物类图在面向对象中,类图是最重要的兔,它描述了系统中各个对象的类型和它们之间存在的各种关系。此系统包含:⑴类“管理员”;⑵类“购物车”;⑶类“客户”;⑷类“定单”;⑸类“商品”。它们都有其属性和方法,上图都已经描述,在此不在说明。5、网上购物状态图状态图用来描述一个特定对象的所有可能状态及引起其状态转移的事件。大多数面向对象技术都用状态图表示单个对象在起周期中的行为。一个状态图包括一系列的状态以及状态之间的转移。在这里我以购物车为例对它的状态进行分析,首先观察购物具有两个状态,车内有商品、车内无商品。然后再分析他的活动,如果选择商品,可添加到购物车内,可以继续选择商品。如果选够了商品,就从一个状态进入了另一个状态,一个状态可以加进五种信息:活动、进入操作、退出操作、事件和状态历史。活动是对象在特定状态时进行的行为。进入操作是对象进入某个状态时发生的行为。退出操作与进入操作相似,但它在退出某个状态时发生。6、网上购物购物车活动图活动图显示动作及其结果,它即可用来描述操作(类的方法)的行为,也可以描述用例和对象内部的工作过程。活动图是由状态图变化而来的,它们用于不同的目的。活动图主要强调的是动作。与状态图不一样,活动图中的动作状态之间的迁移于是靠事件触发的,当动作状态中的活动完成时迁移就触发,活动图中一个活动结束后将立即进入下一个活动。在上图描述了网上购物系统中购物车的活动图。和购物车的状态图相比它的活动图包含状态以外还包括了购物车的几个活动,像添加商品、删除商品和结帐等等接个活动。6.1、结帐状态图6.2、浏览商品状态图6.3、网上购物首页状态图7、网上购物的协作图协作图用于描述相互协作的对象间的交互关系和链接关系,但侧重点不同。时序图着重体现交互的时间顺序,协作图侧重体现交互对象间的静态链接关系,同时时序图与协作图之间可以相互转换。下图所示的就是购物车的时序图转化的协作图。8、网上购物的部署图部署图描述系统硬件的物理结构以及在此结构上执行的软件。部署图可以显示计算节点的拓扑结构和通信路径、结点上运行的软件组件、软件组件包含的逻辑单元等。部属图常常用于帮助理解分布式系统。在网上购物系统中,我们可以从网络上开始划分结构,该系统分为三层结构,分别针对数据库、服务器、和客户机。下图显示了网上购物系统的主要部属。第三章系统的实现3.1系统实现使用的技术主要技术:JavaBean+JSPServlet主要框架:使用了MVC模式JavaBean是描述Java的软件组件模型,有点类似于Microsoft的COM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。JavaBean通过Java虚拟机(JavaVirtualMachine)可以得到正确的执行,运行JavaBean最小的需求是JDK1.1或者以上的版本。JavaBean传统的应用在于可视化的领域,如AWT下的应用。自从Jsp诞生后,JavaBean更多的应用在了非可视化领域,在服务器端应用方面表现出来了越来越强的生命力。JavaBean可以很好地实现逻辑的封装、程序的易于维护等等。Servlet是Java技术对CGI编程的回答。Servlet程序在服务器端运行,动态地生成Web页面。与传统的CGI和许多其他类似CGI的技术相比,JavaServlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资:(1)高效,在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在Servlet中,每个请求由一个轻量级的Java线程处理(而不是重量级的操作系统进程)。在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在内存中重复装载了N次;而对于Servlet,处理请求的是N个线程,只需要一份Servlet类代码。在性能优化方面,Servlet也比CGI有着更多的选择,比如缓冲以前的计算结果,保持数据库连接的活动,等等;(2)方便,Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等。(3)功能强大,在Servlet中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,Servlet能够直接和Web服务器交互,而普通的CGI程序不能。Servlet还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。(4)可移植性好,Servlet用Java编写,ServletAPI具有完善的标准。因此,为I-PlanetEnterpriseServer写的Servlet无需任何实质上的改动即可移植到Apache、MicrosoftIIS或者WebStar。几乎所有的主流服务器都直接或通过插件支持Servlet。3.2数据库连接:在做数据库连接时,我使用的是Mysql数据库,使用的是JDBC驱动,其中数据库的用户名为:root,密码为:111111,端口为:3306.部分代码实现如下:packagecn.group.db;importjava.sql.*;publicclassDBConnection{StringDBDRIVER="org.gjt.mm.mysql.Driver";StringDBURL="jdbc:mysql://localhost:3306/shopping";StringNAME="root";StringPASSWORD="111111";Connectioncon=null;publicDBConnection(){try{Class.forName(DBDRIVER);this.con=DriverManager.getConnection(DBURL,NAME,PASSWORD);}catch(Exceptione){}}publicConnectiongetConnection(){returnthis.con;}publicvoidclose(){try{this.con.close();}catch(Exceptione){}}}3.3JavaBean在系统中的体现:JavaBean的编写是一个非常严谨的过程,我认为应满足以下几点:1、所有的JavaBean必须放在一个包中2、JavaBean必须声明成publicclass类型3、所有的属性必须封装,也就是必须定义成private4、设置和取得属性通过setter、getter方法JavaBean在系统中有很大的作用,系统中使用了大量的JavaBean,在此只列举一个商品实体的JavaBean:packagecn.group.shopping.vo;publicclassShoppingVo{privateStringuid;privateStringgid;privateStringgname;privateStringgpublish;privateintgprice;privateStringgcontent;privateintgnum;privateintbookNum;privateintremainNum;publicvoidsetRemainNum(intremainNum){this.remainNum=remainNum;}publicintgetRemainNum(){returnthis.remainNum;}publicvoidsetBookNum(intbookNum){this.bookNum=bookNum;}publicvoidsetUid(Stringuid){this.uid=uid;}publicvoidsetGid(Stringgid){this.gid=gid;}publicvoidsetGname(Stringgname){this.gname=gname;}publicvoidsetGpublish(Stringgpublish){this.gpublish=gpublish;}publicvoidsetGprice(intgprice){this.gprice=gprice;}publicvoidsetGcontent(Stringgcontent){this.gcontent=gcontent;}publicvoidsetGnum(intgnum){this.gnum=gnum;}publicStringgetGid(){returnthis.gid;}publicStringgetGname(){returnthis.gname;}publicStringgetGpublish(){returnthis.gpublish;}publicintgetGprice(){returnthis.gprice;}publicStringgetGcontent(){returnthis.gcontent;}publicintgetGnum(){returnthis.gnum;}publicStringgetUid(){returnthis.uid;}publicintgetBookNum(){returnthis.bookNum;}publicShoppingVo(){}publicShoppingVo(Stringgid,Stringgname,Stringgpublish,intgprice,Stringgcontent,intgnum){this.gid=gid;this.gname=gname;this.gpublish=gpublish;this.gprice=gprice;this.gcontent=gcontent;this.gnum=gnum;}publicShoppingVo(Stringgid,Stringgname,intgprice,intgnum){this.gid=gid;this.gname=gname;this.gprice=gprice;this.gnum=gnum;}publicShoppingVo(Stringuid,Stringgid,Stringgname,intgprice,intgnum){this.uid=uid;this.gid=gid;this.gname=gname;this.gprice=gprice;this.gnum=gnum;}}3.4Servlet在系统中的体现:对于一个基本的Servlet程序必须注意以下几点:1、一定要符合Servlet程序的开发结构2、配置web.xml文件3、RequestDispatcher接口主要用于由Servlet到JSP页面的跳转说明:由于中间实现的代码过多,在此只列出了Servlet的一个基本框架。packagecn.group.shopping.servlet;importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassShoppingServletextendsHttpServlet{publicvoiddoGet(HttpServletRequestreq,HttpServletResponseresp)throwsIOException,ServletException{this.doPost(req,resp);}publicvoiddoPost(HttpServletRequestreq,HttpServletResponseresp)throwsIOException,ServletException{Stringpath="admSuccess.jsp";req.getRequestDispatcher(path).forward(req,resp);}}Web.xml文件如下:<?xmlversion="1.0"encoding="ISO-8859-1"?><web-appxmlns="http://java.sun.com/xml/ns/j2ee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/j2eehttp://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"version="2.4"><display-name>WelcometoTomcat</display-name><description>WelcometoTomcat</description><!--JSPCservletmappingsstart--><servlet><servlet-name>Login</servlet-name><servlet-class>cn.group.user.servlet.UserServlet</servlet-class></servlet><servlet><servlet-name>Shopping</servlet-name><servlet-class>cn.group.shopping.servlet.ShoppingServlet</servlet-class></servlet><servlet-mapping><servlet-name>Shopping</servlet-name><url-pattern>/shop/Shopping.lyx</url-pattern></servlet-mapping><servlet-mapping><servlet-name>Login</servlet-name><url-pattern>/shop/Userlogin.lyx</url-pattern></servlet-mapping><servlet-mapping><servlet-name>Shopping</servlet-name><url-pattern>/ShoppingGroup/Shopping.lyx</url-pattern></servlet-mapping><servlet-mapping><servlet-name>Login</servlet-name><url-pattern>/ShoppingGroup/Userlogin.lyx</url-pattern></servlet-mapping></web-app>第四章系统测试4.1编写目的、背景及意义随着网络技术和软件技术的飞速发展,特别是Internet/Intranet的出现及其相关技术的迅速发展,信息革命带来了全球范围市场竞争的日益加剧,网上购物系统是一个在互联网上运行的系统。通过测试可以知道系统还有那些不完整的地方,使我们能及时改进4.2测试概要按照软件工程的思想,任何软件正式投入运行前,必须进行测试以保证软件的正确性、容错性、可扩展性及运行速度等等。在该系统交付使用前,我们对该软件系统的所有功能模块进行了详细测试,测试的目的在于:寻找问题,纠正错误,提高系统技术能力,使系统早日投入运行。测试的参加人员除技术人员外还包括用户,最终由用户对每个模块提出问题或批示。分别采用软件工程中的“白盒法”(测试时了解系统的内部逻辑)及“黑盒法”(测试时不了解系统的内部逻辑,根据输入内容和输出结果对系统作出判断)。对于非计算性功能,测试时看系统是否能够完成与业务相应的处理工作。主要的错误分为以下几类:1.语法错误语法错误是经常碰到的错误,它是由不正确的脚本语法导致。例如:命令拼写错误或传递始函数的参数不正确都将产生错误。语法错误可能导致脚本不能运行。2.运行时错误运行时错误是脚本在执行过程中脚本指令试图执行不可能的动作而导致的.必须纠正导致运行时的错误,这样才能使脚本在运行时不被中断。3.逻辑错误逻辑错误通常可能是在潜在的和难以预测的。如果有因键入错误或程序逻辑流程错误引起的逻辑错误,脚本可能会成功运行,但产生的结果却是错误的。系统的功能测试在系统功能测试前申请了两种权限的用户,一个是具有管理权限的商品管理员,一个是具有一般用户功能的一般用户。分别以两个用户名登录系统对系统提供的各项功能进行测试。4.3测试结果及发现4.3.1功能测试1、分类管理测试:以文档管理员身份登陆后分别进行了商品的增加分类、增加子类、修改、删除等功能进行了测试,结果符合设计要求。2、商品管理测试:以商品管理员身份登陆后分别进行了商品的查询、增加、修改、删除等功能进行了测试,结果符合设计要求。3、商品浏览测试:以商品管理员和一般用户身份登陆后分别进行了商品的浏览,结果符合实际要求。4、论坛管理测试:以商品管理员身份登陆后分别对系统提供的讨论名称进行了查询、增加、修改、删除等操作,结果符合设计要求。测试之后,发现整个网上购物系统的整体测试结果还是比较令人满意的。4.3.2测试用例进入”恩施网上购点击新用户注册进行输入用户名联系地址等得到预期结果物”首页注册用户自己的一些真实信息注册成功进入”恩施网上购点击用户登陆登陆成功并可以订购得到预期结果物”首页商品进入购物车页面点击进如我的购物车可以查看自己所订购得到预期结果商品,并可进行删除4.4对软件功能的结论经过系统分折与设计后.就可以根据设计模型在具体的环境中实现系统,生成系统的源代码、可执行程序和相应的软件文档,建立一个可执行的系统.然后需要对系统送行测试和排错,保证系统符合预定的要求。获得一个无错的系统实现,调试的结果将确认所完成的系统可以真正使用。最后系统配置的任务是在真实的使用运行环境中配置,调试系统,解决系统正式使用前可能存在的任何问题。4.5分析摘要4.5.1能力我们小组经测试证实该系统在各方面的综合能力都可以。能注册、登陆、搜索商品(可以模糊搜索,如:按时间、商品名称、品牌等进行搜索)。同时用户可以订购商品、进行交易、查看自己的购物车等操作。已基本符合网上购物的一般功能。4.5.2缺陷和限制做需求分析的时候由于开发组成员能力及时间和资金有限,没有进行实地调查,所以功能方面并不太完善,再就是网络传输的保密性.安全性以及数据库的安全性还存在一定
本文档为【《软件工程》网上购物系统设置】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥12.0 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
Sky
暂无简介~
格式:doc
大小:7MB
软件:Word
页数:42
分类:
上传时间:2018-08-24
浏览量:62