3.1系统可行性分析
由1.2可知,当前网上购物市场是具大的,而且市场还在发展初期,其市场潜力不可估量,综上所述,系统的市场前景是可行的。
一个系统在技术上是否可行,往往从开发的风险,资源的有效性,相关技术的发展等方面来分析。开发风险的大小直接关系到系统的成败。本系统的实现从其所需要实现的功能上来说,现有的比较成熟的技术已基本上能满足其功能需求,而且有很多当前已成功开发并投入使用的网上购物系统可供借鉴。因此,从系统的开发风险来分析,本系统的开发是可行的。在本系统的开发过程中,主要用到开发工具有Visual Studio 2005、SQL Server 2000、Dreamweaver 8等。这些技术和开发工具都是完善,在实践中多次被运用的,是完全可行的,不会存在技术上的问题。所以从技术环节上来说不存在无法实现的情况发生。
顾客在网上购物看重的是方便和快捷,因此系统要使顾客能够在大量的产品信息中迅速搜索到自己想要了解的产品信息。并且,由于顾客中可能存在有很多并不熟悉网上购物流程的人,系统操作流程应该简单、易用。
首先顾客能在商城中查询各种商品的介绍、实物图片、价格等基本信息,以便顾客确定自己满意的商品。选好商品后,顾客可以将所选商品放入购物车,如果在结算前改变主意,依然可以不用购买。当顾客选定所要购买的商品后,能够向系统提交并由系统自动生成相应的定单号。
同时,系统的安全性也是顾客关注的,就系统本身而言主要是用户验证、站点、服务器的安全,这些在后面的章节中将会有所分析。
系统管理员在此系统中扮演着非常重要的角色,管理员可以进行商品管理、定单管理、注册用户管理等需求。并且系统面对大量的信息应该做到条理清楚,管理员能够轻松的找到需要的管理类别。为了实现这些需求,管理中心应该做到功能齐全,模块划分明确。本系统中管理部分分为用户管理、定单管理、商品管理这三个模块。此外,和前台顾客一样管理中心同样有对系统的安全需求。
SHAPE\* MERGEFORMAT
系统首页 |
商品管理 |
购物车 |
订单管理 |
用户管理 |
用户控件
|
图1网上购物系统前台功能模块图
根据功能的要求,本网上购物系统的前台可划分为以下功能模块:
提供用户登录、注册,管理员登录以及产品中心的接口,提供简单快捷的商品查询,并且能够显示当前最新的商品和当前销量最好的商品。
2. 商品管理
允许顾客浏览商品列表,查看所有商品类别以及商品的详细信息。
3. 购物车
在已注册ID的情况下,登录的顾客可以将自己满意的商品加入到购物车中,并且能够查看购物车的内容,在最终结算以前,允许顾客删除商品或更改购买数量,确认无误以后可以结算生成相应的定单。
4. 订单管理
当顾客确定购买以后,系统会自动为此定单生成其唯一的定单号,并且支持顾客查看此定单的详细信息,包括所有购买商品的列表以及分别对应的单价和总额,并且登录的顾客可以查看其当前定单的状态以及在本网上购物系统中所有历史定单信息。
5. 用户管理
本系统不支持匿名购买商品,顾客要购物的话必须注册相应的ID,因此主要功能为支持用户注册,同时也支持用户修改其基本信息,包括修改登录密码。
6. 用户控件
显示本网上购物系统的顶端图片以及一些友情链接和版权信息,使本系统更加美观、更加符合当前网站主流样式。
SHAPE\* MERGEFORMAT
商品管理 |
订单管理
|
用户管理 |
图2网上购物系统后台功能模块图
1.商品管理
系统管理员可以通过管理中心向系统加入新商品以及其相关信息,删除过期商品,更新现有商品信息。
2.订单管理
当顾客确定购买以后,系统会自动为此定单生成其唯一的定单号,系统管理员可以查看当前未处理的定单的信息,对订单进行处理,并负责与顾客取得联系确认付款方式以及送货方式等。
3.用户管理
网络并不是纯洁的,有些人恶意注册ID以浪费系统资源,系统管理员可以对此类不合法用户的ID进行删除等操作,确保系统运行正常、有序。
SHAPE\* MERGEFORMAT
是否为管 理员 |
查看所有商品列表 |
查看商品详细信息 |
添加到购物车 |
商品管理 |
订单管理 |
用户管理 |
生成订单 |
添加、更新、 删除商品 |
处理订单状态 |
用户登录 |
管理员登录 |
查看、删除用户 |
否 |
否 |
是 |
是 |
开始 |
开始 |
结束 |
结束 |
图3系统流程图
根据网上购物系统的功能要求以及功能模块的划分,数据需要存储的信息如下:
1.系统中所有注册用户的资料:用户ID,密码,地址,EMAIL地址,联系电话等
2.商品的资料:商品名称,商品类别,商品单价,商品详细信息,商品图片等
3.购物车的资料:购物车ID,购买的商品,购买商品的数量,总价等
4.订单的资料:下订单的用户ID,下订单的时间,购买的商品,购买商品的单价,购买商品的数量,总价,订单状态等
3.4.2数据库表的设计
分别建立以下的表以满足需要:
1.用户表,用来记录购物人员的相关注册信息。(shopper)
2.产品表,用来记录产品的相关信息。(product)
3.购物车表,用来记录用户添加产品到购物车的相关信息。(shoppingcart)
4.订单表,用来记录用户购物之后生成订单的相关信息。(orders)
5.产品种类表,用来记录产品种类的相关信息。(category)
6.地点表,用来记录省份和城市的相关信息。(place)
表1 shopper
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
shopperID |
char |
10 |
否 |
用户ID(主键) |
psssword |
char |
10 |
否 |
密码 |
familyname |
varchar |
20 |
否 |
姓 |
givenname |
varchar |
20 |
否 |
名 |
|
varchar |
40 |
否 |
电子邮件地址 |
address |
varchar |
50 |
否 |
通讯地址 |
country |
char |
15 |
否 |
国家 |
province |
char |
15 |
否 |
省份 |
city |
char |
15 |
否 |
城市 |
postalcode |
char |
10 |
否 |
邮政编码 |
phone |
char |
15 |
否 |
联系电话 |
表2 product
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
productID |
int |
4 |
否 |
产品ID(主键) |
productname |
nvarchar |
50 |
是 |
产品名称 |
productdescription |
nvarchar |
4000 |
是 |
产品描述 |
originalprice |
money |
8 |
否 |
市场价 |
saleprice |
money |
8 |
否 |
会员价 |
categoryID |
int |
4 |
否 |
产品种类ID |
productnumber |
int |
4 |
是 |
产品数量 |
photo |
nvarchar |
50 |
是 |
图片 |
publishyear |
varchar |
4 |
是 |
发布年 |
publishmonth |
varchar |
2 |
是 |
发布月 |
表3shoppingcart
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
cartID |
int |
4 |
否 |
购物车ID(主键) |
productID |
int |
4 |
否 |
产品ID(主键) |
productquantity |
int |
4 |
否 |
产品数量 |
shoppingdate |
datetime |
8 |
否 |
购买时间 |
表4orders
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
orderNo |
smallint |
2 |
否 |
订单号(主键) |
orderdate |
datetime |
8 |
是 |
订单时间 |
cartID |
nvarchar |
10 |
否 |
购物车ID |
shopperID |
varchar |
10 |
否 |
用户ID |
shippingcharge |
money |
8 |
是 |
运费 |
ordrprocess |
char |
1 |
是 |
订单状态 |
totalcost |
money |
8 |
是 |
总价 |
表5category
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
categoryID |
int |
4 |
否 |
产品种类ID (主键) |
categoryname |
nvarchar |
50 |
否 |
产品名称 |
表6place
字段名 |
数据类型 |
长度 |
是否允许为空 |
字段描述 |
city |
char |
15 |
否 |
城市(主键) |
province |
char |
15 |
否 |
省份 |