第1章 绪论
1.1 课题背景
互联网+这个概念被提出来已经很久了,那么到底什么是”互联网+”呢?简单地说”互联网+”也就是”互联网+各个传统行业,这也就是一种充分运用互联网的平台,让我们传统产品和互联网进行更加深度的交流和融合,形成一种产品发展的生态,提升我们传统产品和行业之间的关系。实现了互联网的双向发展。那我们就到底来说一下互联网+都会有哪些商务模式。
一、社交电商商业模式
社交电子商务概念提出后,很多人开始创造各种各样的社交电子商务,将传统的网上商城平台融入到社交互动的功能中,传统的交易平台互动性更强,用户粘性更强。那么它是如何工作的呢?它是用户从分散到聚合的商业模式。通过社会化用户来充分激活沉淀用户,通过社会化工具将个人用户社会化,并利用社会化工具来调动社会用户的活动。说白了,就是利用社会属性整合用户,让志同道合的人形成一个社区,聚集在一个平台上,形成共同需求。二、流量积累商业模式
指需求量小、销量小、品种多的产品,假如产品储备大、销售渠道广,积累的市场收入就能超过少数热门产品。所以流量积累的商业模式很容易理解,因为互联网有非常大的网络平台,强大的流通,巨大的存储渠道,可以充分整合不同种类的商品来达到这个效果。
三、跨行业商业模式
按照字面理解,这意味着在一个行业发展之后,华为选择涉足其他领域。例如,华为不仅生产手机,还生产硬件和智能芯片。跨行业的商业模式可以使商业更加活跃。
四、免费商业模式
此种模式的核心是获取流量,然后在可观流量的基础上构建商业模式。也就是说,首先要提供免费服务来吸引用户,然后推出付费增值服务或延伸价值链来实现经营成果。
五、平台商业模式
平台的商业模式最根本的核心就是要搭建一个足够大的平台,使得产品变得更加丰富多样,更加关注对于用户的体验感及对于产品整合的闭环。这种平台模式的宗旨在于要打造一个多赢互利的生态系统,让用户与企业之间可以进行零距离的沟通。
六、电商卖货模式(包括实物产品和虚拟商品)
史上首个电子商务公司就是是亚马逊,是美国人杰夫贝佐斯在1995年创立的电商平台。而我国第一个电商公司是现在发展如日中天的,马云1999年在杭州创建的阿里巴巴。
模式:B2B、B2C、C2C、B2B2C O2O
七、平台佣金抽成模式
平台促成交易后,向商户收取佣金。平台不直接产生和创造价值,而是整合资源。这种方式就像房地产中介,一端与房东相连,另一端与购房者相连,成交时收取手续费作为佣金。
八、收费服务模式
收费服务行业,它包括产品、信息、功能、技术、API接口、知识、内容、经验和咨询。
代表性的项目有:百度云(功能)、阿里云(功能)、高德地图(地图界面)、凡登读书俱乐部(书本)、爱奇艺(视频资源)。
九、社区团购商业模式
社区团购可以说是一种基于互联网快速发展的小而非常流行的商业模式。它的特点是用户使用方便,价格实惠,商家减少库存,压榨商品、场地、人员等成本。但是,由于社区团购具有很强的地域性特点,只能在生鲜食品领域发展,其他领域也不理想。
1.2 目的和意义
对于互联网+,我认为:这不是什么新鲜事,但说实话,正因可以加速改变传统行业,重塑传统行业,加快和改善传统产业的信息流和加工方法所以”信息技术”一词被”互联网”所取代。由于近些年手机、平板电脑等设备的普及,互联网充满了活力,并且可以渗透进其余的各行各业,可以提升全面经济,对国家发展也有重大贡献。因此,国家大力推动,推动其向全国推广。事实上,信息的力量远远不够,将来会发生什么,我们难以预测。但是至少有一点我们要知道:所有传统产业都会被重新洗牌,所有模式都会发生巨大的改变。
1.3 本文的结构
本文会按照正确的软件工程学对于一个系统产生的所有流程去介绍整个街球社区网站的实现方式。
当然,本文将着力介绍街球社区网站的基本组成与结构,并详细说明该网站的设计方案、实现的方法、开发工具及其他相关的技术。另外,重点介绍了软件开发中的一些细节。系统在一定条件下对系统中的重要模块进行严格测试,验证了该系统的可用性与可靠度。度。
第2章 可行性分析
各种网络论坛现在已经成了生活中不可缺少的调味品,比如比较全面的百度贴吧,还有可以搜索问题的知乎,还有足球爱好者们的天堂懂球帝等等拥有一个功能丰富、操作方便的网上论坛网站,可以汇聚广大网民,吸引流量。街球社区网站的建立,从街球爱好者的角度来说,给他们创建了一个一起交流和讨论的平台,而且可以关注最新的街球动态。从商业盈利的角度上来讲讲,不仅可以达到精准销售的目的,还可以更直接地展示出相关的体育用品。拥有一个如此专业的街球社区网站,是体育用品销售公司对商品销售的重要渠道之一。
2.1 业务流程图
系统业务流图描述如下
(1)网民可以匿名浏览网站内容和观看教学视频,但不能发帖也不能回复,更不能进行商品的购买。另外,也可以查看社区公告,以及各大商品的销售排行榜与热门榜。
(2)会员的注册与登录:街球爱好者们如果想在论坛发帖子或者进行商品购买,需要经过一系列的有验证信息的注册,注册成功并登录后,用户可以解锁所有的功能。
(3)论坛部分的处理论坛中可以自由发帖,可以根据自己的喜好,进行关键字的搜索。每个帖子都可以回复、点赞、收藏与转发,视频也提供下载功能,可以下载到本地。
(4)商城部分处理当用户点击帖子中商品的连接时会进入到商品浏览页面,如果对产品有兴趣可以添加到购物车,也可以直接购买。购买时会填写订单信息,比如手机号、收件地址等等,填写完成之后可以付款购买,本网站提供银行卡支付、微信支付与支付宝支付宝支付。
(5)管理员后台处理系统管理员可以对论坛进行维护(比如删帖、禁言等操作),还可以对商品信息进行维护。
2.2经济可行性
一个网站的经济可行性是指这个网站所能带来的收益与设计开发这个网站的投资相比,是否可以盈利。不仅如此,还要看此网站是否能真正的给所有用户(包含上架)带来足够的经济收益,开发这个网站的初衷本身就是让街球爱好者们一起交流讨论的同时可以更方便的购买所需要的商品,从而节省平时逛街逛其他综合性购物网站的时间。
这个网站的开发在经济上是完全可行的,因为这是个人独立开发的小型项目,应用的都是在学校学过的知识,基本上没有任何的成本。
2.3技术可行性
关于硬件,我选择配置较高的PC去开发,这样编码才会更有效率。
软件方面,市面上大多SpringBoot与Vue的项目都是使用的MyEclipse和Mysql,本项目也是遵循市场趋势,毕竟这两种工具是非常稳定可靠的。
2.4运行可行性
在现在这个时代,几乎每个人都会上网,不管是用电脑还是用手机亦或是用平板电脑,更不用说是喜爱街球的年轻人们。街球社区网站操作与其他论坛大同小异,对使用者来说非常友好。此网站管理员是开发项目的开发者,所以管理起来也更不在话下。经过上述分析,运行方面是可行的。
2.5本章小结
经过上述多个角度考虑本系统是完全可行的。。
第3章 需求分析
3.1 网上社区的产生和发展情况
如果把能看贴、回贴的交互服务叫做BBS,那我国最早的BBS “长城”站,建于1992年或者1993年。后来又出现了CFido,工作原理大致是:站长在家里弄台电脑,拉条电话线接Modem,装一个叫做”蓝波快信”的软件,扮演服务器角色。用户的电脑上装客户端,也用Modem直接电话拨号上站。用户之间的交流不是实时的。用户进站后,干的事情就是把订阅的版块内容打包下载,然后断线之后慢慢看,慢慢回贴。回复好的内容,也打包准备好,再拨号上站,把内容更新上去。在这种方式下,同一时间只能有一个用户占用线路,所以连线的时间非常宝贵,每个站都会根据用户的贡献和活跃程度分配每天能够上线的总时间——大概几分钟。站长是惟一能够与用户进行实时交流的,所以很牛。中国第一批互联网创业者有不少来自惠多网,比如好像丁磊也玩。惠多网是点对点的网络,基本不能算互联网的BBS,但至少提供了看贴、回贴、一对多进行信息交流的服务。
街球社区网站的需求分析
经过对各大论坛网站及生活中对贴吧、淘宝等APP的研究,我认为街球社区网站应具有以下几个功能:
(1)具有年轻时尚潮流的操作界面同时保证系统的可操作性。
(2)具有发帖、回帖、转发、点赞等功能。
(3)具有视频观看、视频下载的功能。
(4)具有可以展示各种商品以及最新活动及商品热卖榜等信息的功能。
(5)具有添加购物车功能与结算订单功能。
(6)具有查询自己订单最新动态的功能。
(7)具有后台管理功能,方便管理员对社区中的帖子和商品进行管理。。
3.2 数据字典
数据字典,号称是数据中的数据。在我看来,数据字典就是一个大管家。小到一根针,大到一个保姆,管家不仅要记录得分毫不差,还要随时快捷地找到他想要的东西或者人。一个数据库应用开始的时候,需求还不旺盛,很多功能还不到时候开发,所以可能有2,30张表。可以是人物表,地点表,时间表,活动表等等。此时,我们记得住这些表,某个数据在哪里,信手捏来。
表3-1 系统数据项举例
序号 | 名称 | 别名 | 类型 | 长度(字符) |
I01-01 | admin_id | 管理员编号 | Int | 4 |
I01-02 | admin_name | 管理员姓名 | varchar | 50 |
I01-03 | admin_miaoshu | 管理员描述 | varchar | 5000 |
I01-25 | user_id | 用户ID | Int | 4 |
I01-26 | user_name | 用户名 | Varchar | 50 |
I01-27 | user_pw | 用户密码 | Varchar | 50 |
I01-28 | user_realname | 真实姓名 | Varchar | 50 |
I01-29 | user_address | 住址 | Varchar | 50 |
I01-30 | user_sex | 性别 | Varchar | 50 |
I01-31 | user_tel | 联系电话 | Varchar | 50 |
I01-32 | user_email | 用户邮箱 | Varchar | 50 |
I01-33 | user_qq | 用户QQ | Varchar | 50 | |
I01-34 | userId | 用户ID | int | 4 | |
I01-35 | userName | 用户名称 | Varchar | 50 | |
I01-36 | userPw | 用户密码 | Varchar | 50 |
3.3 本章小结
需求分析是对本系统需求的全面分析,这是软件开发生命周期中极其重要的一步,需求分析做好了可以大幅提升开发效率,避免无谓的返工。
第4章 总体设计
4.1 系统模块总体设计
街街球社区网站总体上分为前台和后台,前台和后台独立存在但又相辅相成,前后台访问的是同一个数据库,但是所访问的数据库对象不同。
前台系统功能模块分为
(1)帖子展示模块:按照更新时间或浏览量来显示帖子列表。
(2)视频展示模块:显示街球视频并提供下载功能。
(3)用户信息管理模块:按照相关的法律法规,管理用户信息。
(4)购物车模块:用户可以将想购买的商品添加到购物车。
(5)收银台模块:对购物车中的商品结账。
(6)订单查询模块:用户可以查看当前订单的状态。
(7)论坛公告模块:用户通过公告了解社区最新动态。
后台系统功能模块分为
(1)帖子管理模块:管理员按照国家网络安全的相关规定,可以对帖子及其发帖人进行相关处理。
(2)用户管理模块:管理员可以对会员信息进行维护。
(3)管理员管理模块:可以修改管理员的信息。
(4)订单管理模块:管理员拥有一定的权限可以查询异常的订单资料并对其进行处理。
(5)公告管理模块:管理员拥有一定的权限可以处理公告信息。
4.2 数据库设计
对于任何一个商务网站来说,为了保障用户大量数据的处理需求,必须使用专业的数据库。本系统采用的是MySql数据库。
数据分析
数据库之于本系统的作用主要是用于对各种信息的添加、删除、修改和查询等。所以,在设计数据库之前必须按照本系统的需求分析来详细的分析每个数据字段的作用。
(1)首先是用户注册和登录的时候会用到用户表,里面的列包括用户姓名、性别、年龄、星座等。
(2)管理和查看论坛中帖子的分类信息和详细信息时功能既需要从大的方面对帖子进行管理,也需要针对每一个帖子进行详细管理,因此至少需要两张数据表来实现帖子的管理功能。
(3)用户在帖中进行回复、转发和点赞时,需要数据库作出相应的数据操作。
(4)用户购物时的订单生成后,需要具体的字段来反应订单的具体状态,如待发货、已发货、已收货等。
(5)因为本系统存在管理员的角色,所以需要一张表来存储所有管理员的信息。
这样,至少要创建如下的数据表和数据列:
(1)用户表,存储用户ID(可设置为自增长)、用户名和密码等。
(2)管理员表,存储管理员ID(可设置为自增长)、管理员信息等。
(3)商品表,存储商品ID(可设置为自增长)、商品信息等。
(4)商品类别表,包括类别ID、商品ID(外键)等。
(5)订单表,包括订单ID,用户ID(外键)等信息。
(6)订单明细表,包括订单ID(外键),详细的订单信息等。
(7)公告表,包括公告ID,公告名称及公告内容等列。
在数据库的设计,首先你要想到你要做什么?你给谁做这个系统,这个系统的客人需要什么?那么好,如下是我总结的方法:
首先要严格的进行需求调查,具体包括完全性需求和完整性需求。然后去确定下来有哪些功能模块,再根据功能模块去规划数据。再规划数据建表,建完表要规划表于表之间的关联,有没有符合数据库的三大范式(必要时打破这死(三大范式)规定,使得我们程序员更加灵活的去完善)。
最会就是考虑以后要不要再加功能模块,数据库是否能更改了。
4.3 数据库设计
对于任何一个商务网站来说,为了保障用户大量数据的处理需求,必须使用专业的数据库。本系统采用的是MySql数据库。
4.3.1 数据分析
数据库之于本系统的作用主要是用于对各种信息的添加、删除、修改和查询等。所以,在设计数据库之前必须按照本系统的需求分析来详细的分析每个数据字段的作用。
(1)首先是用户注册和登录的时候会用到用户表,里面的列包括用户姓名、性别、年龄、地址等。
(2)管理和查看车位信息和费用信息时功能既需要从大的方面对信息进行管理,也需要针对每一个信息进行详细管理,因此至少需要两张数据表来实现信息的管理功能。
(3)用户在系统中对车位信息或其他别的信息进行了添加或修改时,需要数据库作出相应的数据操作。
(4)用户报修信息生成后,需要具体的字段来反应反馈的具体状态,如待处理、已处理、已评价等。
(5)因为本系统存在管理员的角色,所以需要一张表来存储所有管理员的信息。
这样,至少要创建如下的数据表和数据列:
(1)用户表,存储用户ID(可设置为自增长)、用户名和密码等。
(2)管理员表,存储管理员ID(可设置为自增长)、管理员信息等。
(3)商品表,存储商品ID(可设置为自增长)、商品信息等。
(4)商品类别表,包括类别ID、商品ID(外键)等。
(5)订单表,包括订单ID,用户ID(外键)等信息。
(6)订单明细表,包括订单ID(外键),详细的订单信息等。
(7)公告表,包括公告ID,公告名称及公告内容等列。
数据库的详细设计
在数据库的设计,首先你要想到你要做什么?你给谁做这个系统,这个系统的客人需要什么?那么好,如下是我总结的方法:
首先要严格的进行需求调查,具体包括完全性需求和完整性需求。然后去确定下来有哪些功能模块,再根据功能模块去规划数据。再规划数据建表,建完表要规划表于表之间的关联,有没有符合数据库的三大范式(必要时打破这死(三大范式)规定,使得我们程序员更加灵活的去完善)。
最会就是考虑以后要不要再加功能模块,数据库是否能更改了。
下面详细介绍下本系统的数据表:
1.商品表
表4-1 t_goods(户籍信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | goods _id | 商品编号 | Int | 4 |
2 | goods _name | 商品名 | varchar | 50 |
3 | goods _miaoshu | 商品描述 | varchar | 5000 |
4 | goods _pic | 商品图片 | varchar | 50 |
5 | goods _address | 商品地址 | varchar | 50 |
2. 商品类别表
表4-2 t_category(商品类别表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | category _id | 类别编号 | Int | 4 |
2 | category _name | 类别名称 | Varchar | 50 |
3 | category _miaoshu | 类别描述 | Varchar | 5000 |
3. 订单表
表4-3 t_order(订单信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | order _id | 订单ID | Int | 4 |
2 | order _bianhao | 订单编号 | Varchar | 50 |
3 | order _date | 订单生成日期 | varchar | 50 |
4 | order _zhuangtai | 订单状态 | varchar | 50 |
4.订单明细信息表
表4-4 t_orderItem(订单明细信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | baoxiu _id | 订单明细编号 | Int | 4 |
2 | baoxiu _id | 订单编号 | Int | 4 |
3 | baoxiu _nr | 订单内容 | Int | 4 |
4 | baoxiu _pingjia | 订单评价 | Int | 4 |
5.用户信息表
表4-5 t_user(用户信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | user_id | 用户ID | Int | 4 |
2 | user_name | 用户名 | Varchar | 50 |
3 | user_pw | 用户密码 | Varchar | 50 |
4 | user_realname | 真实姓名 | Varchar | 50 |
5 | user_address | 住址 | Varchar | 50 |
6 | user_sex | 性别 | Varchar | 50 |
7 | user_tel | 联系电话 | Varchar | 50 |
8 | user_email | 用户邮箱 | Varchar | 50 |
9 | user_qq | 用户QQ | Varchar | 50 |
6.管理员信息表
表4-6 t_admin(管理员信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | userId | 管理员ID | int | 4 |
2 | userName | 管理员名称 | Varchar | 50 |
续表4-6
7.公告信息表
表4-7 t_gonggao(公告信息表)
序号 | 名称 | 别名 | 类型 | 长度(字符) |
1 | gonggao_id | 公告编号 | Int | 4 |
2 | gonggao_title | 公告标题 | Varchar | 50 |
3 | gonggao_content | 公告内容 | Varchar | 5000 |
4 | gonggao_data | 公告创建时间 | Varchar | 50 |
5 | gonggao_fabuzhe | 发布人 | Varchar | 50 |
4.4 本章小结
本章主要介绍了网站的总体设计(尤其是数据库设计),列出了街球社区网站的功能结构图和每个表的详细组成,并对各个模块的耦合进行了描述。
第5章 详细设计与实现
5.1 系统运行平台设置
街球社区网站的运行平台可分为两个层面,分别是硬件环境与软件环境。
5.2 运行环境
1.硬件环境
硬件环境配置:
处理器:I7-10200H
内存:8G DDR4
硬盘::512G SSD
显卡:GTX1650Ti
2.软件环境
系统:Windows 10
数据库:MySQL数据库
开发工具:JDK1.8、MyEclipse10.7
服务器: Tomcat8.5服务器。
5.3 开发工具及技术简介
下面来详细的介绍一下实现本网站使用的所有开发工具。
5.3.1 开发工具简介
MyEclipse是一款功能强大的软件,也可以看做是Eclipse的插件,主要用于Java和JavaEE的开发,可以用来进行编写代码、编译文件、系统部署和测试等。
MySQL是一种关系型的小型数据库,安装方便操作灵活,并且是免费的,执行效率也很快,街球社区网站这类小型系统用Mysql数据库是最合适不过的。
5.3.2 技术简介
SpringBoot+VUE的开发模式可以更好的让前后端进行分离,各司其职的同时又可以相辅相成,从而提高开发的效率。
5.4 系统首页设计
街球社区网站的首页面采用了最简单的上中下结构,头部为导航菜单。中间部分的左侧可以进行用户的注册登录以及公告浏览、户籍列表展示,右侧为迁入信息的管理。网站尾部是版权信息级作者联系方式等。
界面设计如图5-1所示。
图5-1 系统首页
5.5 系统前台基本功能设计与实现
本小节主要内容为街球社区网站功能的详细说明。
5.5.1 登录注册模块设计与实现
用户点击注册后会进入注册页面,界面的设计如图5-2所示。注册时需要用户填写必要的信息,比如用户名密码、真实姓名、QQ和邮箱等。此外,用户的QQ在数据库中设置为唯一,一个QQ号只能注册一个用户,论坛中如果相互添加好友,则用户的QQ将作为公开信息方便各个用户之间的互相交流。
用户注册页面有严格的表单验证,如果不符合格式规则是无法成功进行注册的。所有验证通过之后用户的信息会被添加至数据库中的用户信息表。
图5-2 用户注册页面
用户注册需要的表单
名称 | 类型 | 含义 |
userName | Text | 输入用户名称 |
password | Password | 输入密码 |
passwordOne | Password | 输入确认密码 |
userRealname | Text | 输入真实姓名 |
userAddress | Text | 输入住址 |
userSex | radio | 选择性别 |
userTel | Text | 输入联系方式 |
Text | 输入E-mail地址 | |
确定 | Button | 提交用户信息 |
取消 | Button | 取消注册 |
2.登录和验证
(1)用户登录程序流程描述
用户注册完成拥有了自己的帐号之后可以进入登录页面。在文本框中填写自己的用户名和密码,如果数据库中存在相匹配的信息就能成功登录,否则会提示 帐号或密码错误,提示完会清空文本框的值。这个功能的流程图如下图所示。
图5-3 用户登录程序流程图
3.用户修改和注销
用户成功登陆之后可以修改自己的资料,修改时可以将除用户名之外的资料都进行修改,不过有一个限制那就是每个月只能修改一次,以防帐号被恶意修改。修改信息填写完成之后如果可以正确通过验证,用户的资料就可以被更新到用户表中。
界面的设计如图5-5所示。
图5-5 用户修改模块
此外,为了最大程度上提升用户体验感又不会威胁用户帐号安全的前提下,网站可以在不关闭浏览器的情况下进行用户的退出店系统的功能,原理是将登录时存储的session信息清除掉。
页面设计如表5-4所示。
表5-4 用户修改主要控件信息列表
名称 | 类型 | 含义 |
userName | Text | 输入用户名称 |
password | Password | 输入密码 |
passwordOne | Password | 输入确认密码 |
userRealname | Text | 输入真实姓名 |
userAddress | Text | 输入住址 |
userSex | radio | 选择性别 |
userTel | Text | 输入联系方式 |
Text | 输入E-mail地址 | |
确定 | Button | 提交用户信息 |
取消 | Button | 取消注册 |
帖子与商品展示模块设计与实现
此外,为了方便用户在逛论坛时点击社区内的精准推送链接进行购物,本论坛的帖子与商品都设计了两种浏览方式:
第一种为按照类别进行浏览,第二种比较常用,是按照排行榜进行浏览,比如按照帖子或商品的浏览量或收藏量去浏览。
购物车模块的设计与实现
当用户在浏览论坛时看到自己心意的商品后,可以将商品添加至购物车等待购买。当然如果后悔了又不想买了,也随时可以将购物车中的商品移除出去;如果想要支付则可以直接点击确认支付按钮进行结账。
此模块的最核心功能就是将商品添加至购物车与结账功能。购物车的主要功能是:用户在浏帖子时可以将帖子中的商品添加到购物车里,添加到购物车中的商品用户可以对其进行管理,比如说自己想购买多件,就可以点击数量栏增加数量或减少数量等。购物车模块的难点个人认为就是最终价格的计算,因为数据会一直变换,涉及到的计算会比较多。
收银台模块的设计与实现
在购车中确定自己想要购买的商品后,首先要确认商品的数量与价格,确认无误之后会进入订单填写的步骤,用户要填写自己真实的收货信息,比如姓名、邮政编码、收货地址、联系电话等。
填写完这些信息之后,最终进入到收银台页面,用户可以选择自己喜欢和方便的支付方式为商品买单。本网站支持银联在线支付、各种App支付等。
收银台主要控件信息列表:
userName Text 收货人账号
userRealname Text 收货人姓名
userTel Text 收货人联系电话
userAddress Text 收货人地址
odderSonghuodizhi Text 送货住址
查看订单模块的设计与实现
用户填写完自己的收件信息如地址、邮编、电话号码后,订单就会生成,用户也可以在订单查询页面查看自己的订单的最新动态。
公告管理模块的设计与实现
街球社区网站的公告模块主要显示网站的重要维护信息以及重点的通告,比如网站的新规则新规定等。还可以将网站的最新活动推送给广大用户,这样也可以吸引更多没有注册的用户在网站进行注册。
5.6 系统后台管理功能设计与实现
基本信息管理设计与实现
街球社区网站的后台管理模块主要包括:用户信息的管理、管理员信息的管理、商品信息的管理、订单信息的管理、公告信息的管理等。这些基本信息的管理主要是连接数据库可进行数据的操作,比如在表单内提交用户注册或登录的信息后,数据库要立即将表中的数据进行更新。更新之后才能更及时更准确的显示在数据显示页面上。
订单信息管理设计与实现
街球社区网站的订单信息管理模块是对用户订单信息以及订单详细信息的管理。当用户购买商品之后,会在数据库中更新两个表的信息。首先第一个更新的是订单表,订单表中会将用户的信息,下单日期,订单状态进行显示;第二个更新的表是订单详细表,这个表会与第一个表用外键进行关联,这个表中更新的数据更加详细,比如有商品的名字、数量和价格等。
商品管理模块除了对商品的描述,价格等信息的显示之外,还可以上传商品的图片,使用户可以更加了解真实商品的样子。除此之外,管理员还可以进行活动的设置,比如特价活动、促销优惠等,还可以将各种活动以及商品的排行榜放到页面最显眼的位置去引流。
公告信息管理设计与实现
各大论坛或者大型的网站上甚至是政务部门或者学校部门的官网上都会有公告信息栏,这个模块主要是让管理员发布一些网站的规定,或者是一些新的活动去吸引更多的用户来到我们社区网站。
5.7 本章小结
本章对街球社区网站的详细设计做了简单的介绍。前台模块中主要介绍了注册登录、帖子与商品的显示、商品的购买与结算的实现过程。后台模块介绍了用户信息与管理员信息的管理、帖子与商品的管理以及公告管理的实现过程。系统详细设计我采用了结构化设计方法,让程序的结构从逻辑复杂变的简单明了,可以提高编码效率,增强程序的可维护性、可测试性。
第6章 系统测试与性能分析
6.1 软件测试
首先我们需要明白软件测试的概念是什么,软件测试是为了发现软件过程中的错误而对文档、程序源码进行的一系列的测试。
软件测试的目的:
第一、 评价一个程序和系统的特性或能力,并确定它是否达到预期的结果。
第二、 在用户使用我们的软件之前,用较低的人力物力去发现软件中的缺陷、bug(提升产品好评率)。
从用户的角度来分析,软件测试的好处是可以尽可能早的把错误找出来以免影响后续的使用;从开发者的角度来说,希望软件测试过后能将错误尽可能多的找出来,用户使用的时候就不会影响口碑。
软件测试的步骤:
1.单元测试
首先是单元测试,属于白盒测试的一种,可以在Myeclipse中直接执行单元测试,用来测试较短的代码部分。
2.集成测试
集成测试也可以叫做组装测试,主要测试的是程序的接口与接口直接的联系是否正确,调度是否正常。
3.系统测试
系统测试是将各模块都组合到一起之后进行的测试,主要从功能方面着手,测试系统的各个功能模块是否能正常使用。
4. 验收测试
验收测试是将我们的软件产品提交给客户使用前的最后一步测试,用来确保整个程序的正确性。
6.2 本系统测试
主题帖与商品搜索的测试
在帖子搜索和商品搜索的文本框中输入主题帖名与商品名进行搜索,先输入存在的主题帖与商品,看是否能正常查询出来。再输入不存在的信息,看是否能查出来,如果都符合逻辑那说明本功能没有问题。
商品分类浏览模块的测试
在帖子与商品的分类选择页面,选择包含的类别,然后检查出来的数据是不是包含于这个类别,如果测试无误说明本功能没有问题。
购物车模块的测试
首先在浏览商品时将商品添加到购物车,然后去购物车中进行查看是否存在你刚刚添加的商品。然后再对商品的数量进行测试,点击数量增加或减少后确认商品的数量有没有对应的去增加或减少。最后再对购物车中收银台的价格进行测试,改变商品的数量,查看商品的单价或总价是否正确.
用户注册模块的测试
用户注册的功能测试主要是测试表单验证的准确性(在这里主要以用户名密码和确认密码举例子),以及数据库中已经存在的用户名还能否被注册。准备的测试数据有:
1.123Tom、123456、123456
2.Jack、123456、123456
3.Jack123、123456、456789
进入到用户注册页面后,首先测试第一组数据,用户名由6位或以上的字母或数字组成,用户名的123Tom不符合格式,看是否能通过验证进行注册。接下来测试第二组数据,很明显第二组数据的用户名长度为4,经过测试是不能通过验证的。最后第三组的数据,密码与确认密码不一致,所以也无法通过表单验证的测试。
6.2.1 公告管理模块的测试
首先在数据库中多准备一点测试数据,在公告管理页面对测试数据进行反复的增删改操作,先看在页面上数据能否正常发生变化,再到数据库中确认数据表有没有正确的相应。
6.3 本章小结
软件测试的整个软件开发周期中很重要的一部分,而且是绝对不能忽略的一部分。一定要本着打破砂锅问到底的决心去反复测试,多考虑对边界值的测试,写出详细周旋的测试用例。按照自己写的测试用例进行严格的测试,并写出测试报告,在后续的代码维护中,参照测试报告去修改代码,修改完代码再返回去对程序进行下一轮的测试。