您的当前位置:首页正文

网上商城论文

2024-07-26 来源:欧得旅游网


目 录

绪论 ............................................................................................................................................ 1 第1章 基础知识 ...................................................................................................................... 2

1.1 背景与意义 ................................................................................................................ 2 1.2 开发方法 .................................................................................................................... 2

1.2.1 JSP技术简介 ................................................................................................... 2 1.2.2 SQL Server 2005概述 ..................................................................................... 3 1.2.3 Tomcat 7.0服务器架构 ................................................................................... 4 1.2.4 运行环境的选择 .............................................................................................. 4 第2章 需求分析 .................................................................................................................... 6

2.1 系统功能概述 ............................................................................................................ 6

2.1.1 系统功能需求 .................................................................................................. 6 2.1.2 用例分析 .......................................................................................................... 7 2.1.3 概念层类图 ...................................................................................................... 8 2.2 系统性能要求 ............................................................................................................ 9

2.2.1 系统灵活性 .................................................................................................... 10 2.2.2 输入输出要求 ................................................................................................ 10 2.2.3 数据管理能力要求 ........................................................................................ 10 2.3 可行性分析 .............................................................................................................. 10

2.3.1 技术可行性 .................................................................................................... 10 2.3.2 经济可行性 .................................................................................................... 11 2.3.3 操作可行性 .................................................................................................... 11 第3章 概要设计 .................................................................................................................. 12

3.1 设计目标 .................................................................................................................. 12 3.2 网上购物数据流图 .................................................................................................. 12 3.3 面向数据流的设计方法 .......................................................................................... 16

3.3.1 系统层次图(H图) .......................................................................................... 16 3.3.2 系统输入输出表(IPO表) .............................................................................. 17 3.4 系统数据库设计 ...................................................................................................... 18

3.4.1 数据库设计原则 ............................................................................................ 19 3.4.2 数据库概念结构设计 .................................................................................... 19 3.4.3 数据库表设计 .............................................................................................. 21 第4章 详细设计 .................................................................................................................. 24

4.1 代码标识设计 .......................................................................................................... 24 4.2 代码设计原则 .......................................................................................................... 24 4.3 系统主要功能流程及模块 ...................................................................................... 24

4.3.1 会员管理流程 ................................................................................................ 24 4.3.2 会员购物流程 ................................................................................................ 25

III

4.3.3 生成订单流程 ................................................................................................ 26 4.4 网站后台管理主页 .................................................................................................. 26 4.5 前台商品销售 .......................................................................................................... 27 4.6 购物车的实现 .......................................................................................................... 29 4.7 生成订单的过程 ...................................................................................................... 30 4.8 用户意见反馈 .......................................................................................................... 31 4.9 订单管理的实现 ...................................................................................................... 32 4.10 商品管理的实现 .................................................................................................... 33 4.11 公告管理 ................................................................................................................ 34 4.12 其他管理 ................................................................................................................ 35 第5章 系统测试 .................................................................................................................... 37

5.1 程序的测试方法 ...................................................................................................... 37 5.2 软件的可用性测试 .................................................................................................. 38 结 论 ........................................................................................................................................ 40 致 谢 ........................................................................................................................................ 41 参考文献 .................................................................................................................................. 42 附录 .......................................................................................................................................... 43

IV

本科生毕业设计(论文)

绪论

在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,在人们的日常生活中发挥着重要的作用。因此网上购物系统应运而生,网上购物弥补了传统购物的一些不足,成为了一件新兴的事物。通过网上购物可以很清楚的了解各种商品的信息,从而对其进行比较,买到自己称心如意的商品。对于管理人员来说,利用购物系统能轻松地管理大量的商品,而且可以通过系统查看各种商品的销售状况,通过数据能够及时地了解哪种商品正在热卖,而哪些商品属于冷门,从而在运营上进行调整,以便更好地管理商店。

随着计算机和网络的日趋普及,越来越多的商家在网上开起商店,为消费者展示出一片新鲜的购物大地。网上商城购物系统是一个大、中型销售中心不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻相关工作人员的工作负担,而且其功能对于管理人员来说都至关重要。面对庞大的信息量需要有商城管理系统来提高商品管理工作的效率。借助于这样一个平台我们可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等功能,从而减少管理方面的工作量。本系统就是为了快速查询、销售商品、管理相关人员、商品基本信息而设计的。

论文中包含五章。第一章绪论,主要讲网上商城的背景、意义,开发方法及对项目开发工具的简介;第二章为系统的需求分析,主要讲系统功能需求、性能需求及可行性分析;第三章概要设计,介绍系统工作流程、功能结构图及数据库表设计;第四章详细设计,主要分析了各个功能的工作流程及具体的实现过程。第五章系统测试,主要介绍系统使用的测试方法及测试用例并计算系统的稳态可用性。每章附有本章重点介绍的功能图例及详细讲解,帮助理解系统的各部分功能。

1

本科生毕业设计(论文)

第1章 基础知识

1.1 背景与意义

随着计算机网络和计算机软件的发展,网上购物的人越来越多。所谓网上购物商城即在网上开展购物的买卖活动,当企业将商城的主要业务通过企业内部网(Intranet)、外部网(Extranet)以及Internet与企业的职员、客户供销商以及合作伙伴直接相连时,其中发生的各种活动就是网上购物商城。

网上服装商城是基于Internet或局域网、广域网、包括从销售、市场到商业信息管理的全过程。网上购物的主要目的就是通过网站来推广互联企业的产品和服务,并使客户随时可以了解企业和企业的产品,为客户提供在线服务和订单处理功能。从长期的战略目标来说,网站不仅仅是产品和服务的推广,而且是通过Internet、企业内部网(Intranet)和企业外部网(Extranet),将买家与卖家、厂商和合作伙伴紧密结合在了一起,因而减少甚至消除了时间与空间带来的障碍。

本系统的开发恰恰符合这一要求和未来的发展趋势。论文中详细阐述了系统的设计目标、总体架构及各功能模块的详细设计。系统主要分为前台显示和后台维护两部分。前台包括产品的展示及会员购物等模块,后台是管理界面,主要包括商品信息、会员信息、订单信息和公告信息等常规设置。

1.2 开发方法

本次设计的网上商城购物系统是一种具有交互功能的商业信息系统,目的是在网络上建立一个虚拟的购物商场,使购物更快捷、方便。开发平台使用了myeclips+sql server2005+tomcat。应用了三层结构技术,即逻辑层、表示层、数据服务层三个相对独立的单元。表示层负责与用户交互,并把相应的请求通过调用中间层的组件传递给商业逻辑层;商业逻辑层通过组件执行具体的事务逻辑,通过SQL等方式向第三层的组件提出数据或其他资源请求。表示层在客户端的应用浏览器中运行,数据访问也在专用的数据库服务器上运行。采用三层结构能很好的解决网站的可扩展性、安全性、管理性问题。使顾客可以得到方便、快捷、安全可靠的网上购物环境。

1.2.1 JSP技术简介

Jsp是一种动态的网页技术标准,它是在传统的HTML文件(*.htm,*.html)中插入Java Scriptlet和JSP标记(tag),从而形成JSP文件(*.jsp)。

2

本科生毕业设计(论文)

1、将内容的生成和显示进行分离

用JSP技术和Web页面开发的人员可以使用HTML或者XML标识来设计和格式化最终的页面,并使用JSP标识或者小脚本来生成页面上的动态内容。生成内容的逻辑被封装在标识和JavaBeans组件中,并且可以捆绑在脚本中,所有的脚本都是在服务器端运行。由于核心逻辑被封装在标识和JavaBeans 中,所以 Web 管理人员和页面设计者,能够很方便的编辑和使用 JSP 页面,而不影响内容的生成。从而实现了内容生成和显示的分离。 2、采用标识符

由于开发Web页面的人员不可能都是熟悉脚本语言的编程人员。因此JSP技术封装了许多功能,这些功能是在与JSP相关的 XML 标识中进行动态内容生成所需要的。标准的 JSP 标识能够访问和实例化JavaBeans 组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

3、组件的可重性

大多数 JSP 页面依赖于可重用的、跨平台的组件(JavaBeans)来执行应用程序所要求的复杂的处理。开发人员需要能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者所使用。

4、适应平台

目前几乎所有平台都支持 Java,JSP+JavaBeans 因此程序可以在大部分的平台下正常运行。由于Java 字节码都是标准的,具有与平台无关的特性,所以从一个平台移植到另外一个平台时,JSP 和 JavaBeans 都不需要重新编译。

1.2.2 SQL Server 2005概述

SQL Server 是美国Microsoft公司开发的一个关系型数据库管理系统,是目前世界上最著名的关系数据库管理系统之一。Microsoft SQL Server 2005在性能和扩展方面确立了世界领先的地位,是一套完全的数据库和数据分析解决方案,使用户可以快速创建下一代的可扩展电子商务和数据仓库解决方案。SQL Server 的主要功能:

1、数据库管理功能

作为数据库管理系统,SQL Server 具有数据库管理功能。Microsoft SQL Server 2005的数据库由包含数据的表集合和其他对象(如视图、索引、存储过程和触发器)组成,目的是为执行与数据有关的活动提供支持。

2、数据仓库与分布式数据复制功能

SQL Server 2005提供了一套全新的综合分析服务系统该服务为商业活动提供了集成的OLAP服务和数据挖掘功能。OLAP可以通过多维存储技术对大型、复杂数据集执行

3

本科生毕业设计(论文)

快速、高级的分析工作。分布式数据复制功能可以讲一个数据库中的数据复制到通过网络连接的不同地点的服务器或同一地点的不同数据库中,并能够保持同步,提高了工作效率。

3、电子商务

SQL Server 不仅提供了丰富的数据库编程能力,还提供了电子商务所需的可伸缩性与可扩展性,以确保系统的协同工作和灵活性。SQL Server2005 不仅支持集中化数据库管理功能,而且还最大程度地实现了管理与优化工作的自动化,从而减轻了有关管理人员的负担。

4、完备的 Web 功能

SQL Server2005允许通过HTTP协议,在 Web上进行高性能、基于标准的安全访问。基于Web的客户端拥有访问关系型数据存储和访问分析服务的能力。

1.2.3 Tomcat 7.0服务器架构

Tomcat 7.0是由Apache 组织开发的一种常用 Web 服务器,提供 Web 服务。作为一种 JSP 引擎,本身具有 Web 功能,可以作为独立的 Web 服务器使用。但是,在作为 Web 服务器方面,Tomcat 处理静态 HTML 页面时不如 Apache 迅速,也没有Apache 健壮,一般选用 Tomcat 与 Apache 结合的方式,让后者对网站的静态页面的请求提供服务,而 Tomcat 作为专用的 JSP 引擎,提供 JSP 解析,得以更好的性能。

1、JDK 的安装与配置

(1)、找到 path 变量后单击[编辑]按钮;弹出[编辑系统变量]对话框。在[变 量值]文本框中输入“c:\\jdk\\bin”,然后单击[确定]按钮。同时新建 CLASSPATH 变量;

(2)、在[系统变量]选项组中单击[新建]按钮,在[变量名]文本框中输入“CLASSPATH”, 在 [变量值]文本框中输入“ c:\\jdk\\lib\ools.jar ;c:\\jdk\\lib\\dt.jar;”然后单击[确定]按钮。

(3)、用同样的方法把 c:\\jdk 添加到 JAVA_HOME 环境变量中; 2、TOMCAT 的安装与配置

在这里设默认安装目录为 c:\\Tomcat 。更改环境变量,用同样的方法把 c:\\Tomcat 添加到 TOMCAT_HOME 环境变量中。启动 Tomcat,在浏览器 的[地址]下拉列表框中输入“http://localhost:8080/”,如果看到的是在左上方有一只可爱的小黄猫,则表示 Tomcat 安装成功。

1.2.4 运行环境的选择

信息系统是以计算机为主构建的,系统硬件和软件配置是系统设计的主要内容。本系统采用目前比较流行的B/S(浏览器和/服务器端)模式,因而,硬件配置要从此模式

4

本科生毕业设计(论文)

出发。另外,由于计算机的更新速度很快,考虑到将来的升级问题,这里所提供的硬件设备要比能够运行该系统所需要的最低硬件标准高出一些。

1、软件环境

操作系统:采用Windows XP或Windows XP以上; 前台开发工具:JSP

后台开发工具:Microsoft SQL Server 2005 ;JSP 2、硬件环境

服务器配置:应具有较高的配置,因为本系统服务器和客户端为一台机器,所有数据信息都保存在服务器中,各业务处理需要访问服务器端数据库。因此,配置为,CPU:AMD Athlon(tm) 64 X2 Dual Core Processor 4000+, MMX, 3DNow (2 CPUs);内存2G;

5

本科生毕业设计(论文)

第2章 需求分析

需求分析是指理解用户需求,就软件功能与客户达成一致,需求分析的任务就是解决“做什么”的问题,就是要全面地理解用户的各项要求,并表达所接受的用户需求,具有决策性、方向性、策略性的作用[4]。

2.1 系统功能概述

本系统主要完成前台的会员注册、用户登陆、选购商品、购物车、商品查询、会员管理、网上支付、取消购物、意见反馈,以及后台的客户管理、商品管理、订单管理、公告/反馈管理、支付管理等功能。通过以上功能实现完成网上商城购物系统。

2.1.1 系统功能需求

1、客户管理:主要完成对客户基本信息的查看与删除、客户基本信息的搜索;客户交易记录查看与删除的基本操作。

2、商品管理:主要完成商品的添加、修改、删除与商品搜索;商品分类的添加、修改、删除的操作。详细记载每个操作涉及的具体信息,如商品价格、数量、图片、描述等。

3、订单管理:主要完成对客户购买商品所下订单的查看、删除与订单搜索的操作。 4、公告/反馈管理:主要完成公告的发布、修改、查看、删除;客户信息的查看、回复、删除的操作。

5、支付管理:主要负责支付方式的添加、修改、查看、删除的操作。

6、管理员管理:主要包括管理员添加、管理员资料修改、删除与搜索管理员,只有系统管理员可以添加管理员,但所属权限不同,普通管理员(客户管理员、商品管理员、订单管理员、公告、反馈管理员)只具备一些基本操作功能,而系统管理员具有系统提供的最高权限。

7、前台商品展示:通过前台商品展示功能,实现前台及时更新销售的商品信息,并在后台可进行新的商品添加。

8、会员信息管理:修改当前登录会员的个人密码及具体的个人信息、查看订单信息、查看购物车信息、意见反馈。会员登录后即可对以上功能进行操作,如查看订单信息、查看购物车信息、修改个人信息等操作。

10、意见反馈管理:用户在登录此网页时如有问题可点击导航栏中的意见反馈功能进行发表问题,管理员会给予答复。

6

本科生毕业设计(论文)

2.1.2 用例分析

UML提供的用例图用于了解用户需求,用例图强调系统的整体性和外在的功能,强调系统对使用者的作用,强调系统与外部的交互,本文中采用用例进行需求分析。为了能够正确的找出系统的用例,需要确定系统的边界,找出系统的执行者。用例图图符如下表2.1所示。

表2.1 用例图图符

可视化图符

名称

系统

描述

系统边界,用例放其中

用例 用例图中的用例

关联 执行者

描述与系统功能有关的外部实体,可以是用户,也可以是外部系统

连接执行者和用例

1、系统边界:通过以上功能需求分析可知,系统边界为计算机系统和数据库服务器。

2、系统执行者:注册人员、匿名人员、管理员、服务人员

3、用例:查看网站消息、浏览商品、查看/删除购物车商品、维护订单、维护商品库等,本系统的主要用例图如图2.1所示。

7

本科生毕业设计(论文)

图2.1 网上商城购物系统主要用例图

2.1.3 概念层类图

概念层类图主要描述应用领域中的概念,一个概念模型应独立于具体实现的软件和程序设计语言。在类描述中一般只给出主要类,及主要类之间关系。类图是所有面向对象建模方法的核心,类图描述了系统的静态结构,由类及类间关系组成。类是具有相同属性和相同方法的对象的集合,基本图符如表2.2所示。

表2.2 概念层类图

可视化图符

名称 类

描述

具体的一个类,第一栏类名,第二栏属性,第三栏方法 一种分组机制,表示一个类图的集合

类的对象间的关系,包括聚集关系和组成关系

关联

本系统中主要的类有会员类Customer、商品类Product、留言信息Idea、管理员类Admin、

8

本科生毕业设计(论文)

订单类Orders,每个类中都有对应的字段、属性、方法,具体类的实现如图2.2所示。

图2.2 网上商城购物系统主要类图

2.2 系统性能要求

对系统性能的要求包括对系统时间规定,灵活性,输入输出,数据管理能力,故障处理要求和运行环境规定等的要求。

9

本科生毕业设计(论文)

2.2.1 系统灵活性

说明对该网站的灵活性的要求,即当需求发生某些变化时,该软件对这些变化的适应能力,如:

1、操作方式通俗易懂、容易上手,界面美观、大方,将Web程序转为控制台应用程序,符合用户操作习惯。

2、本网站可以运行在IE6以上的所有版本; 3、一个模块的改变不会影响其他的模块。

2.2.2 输入输出要求

能够对不完整的数据进行校验,保证数据的完整性和一致性,对特殊字符的过滤功能,输出能满足用户的需求。

2.2.3 数据管理能力要求

本网站采用的是SQL Server 2005数据库。具有较强的数据处理能力。记录的个数随用户多少不定,数据及其分量的存储量为10G,但能保证注册的用户都能登录进来,没有延时。

2.3 可行性分析

可行性分析是依据调查做出系统是否具有开发的价值。任何一个工程的立项都需要进行项目的可行性分析。为确保开发后系统能够正确长久的运行,可行性分析是必不可少的工作。本系统开发项目是一项复杂的高科技系统工程,可行性分析更是必不可少的。

2.3.1 技术可行性

伴随着计算机软硬件技术和网络技术的不断发展与完善。网上购物系统也更加规范化。网上商城购物系统的特点有以下几点:一是数据量大,要求及时查询的内容较多;二是数据处理较集中,内部数据处理量大,输出量大。三是即时处理,要不断更新最新的数据信息。基于以上三个特点,现有技术都可以达到要求的目标。在单机环境下组建管理信息系统,该系统的开发工作可以采用JSP做前台,SQL Server 2005做后台来进行。前台可视化程度较高,人机交互能力较强,操作简单,后台数据库功能强大,能够更好的支持运行的系统。因此存在技术可行性。

10

本科生毕业设计(论文)

2.3.2 经济可行性

经济可行性是指开发此项目能够带来长久的经济利益,并且符合开发方的目前经济能力。就网上购物商城的项目对于投资费用主要包括:设备费用,人员费用,材料费用,其他费用等。现有的大、中型网上商城都有自身的运营经费,只需要在软件开发上面投入少许经费就可以了,完全符合需求。

2.3.3 操作可行性

本系统要求运行环境配置并不高,可以在Windows 2003 Server操作系统平台上运行,Web服务器为Tomcat 6.0,数据库服务器为Microsoft SQL Server 2005,开发工具采用的MyEclipse。界面美观、易懂、容易操作、功能齐全,减少了客户上街购物的时间。

综上所述,从经济可行性、技术可行性、操作可行性上来说,系统开发是完全可行的。

11

本科生毕业设计(论文)

第3章 概要设计

系统开发工作经过需求分析阶段,已完全弄清了用户的需要,解决了“做什么”的问题,并且建立了系统的逻辑模型。本系统的开发阶段进入了概要设计阶段,开始着手解决“怎么做”问题。也就是根据需求分析阶段所确定的系统的逻辑模型,完成系统的物理模型的设计。

3.1 设计目标

网上服装商城主要分为前台系统和后台系统两部分,前台系统:除了可以查询商品的所有基本信息如商品名,价格及有关商品信息描述外,还能了解商品的最新动态,商品的销售排行,最新商品和特价商品的查询。用户可以进行购物,查看购物车及查看订单的操作。用户需要登录和注册个人账户,同时可以修改个人信息。后台系统:管理员需要对商品进行设置包括查看、删除、添加、修改等操作。管理员能对会员信息进行查看和删除,对订单信息能够进行查看、出货、删除,对公告进行设置,对数据的安全性和完整性有着严格的要求。具体方案如下: 1、前台购物系统

(1) 可实现在线注册;

(2) 注册成功后,可进行登录,购买自己想要买的商品; (3) 可在线修改自己的个人信息; (4) 可以在线发表意见或留言;

(5) 如果是17BUY 的用户,还可以在线查看自己以前发送的订单以及商品信息; 2、后台管理系统:

(1) 管理员登录;

(2) 查看所有注册用户的信息并对其编辑,并提供高级查询; (3) 查看/添加/删除商品信息,同时也提供了高级查询;

(4) 查看/编辑用户所发送成功的所有订单,并对其进行编辑同时也提供了高级查询; (5) 查看/添加/删除商品的主分类(菜单);

3.2 网上购物数据流图

数据流图是用以描述系统各项业务处理的过程,并利用数据流图详细、准确地说明业务处理过程中数据的收集、输入、传递、存储、加工的过程、输出的形式等。

12

本科生毕业设计(论文)

经过详细的调研工作,根据数据存储录入的实际情况绘出客户购物的第一层数据流图如图3.1所示,数据流图基本组成及符号说明如表3.1所示。

表3.1 数据流图符号

符号

含义 数据处理

加工数据

提供相关数据的人员或组织,对相关工作进行处理的人员或组织

用来存储部门以后使用的大量数据

说明

外部实体

数据存储

数据流 表示数据流动

网上商城系统第一层数据流图,如图3.1所示。

图3.1 网上商城第一层数据流图

接受订单第二层数据流图,如图3.2所示。

13

本科生毕业设计(论文)

图3.2 网上商城第二层数据流图

处理订单第三层数据流图,如图3.3所示。

图3.3 网上商城第三层数据流图

本系统客户购物流程,客户首先进入本网站,在登录栏处输入用户名和密码,系统进行验证客户身份,若系统没有检索到用户名,用户不能购物,否则进一步比较用户密码,若正确则登录成功;用户可选择某种商品,点击进入详细信息,查看详细售价等信

14

本科生毕业设计(论文)

息,若同意则放入购物车内,在确定所需要的产品都在购物车后,提交所选的商品,进入订单页面,系统会自动加载用户已注册的基本信息,在订单页面中用户只需要填写详细的通讯地址、联系方式、送货时段等信息,确定无误后,进行付账,这时系统会验证客户所填写的信息是否正确,若无误,则保存正确信息,否则不予处理,最后如果用户不再继续购物,则可退出登录。若客户没有注册,则只可以查询、浏览商品信息,当要将物品放入购物车内时系统会提示“请先登陆”,网上商城购物系统的购物流程图如图3.4所示。

图3.4 客户网上购物活动图

15

本科生毕业设计(论文)

3.3 面向数据流的设计方法

系统结构设计是在对现有系统充分了解的基础上,采用一定的方法设计出能描述新系统物理结构的系统结构图,主要给出构成系统的模块及模块间的调用关系,表现在图中一般是用不同的层次体现的。

结构化系统设计是在结构化程序设计的基础上发展起来的。是一种用于复杂系统结构设计的技术。运用用模块的方法,进行新系统控制层次关系和模块分解的设计,把用数据流程图表示的系统逻辑模型转变为用HIPO图表示的系统层次模块结构。

结构化系统设计的核心是模块分解设计,模块化显著提高了系统的可修改性和可维护性。按照功能划分模块,对照数据流图,对本系统进行逐个级别的功能分解。

3.3.1 系统层次图(H图)

层次图(Hierarchy Chart图)简称HC图或H图,用于表示软件模块的分层结构,一般与IPO表一起使用,形成HIPO图。系统后台H图如图3.5所示。主要包括客户管理、商品管理、订单管理、公告/反馈管理、支付管理、其他管理;前台主要功能模块如图3.6所示。主要功能有商品展示、会员注册、会员管理、购物车、收银台、在线公告。

图3.5 网上商城购物系统后台层次图

16

本科生毕业设计(论文)

图3.6 网上商城购物系统前台层次图

3.3.2 系统输入输出表(IPO表)

IPO表,即输入/处理/输出图,用来描述HIPO图中的具体模块,IPO表的功能是对HIPO图中的每个模块的详细描述及定义,描述分层图中一个模块的输入、输出和处理内容,模块的内部数据及模块之间的调用关系。IPO表定义的重点一般在底层的基本模块上。

后台商品信息IPO表如表3.2所示。通过IPO表可以清晰的看出此模块的输入、输出及处理过程。如下表可知此模块为商品信息模块,被商品信息调用,输入商品信息,即可添加、修改、删除商品信息,最后将添加结果呈现给用户浏览。

表3.2 商品信息IPO IPO表1 商品信息

系统名称:网上商城购物系统 模块名称:商品信息 作者:刘树旺 模块代码:2.0 日期:2014-05-01 调用的模块:2.1;2.2;2.3 被调用的模块:基本信息 输入:“商品信息”数据流

输出:“商品基本信息”数据库表

处理:打开“商品基本信息”数据库表。对“商品信息”数据库表中的数据进行核对、修改、删除、添加,并保存。关闭数据库表,结束操作。

后台客户信息IPO表如3.3所示。如下表可知此模块为客户信息模块,被基本信息调用,输入客户信息,即可对此信息进行修改、删除、搜索操作,最后将结果呈现给用户浏览。

表3.3 客户信息IPO

17

本科生毕业设计(论文)

IPO表2 客户信息

系统名称:网上商城购物系统 模块名称:客户信息 作者:刘树旺 模块代码:1.0 日期:2014-05-01 调用的模块:1.1;1.2 被调用的模块:基本信息 输入:“客户信息”数据流

输出:“客户基本信息”数据库表

处理:打开“客户信息”数据库表。对“客户信息”数据库表中的数据进行核对、修改、删除、搜索,并保存。关闭数据库表,结束操作。

前台购物车管理IPO表如3.4所示。通过IPO表可以清晰的看出此模块的输入、输出及处理过程。如下表可知此模块为购物车模块,即可对购物车进行添加商品、移除商品、清空商品等基本操作。

表3.4 购物车管理IPO IPO表3 购物车管理

系统名称:网上商城购物系统 模块名称:购物车 作者:刘树旺 模块代码:4.0 日期:2014-05-01 调用的模块:4.1 ;4.2;4.3 被调用的模块:网上商城购物系统 输入:“商品”数据流 输出:购物车信息

处理:对购物车进行商品添加、商品移除、商品清空

前台会员管理IPO表如3.5所示。通过IPO表可以清晰的看出此模块的输入、输出及处理过程。如下表可知此模块为会员管理模块,输入会员信息,即可对会员进行添加、删除、修改等基本操作,并可对会员的订单情况进行查询。

表3.5 会员管理IPO IPO表6 会员管理

系统名称:网上商城购物系统 模块名称:会员管理 作者:刘树旺 模块代码:3.0 日期:2014-05-01 调用的模块:3.1 ;3.2 被调用的模块:网上商城购物系统 输入:“会员信息”数据流 输出:会员表信息及订单表信息

处理:输入会员账号和密码进行资料修改,查看订单详情。

3.4 系统数据库设计

数据库设计是管理信息系统的最重要的组成部分之一。数据库设计是对于一个既定的环境,进行的逻辑设计。因此,是管理信息系统的重要组成部分。数据库设计的核心问题是设计好的数据模型。在目前的数据库管理系统中有层次模型,网状模型、关系模

18

本科生毕业设计(论文)

型三种数据模型。其中,关系模型具有较高的数据独立性,也很方便。目前这里采用SQL Server 关系数据库。该数据库对行增、删、编辑、统计、显示。其中的排序和索引功能,对数据快速定位、查询提供了有利条件。

3.4.1 数据库设计原则

1、数据的共享性。 2、数据独立性。

3、数据的完整性,即保证数据库存中数据准确。

4、灵活性,可在相当短的时间内回答用户的各种各样的复杂而灵活的查询问题。 5、安全性与保密性,做到对数据指定保护级别和安全控制。

3.4.2 数据库概念结构设计

概念模型的表示方法很多,常用的是E-R图。E-R图是用来分析数据关系的。下面具体列出网上商城购物系统主要的实体图及E-R图。

管理员表实体图如图3.7所示。主要有用户名、类型、账号、邮箱、电话。

图3.7 管理员实体图 管理员 类型 电话 用户名 账号 邮箱 用户信息表实图如图3.8所示。主要有用户名、密码、头像、问题、答案等。

问题 头像 密码 用户名 用户 图3.8 用户信息实体图

答案 住址 邮箱 电话

订单表实体图如图3.9所示。主要有订单号、支付、地址、邮箱、用户名等。

19

本科生毕业设计(论文)

邮箱 地址 支付 订单号 订单 图3.9 订单实体图

用户名 时间 总价值

详细订单表实体图如图3.10所示。主要有订单号、商品号、单价、数量。

商品号 订单号 单价 数量 订单详情

图3.10 详细订单实体图

商品信息表实体图如图3.11所示。主要有类型、商品号、商品名、价格、数量、图片、描述、时间。

图3.11 商品信息实体图

类型 商品 时间 商品名 商品号 价格 数量 图片 描述

留言表实体图如图3.12所示。主要有编号、用户、留言、时间、回复。

编号 用户 留言 时间 回复 留言表 图3.12 留言实体图

20

本科生毕业设计(论文)

公告表实体图如图3.13所示。主要有编号、信息、发布者、头像、时间。

发布者 头像 时间

编号 信息 公告表 图3.13 公告实体图

实体间E-R图如图3.14所示。每个部门由专门的人员领导,而一个部门由多个员工组成,员工每天的工作是进行销售商品及对商品的管理,顾客在进入此网站时便可对商城所提供的商品进行订购,形成详细的订单细节,最后客户确定信息无误后,便可对其进行支付,形成完整的购物系统。一个部门有多位员工、一位员工管理多种产品、一种产品可以存在多张订单上、每张订单对照着指定的客户、客户需要支付所有订单的金额。

部门 1 属于 n 员工 n 应收账款 n 支付 1 客户 1 订货 n

图3.14 主要实体-关系图

1 订单 组成 n 订单细节 1 管理 n 1 产品细节 产品 3.4.3 数据库表设计

根据E-R图可以对数据库进行设计,以下列出主要的数据表。

会员基本信息表,用于存储会员信息,客户在网上订购时首先要注册新的会员信息,

21

本科生毕业设计(论文)

只有注册成为会员才能进行后面的订购及其他操作如订货、订单查询等操作,所以注册会员是必须的,具体字段如表3.6所示。

表3.6会员信息表

属性名称 c_name c_pass c_header c_phone c_question c_answer c_address c_email

含义 用户名 密码 头像 电话号码 问题提示 问题答案 地址 邮箱

数据类型 Varchar(30) Varchar(30) Varchar(30) Varchar(11) Varchar(30) Varchar(30) Varchar(8) Varchar(40)

主要属性 主键Not null Not null Not null Not null Not null Not null Null Not null

说明

用于存储会员用户名 用于存储会员密码 用于存储会员头像 用于存储会员电话 用于存储会员问题提示 用于存储会员问题答案 用于存储会员地址 用于存储会员邮箱

商品信息表主要用于商品管理模块中的商品信息管理。管理员录入好数据信息后,系统便可顺利的进行其他模块对数据库进行操作,如表3.7所示。

表3.7 商品信息表

属性名称 p_type p_id p_name p_price p_quantity p_image p_description p_time

含义 商品类型 商品编号 商品名称 商品价格 商品数量 商品图片 描述信息 添加时间

数据类型 Varchar(30) Varchar(10) Varchar(40) Float(8) Int(4)

Varchar(100) Varchar(900) Char(10)

主要属性 not null 主键not null Not null not null Not null Not null Not null Null

说明

用于存储商品类型 商品表主键 用于存储商品名称 用于存储商品价格 用于存储商品数量 用于存储商品图片 用于存储商品描述信息 用于存储商品添加时间

订单表用于存储客户订货的基本信息,方便日后客户查询及管理员配货,确保每份订单能正确送到客户手里。如表3.8所示。

表3.8 订单表

属性名称

含义

数据类型 Char(10) Varchar(300) Varchar(80) Varchar(40) Varchar(30) Char(10) Float(8)

主要属性 主键not null not null Not null not null Not null Not null Not null

说明

订单表主键

客户订单支付方式 客户订单送货地址 客户订单邮箱 存储客户名字 客户订购时间 客户订单总价值

order_id 编号 order_payment 支付方式 order_adress 地址 order_email 邮箱 order_user 订购者 order_time 订购时间 order_sum 总价值

管理员信息表,主要用于整个商场的日常维护与管理。在此表中录入相应信息后,

22

本科生毕业设计(论文)

系统运行后便可在的系统登录时进行身份验证,如表3.9所示。

表3.9管理员信息表

属性名称 a_name a_pass a_header a_phone a_email a_key

含义

数据类型

主要属性 主键

Not null Not null Null Null Not null

说明

用于存储管理员用户名 用于存储管理员密码 用于存储管理员头像 用于存储管理员联系电话 用于存储管理员点子邮箱 用于存储管理员所属权限

Varchar(3) 管理员账号

Varchar(3) 管理员密码

Varhar(30) 头像

Char(11) 联系电话

Varchar(4) 电子邮箱

管理员关键字 Int(4)

管理员权限表,主要用于限定管理员后台管理的权限,分工协同工作,各司其职,没有权限不可以随便访问其他的功能。保证了账户的安全性,如表3.10所示。

表3.10 管理员信息表

属性名称 a_key a_type

含义 权限关键字 权限类型

数据类型 Int(4)

Varchar(2)

主要属性 主键

Not Null

说明

存储管理员的权限 存储管理员权限类型

用户留言信息表,主要用于卖家与卖家之间的及时沟通和对商品的评价,买家买前询问和买后售后服务均可以在此留言。也可以发表购物后对商品的评价。如表3.11所示。

表3.11用户留言信息表

属性名称

含义

数据类型 Varchar(1)

Varchar(3) Varchar(3) Varchar(9) Varchar(9) Char(10) Char(10)

主要属性 主键 Not null Not null Null Null Not null Not null

说明

存储操作者的编号 存储操作员姓名 存储操作者头像 存储操作员发送消息 存储操作员回复消息 存储操作员发消息时间 存储操作员收消息时间

Id 操作人id c_name 操作员姓名 a_header 头像 New_mes

发出消息

s

Re_mess 回复消息 New_time 发消息时间 Re_time 回消息时间

23

本科生毕业设计(论文)

第4章 详细设计

网上商城购物系统采用JSP编写,利用SQL Server 2005数据库存储信息。网页按实际需求及功能模块编写,按如下顺序详细介绍,网站后台主页面、前台商品销售页面、购物车的实现、生成订单的过程、用户意见反馈、订单管理的实现、商品管理的实现、公告管理、其他管理。

4.1 代码标识设计

代码设计是一项复杂的问题。一个好的代码对于系统的开发和查询是一件极为有利的事情。在信息系统中,代码是人和机器的共同语言,是实现管理信息系统的关键,其目的是设计出一套为本系统各部分所共用的、优化的代码系统。代码设计能够直接影响到数据进行处理时是否方便节省空间,是否提高处理速率。因此设计出适合新系统的代码体系是非常必要的。

4.2 代码设计原则

1、唯一性:每个代码仅代表唯一的实体或属性[6]。

2、标准化:尽可能用国际、国家或行业标准,以便交换与维护。 3、合理性:代码结构要合理,反映对象的特征,有标志性。

4、可扩展性与灵活性:应当适应新的变化,当增加新代码时可以很快调整。 5、易识别性:应尽量满足人机识别。

4.3 系统主要功能流程及模块

4.3.1 会员管理流程

会员管理流程说明:会员输入正确用户名和密码即可登录进入会员后台管理,若输入错误则将重新登录,进入后台后,会员可更改个人资料信息,确认无误后,即可提交更改后的信息,系统会将结果保存到会员表中。会员管理流程如图4.1所示。

24

本科生毕业设计(论文)

图4.1 会员管理顺序图

4.3.2 会员购物流程

会员购物说明:会员输入正确的用户名和密码后进入主页面模块,如果输入不正确则重新登陆,进入主页面后可选择商品,确认后放入购物车,还可以继续购物直到选完为止,然后下订单,返回给客户刚刚选择的商品信息。会员购物如图4.2所示。

图4.2 会员购物顺序图

25

本科生毕业设计(论文)

4.3.3 生成订单流程

生成订单流程说明:会员登录到本网站后即可选购商品,当选定商品后可放在购物车内,确定不在购物后,即可提交订单,进入详细订单界面,填写详细的通讯方式及地址,即可生成订单,填写完成的订单结果会返回给客户查看。订单处理流程如图4.3所示。

图4.3 订单处理顺序图

4.4 网站后台管理主页

后台管理主要完成以下功能:客户管理包括查看/编辑所有客户资料、客户资料搜索;商品管理包括查看/编辑所有商品、商品资料搜索、添加商品、查看/编辑商品主分类、添加商品主分类;订单管理包括查看/编辑所有订单、订单查询;公告/反馈管理包括查看/编辑公告、发布公告、查看/回复客户信息;支付管理包括查看/编辑支付方式、添加支付方式;其他管理包括查看/编辑所有管理员、查询搜索、添加管理员。程序运行结果如图4.4所示。

26

本科生毕业设计(论文)

图4.4 后台主页面模块

实现过程:

页面的设计是由几个JSP页构成的,在主页面中调用方法及属性。

选择任意一个菜单项,在右边框架中显示相应的信息。 查看/编辑所有客户资料 客户资料搜索

4.5 前台商品销售

由于网上商城购物系统是一个网上电子商务系统,发布在互联网上,因此外观的设计对整个系统来说是很重要的,网上商城的首页是浏览者最先看到的欢迎式的页面,所以网站的首页极为重要,首页设计的好坏将直接影响到顾客的购买欲望。在本网站的首页中用户不但可以在第一时间内掌握商品的详细信息、公告信息还可以查看商品类型、管理会员信息、查看最新动态新闻等。在此网站的设计过程中不仅要在首页实现各种功能的展示,而且要兼顾首页的美观,使网页做到功能完善,页面简洁大方。在前面的需求分析中,已经对主页的要求有了一个大概的说明,而在此处,就要全方位地开始设计

27

本科生毕业设计(论文)

该系统的首页了。

1、 在页面的布局上由于网上商城的前后台功能模块较多,所以决定本站的后台将放到一个独立的页面上。和大多数网站一样,此网站把前台的主菜单放在首页的顶部。在做完网页顶部设计以后,剩下的板块留给用户登录、商品展示、公告栏等模块。为了便于规划将余下的空间分为左右两部分。左边部分为普通用户登录的入口;页面的右部为重点推荐的商品展示部分。

2、 由于系统面向的用户为非计算机专业用户,所以用户不可能了解JSP网站运行的原理,这决定了在设计的过程中要努力做到界面简洁,操作方便。使用户通过点击鼠标来完成大部分操作,体现了用户的友好。

根据这些原则,并经过精心的设计,最终形成的网站美观大方的首页。首页的主要部分实现客户选货、订货、查询商品、查询订单、放入购物车、注册会员、付款、查看公告、意见反馈等功能。通过直观、精美的界面设计使用户操作方便、购物愉快。客户可以按多种查询方式进行查询商品,如男士上衣专区、女式上衣专区等。程序运行结果如图4.5所示。

图4.5 会员登录后前台主界面

实现过程:

1、由于系统的大部分功能都要涉及到对数据库的操作(Select 、Insert、Update、Delete),所以本系统将各个表的数据封装成类的形式进行操作,在类中定义字段、属性、方法,主要实现数据的添加、修改、删除、查询及即时更新的功能。这样使得工程的结

28

本科生毕业设计(论文)

构清晰,思路明了。例如public Vector addCart(String p_id,Vector cart)添加商品的方法、public int deleteCart(int p_id,Vector cart)删除方法。

2、在开发的过程中经常需要考虑字符编码问题。在本系统中为Convert.java类,方法为public String method(String sql),部分代码如下:

byte temp[]=sql.getBytes(\"ISO-8859-1\"); sql=new String(temp);

4.6 购物车的实现

购物车主要用来暂时保存挑选出来的商品,主要包括对所选商品的添加、查看购物车、购买数量的修改、清空购物车四个部分。用户登录后,单击商品展示中的“购买”按钮,可以将对应的商品添加到购物车内,购物车内将会保存商品的名称、单价、购买数量、购物车内全部商品的合计金额。如果用户确认购买当前购物车中的全部商品,可以单击“去收银台结账”按钮,进行订单处理。程序运行结果如图4.6所示。

图4.6 客户购物车界面

实现过程:

购物车主要用来暂时保存挑选出来的商品,主要包括对所选商品的添加、查看购物车、购买数量的修改、清空购物车四个部分。用户登录后,单击商品展区中的“购买”按钮,可以将对应的商品添加到购物车内,购物车内将会保存商品的名称、单价、购买数量、购物车内全部商品的合计金额。查看购物车页面时,单击“清空购物车”按钮可以从购物车中移去指定商品;在tableBorder_B1中对应的数量文本框中输入数量后可直

29

本科生毕业设计(论文)

接修改购买数量;如果用户确认购买当前购物车中的全部商品,可以单击“去收银台结账”按钮,进行订单处理。 1、添加至购物车

添加至购物车页my_cart.jsp主要用于将商品信息暂存到购物车中。添加购物车的关键代码如下:

String p_id=request.getParameter(\"p_id\"); Vector cart=(Vector)session.getAttribute(\"cart\"); CartBean cb=new CartBean(); cart=cb.addCart(p_id,cart);

if(cart!=null) { }

为了方便随时查看购物情况,在网站的用户信息区域中加入了我的购物车的超连接,通过查看购物车可以将用户放入购物车中的商品信息显示出来。 3、修改购物车中指定商品的购买数量

购物车中还要加入修改指定购买数量的功能。在购物车中由于数量被存放在tableBorder_B1中,所以需要将用户所指定的该行转换为文本框形式方便修改,用户只需在某种商品后面的文本框中输入相应的数量,然后将光标的焦点移到其他位置上就可以修改要提交表单的数量。

session.setAttribute(\"cart\response.sendRedirect(\"my_cart.jsp\");

2、查看购物车

4.7 生成订单的过程

生成订单是网上购物车的最终目的,前面所有功能都是为最后生成一个用户满意的订单做准备的。生成订单时不仅要保存用户订单中所购买的商品信息和订单信息,同时还要返回一个可供用户随时查询的订单号。用户单击查看购物车页面中的“去收银台结账”按钮时就会进入到收银台页面填写订单信息,在该页面中系统会根据登录的用户名自动填写用户的基本信息,收银台的运行页面如图4.7所示。

30

本科生毕业设计(论文)

图4.7 生成订单模块运行结果

实现过程:

用户在收银台页面填写订单信息后,单击“提交”按钮将进入到保存订单页面cart_checkout.jsp 将订单信息分别保存到订单表中,在确保数据的正确性后即可点击“确定订购”按钮。

页面的设计是建立脚本信息,使用javascript,编写类及方法,在页面中调用方法及属性。function check_pay(form){if(form.pay_fangshi.value==\"\"){alert(\"请选择您的付款方式\");form.pay_fangshi.focus();return false;}if(form.pay_address.value==\"\"){alert(\"请输入您的地址\");form.pay_address.focus();return false;}if(form.pay_email.value==\"\"){alert(\"请输Eamil\");form.pay_email.focus();return

false;}if(form.pay_email.value.indexOf(\"@\")==-1||(form.pay_email.value.indexOf(\".\")==-1)){alert(\"错误的Email格式,请填写正确的电子邮箱\");form.pay_email.focus();return false;}。_down.gif'; break; }

4.8 用户意见反馈

由于商城的销售量及业务较多,每天的工作量较大,为了方便管理员及时了解用户

31

本科生毕业设计(论文)

情况,因此用户意见反馈是有必要的,为了便于查看用户意见。如4.8所示:

图4.8 意见反馈界面

实现过程:

页面的设计是由几个JSP页构成的,在主页面中调用方法及属性。

为了方便随时查看意见反馈情况,在网站的导航栏区域中加入了意见反馈的超连接,通过查看意见反馈可以了解些常见问题解决方法。显示反馈意见至意见反馈页message.jsp主要用于将意见反馈信息显示出来。

4.9 订单管理的实现

订单管理模块主要实现对订单信息的管理,可以对订单进行浏览、修改的功能,订单搜索功能等功能。程序运行结果。如图4.9所示。

32

本科生毕业设计(论文)

图4.9 订单管理模块运行结果

实现过程:

主要通过编写的order_all.jsp用来显示订单记录,每页只能显示10个订单记录,超<%for(intj=1;j<=maxPage;j++){out.print(\"  href='order_all.jsp?page=\"+j+\"'>\"+j+\"\");}}else{out.println( \"

\" + \"没有订单记录......\" + \"
\");}}}%>

出时要用到分页技术,用来控制页面的美观,部分代码:

4.10 商品管理的实现

商品管理模块主要实现对商品基本信息的管理,可以对商品信息进行浏览、添加、修改的功能,商品资料搜索、对商品主分类进行浏览、添加、修改的功能等功能。程序运行结果如图4.10所示。

33

本科生毕业设计(论文)

图4.10商品模块运行结果

实现过程:

商品资料搜索功能在product_select.jsp中实现,可以按商品类型或者商品ID号来搜索。在前台有一区域专门用于搜索商品,搜索商品中使用了JavaScript脚本。部分代码:

function check_name(form){if(form.p_type.value==\"\" && form.p_id.value==\"\"){alert(\"搜索至少要输入一项\");form.p_type.focus();return false;}}

4.11 公告管理

公告管理模块主要实现发布商城新闻,可以对公告进行浏览、添加、修改的功能,查看、回复客户信息功能等功能。如图4.11所示。

34

本科生毕业设计(论文)

图4.11 公告模块运行结果

实现过程:

管理客户公告功能在notice_all.jsp中实现,包括修改、删除、查找等。在前台有一区域专门用于显示公告,发布公告中使用了JavaScript脚本。部分代码:

function check_message(form){if(form.c_message.value==\"\"){alert(\"请填写意见或者建议\");form.c_message.focus();return false;}}

4.12 其他管理

其他管理模块主要实现对管理员基本信息的管理,可以对管理员信息进行浏览、添

加、修改、查找的功能,而且可以设置管理员的权限,设置管理员的权限分为客户管理员、商品管理员、订单管理员、公告/反馈管理员、系统管理员;若为系统管理员则可对系统中所有管理员进行管理。程序运行结果如图4.12所示。

35

本科生毕业设计(论文)

图4.12 其他模块

实现过程:

调用admin_reg.jsp完成用户添加功能,在源代码中编写JavaScript脚本来约添加管理员信息,部分代码如下:

function check_info(form){if(form.a_name.value==\"\"){alert(\"请填写您的用户名!\");form.a_name.focus();return false;}if(form.a_name.value.length<6 || form.a_name.value.length>30){alert(\"用户名的长度必须在6-20之间!

\");form.a_name.focus();return false;}if(form.a_pass.value==\"\"){alert(\"请填写您的密码!\");form.a_pass.focus();return false;} }

36

本科生毕业设计(论文)

第5章 系统测试

系统测试是基于系统整体需求说明书的测试。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。

系统测试的对象不仅仅包括需要测试的产品系统的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试[8]。

5.1 程序的测试方法

系统测试是保证系统质量与可靠性的最后关口,是对整个系统开发包括系统分析,系统设计和系统实施的最终审查。因此,对系统进行测试,是系统开发中必不可少的阶段。

系统测试的基本原则:基于以上系统测试的概念,在进行系统测试中应遵循以下原则。

1、 测试必须由专业人员来完成。 2、 所有测试都应该追溯到用户需求。

3、 测试应该由小规模测试逐步过渡到大规模测试。 4、 在测试前必须制定完整的测试计划。 5、 在测试前选择完备的测试用例。

软件测试的核心技术是软件测试用例,软件测试的方式分为白盒技术和黑盒技术。白盒测试又称结构性测试,是内部人员进行的测试;黑盒测试测试着重于软件的功能的测试,测试人员必须使用测试用例。黑盒测试的技术分为等价划分、边界值分析、错误推测[9]。

等价划分原则:若规定了输入个数选择一个有效等价类,两个无效等价类;若输入是一组值,需要对属性进行判别,选择不同的属性输入;若输入是整数选正整数、零、负整数;若是处理时,选空表、满表、典型表[10]。 1、 会员注册模块的用户名等价类表,如表5.1所示。

37

本科生毕业设计(论文)

表5.1 用户名等价类表

输入条件 用户名组成 用户名位数

有效等价类

以数字、字母构成(1) 字符个数6-20个(3) 字符个数为0个(4)

无效等价类

非数字、非字母(2) 字符个数小于6(5) 字符个数大于20(6)

测试用例:

输入测试数据:LKP123456

预期结果:有效(包含有效等价类(1)(3)) 输入测试数据: $8,76543210

预期结果:无效(包含无效等价类(2)(3))

解决方法:将特殊字符进行过滤,使用户不能输入不符合要求的字符,并在输入无效时给出提示信息。

2、会员注册模块的身份证号测试。如表5.2所示。

表5.2 身份证号等价类表

输入条件 身份证号组成

有效等价类

以数字、字母、. 、@构成(1)

无效等价类

缺少 . 、@符号(2)

测试用例:

输入测试数据:huhuailei810@163.com 预期结果:有效(包含有效等价类(1)) 输入测试数据:hhl2011@sina.com.cn 预期结果:有效(包含有效等价类(1)) 输入测试数据:210abc@163

预期结果:无效(包含无效等价类(2))

5.2 软件的可用性测试

1、JDK配置错误

图5.1 JDK配置错误

38

本科生毕业设计(论文)

解决方法: JAVA_HOME: CLASSPATH: Path:

C:\\Program Files\\Java\\jdk1.6.0_02

.;%JAVA_HOME%\\lib;%JAVA_HOME%\\lib\ools.jar

%JAVA_HOME%\\bin;%JAVA_HOME%\\jre\\bin

2、空指针异常

图5.2 空指针异常

解决方法:

发现连接数据库语句中连接密码错误”870811”,更正为”870810”

修改前:

conn=DriverManager.getConnection(\"jdbc:sqlserver://localhost:1433;DatabaseName=17by\sa\

修改后:

conn=DriverManager.getConnection(\"jdbc:sqlserver://localhost:1433;DatabaseName=17by\sa\

39

本科生毕业设计(论文)

结 论

经过努力,历时十四周的毕业设计已经结束了,网上商城购物系统已基本完成,并且达到了目标的要求。在整个软件的开发过程,从需求分析、概要设计,再到详细设计、系统实施以及系统测试,整个过程全部按照软件工程的指导思想进行。其功能基本符合用户需求,能够完成商城后台管理的各项业务功能。前台具有前台在线商品销售,客户可对所需商品进行查询、选择、订购、付款、查询订单、会员注册、在线交易等基本的电子商务平台功能。

由于对Java语言在掌握和运用上仍有许多不足之处,所以编写的程序比较肤浅,并且存在许多不足之处。个人对语言的掌握和对工具的使用上还不够熟练和精通,所以在软件开发中遇到了许多问题,例如:在连接数据库和对数据库的添加、删除、更新操作中都出现过操作失败的错误,有些是SQL语句书写错误,有些是由于不够细心把字段名写错或字段名的顺序颠倒所造成的。另外,由于对MyEclipse软件开发工具的了解不足,使用过程中遇到过许多困难也出现过错误,所以在程序中难免会有一些漏洞和不合理之处,有待今后深入学习和研究后改之。

40

本科生毕业设计(论文)

致 谢

在本次毕业设计实践中,首先要感谢指导教师对学生认真负责的态度,为本人提供了非常有益的指导意见。在毕业设计的这段时间,赵老师深厚的理论水平,严谨的教学态度,强烈的责任心和对学生的无私关怀,将使本人受益匪浅。给予本人很大的帮助,使本人得到实质性的提高。这对于本人以后的工作和学习都是巨大的财富。

在做这个系统的过程中,程序调试给本人留下的印象最深,在调试上花的时间最多,这说明了本人在平时学习的时候学的不够扎实,对错误研究不够,编写代码的时候不够仔细,还有就是缺乏足够的耐心,使得程序运行时产生很多错误不得不重新查找错误所在,从而浪费了很多时间和精力。经过毕业设计的训练,本人学到很多,也成熟许多。在整个毕业设计的过程中指导老师和同学都给本人许多帮助,特别是赵老师严谨的教学作风、深厚的理论水平、热情的待人态度给本人留下了深刻的印象。赵老师为本人提出一些关键性的问题和宝贵的意见,这使本人对所学的知识又有了新的看法和理解,提高了本人的实用技能,为本人以后的工作奠定了坚实的基础。

41

本科生毕业设计(论文)

参考文献

[1] Juan Lipson Vuong.A semantics-based routing scheme for grid resource

discovery[M].E-Science: First International Conference on E-Science and GridComputing,2005:58-70,90.

[2] Watts D J.Small Worlds. The dynamics of networks between order and

randomness[P].America: 56A2579BB6,l999-05-13

[3] [美]Bruce Eckel.Thinking in Java.机械工业出版社,2004.2: [4][美]H.M.Deitel.Java程序设计教程(第5版).清华大学出版社,2004.3: [5][美]Cay S.Horstmann.Java核心技术(第6版).机械工业出版社,2003.10: [6]倪晓秋,季民.J2EE案例开发.中国水利水电出版社,2005.1:

[7][美]Pallavi Jain Shadab Siddiqui.J2EE专业项目实例开发(修订版).中国水利水

电出版社,2007.1:

[8]吴其庆.J2EE程序设计经典教程.冶金工业出版社,2006.2:

[9]思志学.程序天下-J2EE整合详解与典型案例.电子工业出版社,2008.1: [10]张恩建.Java网页开发经典教程.机械工业出版社,2005.4: [11]李兴华.Java实战视屏教程配套丛书.人民邮电出版社,2009.3: [12]李国文.Jsp基础技术合集.大连理工出版社,2010.2:

[13] [美]Kenneth Louden. Programming Languages.北京.电子工业出版社,2003 [14]Binstock,Rex.Practical Algorithms for Programmers.美国:Addison-Wesley, 2003 [15] Effective Java Programming Language Guide.美国: Joshua Bloch,2001

42

本科生毕业设计(论文)

附录

Software Testing Overview

Software Testing Overview:

1. A software testing by the \"verification\" and \"confirm the validity\" activities constitute the

overall

1) verification is to verify whether the software has been implemented correctly defined in the product specification system functions and features.

2) \"confirm the validity\" is to confirm whether the software developed to meet the real needs of the user activity \"

3) software development process arising from requirements specification, outline design specifications, detailed design specifications and source code are software testing objects. 2. The principles of software testing

1) as soon as possible and in a timely manner Testing

2) test cases and test data should be and the corresponding expected results of two parts. 3) the program submitted after the test shall be conducted by a dedicated testers for testing.

4) test case input conditions should include reasonable and unreasonable input conditions.

5) strict implementation of software test plans, test randomness excluded 6) full attention to the phenomenon of the test among the groups.

7) respond to each one to do a comprehensive examination of the test results

8) Save the test plans, test cases, error statistics and the final analysis, for the maintenance work to provide sufficient information. 3. Flaw is the antithesis of quality

To understand what is defective, it is clear that \"the concept of quality.\" Because the relative quality of two defects exist, contrary to the quality, contrary to the wishes of customers, can not meet the requirements of customers, it will cause defective or product defect. Quality is \"the product or service to meet the needs expressed or implied by the inherent ability of a collection of features and characteristics of the\" software quality software products to meet the requirements and implicit related to the ability and needs all the features

43

本科生毕业设计(论文)

and characteristics.

1) software product quality to meet user requirements level. 2) a combination of various properties of the software level.

3) the user a comprehensive reflection of the degree of software products. 4) in the course of the software to meet user requirements level. 4. Categories of product quality

A) functional requirements: general requirements specifications and other documents given in the corresponding description

2) non-functional requirements: validity, reliability, maintainability, compatibility, scalability, portability.

3) the quality of software user needs:

Able to properly use all the functionality needed to meet requirements specification. Powerful, and beautiful interface, easy to use. Content of health, good for life and work. User data security, protection and compatibility. Can gain more perfect a new product or software service.

Software reliability is high, there is no time to use the software services barriers. 4) the business needs of software quality

Development costs, maintainability, scalability, portability, compatibility 5. Software defects

Definition: any program, system problems, and product manuals inconsistencies, can not meet the needs of users. The performance of software defects:

1) functions, features not implemented or partially implemented. 2) design is unreasonable, flawed

3) actual results and expected results are inconsistent

4) running mistakes, including outages, system crashes, the interface is confusing 5) data results are incorrect, lack of precision

6) user can not accept other problems, such as memory take too long, unsightly interface software defect causes: 1) the project deadline pressure 2) the complexity of the product 3) poor communication

44

本科生毕业设计(论文)

4) Developer fatigue, excessive pressure or disruption 5) the lack of adequate knowledge, skills and experience 6) can not be connected to customer needs 7) Lack of motivation

6. Quality assurance and testing the relationship

Software Quality Assurance: the software product is planned for review and audit to verify that the software is up to standard systems engineering. Software testing can not test the program. Software testing software testing throughout the definition and development of the whole process.

7. Classification of software testing:

1) Press the test object or scope of classification, such as unit testing, documentation, testing, system testing

2) Classification by testing purposes, such as functional testing, regression testing, performance testing, reliability testing, security testing and compatibility testing, etc.

3) measured according to whether the software testing process is executed, divided into static and dynamic testing based on test Whether for the system's internal structure and the specific algorithm to complete the test, can be divided into white box and black box testing 8. Software testing stage

Specification review -> System and program design review -> unit testing -> integration testing -> Functional Test -> System Test -> Installation Test -> Acceptance Test 9. Unit Testing

Unit testing is targeted at the smallest unit programming system - module or component, in the coding phase, the test for each module, mainly through the white-box testing methods, the internal structure of the departure from the program design test cases to check the program module or shows the functions that have been implemented are consistent with the definition of the function, and coding errors. Multiple modules can be parallel, opposing tested often to write a driver modules and stubs. 10. Integrated Test

Integration testing, also known as assembly and testing, joint testing, subsystem testing, unit testing, based on the modules are assembled in accordance with the design requirements simultaneous testing, the main goal is to find the interface between the modules related issues. 11. Functional Test

Generally required after integration testing, and for applications to be tested. Functional

45

本科生毕业设计(论文)

test is based on the product functional specification, it should have known product features, from the user perspective for functional verification has confirmed whether each function can be used normally.

12. Equivalence partitioning methods

The program may be divided into several sub input data set, selecting from each subset of data as a representative test, equivalence class is a subset of the input field, for each of the subset of the input data is equivalent to the role of The. Valid and invalid equivalence classes are divided into equivalence classes. In the analysis on the basis of requirements specification into equivalence classes, equivalence classes are listed in the table. Design test cases, we should also consider these two equivalence classes. Because the software only to be able to receive reasonable data, but also able to withstand unexpected graduate school. After testing positive and negative to ensure that the software has a higher reliability. Enter the input condition specifies a set of values or states that the \"how to\" conditions of the case, you can establish a valid and one invalid equivalence class equivalence class. Boundary value analysis methods: a black-box testing methods equivalence class partition method is a supplement. People from the long-term testing experience, the number of errors occurred in the input or output range on the border, rather than inside the input range. Therefore, the boundary conditions for a variety of audit test cases, you can find out more errors. Methods determination table: Another practical application, a number of input is constituted by a number of factors, rather than a single factor, which is a combination of multiple factors need. For multiple factors can sometimes be combined directly on the input conditions design, does not require causal analysis, namely, direct method using decision tables. A decision table from the \"conditions and activities\" of two parts, which is listed in a planned four conditions required for the implementation of activities combinations, all possible combinations of conditions defined in a series of choices, and testing activities need to consider every option. Decision table elements:

1) Conditions pile, all of the conditions listed issues.

2) Action pile a list of possible actions to be taken to tackle the problem. 3) Conditions items listed for the specific conditions of the assignment.

4) action items listed in the conditions like (various values) combinations of circumstances should take action.

46

本科生毕业设计(论文)

译 文

软件测试概述

软件测试概述:

1. 软件测试是由\"验证\"和\"有效性确认\"活动构成的整体

1) 验证是验证软件是否已正确地实现了产品规格说明书所定义的系统功能和特性。 2) \"有效性确认\"是确认所开发的软件是否满足用户真正需求的活动\"

3) 软件开发过程中所产生的需求规格说明,概要设计规格说明,详细设计规格说明以及源程序都是软件测试的对象。 2. 软件测试原则

1) 尽早地和及时地测试

2) 测试用例应当又测试数据和与之对应的预期结果两部分组成。 3) 在程序提交测试后,应当由专门的测试人员进行测试。 4) 测试用例应包括合理的输入条件和不合理的输入条件。 5) 严格执行软件测试计划,排除测试的随意性 6) 充分注意测试的当中的群体现象。 7) 应对每一个测试结果做全面的检查

8) 保存测试计划,测试用例,出错统计和最终分析报告,为维护工作提供充分的资料。

3. 缺陷是质量的对立面

要了解什么是缺陷,就必须清楚\"质量的概念\"。因为缺陷是相对质量二存在的,违背了质量,违背了客户的意愿,不能满足客户的要求,就会引起缺陷或者产品缺陷。 质量是\"产品或服务所满足明示或暗示需求能力的固有特性和特征的集合\" 软件质量是软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。

1) 软件产品质量满足用户要求的程度。 2) 软件各种属性的组合程度。 3) 用户对软件产品的综合反映程度。 4) 软件在使用过程中满足用户要求的程度。 4. 产品质量的分类

1) 功能性需求:一般在需求规格说明书等文档中给出相应的描述

2) 非功能性需求:有效性,可靠性,可维护性,兼容性,可扩展性,可移植性。 3) 软件质量的用户需求:

47

本科生毕业设计(论文)

能正常使用全部所需的功能,符合需求规格。 功能强大,而且界面美观,易用。 内容健康,有益于生活和工作。 用户数据的安全,受保护和兼容。

能及时得到新的产品或更完美的软件服务。 软件可靠性很高,使用软件服务没有时间障碍。 4) 软件质量的企业需求

开发成本,可维护性,可扩展性,可移植性,兼容性 5. 软件缺陷

定义:任何程序,系统中的问题,和产品说明书的不一致性,不能满足用户的需求。 软件缺陷的表现:

1) 功能,特性没有实现或者部分实现。 2) 设计不合理,存在缺陷 3) 实际结果和预期结果不一致

4) 运行出错,包括运行中断,系统崩溃,界面混乱 5) 数据结果不正确,精度不够

6) 用户不能接受的其他问题,如存取时间过长,界面不美观 软件缺陷产生的原因: 1) 项目期限的压力 2) 产品的复杂度 3) 沟通不良

4) 开发人员疲劳,压力过大或受到干扰 5) 缺乏足够的知识,技能和经验 6) 不了接客户的需求 7) 缺乏动力

6. 质量保证和测试的关系

软件质量保证:是通过对软件产品有计划的进行评审和审计来验证软件是否合乎标准的系统工程。软件测试不能于程序测试。软件测试贯穿于软件测试定义和开发的整个过程。

7. 软件测试的分类:

1) 按测试的对象或范围分类,如单元测试,文档测试,系统测试

2) 按测试目的分类,如功能测试,回归测试,性能测试,可靠性测试,安全性测试和兼容性测试等

48

本科生毕业设计(论文)

3) 根据测试过程中被测软件是否被执行,分为静态测试和动态测试

根据是否针对系统的内部结构和具体实现算法来完成测试,可分为白盒测试和黑盒测试 8. 软件测试阶段

规格说明书审查-->系统和程序设计审查-->单元测试-->集成测试-->功能测试-->系统测试-->安装测试-->验收测试 9. 单元测试

单元测试的对象是程序系统中的最小单元--模块或组件上,在编码阶段进行,针对每个模块进行测试,主要通过白盒测试方法,从程序的内部结构出发设计测试用例,检查程序模块或足见的已实现的功能与定义的功能是否一致,以及编码中是否存在错误。多个模块可以平行地,对立地测试,通常要编写驱动模块和桩模块。 10. 集成测试

集成测试,也称组装测试,联合测试,子系统测试,在单元测试的基础上,将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的模块之间问题。 11. 功能测试

一般须在集成测试之后进行,而且是针对应用系统进行测试。功能测试是基于产品功能说明书,实在已知产品应具有的功能,从用户角度来进行功能验证,已确认每个功能是否都能正常使用。 12. 等价类划分方法

将程序可能输入的数据分成若干个子集,从每个子集选取一个代表性的数据作为测试用例,等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的。分为有效等价类和无效等价类。在分析需求规格说明书的基础上划分等价类,列出等价类表。设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受意外的考研。经过正反的测试才能确保软件具有更高的可靠性。在输入条件规定了输入值的集合或者规定了\"必须如何\"的条件的情况下,可以确立一个有效等价类和一个无效等价类。

边界值分析方法:是一种黑盒测试方法,是对等价类划分方法的补充。人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。因此针对各种边界情况审计测试用例,可以查出更多的错误。

判定表方法:再实际应用中,许多输入是由多个因素构成,而不是单一因素,这是就需要多因素组合分析。对于多因素,有时可以直接对输入条件进行组合设计,不需要进行因果分析,即直接采用判定表方法。一个判定表由\"条件和活动\"两部分组成,也就是列出了一个策划四活动执行所需要的条件组合,所有可能的条件组合定义了一系列的选择,而测试活动需要考虑每一个选择。

49

本科生毕业设计(论文)

判定表元素:

1) 条件桩,列出问题的所有条件。

2) 动作桩,列出可能针对问题所采取的操作。 3) 条件项,针对所列出条件的具体赋值。

4) 动作项,列出在条件想(各种取值)组合情况下应该采取的动作

50

因篇幅问题不能全部显示,请点此查看更多更全内容