随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建玩具销售系统。本文通过课题背景、课题目的及意义相关技术,提出了一种玩具信息、购买订单、退货申请、换货申请、反馈信息、生产信息等于一体的系统构建方案。
本文通过采用B/S架构,MySQL数据库以及python语言、django框架,结合国内线上管理现状,开发了一个基于django的玩具销售系统。系统分为多个功能模块:买家、厂商、玩具分类、玩具信息、购买订单、退货申请、换货申请、反馈信息、生产信息、批发订单等。通过系统测试,本系统实现了系统设计目标,相对于人工管理方式,本系统有效的减少了商家的经济投入,并且大幅度提升了玩具销售管理的效率。
语言:Python
框架:django/flask
软件版本:python3.7.7
数据库:mysql
数据库工具:Navicat
前端框架:vue.js
通过比较两个不同因素的框架,可以看出Flask和Django不能被标记为单一功能中的最佳框架。当Django在快速发展的大型项目中看起来更好并且提供更多功能时,Flask似乎更容易上手。这两个框架对于开发Web应用程序都非常有用,应根据当前的需求和项目的规模来选择它们。
最新python的web框架django/flask都可以开发.基于B/S模式,前端技术:nodejs+vue+Elementui+html+css
,前后端分离就是将一个单体应用拆分成两个独立的应用:前端应用和后端应用,以JSON格式进行数据交互.充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护等特点
目 录
摘 要 I
Abstract II
1 绪 论 1
1.1 课题背景 1
1.2 课题目的及意义 1
1.3 课题研究现状 2
1.4 论文主要工作内容 3
2 系统关键技术 4
2.1 django框架 4
2.2 MySQL数据库 4
2.3 B/S架构 5
2.4python语言 5
3 系统分析 7
3.1 可行性分析 7
3.1.1 技术可行性 7
3.1.2 操作可行性 7
3.1.3 经济可行性 7
3.1.4 法律可行性 7
3.2 系统性能分析 8
3.2.1 系统安全性 8
3.2.2 数据完整性 8
3.3 系统功能分析 8
3.4 系统流程分析 10
3.4.1 数据开发流程 10
3.4.2 用户登录流程 10
3.4.3 系统操作流程 11
3.4.4 添加信息流程 12
3.4.5 修改信息流程 12
3.4.6 删除信息流程 13
4 系统设计 14
4.1 系统概要 14
4.2 系统结构设计 14
4.3数据库设计 15
4.3.1 数据库设计原则 15
4.3.2 数据库实体 15
4.3.2 数据库表设计 16
4.4 系统时序图 18
4.4.1 注册时序图 18
4.4.2 登录时序图 19
4.4.3 管理员修改用户信息时序图 19
4.4.4 管理员管理系统信息时序图 20
5 系统的实现 21
5.1 基本任务 21
5.2 前台功能模块 21
5.3 管理员功能模块 24
5.4 买家功能模块 28
5.5 厂商功能模块 28
6 系统测试 31
6.1 测试环境 31
6.2 测试目的 31
6.3 测试概述 31
6.4 单元测试 33
6.4.1 注册测试 33
6.4.2 登录测试 33
6.5 集成测试 34
结 论 35
参考文献 36
致 谢 37
1 绪 论
1.1课题背景
随着网络的高速发展,网络技术的应用越来越广泛,信息化技术发展迅速,计算机管理系统优势逐渐体现,并且大量的计算机进入了千家万户。玩具销售系统成为信息时代的一个重要代表,由于其涉及的数据量过大,过去的人工管理方式已经很难再维持下去,所以引用了信息化技术来进行管理[1]。计算机系统管理方式替代了人工管理方式,相对过去人工管理方式,利用计算机进行玩具销售系统查询便利、信息准确率高、成本降低、效率提高、本次系统开发主要以玩具销售为对象,根据功能需求开发整个信息化系统。
3 系统分析
3.1 可行性分析
玩具销售系统主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析[5]。
3.1.1 技术可行性
技术上的可操作性是项目建设顺利进行的一个关键因素,技术措施必须达到要求,方能使项目顺利进行。该方案使用了开放源码的代码,并使用 java等语言,对软件的设计具有适度的困难和对电脑的硬件需求。所有的技术都很容易使用。该项目具有技术上的可行性[6]。
3.1.2 操作可行性
当今社会,电脑已经是耳熟能详的存在了,绝大部分用户都可以通过电脑轻松操作本系统。由此可知,我们的管理系统对于绝大部分用户来说,操作是完全可行的,并不存在操作上的盲区[7]。
3.1.3 经济可行性
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.4 法律可行性
此玩具销售系统是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,玩具销售系统在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的[8]。
3.2 系统性能分析
3.2.1 系统安全性
玩具销售制度必须由领导机构严格执行。具体要求如下:
(1)如果要使用玩具销售系统,必须先注册才能进行登录。未获许可的使用者,不可以任意的方法,进入或浏览系统资讯及资料,因而本系统将会得到保护。
(2)在不同司法管辖区的具体实施。使用其他权限登录时,无法跳过此操作[9]。
(3)如果专门应用,该系统将包含许多必须保密的数据和信息。该系统存在系统漏洞,发布此信息将给用户造成重大损失。因此,我们充分保证了该规则和系统的发展趋势。
3.2.2 数据完整性
(1)必须对所有的数据进行详尽的记载,而该信息的内容不得为空白。
(2)各种资料的关联一定要恰当。
(3)在不同的档案中,同一资料资讯应该互相相符[10]。
3.3 系统功能分析
玩具销售系统主要有管理员和买家、厂商,三个功能模块:管理员模块、买家、厂商模块。以下将对这三个功能的作用进行详细的剖析[11]。
管理员模块:管理员在系统中的是核心用户,管理员登录后,可以对后台系统进行管理。主要功能有:系统首页、个人中心、买家管理、厂商管理、玩具分类管理、玩具信息管理、购买订单管理、退货申请管理、换货申请管理、反馈信息管理、生产信息管理、批发订单管理、系统管理等功能。管理员用例如图3-1所示。
4 系统设计
4.1 系统概要
在对该方法进行了系统的解析之后,进行了一个包括了整体和细节的记性系统的设计。整体的设计仅仅是一个整体的方案,通过整体的方案,我们可以将整个体系中的某些部分分割开来,比如文件,文档,数据等等。经过整体的规划,我们可以将这些软件的各个部分,都分成了不同的部分。不过这仅仅是一种初步的分类,并未实际实施。
总体来说,这是一个初步的方案,也是一个工程。我们可以进行多种方案的综合,在比较中,从性能、成本、效益三方面进行比较,最后得出最佳的产品,选用好的总体设计能够减少成本,提高商家效益,从这一点来讲,整体设计非常重要的。
5 系统的实现
5.1 基本任务
该系统的实施方式是指能精确地描绘要实施的对象,以便后续的代码可以按照系统的实际情况用编程的方式来写相应的软件。
系统实现的基本任务如下:
(1)模块的数据结构进行设计,在之前的需求分析、概要设计中更加明确地界定更加含糊的资料类型。
(2)更加精确地对每个模板进行了更加细致的算法设计,并对每个组件的处理过程进行了算法的说明。
(3)执行实体化的资料库。
(4)其他设计:有时候,还要考虑到系统的不同,如:输入/输出格式设计、代码设计、人机对话设计等。
(5)对系统的说明书进行编写。
(6)评审:审查程序中的规则和数据库的实体构造。
系统结构可分为具有三个不同功能的包的java源代码、系统的数据库文件、界面代码。java源代码中三个不同包分别为控制、逻辑、缩写层,分别控制也不同的程序具有不同的性质。有了他们就能对系统的数据进行增删改查,完成界面的显示和数据统计,产生随机数和属性文件的读取。定时器类、翻页工具类等,包含了日期转换、字符串处理、获取编译环境等信息。这些类极大地方便了Java编程,日常开发中,经常要用来这些类。
5.2 前台功能模块
当游客打开系统的网址后,首先看到的就是首页界面。在这里,游客能够看到玩具销售系统的导航条显示首页、玩具信息、公告信息、后台管理、个人中心。系统首页界面如图5-1所示:
图5-1 系统首页界面
在系统首页点击中间的注册/登录按钮,然后页面跳转到注册登录界面,后来输入信息完成后,单击注册或者登录操作,如图5-2、5-3所示:
图5-2买家注册界面
图5-3买家登录界面
买家点击玩具信息,在玩具信息页面的搜索栏输入玩具名称、玩具分类、品牌,进行查询,然后查看玩具编号、玩具名称、玩具分类、品牌、材质、玩具图片、上架日期、单价、运费、数量、商家账号、商家名称、商家地址、联系手机,如果有需要可以点击购买或收藏等操作;如图5-4所示:
图5-4玩具信息页面
在个人中心页面可以输入个人详细信息,进行信息更新操作,还可以对我的收藏进行详细操作,如图5-5所示:
图5-5个人中心界面
5.3 管理员功能模块
管理员登录,通过登录页面填写用户名、密码、角色,点击登录,如图5-6所示。
图5-6管理员登录界面图
管理员登录进入玩具销售系统可以对系统首页、个人中心、买家管理、厂商管理、玩具分类管理、玩具信息管理、购买订单管理、退货申请管理、换货申请管理、反馈信息管理、生产信息管理、批发订单管理、系统管理等功能,进行详细操作,如图5-7所示。
图5-7 管理员功能界面图
管理员点击买家管理,在买家管理页面中可以对账号、姓名、性别、邮箱、手机号码、头像等信息,并可根据需要进行查询或者新增、删除买家信息等操作,如图5-8所示。
图5-8买家管理界面图
管理员点击厂商管理,在厂商管理页面中可以对商家账号、商家名称、商家地址、邮箱、联系手机、营业执照等信息,并可根据需要进行查询或者新增、删除厂商信息等操作,如图5-9所示。
图5-9厂商管理界面图
管理员点击玩具分类管理,在玩具分类管理页面中可以对玩具分类等信息,并可根据需要进行查询、新增或者删除玩具分类等操作,如图5-10所示。
图5-10玩具分类管理界面图
管理员点击玩具信息管理,在玩具信息管理页面中可以对玩具编号、玩具名称、玩具分类、品牌、材质、玩具图片、上架日期、单价、运费、数量、商家账号、商家名称、商家地址、联系手机等信息,并可根据需要进行查询、查看评论或者删除玩具信息等操作,如图5-11所示。
图5-11玩具信息管理界面图
管理员点击购买订单管理,在购买订单管理页面中可以对订单编号、玩具名称、玩具分类、品牌、材质、运费、单价、购买数量、商家账号、商家名称、商家地址、联系手机、应付金额、账号、姓名、手机号码、下单时间、购买备注、是否支付等信息,并可根据需要进行查询或者删除购买订单等操作,如图5-12所示。
图5-12购买订单管理界面图
管理员点击反馈信息管理,在反馈信息管理页面中可以对反馈编号、反馈标题、玩具名称、商家账号、商家名称、反馈时间、账号、姓名、回复信息,并可根据需要进行查询或者删除反馈信息等操作,如图5-13所示。
图5-13反馈信息管理界面图
管理员登录进入玩具销售系统进行不同模块信息管理的总体流程图如图5-14所示。
图5-14管理员模块总体流程图
5.4 买家功能模块
买家点击后台管理,然后页面跳转到玩具销售系统可以查看系统首页、个人中心、购买订单管理、退货申请管理、换货申请管理、反馈信息管理等内容,如图5-15所示。
图5-15买家功能界面图
买家功能模块操作流程图如图5-16所示:
图5-16买家功能模块操作流程图
5.5 厂商功能模块
在系统首页点击中间的登录按钮,然后页面跳转到登录界面,后来输入信息完成后,单击登录操作,如图5-17所示:
图5-17厂商登录界面
厂商登录进入玩具销售系统可以查看系统首页、个人中心、玩具信息管理、购买订单管理、退货申请管理、换货申请管理、反馈信息管理、生产信息管理、批发订单管理等内容,如图5-18所示。
图5-18厂商功能界面图
厂商功能模块操作流程图如图5-19所示:
图5-19厂商功能模块操作流程图
6 系统测试
6.1 测试环境
玩具销售系统的测试环境如表6-1所示。
表6-1 测试环境信息表
分类 名称 版本
操作系统 Windows 7
数据库 MySQL 8.0
浏览器 Chrome 87.0.4280.88
6.2 测试目的
进行软件测试主要是为了验证产品或者系统是否完成了实现功能,测试能够防止系统出现错误,还能降低开发成本减少不必要的花销,其次测试的好处包括防止错误、降低开发成本和提高性能[12]。其次,通过软件的检测可以对项目的安全性进行鉴别。向开发人员提供软件测试的反馈,并为项目的安全性评价提供必要的资料。此外,软件的检测保证在正式发布之前能够满足在线要求。在每一个开发过程中不断跟踪和对软件的测试。还有,软件测试还能保证系统到达预期的标准,从而能够尽快上线。
在本系统中,主要测试前台和后台,分别对系统的不同模块进行测试,比如用户登录等功能是否实现,实现过程中是否出现问题等。是否能够处理不同的数据。前台主要测试:用户界面的实现和不同界面的交互情况,后台主要测试系统经过管理后前后台链接是否顺畅,前台界面是否及时更新,更新是有误[13]。
6.3 测试概述
1.测试的原则
(1)测试应该以用户的需要为基础。从用户的观点来考虑,最大的问题是软件不能达到用户的预期。有时候,软件产品的测试结果非常完美,但却不是客户最终想要的产品,那么软件产品的开发就是失败的,而测试工作也是没有任何意义的。因此测试应依照客户的需求配置环境,并且按照客户的使用习惯进行测试并评价结果。
(2)尽早测试。由于软件开发过程中的各种不同的环节都会出现问题,所以要及早进行测试,将软件的检测工作渗透到整个软件的整个寿命过程,使测试者可以及早地察觉并防止这些缺陷。减少了 bug修理费用。
(3)穷尽测试是不可能的。因为受时间和财力的制约,无法实现所有不同的输入和输出的综合测试,测试者能够基于测试的风险和轻重缓急等来决定测试的重点,由此来进行测试,并在测试成本、风险和收益间找到一个平衡点。
这是因为测试者不能按时进行测试案例的升级,也可能是因为他们太了解测试案例和目标而导致的。
2.测试的方法
测试方法主要有人工测试和机器测试两种测试方法。
(1)人工测试
人工测试又称代码复审,包括个人复查、走查、会审三种方法。
(2)机器测试
计算机检测有两种方式:黑盒测试和白盒测试。黑盒测试:从外观上找出它的缺点和错误。黑盒测试是在编程接口上进行的,它仅仅是为了检验样品的执行情况,而不是根据要求规范的要求进行;白盒测试:对软件的内在构造进行了剖析,即在编程接口上进行了试验,其目的仅仅在于检验样品的执行情况,而不能满足要求规范的要求,检测来寻找问题。
在最终的检测中,本研究采取了将后黑盒子检测与白盒子检测相融合的方式。黑箱试验是为了对系统的输入、输出性能进行测试,以发现其性能上的误差和潜在的不足。白箱试验的目的是为了检测程序和程序的运行路线,从而找出运行中的问题。该系统有两种方式:单位试验和综合试验。
6.4 单元测试
6.4.1 注册测试
在对注册模块进行测试时,先键入用户名和密码等信息,再按下注册键测试是否能正常注册系统。如果信息填写错误,能否弹出弹框,用来提示用户何处输入错误。
注册测试用例如下表所示。
表6-2注册测试用例
测试模块 用户注册模块测试
测试目的 测试当注册信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击注册。
2输入未注册过的用户名。例如:qwer
3输入正确用户名,两次密码不一样。例如:用户名qwerty、密码 0001,确认密码1111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面跳转,弹出对话框,提示用户注册成功。
3界面不跳转,弹出对话框,提示两次密码不一致。
实际结果 与预期结果相同。
结论 注册模块实现成功。
6.4.2 登录测试
登录模块需要测试的功能有:输入登录名和密码,点击“登录”按钮,如果信息添加正确,是否正常进入系统首页。如果信息填写错误,能否弹出弹框,提示用户信息输入有误。登录测试用例如下表所示。
表6-3登录测试用例
测试模块 用户登录模块测试
测试目的 测试当登录信息输入不符合要求时,系统是否能进行相应处理并给出提示。
测试方法 黑盒测试
测试数据 1不输入用户名和密码,直接点击登录。
2输入未注册过的用户名。例如:qwertyu
3输入正确用户名,错误密码。例如:用户名qwertyu、密码 000
4输入正确用户名,正确匹配密码。例如:用户名qwertyu、密码 111
预期结果 1 界面不跳转,弹出对话框,提示用户输入必填项。
2界面不跳转,弹出对话框,提示用户当前用户名尚未注册。
3界面不跳转,弹出对话框,提示用户密码错误。
4界面实现跳转,登录功能正常进行。
实际结果 与预期结果相同。
结论 登录模块实现成功。
6.5 集成测试
集成测试的方案主要如下所述:
(1)在完成安装部署后,将该系统移植到其他电脑,并可以顺利地运行该系统。
(2)用户信息管理模块综合测试,新增一个新的使用者 qq,指定一个普通的角色,查看普通角色的特权,并储存设定。作为 qq登录,以了解所具有的权利。
(3)根据玩具销售系统的具体设计和实施,采用多种角色的方式,对各个模块的性能进行检测,并检测各个模块之间的逻辑功是否正确。
通过实验证明,该开发的系统能够满足玩具销售程序和基础需求。
1.2 课题目的及意义
随着信息化管理技术不断发展,传统的玩具销售已经无法适应,效率与预期相差甚远,因此需要开发一套操作方便,效率较高的玩具销售系统。当前,21新世纪,人们已经进入了信息时代,人们获取信息的方式大大增加,摆脱了传统的报纸、电视、广播等媒体,而是从各种网络、自媒体平台上获取信息,这就导致日常生活中产生的数据信息十分巨大,尤其是对于玩具销售,更需要大量的信息[2]。本系统能为买家、厂商提供一个玩具销售平台,就能够快速有效的帮助买家在线查询购买订单、退货申请、换货申请等,厂商查看玩具信息、购买订单、退货申请、换货申请、反馈信息、生产信息、批发订单等,并且可以让管理员能够轻松效率地添加所有的信息。系统开发的意义主要在于两个方面,一方面,系统上线后,能够为买家与厂商带来很大便利,玩具销售管理涉及的数据量较大,要求精度高,采用计算机系统能够很好满足此需求,并且随着目前电脑的普及,方便用户使用。另一方面,通过自己动手操作设计系统,不仅可以提升自己的学习兴趣,也是在进入社会之前的一次很好的锻炼机会。
1.3课题研究现状
其实,相关的研究在国外已经开展了很多年了,将玩具销售与信息技术相融合的理念在欧美等发达国家的商家建设中很受欢迎美国开放的Ravel平台,能够在电脑上实现远程购买订单、退货申请、换货申请等功能,极大的丰富了线上管理模式。于是希望通过互联网技术保障实现玩具销售系统[3]。但现如今,也有许多国外学者提出,信息化时代带来的局面乱象越来越多,日益增长的玩具销售平台让人应接不暇,需一场数字化的现代化的转型,建立可靠的玩具销售系统,实现数字管理。
随着网上玩具销售不断的增加,越来越多的人们开始加入了网上玩具销售大潮中,但是我国网上玩具销售效果低下,而且出错率也很高。因此大家迫切需要一款更加专业化的玩具销售系统,设计该系统主要目的是为了方便用户可以有一个非常好的玩具销售平台,管理员也可以通过该系统进行更加方便的管理操作。
1.4 论文主要工作内容
本文设计并实现了一个玩具销售系统,主要包括以下具体工作内容:
(1)参考国内外相关系统开展了系统的需求分析,明确了买家、厂商、玩具分类、玩具信息、购买订单、退货申请、换货申请、反馈信息、生产信息、批发订单等主要功能需求;
(2)设计系统技术方案,采用python语言,选用MySQL数据库、B/S架构、django框架来设计并实现本系统。
(3)具体介绍了各个功能模块的设计与实现。
(4)对系统的注册、登录等功能进行了全面的测试[4]。