大数据分析论文:django基于大数据的银行信用卡用户的数仓系统的设计与实现

摘 要

随着计算机技术发展,计算机系统的应用已延伸到社会的各个领域,大量基于大数据的广泛应用给生活带来了十分的便利。所以把银行信用卡用户的数仓管理与现在网络相结合,利用计算机搭建银行信用卡用户的数仓系统,实现银行信用卡用户的数仓信息化。则对于进一步提高银行信用卡用户的数仓管理发展,丰富银行信用卡用户的数仓管理经验能起到不少的促进作用。
系统阐述的是银行信用卡用户的数仓系统的设计与实现,对于Python、B/S结构、MySql进行了较为深入的学习与应用。主要针对系统的设计,描述,实现和分析与测试方面来表明开发的过程。开发中使用了 django框架和MySql数据库技术搭建系统的整体架构。利用这些技术结合实际需求开发了具有个人中心、用户管理、信用卡数据管理、商品数据管理、商品信息管理、系统管理、订单管理等功能的系统,最后对系统进行相应的测试,测试系统有无存在问题以及测试用户权限来优化系统,最后系统达到预期目标。

关键字:银行信用卡用户的数仓;Python; django;MySql数据库

Abstract

With the development of computer technology, the application of computer system has been extended to every field of society, and the extensive application based on big data has brought great convenience to life. So the bank credit card user number warehouse management and the current network combination, using the computer to build the bank credit card user number warehouse system, to achieve the bank credit card user number warehouse information. It can further improve the development of bank credit card users’ warehouse management and enrich their warehouse management experience.
The system describes the design and implementation of the number warehouse system for bank credit card users, and has carried on a more in-depth study and application of Python, B/S structure and MySql. Mainly for the system design, description, implementation and analysis and testing aspects to show the development process. Development using django framework and MySql database technology to build the overall architecture of the system. Using these technologies combined with the actual needs to develop a personal center, user management, credit card data management, commodity data management, commodity information management, system management, order management and other functions of the system. Finally, the system is tested to test whether there are problems in the system and test user rights to optimize the system, and finally the system to achieve the desired goal.

Key words: the number of bank credit card users; Python; django; MySql database

目 录

1 概 述 5
1.1研究背景 5
1.2研究意义 5
1.3研究内容 5
2 关键技术介绍 7
2.1 PYTHON语言简介 7
2.2大数据介绍 7
2.3 MySql数据库 8
2.4 DJANGO框架 8
2.5 Hadoop介绍 9
2.6 Scrapy介绍 10
2.7 B/S架构 10
3 系统分析 12
3.1可行性分析 12
3.1.1经济可行性 12
3.1.2技术可行性 12
3.1.3运行可行性 12
3.2系统用例分析 12
3.3流程设计 14
3.3.1程序流程图设计 14
3.3.2添加信息流程图设计 14
3.3.3删除信息流程图设计 15
4 系统的设计 16
4.1系统总功能模块设计 16
4.2系统数据库设计 16
4.2.1数据库系统概要设计 16
4.2.2 E-R模型结构设计 17
4.3数据表设计 19
5 系统的实现 30
5.1系统功能实现 30
5.2管理员模块实现 32
6系统测试 36
6.1系统测试的目的 36
6.2软件测试过程 36
6.3测试用例 37
结论 39
致谢 40
参考文献 41

1 概 述

1.1研究背景
中国在两千年左右就已经对计算机这一块发展到相当的规模了,现在老百姓们越来越离不开计算机网络、互联网所带来的好处了,现如今各种格式的网站系统遍地开花,现在不同于以往老旧的管理方式了,只有跟上时代的发展才能不会被淘汰掉,所以对于银行信用卡用户的数仓来说也是同样的,将传统的线下管理带到线上,能够大大提升管理效率,好处也有很多,首先整体的美化、提升了在新时代的背景之下新的样貌,更加朝气蓬勃。一个好的系统能够把传统的银行信用卡用户的数仓信息管理方式,带上一全新的方式,效率、可靠、安全稳定集合一身的系统,带来的体验是传统管理方式所没有办法实现的,信息的交流将达到顶峰,用户的沟通将会更加的便捷,有问题实时反馈提交,及时接收重要通知,将银行信用卡用户的数仓管理正规化、合理化、高效化。
1.2研究意义
随着时代的发展,信息技术得到广泛的应用给人们和生活注入了充沛的活力。网络使人们生活和工作带来便利,可以更高效的处理人们获取信息中精细化、全面化的问题,从而提高了工作效率。从独特且和资源相对优势的管理带来了更好的发展机会,在经济、教育、科研等各大领域上的应用也将逐渐成熟化。这是线下传统管理方式无法涉及的,为此,我们要无畏艰辛,永无止步的努力探索,力求开发出更具实用且信息化的银行信用卡用户的数仓系统。综上,研究意义重大。
1.3研究内容
整个的系统的开发运用Python技术, django框架,以及MySql数据库技术的大力支持下同步完成该系统的开发,实现了银行信用卡用户的数仓管理信息化,使管理者在操作思路清晰且更加方便,用户也可以体验到更加优秀的银行信用卡用户的数仓系统,内容目标如下。
(1)减少后台管理人员的工作量,对用户的信息进行系统的管理;
(2)必须要方便快捷的查看搜索信息并管理信息;
(3) 用户是具有多样性的,所以界面要设置的简单明了,操作更要方便快捷。
(4)编写开发系统的技术文件。
(5)对系统进行了系统测试。

2 关键技术介绍

银行信用卡用户的数仓系统设计过程中采用Python开发语言,B/S结构,采取 django框架,并以MySql为数据库进行开发。结合以上技术,对本系统的整体、数据库、功能模块、系统页面以及系统程序等设计进行了详细的研究与规划。
2.1 PYTHON语言简介
Python是由荷兰数学和计算机研究学会的吉多•范罗苏姆于20世纪90年代设计的一款高级语言。Python优雅的语法和动态类型,以及解释型语言的本质,使它成为许多领域脚本编写和快速开发应用的首选语言。Python相比与其他高级语言,开发代码量较小,代码风格简洁优雅,拥有丰富的第三方库。Python的代码风格导致其可读性好,便于维护人员阅读维护,程序更加健壮。Python能够轻松地调用其他语言编写的模块,因此也被成为“胶水语言”。
Python的应用场合非常广泛,在科研领域中,可以用Python训练人工智能模型,也可以对实验数据进行数据分析。在生活中,Python提供了很多优秀的、开源的Web开发框架,例如Django、Flask、Pyramid、Tornado等。知乎、豆瓣网、Youtube等知名应用都是由Python为基础进行开发的。相比于其他框架,Django有着更加丰富的插件,作为企业级框架也很好上手,适合本次开发。此系统是开发一个Web应用,采用Django框架,将在下一节进行具体介绍。本次开发选用的是Python3.6.4版本。
2.2大数据介绍
什么是大数据,大数据的定义应该是多层次的。[1]狭义的大数据停留在技术处理的层面;而广义的大数据则包含了大数据产业链的各个环节所提供的产品和服务;泛义的大数据扩展到每个细分的行业大数据中,成为“数据+”;伪义大数据则以营销为目的,虽然不可避免地包含了一部分炒作的成分,但也确确实实起到了一定的推广作用,是一股不可低估的市场力量。大规模数据的概念是由一家全球知名的咨询公司的麦肯锡(McKinsey)首先提出的,目前人们普遍认为它是一种数据管理模式,可以根据广泛、多样和有价值的信息快速处理数据。大数据的传递,作为大交响曲的创作,需要三部曲的策划、实施和操作。现在社会发展很快,科技发展,信息流通,人们的交流越来越紧密,生活越来越舒适,大数据是这个时代的结果。对于大数据背景下信息管理与信息系统的研究,首先要知道什么是大数据,以及大数据的一些性质特征。
2.3 MySql数据库
MySql数据库具有轻便、稳定等特点,在系统的工程中对相关的数据操作,很好的保障数据的稳定,极大程度上减低了系统开发的时间。
MySql数据库支持多线程工作,能充分利用系统的资源,更具有效率且数据库连接也有对于的不同模式接口;MySql存储小、运行稳定并且对使用的要求不高。
利用MySql建立系统数据库,利于对系统的数据处理早期的整合,可以更好的发展后数据的扩展实际操作[3]。
Mysql数据库的特点如下:
(1)Mysql是相比于Oracle更轻量、更简洁便于使用,在服务部署方面相对复杂度低,更利于毕设系统的开发。
(2)支持多种操作系统包括AIX、FreeBSD、HP-UX、Linux和Mac OS、Novell‘s Netware、OpenBSD系统、OS/2卷、Solaris、Windows等。
(3)查询速度快。算法优化了查询语句,可靠地提高了搜索速度。
(4)Mysql可以使用Sql语言进行调用,学习成本较低。
(5)Mysql可支持互联网站数据共享也支持数据安全设置,防止数据泄露。
(6)高度非过程化。在访问数据库时,没有必要一步一步向计算机发送指令去完成任务,只需要用MySQL语句描述并且命令就可以了,数据库会自动完成全部工作。
2.4 DJANGO框架
Django被官方称之为“完美主义者框架”,只需要很少的代码就能更快的完成一个优秀的Web应用[4]。Django采用了MTV框架模式,此模式根据MVC进行改进形成了更适于Django的设计模式。M为模型(Model)、T为模板(Template)、V为视图(View)。下面介绍部分Django的核心与优点:
(1)对象关系映射(ORM,Object-Relation-Mapping):ORM的方法论有着三个核心原则:
① 简单:以最基本的形式构建数据。
② 传达性:数据库结构被任何人都能理解的语言文档化。
③ 精确性:基于数据模型创建正确标准化的结构。
用于Python之中即是以Python类形式定义数据模型,类中的每一个属性对应着数据库中的一列。引入ORM后,无需编写原生SQL语句,使用基于面向对象的思想去编写类、对象、调用方法等,ORM会将其映射成SQL语句通过pymysql执行。
(2)路由配置(URLConf):Django的URL设置更加灵活优雅,看似复杂难懂,但使用的都是简单的正则表达式,你可以随心所欲的创造优美的、简洁的、专业
的地址。
(3)模板(Template):模板可以理解为承载数据的工具,为了将数据从视图中分离出来,通过各种各样的标签来进行数据的传输。Django的模板融入了面向对象中继承的思想,提高了复用减少冗余代码。
(4)视图(View):视图就是views.py中的函数,也就是逻辑代码,为了将URL和视图关联起来,用到了上述的URLConfs,URLConfs将URL模式映射到视图中,每个视图有两件事是必须要做的:返回一个包含被请求页面的HttpResponse对象,或者抛出一个异常。
(5)后台管理系统(Django-Admin):Django提供的一个基于Web的管理工具。
Django-Admin来自django.contrib也就是Django的标准库,默认被配置好,只需要激活启用即可,它的优势在于可以快速对数据库的各个表进行增删改查,一行代码即可管理一张数据库表,相比于手动后台1个模型一般需要4个urls,4个视图函数和4个模板,可以说Django完成了一个程序编写的大部分重复工作,并且对于图书管理这种以管理工作为重系统来说,极度契合。
(6)应用(Application):当项目规模过大时,难免会产生目录过长,文件过多的问题,Django理念中的App可以将项目相对独立的进行开发,插拔的工作方式和独立性让开发者废弃的App即使删除也不会影响整体,是一种不可多得的理念。
因为本次使用的Python版本为3.6.4,低版本的Django不支持Python3,故此次使用的Django版本为3.2.12。
2.5 Hadoop介绍
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。主要有以下优点:
(1)高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。
(2)高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。
(3)高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
(4)低成本。与一体机、商用数据仓库以及QlikView、Yonghong Z-Suite等数据集市相比,hadoop是开源的,项目的软件成本因此会大大降低。
2.6 Scrapy介绍
Scrapy是一个抓取网站数据和提取结构化数据的框架,它可以应用在广泛的应用中:Scrapy通常用于一系列应用,包括数据挖掘、信息处理或存储历史数据。使用Scrapy框架实现一个爬虫程序通常非常简单,抓取给定网站的内容或图像。
虽然Scrapy是为屏幕抓取(或者更准确地说是网页抓取)而设计的,但它也可以用于访问api以提取数据。
2.7 B/S架构
Browser/Server简称(B/S),即:浏览器/服务器架构模式;属于WEB发展后的所出现的一种网络构造,而WEB又是主要的浏览器应用商品软件。B/S架构模式不仅将系统的重新开发、维修及利用等简单化,更将其重点放到了服务器上。它使客户端得到了统一,在服务器上汇集了系统功能的最核心部分。
B/S架构模式,在服务器接收到浏览器发出请求后将进行对应的回应。Internet上文本、图片、动画等信息主要由Web服务器产生,而用户主要是通过浏览器访问这些信息。在Web上下载程序时遇到某些和数据库相关的指令,可以将这些指令转接到数据库服务器来进行解释和执行。B/S架构工作流程图如2-1所示:
在这里插入图片描述

图2-1 B/S架构工作流程图

3 系统分析

为了系统的完整,必须要有可行性分析的,系统的可行性关系到生存问题,分析其意义可否利用本系统来弥补线下银行信用卡用户的数仓管理模式中的不足之处等,通过本系统来减少工作量,使管理者与用户的工作和管理效率更高。对此体现出更多的意义和价值,系统完成后,进行具体的实际分析看是否能够达到期望的要求,确定之后再开始系统的搭建开发工作。对于银行信用卡用户的数仓系统开发的搭建中,对相关技术、实际情况和操作等一系列方面进行可行性分析;
3.1可行性分析
3.1.1经济可行性
本系统所用软件均为微软软件,开发周期短,因而可节约大量时间与资源,达到降低成本之功效。并且具有很好的安全性、可靠性以及可扩展性。同时发展该银行信用卡用户的数仓系统需要的智能计算机配置很低,即使网吧中被淘汰掉的配置不高的计算机也能满足需要,因此具有充分的可行性。
3.1.2技术可行性
本系统开发的程序需具有网络功能,从而可以不受地点限制。由于采用了B/S模式,降低了成本,提高了效率。本银行信用卡用户的数仓系统以Python, MYSQL数据库为设计工具,能够方便应用。所以将Python与MYSQL集成而研制的智能系统具有可行性和有效性。
3.1.3运行可行性
运行可行性也可以说是系统可用性的体现,银行信用卡用户的数仓系统本身具有运行可行性的特点,其界面的设计清晰、功能权限分配合理、操作方便。本论文设计的是银行信用卡用户的数仓系统,通过技术的结合提出一套切实可行的解决方案。不同的用户接入之后不需要经过特殊的训练就可以运行到对应功能模块中。
3.2系统用例分析
银行信用卡用户的数仓系统综合网络空间开发设计要求。目的是将银行信用卡用户的数仓系统从传统管理方式转换为在网上管理,完成银行信用卡用户的数仓管理的方便快捷、安全性高、交易规范做了保障,目标明确。银行信用卡用户的数仓系统可以将功能划分为管理员功能和用户功能。
(1)、管理员关键功能包含系统首页、个人中心、用户管理、信用卡数据管理、商品数据管理、商品信息管理、系统管理、订单管理等进行管理。管理员用例如下:
在这里插入图片描述
图3-1 管理员用例图
(2)、用户关键功能包含系统首页、商品信息、公告信息、后台管理、购物车、个人中心等进行管理。用户用例如下:
在这里插入图片描述

图3-2 用户用例图
3.3流程设计
3.3.1程序流程图设计
在本系统,非本系统的用户要想进行银行信用卡用户的数仓功能操作就要注册本系统,登录时需要填写相应的资料,如有使用者,则会显示使用者名称已经存在,请再次键入使用者名称的提示框,若使用者不存在,则填写密码、确认密码等资料,并由系统判定密码与确认密码相符,确认无误后,填写使用者所填写的资料,即可进行登记。该系统的程序流程如图3-3所示:
在这里插入图片描述

图3-3程序流程图
3.3.2添加信息流程图设计
在添加信息的时候,会判断是哪类用户,并根据用户类型判断执行是否合法,合法者可以进行添加,不合法者则不能进行此操作[12]。管理员登录账号后可以对内容进行添加,拥有着最高的权限,其他用户权限次于管理员。添加信息流程图如图3-4所示:
在这里插入图片描述

图3-4添加信息流程图
3.3.3删除信息流程图设计
删除数据时与添加数据功能类似,删除数据具体流程如图3-5所示:
在这里插入图片描述

图3-5系统删除流程图

4 系统的设计

4.1系统总功能模块设计
系统整体模块设计:系统分为管理员和用户两大用户角色,系统管理员有最大的权限,整体功能展示如图4-1所示。
在这里插入图片描述

图4-1 系统整体功能图
4.2系统数据库设计
4.2.1数据库系统概要设计
从设计到制作研发一个系统,需要用到的技术很多,对于开发程序语言、数据库和框架布局都有严格的要求[5]。该系统数据存放使用MySql的数据库,该数据库轻便快速,日常使使用系统十分稳定,更容易维护运行[6]。
4.2.2 E-R模型结构设计
E-R图由实体与有关实体关联相结合构成的图,利用E-R图对清楚地表达出系统内的实体之间的关联。在系统中对一些主要的几个关键实体如下图。
(1) 商品信息实体属性图如下图4-2所示。
在这里插入图片描述

图4-2商品信息实体属性图
(2) 商品数据实体属性图如下图4-3所示。
在这里插入图片描述
图4-3商品数据实体属性图
(3) 公告信息实体属性图如下图4-4所示。

在这里插入图片描述

图4-4公告信息实体属性图
(4) 用户实体属性图如下图4-5所示。
在这里插入图片描述

图4-5用户实体属性图
(5) 订单实体属性图如下图4-6所示。
在这里插入图片描述

图4-6订单实体属性图
4.3数据表设计
系统创建数据库和表之间关联,期间花费了不少时间,尽力把表格完善,更好的呈现出来,让表更加明了,更加清晰。系统在MySql的可视化软件Navicat premium创建的数据表,简洁明了的设计让数据库的创建操作更加快捷,数据表的详细情况如下表所示。
表4-1:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3

表4-2:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注

表4-3:商品信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinbianhao varchar 200 商品编号
shangpinmingcheng varchar 200 商品名称
shangpintupian longtext 4294967295 商品图片
shangpinleixing varchar 200 商品类型
shangpinxiangqing longtext 4294967295 商品详情
guige varchar 200 规格
shiherenqun varchar 200 适合人群
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格

表4-4:商品数据
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
baihuoshangdian varchar 200 百货商店
doushi varchar 200 都市
pindao varchar 200 频道
xingbiequnti varchar 200 性别群体
tonglingren varchar 200 同龄人
gongzuori varchar 200 工作日
chanpin varchar 200 产品
guke varchar 200 顾客
shouru float 收入
dingdan varchar 200 订单
shuliang varchar 200 数量
danweichengben float 单位成本
danweijiage float 单位价格

表4-5:商品类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinleixing varchar 200 商品类型

表4-6:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
goodtype varchar 200 商品类型

表4-7:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容

表4-8:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-9:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
yonghudianhua varchar 200 用户电话
shenfenzhenghao varchar 200 身份证号
money float 余额 0

表4-10:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型

表4-11:信用卡数据
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xinyongkagukebianhao varchar 200 信用卡顾客编号
shenqingshulaiyuan varchar 200 申请书来源
xiacihu varchar 200 瑕疵户
yuqi varchar 200 逾期
daizhang varchar 200 呆账
jiekuanyue varchar 200 借款余额
tuipiao varchar 200 退票
juwangjilu varchar 200 拒往记录
qiangzhitingkajilu varchar 200 强制停卡记录
zhangshu varchar 200 张数
pinlv varchar 200 频率
huji varchar 200 户籍
doushihuachengdu varchar 200 都市化程度
xingbie varchar 200 性别
nianling varchar 200 年龄
hunyin varchar 200 婚姻
xueli varchar 200 学历
zhiye varchar 200 职业
gerenshouru varchar 200 个人收入
gerenyuekaixiao varchar 200 个人月开销
zhujia varchar 200 住家
jiatingyueshouru varchar 200 家庭月收入
yueshuakae varchar 200 月刷卡额
zongjiaoxinyang varchar 200 宗教信仰
renkoushu varchar 200 人口数
jiatingjingji varchar 200 家庭经济
xuexing varchar 200 血型
xingzuo varchar 200 星座

表4-12:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]

表4-13:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
以上就是银行信用卡用户的数仓系统中重点使用的关键数据库表格,表格全部展示过于杂乱,选取重点表格展示。

5 系统的实现

5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条。系统首页界面如图5-1所示:
在这里插入图片描述

图5-1 系统首页界面

系统注册:在系统注册页面输入用户注册信息进行注册操作,系统注册页面如图5-2所示:
在这里插入图片描述

图5-2系统注册页面

商品信息:在首页点击商品信息推荐,可以查看到商品详细信息,并根据需要进行收藏、添加到购物车或立即购买等操作;如图5-3所示:
在这里插入图片描述

图5-3商品信息详细页面

个人中心:在个人中心页面输入个人信息可以进行更新信息操作;还可以对我的订单、我的地址和我的收藏进行详细操作;如图5-4所示:
在这里插入图片描述

图5-4个人中心界面
5.2管理员模块实现
管理员登录,在登录页面正确输入用户名和密码后,进入操作系统进行操作;如图5-5所示。
在这里插入图片描述

图5-5管理员登录界面
管理员登录进入系统,主要功能包括对个人中心、用户管理、信用卡数据管理、商品数据管理、商品信息管理、系统管理、订单管理等进行操作。管理员主界面如图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看板界面

6系统测试

系统测试是检验软件产品是否满足预期需求,确保产品无缺陷的重要手段。系统测试侧重于评估系统是否满足指定的要求,并帮助检查整个系统的功能性需求。通过对系统功能的测试用例进行分析可以发现软件存在的问题以及需要改进之处。软件可靠性设计是一项系统性工程,涉及到多个学科领域,因此其难度较大。
系统将采用黑盒测试方法对功能模块进行测试。黑盒测试即功能测试,是通过检验系统的功能是否达到预期效果来测试网站[7],它可以与预期结果相对比,看是否与预期结果一致,通过观察程序能否正确的输出信息。以此判断程序是否成功运行。
6.1系统测试的目的
系统测试(System Testing)是为给客户提供测试产品或服务的质量信息而进行的检查。系统测试还可以提供客观和独立的系统评估,以使运营者能够了解和系统实施所面临的潜在问题。系统测试包括(软件的组件,系统组件)的执行,以评估系统属性。通常这些属性表明被测组件或系统满足系统预期开发需求,在各种预期的时间内,正确响应各种系统输入,同时可以满足分析设计时要求的程度。在预期的环境中运行,并达到用户期望的总体结果。经过一系列严格功能测试,以发现系统功能方面潜在的问题,保证系统的正常运行。
6.2软件测试过程
软件测试是软件设计的收尾阶段,它是贯穿整个设计过程的,是一个巨大的任务。软件测试需要对程序所有的部分进行测试。且对每个部分的测试都是不一样的,需要在进行测试之前将它们分为以下几个阶段:
(1)单元测试(模块测试[13])
是对软件的程序代码进行检查的测试。针对软件的最小单元部分。单元测试分为人工检测和动态检测。静态检测要保证程序算法的正确性,要规范程序的逻辑性、规范性、正确性等。这一步要尽可能检测可能出现的错误。动态检测要通过比较实际结果和原先预计结果进行比较分析,找出错误。
(2)集成测试
此测试[14]是建立在单元测试基础上的,对系统的各个功能模块所进行的测试。任何的软件设计都会有集成阶段,所以在软件测试过程中,集成测试是的必定部分。在集成测试的时候,由于是对各个模块之间进行测试,所以可能在测试的时候没有发现问题,但整体测试的时候会暴露出来。同时,在进行集成测试时要小心在模块连接时注意是否有数据丢失。还要注意虽然单个模块的错误可能很少,没有影响,但拼接起来可能就会对系统产生很大影响。
(3)系统测试
系统测试紧跟集成测试进行。系统测试将已通过集成测试的部分作为整个系统的一员。和电子设备的各个软件和硬件等一起,通过实际运行进行检测,在模拟的实际环境下检测是否有错误出现。系统测试需要与计划中的理想状况作比较,发现与预想中不一样的地方。通过设计者的分析后决定如何修改。在软件实际运行的过程中,会发生很多意想不到的错误,可能测试人员也没有办法在第一时间解决问题,所以,系统测试应尽可能在实际运行下进行测试,这样才能达到更好的测试目的。
(4)验收测试
验收测试是系统在设计完成发行前最后的测试,它需要了解用户的需求。并和他们一起完成测试,同时根据他们的需求进行针对性的修改,以成为可以更好同时满足两者需求的软件。
6.3测试用例
登录功能是用户进入系统的校验窗口,其中需要填写的信息包括用户账号和用户密码,下面将根据此功能设计具体测试用例来验证登录功能的实现与否。具体测试用例见表6-1。

表6-1 登录功能测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面展示 浏览器输入登录地址 进入登录页面 成功
Test_02 账号非空检验 账号为空,点击“登录”按钮 提示“用户账号必须输入” 成功
Test_03 账号存在性检验 输入不存在的账号 提示“输入的账号不存在” 成功
Test_04 密码非空检验 输入正确的账号,密码为空 提示“用户密码必须输入” 成功
Test_05 密码正确性检验 输入正确的账号和不正确的密码 提示“输入的密码错误” 成功
Test_06 登录成功检验 输入正确的账号和密码 登录成功,进入首页 成功

结论

系统阐述的是银行信用卡用户的数仓系统的设计与开发,在此系统的开发过程中应用到Python、MySql技术和面向接口编程。在系统的开发中应用B/S结构设计开发实现,让系统之间逻辑分层清晰明确使得系统更加的合理可靠,更加坚固的保证了项目的开发健壮性和准确性。
这个系统的开发使我能够结合我以前的知识集成和改进它们。毕设就是检验我们对所学内容运用程度的时刻,对所学内容运用情况进行巩固与提高。本系统检验了自己的IT知识,同时也检验了自己运用相关知识去解决实际问题,使自己得到了一个锻炼与提升编程技能的机会。在设计上我遇到了很多困难,主要原因是我所拥有的知识不是很扎实,所以只靠几本书里的知识是远远不够的!自己经过实践取得了一些实践经验。知识不在于理解,必须学会运用,并且使之反映到实际生活中去,才是学知识的根本目的。面对困难,我学着怎样去处理,怎样去发现并分析有关的资料,此次实践使我在实际应用中有所提高,同时极大地增强了大脑的工作能力,使我在探索中获得快乐,在成功中获得幸福,是我莫大的财富。后期也将继续对系统做出进一步的优化升级。
(1) 完善操作逻辑,让系统功能更加合理。
(2) 补充完善小功能的应用,使系统更加完整实用。
(3) 精简美化系统界面,提高系统观赏度。

致谢

银行信用卡用户的数仓系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。同时,学校这次期间对我的帮助真的非常的大,身边的老师与同学都十分的热情,我有很多不懂的问题都是身边的老师与同学指导我的,可以说我的成长和进步是离不开学校的老师与同学,在这段期间我的成绩技术也是比以往进步的更加迅速。这四年的校园生活让我受益匪浅,终身难忘。
首先要感谢我的指导老师。她是一位发自内心希望我们这些学生成为优秀的人的老师。我还记得他在课间时间挨个问我们毕业后的想法,推荐我们课外书籍清单,鼓励我们学习课外知识的场景。他又很有责任感,在指导我们完成毕业设计和论文的同时,还给我们讲一些需要注意的事项,真正做到了教书育人。我每一回都因为实际操作中遇到苦难而向老师发消息求助时,老师总是秒回信息,事无巨细地解释清楚,而且同步发到同学群中,对于别的同学来说也是很大的帮助。或许对于一位老师来讲,学生有所成是他们的期望。那我希望这篇论文不是我的最后一篇论文。
其次感谢我的室友。虽然前几年的生活磕磕绊绊,小矛盾不断,但是最近一年我们都平静了下来。也很庆幸,我们在这段焦虑有压力的日子里几乎没有摩擦,而是相互鼓励,谢谢你们。
还有与我密不可分的亲人。即使他们当我因为压力而发脾气时,他们也只是告诉我:“要冷静”。在很多我认为自己撑不过去的时候,是他们的安慰与默默支持让我觉得自己可以。我希望我今后可以继续努力,去成为他们心中的那个我。
所以我会格外的珍惜这次不可多得的历练,在今后的工作生活的,我会继续努力,保持学习,保证自己思想的每日提升,学校带给我的东西很多很多,这些东西是我今后继续前行的养分,真的非常感谢,能够遇到这么多的人。
最后,我向母校老师们再次表示衷心的感谢和美好的祝福,感谢你们的辛勤栽培,祝老师们幸福健康!

参考文献

[1]韦力梅,苏兵. Django框架下Python网站开发过程综述 [J]. 电脑与电信, 2019.
[2]李根.基于Django框架的生物信息网站建设[D] .大连海事大学,2018.
[3]夏亚丽,戴志涛. 基于Django的O2O家庭酒店商务平台 [J]. 软件, 2019.
[4]薛耀伟.基于Django框架管理界面自动生成模块的设计与实现[D].哈尔滨工业大学,2020.
[5]陈勇.基于Django框架的实时课堂投票系统设计与实现[D].大连理工大学,2021.
[6]周玥.基于Django框架的校园预约打印网站设计与实现[D].吉林大学,2019.
[7]周吉波,孟利民. 基于Django web框架的GPS车载管理系统网站的设计和实现[C].第二届亚太地区信息论学术会议论文集,2019.
[8]Li,Shenliang,Si,Zhanjun. Information publishing system based on the framework of Django [J].Lect. Notes Electr. Eng.2019.
[9]Tiwari, Usha,Mehfuz, Shabana,Sharma, Satyam,Pandey, Vinayak Triguna. Design of Python Based Lost and Found Website for College Campus [J]. Int. Conf. Power Electron., Control Autom., ICPECA – Proc,2019.
[10]Suryanto,WiwitIrna,ka,Theodosius Marwan. Web-based application for inverting one-dimensional magnetotelluric data using Python [J].Comput. Geosci, 2018.

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于大数据的电商数据可视化系统设计实现可以通过以下步骤进行: 1. 数据收集和清洗:首先,需要收集电商平台的大量数据,包括用户行为数据、销售数据、商品数据等。然后,对数据进行清洗和预处理,去除重复值、缺失值和异常值。 2. 数据存储和管理:将清洗后的数据存储到适当的数据库中,例如MySQL、MongoDB等。根据数据量的大小和查询需求的复杂度,选择合适的数据库技术。 3. 数据分析和挖掘:使用机器学习和数据挖掘算法对数据进行分析和挖掘,例如聚类、分类、关联规则挖掘等。这些算法可以帮助我们发现数据中的模式和规律。 4. 可视化设计实现:根据分析结果,设计合适的可视化图表和界面,以便用户能够直观地理解和分析数据。可以使用Python的可视化库,如Matplotlib、Seaborn和Plotly等来实现。 5. 系统开发和部署:根据设计的可视化界面,使用Web开发框架(如Django、Flask)进行系统开发,并将系统部署到服务器上,以便用户可以通过浏览器访问。 6. 用户交互和功能扩展:为用户提供交互式的功能,例如选择不同的时间范围、商品类别等进行数据筛选和比较。同时,可以根据用户反馈和需求,不断扩展系统的功能和性能。 7. 安全和性能优化:确保系统的安全性,例如用户身份验证和数据加密。同时,对系统进行性能优化,以提高数据处理和可视化的效率。 8. 维护和更新:定期对系统进行维护和更新,包括数据更新、算法优化和界面改进等,以保持系统的稳定性和可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值