电子商务系统设计
班级:计科
完成时间:2015年12月28日
1
目 录
第1章 可行性分析……………………………………………………………... 2 1.1开发可行性……………………………………………………………….. 2 1.2技术可行性……………………………………………………………….. 2 1.3经济可行性……………………………………………………………….. 2 第2章 软件开发计划…………………………………………………………... 2 2.1列出开发计划即可……………………………………………………….. 2 第3章 软件需求分析……………………………………………………………3 3.1功能需求…………………………………………………………………...3 3.2性能需求…………………………………………………………………. 3.3安全性需求………………………………………………………………. 第3章 软件系统分析………………………………………………………….. 第4章 软件系统设计………………………………………………………….. 4.1系统总体结构……………………………………………………………. 4.2功能模块设计……………………………………………………………. 4.2.1用户模块设计………………………………………………………. 4.2.2店铺管理员设计……………………………………………………. 4.2.3系统管理员设计……………………………………………………. 4.2.4 购物模块设计……………………………………………………… 4.3数据库设计………………………………………………………………. 4.3.1 数据库概念设计…………………………………………………… 4.3.2 数据库逻辑设计…………………………………………………… 4.3.3 数据库表设计……………………………………………………… 4.4安全模块设计……………………………………………………………. 4.4.1登陆验证……………………………………………………………. 4.4.2 权限管理…………………………………………………………... 4.4.3 支付安全……………………………………………………………
2
4.4.4 数据库安全………………………………………………………… 4.4.5 数据传输安全……………………………………………………… 第5章 软件测试报告…………………………………………………………..
5.1 软件测试理论基础……………………………………………………. 5.2 部分功能模块测试……………………………………………………. 第6章 用户手册………………………………………………………………..
3
第1章 可行性分析
一套优秀的电子商务系统,不仅可以帮助用户快速选择自己心仪的宝贝,还可以使得我们通过电子商务系统获取一定的利润,下面我将对社会可行性、技术可行性、经济可行性进行分析,证明目前开发一套电子商务系统是可行的。
1.1 社会可行性
首先,国家喊响了“互联网+”的口号,证明政府对于互联网方面的支持力度很大;其次,互联网发展非常快速,尤其是移动互联网的发展尤其迅速,这就给电子商务奠定了基础;最后,人们对于网上购物比较热衷,在中国淘宝还推出了双11购物狂欢节,既然有这么大的需求,那么建立一个电子商务网站就是可行的。
1.2 技术可行性
html5的逐步发展使得电子商务的开发变得简单,实现了跨平台浏览,给人们加大的方便。并且,结合类似于php,asp等后台语言和数据库,开发一套比较成熟的电子商务系统是可行的。
1.3 经济可行性
开发电子商务需要用到html标签语言,一款记事本即可开发;后台语言我们可以采用开源的php语言;数据库我们采用现代比较流行的免费的MySQL数据库。综合看来,我们的开发成本非常低,但是一旦电子商务开发成功并成功推行,我们将依次获得丰厚利润。
第2章 软件开发计划
一个好的软件开发项目,必须制定适合自己开发特点的软件开发计划,只有这样才能保证开发的效率,是项目如期完成。由于此次是大学的期末课程设计,自主支配的时间非常有限,所以我们的开发只能此次项目的前半部分(文档及部分模块简单实现)。
开发进度 可行性分析和软件项目计划 软件需求分析 软件系统分析 软件系统设计 4
日 期 2015年11月28日到12月5日 2015年12月6日到12月8日 2015年12月9日到12月14日 2015年12月13日到12月19日
软件测试报告 用户手册 2015年12月20日到12月23日 2015年12月24日到12月27日 表2-1 项目计划安排
第3章 软件需求分析
二十一世纪是网络高速的时代,人们的生活越来越离不开网络,而购物模式从传统模式慢慢地转变为网络购物模式。网络购物使我们足不出户便可以买到我们想买的东西,给我们带来了极大的方便。不可否认,网购已经成为我们日常生活中不可缺少的一部分。既然有需求,那肯定就有商机,所以开发一套完整的电子商务系统就显得很有必要。下面我们将针对电子商务系统做个简单的需求分析:
3.1 功能需求
分为用户需求和管理员需求。用户需求对应的就是前台功能需求,就是用户系统之间的交互;管理员需求对应的就是后台功能需求,就是管理员对整个电子商务系统的管理。 3.1.1 前台功能需求 1.商品
商品展示、商品查看、商品查询等功能 2.购物车
加入购物车、购物车商品查询、购物车商品修改、商品结算、商品删除等功能。 3.会员
注册登录、信息查看及修改、积分及积分查询、会员等级 4.订单
订单生成及取消、订单浏览及查询、修改订单、订单结算、退款或确认收货、订单评价 3.1.2 后台功能需求 1.商品
商品类别管理、商品添加和删除、商品修改、商品查询 2.订单
订单查询、退款管理、订单取消或发货操作
5
3.会员
会员查询、会员修改、账号冻结解冻、会员删除、会员等级设置 3.1.3 外部接口需求
通过使用接口,使得计算机能够使用浏览器就可以使用该系统。 3.1.4 安全性需求
对所有用户的恶意破坏都有一定的保护措施,对所有用户的安全进行保护。
3.2 性能需求
对该系统的反应的速度的要求必须十分迅速,并且对所有的用户的恶意破坏都有一定的保护措施,并且能够对所有的用户的安全进行保护,并且能第一时间对用户或者管理员的信息进行第一时间的修改。
3.3 安全性需求
人们对安全的重视度越来越高,尤其是像电子商务一样的涉及到钱财的更为重视;其次,除了对财务安全重视外,人们对个人信息也非常重视,因为有些不法分子利用个人信息做一些违法的事。所以我们的系统对安全的需求很高,只有安全性足够高,人们才可以放心使用我们的平台。
第4章 软件系统分析
本章节依托于需求分析,作为软件设计及软件测试的基准。该系统采用B/S架构模式,利用大学期间自学的PHP作为后台语言,MySQL作为数据库系统。系统设计过程中遵循标准的软件设计规范,使系统可维护性增强,减少后续维护过程中的麻烦。
4.1 组织结构分析
本系统的组织结构图如下:
6
4.2 业务流程分析
1.购买商品的业务流程图
7
2.添加商品业务流程图:
4.3数据流程分析
1.用户登录数据流程图: 第1层数据流程处理:
第2层数据流程处理:
2.购物系统数据流程图
8
3.管理员数据流图
9
第5章 软件系统设计
5.1系统功能结构设计
5.2功能模块设计 5.2.1用户模块设计
功能描述:用户注册、用户登陆、个人信息查询和修改、会员信息查看 5.2.2店铺管理员设计 功能描述如下:
商品管理:商品添加、商品删除、商品修改、商品查询 店铺管理:店铺信息查询和修改、活动管理 订单管理:发货管理、退款管理、取消订单 5.2.3系统管理员设计
功能描述:管理所有用户信息,系统维护 5.2.4 购物模块设计
功能描述:地址管理、下单、发货、退款、取消订单、确认收货、评价
5.3数据库设计
10
本系统采用MySQL数据库系统。数据库表的结构设计采用规范化的关系模式,解决关系模式中存在的插入、删除、修改和数据冗余等复杂问题。 5.3.1 数据库概念设计
11
5.3.2 数据库逻辑设计
根据需求分析以及系统功能的需求,系统信息数据库存放在SQL Sever 2005数据表中。下面给出由ER图导出的关系模式:
用户(用户编号,用户名,密码,电话,电子邮箱,通讯地址) 商品(商品号,商品名,厂商,类别,单价,管理员编号) 订单(订单编号,商品号,商品数量,订单状态)
管理员(管理员编号,密码,姓名,电话,电子邮件,通讯地址)
12
5.3.3 数据库表设计
1.订单表
该表存储了用户的订单基本信息,主要用于订单信息记录。字段属性描述如表
字段名 orderId productId productNum orderState 字段类型 Int Int Numberic Char 字段长度 4 4 9 10 是否为主键 是 否 否 否 描述 订单编号 商品编号 商品数量 订单状态
表 4-1 订单表
2.用户表
该表存储了系统群组的信息,每个群组所享有的权限是不同的,新注册用户默认为待审核成员组。该表的字段属性如表
字段名 userId Username Password Phone Email Address 字段类型 Int Char Char Char Varchar Varchar 字段长度 4 10 10 11 32 64 是否主键 是 否 否 否 否 否 描述 用户编号 用户名 密码 手机 邮箱 收货地址
表 4-2 用户信息表
13
3.管理员信息表
该表存储了管理员的信息,每个管理员所享有的权限是不同的。该表的字段属性如表
字段名 adminId adminPassword adminName adminPhone Power 字段类型 Int Varchar Varchar Int Tinyint 字段长度 4 32 10 4 1 是否主键 是 否 否 否 否 描述 管理员编号 密码 姓名 手机 权限
表4-3 管理员表
4.商品信息表
该表存储了商品的信息,主要是商品的信息记录。该表的字段属性如表
字段名 productId productName companyName Style unitPrice 字段类型 Int Varchar Varchar Char Money 字段长度 4 10 32 10 8 512 4 是否主键 是 否 否 否 否 否 否 描述 商品编号 商品名称 厂商名称 类别 单价 商品描述 管理员编号 productDescribe Varchar adminId Int
表 4-4 商品信息表
14
5.4 用户界面设计
网上购物不是一个简单的概念,它包含了许多个内容,是由多个页面组成的一个整体的系统。在主页功能方面,采用图形用户界面技术,是系统能够有多重图形窗口和丰富便利的操作界面,通过鼠标或键盘的操作,为用户提供最简洁的使用方法。
5.5 安全模块设计
5.5.1登陆验证
为了保证用户信息安全和财产安全,只有用户进行登陆并验证通过才可以对自己的账户的信息进行操作。密码必须经过加密才可以提交到服务器,防止信息在网络传输中被拦截造成信息泄露。 5.5.2 权限管理
为了保证系统安全并使系统能够有条不紊的运行,我们对用户的权限进行了严格控制,只有得到相应的权限才能操作对应权限的功能。 5.5.3 支付安全
借助目前比较成熟的支付宝进行支付,在一定程度上保证支付的安全。我们自己也会在系统中做多重验证,以确保万无一失。 5.5.4 数据库安全
采用视图模式进行查询和权限限制。 5.6.5 数据传输安全
1.重要要经过加密以后传输,例如密码经过md5加密后再提交到服务器。 2.提交方式采用比较安全的post方式。
15
第6章 功能模块实现与测试
本章节介绍了系统部分功能模块的实现,包括用户模块和后台管理员模块的实现过程。由于只有部分功能模块实现,所以软件测试部分只测试了注册与登录的相关数据。
6.1 软件测试理论基础
6.1.1功能测试
功能测试包含了链接测试、表单测试、 Cookies测试、数据库及功能模块测试等,下面将对其一一介绍。 1.链接测试
链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。 2.表单测试
当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:当用户填写的信息不完全进行提交时,系统会提示错误。 3.Cookies测试
Cookies通常用来存储用户信息和用户在某应用系统的操作。如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试内容可包括Cookies是否起作用,是否按预定时间进行保存,刷新对Cookies有什么影响等。 4.数据库及功能模块测试
在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。在使用了数据库的
16
Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
6.1.2 性能测试
性能测试主要测试页面访问的速度和服务器的负载,目的是为了提升用户体验,保障系统可以有条不紊的运行。 1.连接速度测试
连接速度指用户连接到Web应用系统的速度。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。另外,有些页面有超时限制,如果响应速度太慢,用户需要重新提交信息。而且,连接速度太慢还可能引起数据丢失,使用户得不到真实的页面。 2.负载测试
负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。 6.1.3 可用性测试 1.平台测试
市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。考虑的是实际情况,我们的系统主要是在Windows下的测试。 2.浏览器测试
浏览器不同对应现实的界面可能有所不同,为了保证兼容性,软件在上市推广前必须进行浏览器测试,以保证对各个浏览器的兼容。6.1.4 安全性测试
只有做好了安全,人们才可以放心地使用本系统,该系统才能真正发挥出它的价值。安全性测试区域主要有:
17
1.现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。
2.Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用
3.当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。 4.服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。
6.1 部分功能模块测试
由于时间原因,目前系统只是实现了一部分内容,本小节只对用户注册和用户登录进行了测试。 1.注册模块测试
图6-1 注册
2.登录模块测试
图6-2 登录
18
第7章 用户手册
1.在浏览器地址栏中输入http://localhost进行测试
图7-1 网站首页
2. 在浏览器地址栏中输入http://localhost/admin进行测试
图7-2 管理员登录
19
3.点击左侧的添加商品可以进行商品的添加
图7-3 商品发布
4.点击左侧的订单管理可以管理订单
图7-4 订单管理
20
因篇幅问题不能全部显示,请点此查看更多更全内容