摘 要
在信息飞速发展的今天,网络已成为人们重要的交流平台,快速发展的时代都有大量的信息需要通过网络发布,为此,本人开发了一个基于B/S(浏览器/服务器)模式的会考成绩可视化分析系统。
该系统以python编程语言、MySQL和前端UI等为开发技术,实现了添加、修改、查看、删除系统数据。本系统采取组件化的方式对系统进行拆分,并对数据库中各个表的增删查改、表与表之间的约束关系进行分析与设计,最终实现符合用户需求功能的商业级应用。
系统界面简洁大方,布局合理,易操作易上手。对应用户的每一步操作,系统都能高响应地做出反馈。系统具体包含对会考成绩、图表分析、分数预分析、词云图分析等功能,为会考成绩可视化分析系统提供一个管理平台,实现对数据地高效、安全地管理。
关键词:B/S模式,python编程语言,易操作
Visualization Analysis of College Entrance Examination Scores
Abstract
In today's rapidly developing information age, the internet has become an important communication platform for people. In this rapidly developing era, there is a large amount of information that needs to be published through the internet. Therefore, I have developed a visual analysis system for college entrance examination scores based on B/S (browser/server) mode.
The system is developed using Python programming language, MySQL, and front-end UI as development techniques, achieving the addition, modification, viewing, and deletion of system data. This system adopts a componentized approach to split the system, and analyzes and designs the addition, deletion, query, and modification of various tables in the database, as well as the constraint relationships between tables. Ultimately, it achieves a commercial level application that meets user needs.
The system interface is simple and generous, with a reasonable layout, and is easy to operate and get started. The system can provide responsive feedback for each step of the user's operation. The system specifically includes functions such as score analysis, chart analysis, score pre analysis, and word cloud analysis, providing a management platform for the visualization analysis system of exam scores, achieving efficient and safe management of data.
Keywords: B/S mode, Python programming language, easy to operate
目 录
第1章 绪论
1.1 研究背景
随着互联网的飞速发展,网络上的信息呈爆炸式增长。这使得人们在网上找到所需的信息越来越困难,这种情况下搜索引擎应运而生。搜索引擎搜集互联网上数以亿计的网页,并为每个词建立索引。在建立搜索引擎的过程中,搜集网页是非常重要的一个环节。爬虫程序就是用来搜集网页的程序。以何种策略偏历互联网上的网页,也成了爬虫程序主要的研究方向。现在比较流行的搜索引擎,比如 google,百度,它们爬虫程序的技术内幕一般都不公开。目前几种比较常用的爬虫实现策略:广度优先的爬虫程序,Repetitive爬虫程序,定义爬行爬虫程序,深层次爬行爬虫程序。此外,还有根据概率论进行可用Web页的数量估算,用于评估互联网Web 规模的抽样爬虫程序;采用爬行深度、页面导入链接量分析等方法,限制从程序下载不相关的Web页的选择性爬行程序等等。
爬虫程序是一个自动获取网页的程序。它为搜索引擎从互联网上下载网页,是搜索引擎的重要组成部分。爬虫程序的实现策略,运行效率直接影响搜索引擎的搜索结果。不同的搜索引擎,会根据对搜索结果的不同需求,选择最合适的爬行策略来搜集互联网上的信息。高效,优秀的爬虫程序可以使人们在互联网上寻找到更及时,更准确的信息。
实现网络爬虫的重点和难点有:多线程的实现;对临界资源的分配;遍历web图的遍历策略选择和实现;存储数据结构的选择和实现。
1.2 研究意义
数据分析系统泛指通过特定的统计分析方法,进行大量数据归类分析的应用系统。其最主要的功能就是对数据进行分类及处理,包括用户决策支持、数据联机分析、数据查询与报表、数据挖掘、数据可视化展示。数据分析系统旨在最大化地开发数据功能,发挥数据作用,需要准确且及时的获取用户所需数据,并对获得数据有强大的处理功能,这样才能保证系统的实用性。数据分析系统挖掘和分析网络数据在医疗、社交网络等各方面都具有重要用途,越来越多的人开始关注数据分析系统的开发及设计。开发一个用于计量领域的数据分析系统,可以对计量领域项目数据进行筛选、分类、分析及展示,在很大程度上解决计量领域用户如何在海量项目数据信息中高效筛选出所需项目信息的问题。
在计量领域方面,目前无专用于计量领域的数据分析系统,当前的数据分析系统大多用在社交网络数据分析及医疗数据分析中,对社交网站及医疗方面的数据进行采集分析。本文类比社交网络数据分析系统,基于网络爬虫技术开发了计量数据分析系统,利用网络爬虫来对国际计量局项目信息进行采集与处理,从大量数据中筛选出用户关注项目内容,将项目数据存入相应数据库中,在数据库中查询数据进行分析处理,完成数据的分组并在软件界面上进行结果展示。本系统提高了寻找计量项目数据的工作效率,解决了海量项目数据的筛选分析问题,增加了项目分组方式,为用户提供了计量项目数据的宏观分组图表展示,在计量领域具有广泛的应用价值。
1.3 国外研究现状及分析
自20世纪90年代末国外首次开发出有历史记录的网络爬虫以来,爬虫技术成为搜索引擎技术的核心要素之一,近30年来该技术日趋多样化,已成为大数据时代新发展突破的重要技术[2]。根据实现技术和系统构成可以分为三大类:批量型网络爬虫、增量型网络爬虫和垂直网络爬虫[3]。理论上,任何支持网络通信的语言都可以写爬虫,爬虫本身虽然与语言关系不大,但总体来讲还是相对简单易于理解的。
自从1969年美国的IBM公司开发出第一个DBMS系统IMS以来,数据库的研究和开发已经走过了三十多年的历程,经历了三代的演变(从层次型数据库系统到网络型数据库系统,再到现在成为数据库主流的关系型数据库系统)形成了数百亿美元的产业,数据库技术和系统已经成为世界各国信息基础设施的核心技术和重要基础。
以数据挖掘技术和数据库技术为基础的数据分析系统也迎来了时代的春天,各种各样的数据分析系统由不同的用户需求而开发。
MongoDB是世界领先的数据库软件。它基于NoSQL数据库,可用于存储比基于 RDBMS的数据库软件更多的数据。MongoDB是强大的,它是最好的大数据分析工具之一。
Microsoft Azure是领先的大数据分析工具之一。Microsoft Azure也称为Windows Azure。它是微软处理的公共云计算平台,是提供广泛服务的领先平台,包括计算、分析、存储和网络。
Apache Spark是最好和最强大的开源大数据分析工具之一。可以借助其数据处理框架处理大量数据集。通过结合或与其他分布式计算工具,在多台计算机上分布数据处理任务非常容易。
1.4 国内研究现状及分析
随着大数据在人类生活中的愈发重要,国内的大数据采集系统正处于高速发展的阶段,但在制造工艺以及技术水平上仍与世界发达国家存在着一定的差距。即使如此,也依然涌现出了许多优秀的大数据分析系统。
华为Fusion Insight,以海量数据处理引擎和实时数据处理引擎为核心,针对金融、运营商等数据密集型行业的运行维护、应用开发等需求,打造了敏捷、智慧、可信的平台软件[4]。
星环Transwarp,基于Hadoop生态系统的大数据平台公司,为企业提供Hadoop大数据引擎及数据库工具[5]。
阿里数加,阿里云发布的一站式大数据平台,覆盖了企业数仓、商业智能、机器学习、数据可视化等领域,可以提供数据采集、数据深度融合、计算和挖掘服务[6]。
1.5 本文的组织结构
六个章节共同组成了本文研究及设计内容,包括:
第一章:绪论。本文章的开头部分,对本题目的研究背景和研究意义等一些做文字性的描述。
第二章:相关技术介绍。主要介绍python编程技术、python的开发工具、B/S模式等。
第三章:系统分析。包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。
第四章:系统设计。本文章的重要部分,提供了系统架构的详细设计和一些主要功能模块的设计说明。
第五章:系统实现。将本系统分为前提的开发工具介绍和后期的功能代码实现。
第六章:系统测试。系统完成后,根据各个模块的测试用例才对各个模块进行功能测试。
第2章 相关技术介绍
2.1 前后端分离
Ajax的出现,也带来了另外一个问题,那就是有了Ajax以后,之前用模板语言实现起来的功能变得简单,之前模板语言实现不了的功能现在也能实现了。这样就造成越来越多的逻辑转移到了javascript上,使其变得越来越复杂。
随着js复杂度的增长,原来的开发模式出现了问题,一个程序员搞定全站变得越来越不靠谱,因此在这个时候就把网站开发这个职位划分成了前端和后端两个职位。但是只划分了前后端的职责范围还是远远不够的,在原来的开发模式下,前后端的代码也在一起的。现在既然已经分为前后端两波人在开发了,维护同一套代码就变得不那么方便。项目越复杂,出现你等我,我等你的情况就会越来越多,这样就拖慢了整体团队的节奏。所以为了团队的效率,前后端的代码也要做分离。
前后端的分离方式分为部分分离和全部分离两种,部分分离是只把脚本和样式分离出去,而html模板还留在后端通过python,velocity或者freemarker来渲染;另一种就是完全分离,脚本样式以及模板全都放在前端来维护。
部分分离已经很大程度上解决了前后端开发时的协调问题,开发效率也得到了很大程度的提升。但也得承认,这种方式也还是有问题的。当要开发html模板的时候,就需要搭起一整套后端的开发环境,或者是找后端程序员来协助。
而完全分离一般有两种方案,第一种就是使用velocity这种在nodejs和python下都可以编译的页面模板,在开发时放到前端项目里,但在发布时,会把模板发布到后端的模板目录下,这样,开发时就做到了完全分离。这种方式最大的好处就是线上模板的渲染还是由python来做的,形成的是带有动态数据的html,比较有利于SEO。但这种方式下,前端的开发环境和发布系统的复杂度都相对较高,单纯的前端改动也还是要带着后端一起发布。
第二种完全分离的方式,就是把纯静态的html模板完全放在前端,数据全部通过RESTful接口来进行交互。这样前后端就完全分开了,脱离了后端的模板,而这种方式的系统复杂度也会比第一种完全分离的方式低。但这种方案下,所有的页面数据都是用js渲染的,没有动态模板,不太利于SEO。这个不足我们可以通过做server render或者给蜘蛛做一套定制页面来解决。
2.2 Flask框架介绍
Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。它可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务的实现。另外,Flask还有很强的定制性,用户可以根据自己的需求来添加相应的功能,在保持核心功能简单的同时实现功能的丰富与扩展,其强大的插件库可以让用户实现个性化的网站定制,开发出功能强大的网站。
Flask是目前十分流行的web框架,采用Python编程语言来实现相关功能。它被称为微框架(microframework),“微”并不是意味着把整个Web应用放入到一个Python文件,微框架中的“微”是指Flask旨在保持代码简洁且易于扩展,Flask框架的主要特征是核心构成比较简单,但具有很强的扩展性和兼容性,程序员可以使用Python语言快速实现一个网站或Web服务。一般情况下,它不会指定数据库和模板引擎等对象,用户可以根据需要自己选择各种数据库。Flask自身不会提供表单验证功能,在项目实施过程中可以自由配置,从而为应用程序开发提供数据库抽象层基础组件,支持进行表单数据合法性验证、文件上传处理、用户身份认证和数据库集成等功能。Flask主要包括Werkzeug和Jinja2两个核心函数库,它们分别负责业务处理和安全方面的功能,这些基础函数为web项目开发过程提供了丰富的基础组件。Werkzeug库十分强大,功能比较完善,支持URL路由请求集成,一次可以响应多个用户的访问请求;支持Cookie和会话管理,通过身份缓存数据建立长久连接关系,并提高用户访问速度;支持交互式Javascript调试,提高用户体验;可以处理HTTP基本事务,快速响应客户端推送过来的访问请求。Jinja2库支持自动HTML转移功能,能够很好控制外部黑客的脚本攻击。系统运行速度很快,页面加载过程会将源码进行编译形成Python字节码,从而实现模板的高效运行;模板继承机制可以对模板内容进行修改和维护,为不同需求的用户提供相应的模板。目前Python的web框架有很多。除了Flask,还有django、Web2py等等。其中Django是目前Python的框架中使用度最高的。但是Django如同java的EJB(EnterpriseJavaBeansJavaEE服务器端组件模型)多被用于大型网站的开发,但对于大多数的小型网站的开发,使用SSH(Struts+Spring+Hibernat的一个JavaEE集成框架)就可以满足,和其他的轻量级框架相比较,Flask框架有很好的扩展性,这是其他Web框架不可替代的。
2.3 B/S模式
计算机的系统软件主要分为两种:系统软件和应用软件。应用软件则是为了某个特定的应用而开发的一类软件,比如文字处理软件word、QQ、开发本软件用的myeclise工具等。而应用型软件大致的分为B/S和C/S两种模式,常用的QQ、Office办公软件就是C/S结构的,另外常见基于的B/S结构开发的有各种网站,比如淘宝、企业的门户网站[7]。
B/S模式的优势有三个:第一是开发和业务扩展简单、只需要改变网页代码,就可以达到想要的网页效果;第二学生的操作显浅易懂;第三具有分布性特定,可以随时随地的进行查询、浏览等业务的处理。这是C/S所无法实现的。综上因素,选择B/S模式来设计和实现本系统[8]。
2.4爬虫技术
网络为搜索引擎从万维网下载网页。一般分为传统爬虫和聚焦爬虫。
传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。通俗的讲,也就是通过源码解析来获得想要的内容。
聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。
第3章 系统分析
3.1 可行性分析
3.1.1 法律可行性分析
开发软件有没有触犯法律,这涉及到软件或者系统能不能发布的问题。如果触犯了法律,就必将会受到法律的制裁。常见法律问题就是软件抄袭问题,若是抄袭别人软件,将会受到严厉惩罚。
3.1.2 技术可行性分析
软件产业经过多年的发展,现在已经达到了很大的规模,从事软件开发的专业人员不计其数,软件产业的重要性已经上升到了影响和推动国民经济发展的核心地位。本系统基于的架构,目前技术已经非常的成熟,是不存在技术上面难以实现的麻烦。
3.1.3 经济可行性分析
开发软件所需的时间、人力和物力成本,开发完成后的收益如何,从投资回报的角度软件所需功能在现有经济条件能不能实现等进行深入的考虑,都符合实际的要求。所以洗衣店管理系统具有经济可行性和实用性,可以节约管理成本
3.2 非功能需求分析
首先主要考虑的是系统功能软件,在具体设计的环节上,是不是能够较好的满足各类用户的基本功能需求,如果不能较好的满足用户需求,那么这个系统的存在是没有价值的。软件系统的非功能性求分析,从7个方面展开,一个是性能分析,针对系统;一个是安全分析,针对系统,一个是完整度分析,针对系统,一个是可维护分析,针对系统,一个是可扩展性分析,针对系统,一个是适应业务的性能分析。面对会考成绩可视化分析系统存在的性能、安全、扩展、完整度等7个方面性能综合比对分析后发现,需要相应的非功能性需求分析。
3.3 功能需求分析
会考成绩可视化分析系统,管理员主要对会考成绩、图表分析、分数预分析、词云图分析进行处理。
系统用例图如下所示。
图3-1 系统用例图
3.4 安全性需求分析
3.4.1 系统的安全性
安全性对每一个系统来说都是非常重要的。安全性很好的系统可以保护企业的信息和用户的信息不被窃取。提高系统的安全性不仅是对用户的负责,更是对企业的负责。尤其针对于会考成绩可视化分析系统来说,必须要有很好的安全性来保障整个系统。
系统具有对使用者有权限控制,针对角色的不通限制使用者的权限,以此来确保系统的安全性。
3.4.2 数据的安全性
数据库中的数据是从外界输入的,当数据的输入时,由于种种原因,输入的数据会无效,或者是脏数据。因此,怎样保证输入的数据符合规定,成为了数据库系统,尤其是多用户的关系数据库系统首要关注的问题。
因此,在写入数据库时,要保证数据完整性、正确性和一致性。
第4章 系统设计
4.1 系统架构设计
会考成绩可视化分析系统采用三层开发设计模式,分为:用户界面层,业务逻辑层和数据访问层。用户界面层用来和用户交互,业务逻辑层负责业务的处理和各层之间的数据的传递;数据访问层负责对数据库的访问和检索。
系统的架构图如下图所示。
图4-1 系统架构图
系统各层之间的调用过程如下:
(1)用户通过用户界面层访问系统,向系统提交请求,界面层对请求进行初步的处理和包装,并判断是否要与业务逻辑层进行交互。
(2)业务逻辑层接收来自界面层的请求,对请求进行数据处理。然后调用数据访问层来实现数据库访问,数据访问层访问数据库,将数据读出并返回给逻辑层。
(3)逻辑层将处理的结果,返回给界面层。界面层加以处理呈现给用户。
4.2 系统功能结构
为了将系统从“做什么”落实到“怎么做”,基于系统设计原则,对系统功能进行更适合编码实现的功能划分。根据上图的系统架构设计,整理出规范的系统功能结构图,为系统的实现编码做好准备。
如下图所示为系统功能结构图。
图4-2系统功能结构图
4.3 功能模块设计
用户管理针对所有用户和管理员。未注册用户点击注册,进入注册页面填写新用户信息,得到自定义生成账号后,注册完成。未注册用户注册的活动图如下图所示。
图4-3未注册用户注册活动图
用户可进行登录使用更多功能,首先进入用户登录界面,输入用户账号和密码,后台对账号和密码信息进行核对验证,验证成功则页面直接显示登录用户昵称代表登录成功,否则返回用户登录界面。用户登录活动图如下图。
图4-4用户登录活动图
第5章 系统实现
5.1 开发工具
系统中应用的开发工具总结如下表所示。
表5-1开发工具
名称 | 工具 | 版本 |
操作系统 IDE(Integrated Development Environment) | windows ZendStudio | 7/8/10 2017 |
服务器 | Apache | 9.10.7 |
数据库 浏览器 界面工具 | MySQL 谷歌 Photoshop | 5.6 6.0 2016 |
5.2 数据库访问层的实现
从B/S架构的原理可知,会考成绩可视化分析系统的各大模块的实现均需要对数据库的数据进行操作,具体包括查询数据、写入数据、更新数据和删除数据,因此,在开发各功能模块前,首先创建一个名称"conn.Python"的文件,该文件主要用于连接数据,以后对程序需要操作数据时,可能使用语句"<?Python reqiure_once('conn.Python');?>"调用就可以了。
5.3 登录/注销模块
用户在首页点击登录,进入用户登录界面uerLogin.python,输入用户账号和密码,点击登录,用户账号和密码信息由界面传入控制层,调用userLogin方法,通过实现登录的接口向数据库用户表搜索该用户账号与密码,将最终结果反馈到前端。若成功则回到首页;用户成功登录,若失败则回到登录界面,并显示登录失败。
用户点击注销,清空浏览器session值,然后返回登录页或者首页。
登录流程图如下图所示。
图5-1登录流程图
登录界面如下:
图5-1登录界面
5.4 用户模块
5.4.1 个人资料模块
登录用户在首页点击进入用户中心userCenter.python,再点击修改个人信息按钮进入userChangeInfo.python界面,系统根据session中存储的目前登录的用户的账号,向控制层发送请求,搜索当前用户信息,控制层向用户接口调用查询用户方法,向数据库的用户表搜索当前用户信息并将用户信息以对象的形式层层返回到userChangeInfo.python界面,显示出当前用户的个人信息。
若用户要对个人信息进行修改,则通过修改当前信息之后点击确认,向控制层发送更改后的用户信息,调用修改用户信息的方法,通过实现用户接口向数据库用户表更新用户信息,若成功则反馈注册成功,则返回的userChangeInfo.python界面被更改成功;若失败则显示修改失败。
5.5 数据展示模块的实现
如果数据展示的信息需要修改,管理员可以通过查询数据展示的基本信息来查询数据展示,查询数据展示是通过ajax技术来进行查询的,需要传递数据展示的标题、编号等参数然后在返回到该页面中,可以选中要修改或删除的那条信息,如果选中了超过一条数据,页面会挑一个窗口提醒只能选择一条数,如果没有选中数据会挑一个窗口题型必须选择一条数据。当选择确认修改的时候,后台会根据传过来的id到数据库查询,并将结果返回到修改页面中,可以在修改页面中修改刚刚选中的信息当点击确认的时候from表单会将修改的数据提交到后台并保存到数据库中,就是说如果提交的数据数据库中存在就修改,否则就保存。
数据展示界面如下图所示。
图5-5 数据展示展示界面
5.6 数据分析对比模块的实现
此页面的关键是编写数据分析对比详情等。单击提交按钮以完成信息的添加。如果未写入完整的数据分析对比数据,例如,如果未写入作者姓名,系统将给出相应的错误提示,并且无法成功输入。数据以概念的形式以onsubmit =“return checkForm()”的形式写入以进行检查,checkForm()函数是一种用于写入数据的不同类型的校对方法,是不是为空也是经过form表单中的οnsubmit=”return checkForm()来检查。
管理员点击左侧菜单“首页”,页面跳转到数据统计管理外观,调用后台查询所有数据分析对比数据。并将信息密封到数据集合List,绑定到请求对象,然后页面跳转到相应的Python页面,显示出数据分析对比数据统计图表,单击删除按钮完成数据分析对比数据的删除。
数据分析对比数据统计流程图如下图所示。
图5-8会考成绩可视化分析流程图
科一成绩分布界面如下图所示。
图5-9科一成绩分布对比图界图
5.6.1 会考成绩分布占比饼图模块
管理员在后台管理界面点击到会考成绩分布饼图看板。
如图:
图5-1会考成绩分布占比饼图界面
第6章 系统测试
6.1 测试概述
软件测试是软件开发完成后必须经过的一道程序,它在软件开发过程中地位十分重要,需要由专业的测试工程师来对软件进行各方面的测试,大到功能模块测试,小到代码的单元测试,这对测试工程师来说需要有足够的耐心和专业的测试方案,软件测试归根结底就是对软件的结构和功能的综合测评,需要做到结构稳定和功能正确,二者兼顾。软件测试也叫寻找系统bug的过程,世界上没有完美无缺、不存在bug的软件,只能将软件的bug降到最低最小,来追求极致。
6.2 测试过程
6.2.1 登录测试
登录测试是系统最开始就要进行,测试用户能否登录,才能完成后续的功能操作。
登录测试用例表如下所示。
表6-1登录测试
用例编号 | YL001 | 程序版本 | 1.00 |
功能名称 | 使用者登录测试 | 编制人 | 李铁蛋 |
功能描述 | 根据用户的登录情况测试 | ||
用例目的 | 测试用户登录情况是否正确 | ||
测试项 | 测试数据 | 测试结果 | 预期结果 |
用户名 | 为空 | 请输入用户名 | 请输入用户名 |
密码 | 为空 | 请输入密码 | 请输入密码 |
用户密码组合 | 用户名:klouse 密码 klouses | 用户与密码不匹配 | 用户与密码不匹配 |
用户密码组合 | 用户名 : klouse 密码 klouse | 进入系统 | 正确的用户名和密码 登录系统 |
6.2.2 信息录入测试
管理员在发布信息页面,通过按照预先格式发布信息,如果因为输入时候缺少相关内容,就不能发布成功,且有相应错误提示
信息录入发布测试用例表如下所示。
表6-1信息录入发布测试
用例编号 | YL002 | 程序版本 | 1.00 |
功能名称 | 信息发布测试 | 编制人 | 李铁蛋 |
功能描述 | 对使用者发布或者录入信息进行测试,判断其功能是否达到预期的要求 | ||
用例目的 | 对系统使用者录入发布信息进行原型测试。 | ||
测试项 | 测试数据 | 测试结果 | 预期结果 |
属性1 | 为空 | 请输入属性1对应的数据 | 请输入属性1对应的数据 |
属性2 | 为空 | 请输入属性2对应的数据 | 请输入属性2对应的数据 |
属性3 | 为空 | 请输入属性3对应的数据 | 请输入属性3对应的数据 |
全部输入 | 数据均填入 | 录入发布成功 | 录入发布成功 |
6.2.3 信息更新测试
管理员在更新信息页面,通过按照预先格式更新信息,如果因为输入时候缺少相关内容或者更新的数据不符合当前规范的话,就不能更新成功,且有相应错误提示
信息更新测试用例表如下所示。
表6-1信息更新测试
用例编号 | YL003 | 程序版本 | 1.00 |
功能名称 | 信息更新测试 | 编制人 | 李铁蛋 |
功能描述 | 对使用者更新信息进行测试,判断其功能是否达到预期的要求 | ||
用例目的 | 对系统使用者更新信息进行原型测试。 | ||
测试项 | 测试数据 | 测试结果 | 预期结果 |
属性1 | 编号:321 | 编号更新成功 | 编号更新成功 |
属性2 | 名称:名称1 | 名称更新成功 | 名称更新成功 |
属性3 | 内容:内容1234内容 | 内容更新成功 | 内容更新成功 |
全部输入 | 数据均未更改 | 更新成功 | 更新成功 |
6.2.4 信息删除测试
管理员在信息页面,通过点击数据删除按钮来删除该条数据,如果该数据和其他数据有关联,则提示是否确定删除。
信息删除测试用例表如下所示。
表6-1信息删除测试
用例编号 | YL004 | 程序版本 | 1.00 |
功能名称 | 信息删除测试 | 编制人 | 李铁蛋 |
功能描述 | 对使用者删除信息进行测试,判断其功能是否达到预期的要求 | ||
用例目的 | 对系统使用者删除信息进行原型测试。 | ||
测试项 | 测试数据 | 测试结果 | 预期结果 |
数据1 | 无任何关联的数据1 | 数据删除成功 | 数据删除成功 |
数据2 | 和其他数据有关联的数据2 | 请确认是否删除 | 请确认是否删除 |
6.3 测试结果
在经过之前的所有的工作之后,通过对软件的测试方法、测试原则还有典型的测试用例进行全面的、深入的介绍。经过对系统的全面测试,系统目前所具有的所有功能均成功的实现并且通过了测试,整个系统实现了基于 python 开发的期望。
第7章 总结与展望
7.1 总结
会考成绩可视化分析系统采用MVC结构,该结构非常完美的集优点于一身,成熟、强大、易理解易使用,通过使用这个结构,降低了开发的难度。本系统实现了基于python的会考成绩可视化分析系统,将数据流程转化成电脑操作流程,具体实现了对会考成绩、图表分析、分数预分析、词云图分析管理,并提供查询统计功能来对会考成绩的相关数据进行统计分析,让使用者能更清晰的掌握运营情况,帮助使用者进行数据管理,简化工作流程,提高工作效率和盈利。
7.2 展望
目前完成的会考成绩可视化分析系统,还有许多有待改进的地方。一个是功能上的改进,用户理应可以修改自己的相关信息,故应增设个人中心功能;另外,系统如果能提供更多查询统计功能就会使得系统更加丰富和多样化,比如客户购买力排行功能、购买积分功能等。第二个是技术上的改进,由于对开发框架不太熟悉,权限管理这部分,本系统采用一个python页面来规定好导航栏,即跳转的页面,这相对比较不灵活,如果将URL路径记录到数据库并实现增删查改会比较好;另外就是对EasyUI的使用还不够熟练,视觉效果和界面观感有待提升,希望日后能对这个系统有所改进。
参考文献
[1]沈静秋,王旭辉,吕魁.新发展格局下政务大数据应用项目绩效审计研究[J/OL].软件导刊:1-7[2023-03-11].http://kns.cnki.net/kcms/detail/42.1671.TP.20230222.1648.020.html
[2]张磊.基于Python编程的DLG元数据生产[J].测绘与空间地理信息,2023,46(02):159-162+165.
[3]熊先青,张美,岳心怡,许修桐,张挺,王兵.大数据技术在家居智能制造中的应用研究进展[J/OL].世界林业研究:1-8[2023-03-11].DOI:10.13348/j.cnki.sjlyyj.2023.0005.y.
[4]张丽英,张岩,孙玉发.新工科背景下Python课程混合式教学模式的研究[J].计算机时代,2023(02):125-127.DOI:10.16644/j.cnki.cn33-1094/tp.2023.02.030.
[5]杨健,陈伟.基于Python的三种网络爬虫技术研究[J].软件工程,2023,26(02):24-27+19.DOI:10.19644/j.cnki.issn2096-1472.2023.002.005.
[6]袁慧宇,赵娟,杨远贵.基于Python的自动测光程序设计与实现[J/OL].天文研究与技术:1-10[2023-03-11].DOI:10.14005/j.cnki.issn1672-7673.20230119.002.
[7]李涛.大数据在农业经济管理中的作用分析[J].中国集体经济,2023(04):62-65.
[8]汤飞弘.基于Python爬虫的招聘信息数据可视化分析[J].软件,2023,44(01):176-179.
[9]周晶.基于Python的PPG信号数据分析[J].现代信息科技,2023,7(01):96-98+101.DOI:10.19850/j.cnki.2096-4706.2023.01.026.
[10]梅宏,杜小勇,金海,程学旗,柴云鹏,石宣化,靳小龙,王亚沙,刘驰.大数据技术前瞻[J].大数据,2023,9(01):1-20.
[11]鲁斌,陈礼念,王瑞超.基于网络爬虫技术的教学管理系统教师客户端的实现方法研究[J].现代计算机,2022,28(24):89-94.
[12]陈红阳,孙宝刚,何盈盈,邱红艳.“Python程序设计”课程思政元素探析与应用[J].电脑与信息技术,2022,30(06):114-118.DOI:10.19414/j.cnki.1005-1228.2022.06.030.
[13]杨金晶,朱姝铭.爬虫行为的刑法规制路径探析——从非法获取计算机信息系统数据罪视角[J].上海商业,2022(12):98-101.
[14]洪丽华,黄琼慧.基于Python爬虫技术的研究[J].价值工程,2022,41(34):154-156.
[15]蔡嘉,杨竞超.网络爬虫技术在集约运营领域的应用初探[J].中国金融电脑,2022(12):47-49.
[16]Guan Guoliang,Wang Yonggui,Yang Ling,Yue Jinzhao,Li Qiang,Lin Jianyun,Liu Qiang. Water-Quality Assessment and Pollution-Risk Early-Warning System Based on Web Crawler Technology and LSTM[J]. International Journal of Environmental Research and Public Health,2022,19(18).
[17]刘萍.基于Python爬虫技术的网页数据抓取方法[J].信息与电脑(理论版),2022,34(14):169-171.
[18]Yong Li. Optimisation method of hierarchical heterogeneous clustering topology based on energy iteration[J]. International Journal of Autonomous and Adaptive Communications Systems,2022,15(2).
[19]Li J,Li R,Yue Y, et al. Real-time Traffic Signal Control of Logistics Park Based on Web Crawler Technology[C]//中国公路学会,世界交通运输大会执委会,西安市人民政府,陕西省科学技术协会.世界交通运输工程技术论坛(WTC2021)论文集(上).世界交通运输工程技术论坛(WTC2021)论文集(上),2021:1204-1214.DOI:10.26914/c.cnkihy.2021.010497.
[20]李琴. 百果园基于竞争战略的供应链管理的研究[D].西南交通大学,2007.
致 谢
在老师的教导和帮助下,本人完成了本篇论文,老师对论文的内容、格式都有非常严格的要求,在我写毕业论文的过程中,他多次给出了建议,并定期检查,对我们严格要求,帮助我们在文档的编写上写到极致和正确,他这种教学和工作态度,让我对他产生无限的敬佩感和尊敬感。写毕业论文的同时,作为应届生,我也忙着找工作中,遇到了很多选择,感到困惑迷茫的时候,老师给了我很多意见,感谢老师的耐心开导,跟她的聊天我明白了许多。
我还要感谢我的父母,一直以来都非常支持和相信我,在精神和经济上给了我很多力量,如今我将毕业走上工作之路,终于能报答父母的养育教导之恩。还有我大学期间所有老师和全体同学,遇到问题时,这些老师同学总是无私地帮助我,真的非常感谢,我也会加油努力成长为一个有用的人。
点赞+收藏+关注 →私信领取本源代码、数据库
关注博主下篇更精彩
一键三连!!!
一键三连!!!
一键三连!!!
感谢一键三连!!!