本科生毕业设计

基于spark的电力能耗数据分析系统的设计与实现

学生姓名
学 号
指导教师
所在学院
专业名称
班 级

摘 要
随着科技的不断发展,电力能耗数据分析系统变得越来越重要。本文基于Spark技术对电力能耗数据进行分析,通过数据清洗、特征提取和模型训练等步骤,得出了不同时间段内的用电趋势、用电负荷分布、能源消耗结构等信息。系统从研究目的、研究现状、开发技术、系统分析、系统设计以及系统功能实现和系统测试等方面进行阐述。本系统主要是针对都电力能耗信息的管理,采用Python 语言编写和django框架,数据库使用MySQL数据库。本系统主要包括电力信息、城市、电力能耗数据分析、系统简介和个人中心等功能。经过测试,本系统可以满足都电力能耗数据的基本要求。

关键词:MySQL数据库;电力能耗;Spark; django:

ABSTRACT
With the continuous development of science and technology, power consumption data analysis system becomes more and more important. This paper analyzes power consumption data based on Spark technology. Through data cleaning, feature extraction and model training, information such as power consumption trend, power load distribution and energy consumption structure in different time periods is obtained. The system is described from the aspects of research purpose, research status, development technology, system analysis, system design, system function realization and system test. This system is mainly for the management of power consumption information, using Python language and django framework, database using MySQL database. The system mainly includes power information, city, power consumption data analysis, system introduction and personal center and other functions. After testing, the system can meet the basic requirements of power consumption data.

Key words: MySQL database; Power consumption; Spark; django:

目 录
第1章 绪论 - 1 -
1.1选题背景与意义 - 1 -
1.2国内外研究现状 - 1 -
1.3系统研究内容 - 1 -
1.4全文组织结构 - 2 -
第2章 系统开发技术简介 - 3 -
2.1 python语言 - 3 -
2.2 django框架 - 3 -
2.3 Hadoop介绍 - 4 -
2.4 Scrapy介绍 - 4 -
2.5 MySQL数据库简介 - 4 -
2.6 B/S结构 - 5 -
第3章 系统分析 - 6 -
3.1 系统可行性分析 - 6 -
3.1.1 技术可行性 - 6 -
3.1.2 操作可行性 - 6 -
3.1.3 运行可行性 - 6 -
3.1.4 经济可行性 - 6 -
3.2 需求分析 - 7 -
3.2.1性能需求 - 7 -
3.2.2用户需求 - 7 -
3.3 系统UML用例分析 - 7 -
3.4 系统流程分析 - 8 -
3.4.1添加信息流程 - 8 -
3.4.2修改信息流程 - 9 -
3.4.3删除信息流程 - 9 -
3.4.4登录流程 - 10 -
第4章 系统设计 - 11 -
4.1系统设计原则 - 11 -
4.2系统概要设计 - 11 -
4.3 系统结构设计 - 11 -
4.4数据库设计 - 12 -
4.4.1数据库设计原则 - 12 -
4.4.2 E-R图设计 - 12 -
4.4.3数据库表设计 - 13 -
第5章 系统的实现 - 16 -
5.1系统登录 - 16 -
5.2管理员功能实现 - 16 -
5.2.1电力信息 - 16 -
5.2.2城市 - 17 -
5.2.3电力能耗数据分析 - 17 -
5.2.4系统简介 - 18 -
5.2.5个人中心 - 18 -
5.2.6看板 - 18 -
第6章 系统测试 - 20 -
6.1测试目的与意义 - 20 -
6.2测试方法 - 20 -
6.3测试用例 - 20 -
6.4测试结果 - 21 -
第7章 总结与展望 - 22 -
7.1总结 - 22 -
7.1展望 - 22 -
参考文献 - 23 -
致 谢 - 24 -

第1章 绪论
1.1选题背景与意义
随着经济的发展和人口的增加,能源消耗也在不断增加。电力作为人们生产和生活中不可或缺的一部分,对于能源消耗的贡献也非常大。传统的电力供应模式已经无法满足人们对电力的需求,同时也带来了环境污染等问题。如何优化电力供应模式,提高能源利用效率,成为了当前亟待解决的问题。而电力能耗数据分析正是解决这一问题的有效手段之一。
本研究基于Spark技术对电力能耗数据进行分析,旨在为电力企业提供决策支持,优化能源消耗结构,提高能源利用效率。通过对历史用电数据的分析,可以得到不同时间段内的用电趋势、用电负荷分布、能源消耗结构等信息,为电力企业的生产管理和决策提供科学依据。该系统可以帮助政府制定合理的能源政策,促进可持续发展。还可以为普通用户提供更加智能化的用电服务,提高用电效率,节约能源。因此,本研究具有重要的理论和实践意义。
1.2国内外研究现状
近年来,随着大数据技术的快速发展,电力能耗数据分析系统在国内得到了广泛的关注和应用。国内学者和研究人员在电力能耗数据分析领域开展了大量的研究工作,涉及到数据清洗、特征提取、模型训练等方面。基于Spark技术的电力能耗数据分析系统成为了研究的热点之一。许多研究者利用Spark技术对电力能耗数据进行分析,得出了不同时间段内的用电趋势、用电负荷分布、能源消耗结构等信息,为电力企业的生产管理和决策提供了科学依据。
在国外,电力能耗数据分析也受到了广泛的关注和应用。许多国外的研究机构和企业都在开展相关的研究工作。其中,美国、欧洲等发达国家在电力能耗数据分析领域的研究处于领先地位。这些国家的研究者们利用先进的技术和方法对电力能耗数据进行分析,探索出了一些新的模型和方法,如深度学习、神经网络等。这些国家还注重将研究成果应用到实际生产中,为电力企业提供更加智能化的决策支持。

1.3系统研究内容
电力能耗数据分析系统开发时,在开发这款基于B/S架构的管理系统时,后端选择了Python语言,通过echarts技术展示可视化大屏,将数据进行展示在看板上。此外,我们还采用了Python开发的Scrapy爬虫技术,用于高效地收集网络数据。并使用了Django框架,这一高级的全能型框架提供了快速开发的可能,同时保证了代码的清晰和高效。对于数据存储和管理,选择了MySQL数据库。前端则采用HTML、CSS、JavaScript和Vue.js进行构建,这些技术使得用户界面的交互性和友好性得到了大大提升。在开发工具上,选择了PyCharm和Navicat,其中PyCharm是一款优秀的Python集成开发环境,功能强大且使用方便;Navicat则为数据库管理提供了良好的支持。这样的技术栈为开发高效、稳定的管理系统提供了坚实的基础。系统主要包括对电力信息、城市、电力能耗数据分析、系统简介、个人中心等功能进行操作。
1.4全文组织结构
本文共分为7章,文章结构及各章内容简介如下:
第1章 主要介绍及探讨论文研究的背景和意义、国内外的研究现状和研究内容。最后,给出本文的整体组织结构。
第2章 主要介绍了本次系统开发过程中用到的相关技术及开发工具,如MySQL数据库、django框架,B/S结构等。
第3章 主要介绍了本次系统开发过程中的系统分析过程,从可行性分析、需求分析、系统UML用例分析、总体业务流程分析、模块流程分析这几方面进行了系统分析。
第4章 主要介绍了本次系统开发过程中的系统设计过程,从系统设计原则、系统概要设计、数据库设计这几方面进行了详细描述。
第5章 主要介绍了本次系统开发过程中的系统实现环节,从客户端的各个功能模块的实现和管理后台各个功能模块的实现方面进行了详细描述。
第6章 主要介绍了本次系统开发过程中的系统测试环节,从测试的目的与意义、测试方法、测试用例、测试结果等方面进行了详细描述。
第7章 主要介绍了本次系统开发过程的总结以及本次开发过程的不足和以后的展望。

第2章 系统开发技术简介
2.1 python语言
Python是一种高级编程语言,以其简洁易读的语法和强大的功能而闻名。Python的设计哲学强调代码的可读性和简洁性,这使得Python成为了许多开发者的首选语言。Python支持多种编程范式,包括面向对象编程、过程式编程和函数式编程。面向对象编程是Python的核心特性之一,它允许程序员通过创建类和对象来组织和管理代码。类是一种用于定义对象的蓝图,对象是类的实例。通过使用类和对象,Python提供了一种灵活的方式来表示现实世界中的事物。过程式编程是一种编程范式,它强调编写一系列简单的步骤来解决问题。Python支持过程式编程,这意味着你可以使用循环、条件语句和函数等基本结构来编写程序。这种编程范式使得Python非常适合于解决需要重复执行相同任务的问题。函数式编程是一种编程范式,它强调使用纯函数和不可变性来编写程序。纯函数是指没有副作用的函数,它们的结果只依赖于输入参数。不可变性是指一个对象的状态在创建后不能被修改。Python支持函数式编程,这意味着你可以使用高阶函数(如map、filter和reduce等)来处理数据集合。Python还具有丰富的标准库和第三方库,这些库提供了许多实用的功能,如文件操作、网络编程、数据库访问等。这些库使得Python成为了一个功能强大的开发工具,可以帮助你快速构建各种类型的应用程序。Python是一种强大且易于学习的编程语言,它具有简洁的语法、丰富的功能和广泛的应用领域。
2.2 django框架
Django是一个基于Python的高级Web框架,它鼓励快速开发和干净、实用的设计。Django的核心理念是“简洁明了”,它提供了许多内置的功能,如URL路由、模板引擎、表单处理等,使得开发者可以专注于业务逻辑的开发,而无需关心底层的细节。Django的MVC(Model-View-Controller)架构模式使得开发者可以将应用程序分为三个部分:模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据存储和检索,视图负责处理用户界面和业务逻辑,控制器负责协调模型和视图之间的交互。这种架构模式使得代码更加模块化和易于维护。Django还支持数据库抽象层,通过ORM(Object-Relational Mapping)技术,将数据库操作转换为面向对象的操作。这使得开发者可以使用Python语言编写数据库查询,而无需关心底层的SQL语句。此外,Django还支持多种数据库系统,如MySQL、PostgreSQL和SQLite等。Django还提供了丰富的第三方库和插件,这些库和插件可以帮助开发者快速实现各种功能,如用户认证、表单处理、文件上传等。这些库和插件通常由社区成员和维护,因此它们通常是稳定且安全的。Django是一个功能强大、易于学习的Web框架,它提供了许多内置的功能和第三方库,使得开发者可以快速构建高质量的Web应用程序。
2.3 Hadoop介绍
Hadoop是一个开源的分布式计算框架,它允许用户在大量的计算机集群上进行数据处理和分析。Hadoop的核心组件包括HDFS(Hadoop Distributed File System)和MapReduce。HDFS是一个高度容错的、可扩展的分布式文件系统,它可以将大量数据分布在多个节点上,提供高吞吐量的数据访问。MapReduce则是一种编程模型,用于处理和生成大数据集。
Hadoop的设计目标是能够在廉价硬件上可靠地存储和处理海量数据。它提供了一种简单而强大的方法来处理大规模数据集,使得数据分析变得更加容易和高效。Hadoop已经被广泛应用于各种领域,如互联网搜索、日志分析、机器学习等。
2.4 Scrapy介绍
Scrapy是一个用于爬取网站数据并提取结构性数据的Python库。它提供了一个强大的框架,可以处理各种类型的网站,包括静态和动态网站。Scrapy使用异步网络协议(如Twisted或Tornado)来处理请求和响应,从而大大提高了爬取速度。它还具有高度可扩展性和可定制性,可以轻松地添加新的功能和扩展。
Scrapy的主要组件包括Scrapy引擎、调度器、爬虫、管道和项目。Scrapy引擎负责控制数据流在系统的各个组件之间传输,调度器负责确定下一个要爬取的URL,爬虫负责从网页中提取数据,管道负责处理和清理爬取到的数据,项目则是整个爬虫系统的容器。
Scrapy支持多种数据存储方式,包括文件系统、数据库和搜索引擎等。它还提供了丰富的中间件和扩展,可以方便地与其他工具和技术集成。
总之,Scrapy是一个功能强大、灵活易用的Python爬虫框架,适用于各种规模的网络数据采集任务。
2.5 MySQL数据库简介
MySQL是一个开源的关系型数据库管理系统,它使用结构化查询语言(SQL)作为访问和管理数据的主要方式。MySQL最初由瑞典MySQL AB公司开发,后来被甲骨文公司收购。MySQL是最受欢迎的关系型数据库之一,广泛应用于各种规模的企业和组织中。MySQL具有高性能、稳定性和易用性等特点。它支持多线程处理,可以充分利用现代计算机的多核处理器,提高数据库的执行效率。MySQL还具有高可靠性和可扩展性,可以在大量并发用户访问的情况下保持稳定运行。MySQL提供了丰富的功能和工具,可以帮助开发人员快速构建复杂的应用程序。它支持事务处理、存储过程、触发器等高级功能,可以满足各种业务需求。MySQL还提供了多种客户端工具,如命令行客户端、图形界面客户端等,方便用户管理和操作数据库。在安装和使用MySQL时,用户可以根据自己的需求选择不同的发行版。目前市面上有多个版本的MySQL可供选择,包括社区版、企业版等。社区版是免费的,但功能相对较少;企业版则是收费的,但提供了更多的功能和服务。MySQL是一个功能强大、性能优越、易于使用的关系型数据库管理系统。它广泛应用于各种规模的企业和组织中,为用户提供了稳定可靠的数据存储和访问服务。
2.6 B/S结构
B/S结构,浏览器/服务器(Browser/Server)结构,是一种网络应用程序的体系结构。在这种结构中,客户端通过浏览器访问服务器上的应用程序,服务器负责处理客户端的请求并返回相应的数据。这种模式使得用户无需安装专门的客户端软件,只需使用通用的浏览器即可访问应用程序,大大降低了系统的维护成本和升级难度。
B/S结构的优点是显而易见的:它具有良好的跨平台性,因为浏览器是通用的;它简化了客户端的开发和维护工作,因为所有的功能都在服务器端实现;它具有较高的安全性,服务器端可以对数据进行统一管理和保护。
B/S结构也存在一些缺点。由于所有数据都存储在服务器端,当服务器出现故障时,整个系统可能会瘫痪; B/S结构的性能受到网络带宽的限制,尤其是在大量数据传输的情况下; B/S结构的可扩展性相对较差,随着用户数量的增加,服务器端的负载也会相应增加。

第3章 系统分析
3.1 系统可行性分析
可行性分析的目的是为了在尽可能短的时间通过最小的代价确定是否能解决此问题。通过对都电力能耗数据系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。接下来,我会从以下几个方面来阐述本系统开发的可行性。
3.1.1 技术可行性
都电力能耗数据系统根据设计的实际情况,从而选择使用B/S结构、python 技术和django框架,这些强大的框架支持了复杂业务逻辑的实现。选用了MySQL数据库,确保数据的安全性和可靠性。这些技术实现了性能的稳定性、升级的优异性、开发的迅猛性、管理的简洁性、语言新颖性以及服务的新颖性。
综合上述分析,可以得出都电力能耗数据系统的开发在技术方面的可能性是很高的。
3.1.2 操作可行性
都电力能耗数据系统的页面简单,功能一目了然,便于不同类型用户的操作,比如登录界面和注册的界面就采用了比较常见的界面窗口来实现用户的登录和注册操作,通过手机访问操作,用户只要平时使用过是手机软件都能进行访问操作。都电力能耗数据系统的开发语言选择的是Python 语言,基于MySQL数据库,这些使系统加倍的完善。
综合上述分析,得出都电力能耗数据系统的开发在操作方面的可能性很高。
3.1.3 运行可行性
电力能耗数据系统运行配置要求较低,普通的消费者以及用户都具有足够稳定的条件来运行此系统。因此,电力能耗数据系统在运行方面是可行的。
3.1.4 经济可行性
本系统的开发主要是针对于毕业设计的完成,不会应用于商业用途,工具方面只需要一台电脑和相关软件就可以完成开发,系统的开发周期一般在3个月左右,所以在经济方面不会产生任何负担,因此开发该系统在经济上是可行的。
综上所述,都电力能耗数据系统不论是在经济可行性方面,技术可行性方面、运行可行性方面还是在操作可行性方面都是可行的,因此,符合可行性分析。

3.2 需求分析
本系统针对传统电力能耗数据模式的弊端,从而开发出的一种功能更加全面高校的都电力能耗数据系统,主要目的就是通过本系统来改变都电力能耗数据上的系统,满足用户的需求。提升管理质量,丰富高校生活。在系统开发初期,为了更好的了解人们对都电力能耗数据系统的需求以及对现有同类系统的了解和建议,在指导老师的协助下设计了一份调查问卷,通过展开走访调查,并根据调查问卷的实际填写情况从以下方面总结出了当下人们对都电力能耗数据系统的态度以及要求,这样可以更出色的完成本次毕业论文。
3.2.1性能需求
1.在都电力能耗数据系统的开发过程中,我们必须要考虑以下几点:
2.安全性:在信息化的时代,信息是宝贵的财富,保证信息的安全,特别是个人信息尤为重要,对安全性的要求也就更高了;
3.先进性:系统要符合现今的流行走势,开发要符合用户的需求,能够快速准确的满足都电力能耗数据的各种需求;
4.可扩展性:都电力能耗数据系统给用户带来了极大的便利,提高了日常工作效率,备受用户欢迎,因此在都电力能耗数据系统开发过程中,我们需要预想到未来的系统的扩展和功能进一步的发展等一系列问题;
5.有效性:有效性最主要的是指功能方面的有效性,所以在设计都电力能耗数据系统功能的时候我们一定要通过前期的调查了解用户需求,并想方设法的以满足各方面的需求为目的。
3.2.2用户需求
电力能耗数据分析主要是方便管理员管理电力信息、城市、电力能耗数据分析、系统简介、个人中心等信息。
3.3 系统UML用例分析
UML是 Unified Modeling Language的缩写,又称统一建模语言。是开发者对客观事物进行建模的标记,同时也是为开发者了解系统需要什么样的功能和整个流程是什么样的做的前期工作。电力能耗数据分析的UML用例分析详情如下图所示。

图3-1管理员用例图

3.4 系统流程分析
3.4.1添加信息流程
管理人员或者其他的系统用户在选择添加信息的时候,系统会自己根据上一个添加的信息的ID号码,自动的给将要添加的这条信息一个属于它自己的ID号码。这时候是不用管理人员或者其他需要添加信息的用户自己填写的。当输入了想要往系统里面增加的信息后,系统就会对所输入的信息提交一个验证的过程。如果合法,则提示信息为添加成功。这时这条信息就会被添加到了信息对应的表中。如果不合法,则提示信息为添加失败,这就要重新把信息在输入一次来验证。流程详情见图3-2所示。

图3-2添加信息流程图
3.4.2修改信息流程
管理人员或者其他用户找到需要修改的信息后,然后将要修改的数据对应的输入到修改框里面。当数据合法的时候,则提示信息为添加成功。这时候这条数据就会被添加到了数据对应的数据库表中。如果不合法,则提示信息为添加失败,这就要重新把数据在输入一次来验证。修改信息流程图如图3-3所示。

图3-3修改信息流程图
3.4.3删除信息流程
管理人员或者其他的用户选择自己想要删除一条信息后,点击后面的“删除”按钮,系统就会给管理人员或者其他的用户一个提示表明信息删除成功了,与此同时系统会从数据库中将管理人员或者其他的用户想要删除的这条信息给删除掉。删除信息流程图如图3-4所示。

图3-4删除信息流程图
3.4.4登录流程
打开系统后在登录界面输入用户名和密码,如果是准确信息的话,用户就会登录进电力能耗数据分析。如果用户输入的任何一个信息不一致的话,系统就会提示本次登录失败了,那么用户需要重新在输入一次。登录流程图如图3-5所示。

图3-5 登录流程图

第4章 系统设计
4.1系统设计原则
根据走访调研调查,并根据人们对电力能耗数据分析的切实需求,电力能耗数据分析的开发按照以下原则进行。
有效性:有效性指站点能尽自己最大的努力来使用户需求的目前还没有开发的功能被满足了。可用性指我们可以通过对站点操作来实现系统设计出的各个功能;
高可靠性:系统开发必不可少的一个要求就是可靠性,电力能耗数据分析通过合理而先进的设计和系统资源的优化选型,来更好地实现系统的可靠性这一个特点;
3.高安全性:在系统设计的过程中,设计人员应该最大限度的把所有可以给系统提供安全保证的资源最大限度的利用起来。
4.2系统概要设计
电力能耗数据分析只要用户能连上Internet,就能在任意连续时间段里面、任意地理位置里的使用。系统工作原理图详情见图4-1。

图4-1系统工作原理图
4.3 系统结构设计
构图是系统的体系结构,体系结构是体系结构体系的重要组成部分。系统的总体结构设计如图4-2所示。

图4-2 系统总体架构图
4.4数据库设计
4.4.1数据库设计原则
在数据库设计过程中应该充分考虑以下几点:
1.尽最大的可能满足电力能耗数据分析目前的需求,这是数据库设计的基石;
2.需要分清主次,让数据结构一目了然;
3.需要保持适当的冗余,用来维持系统的良好的性能;
4.可以应对日趋壮大的数据量;
5.可以应对可能出现的新需求。
4.4.2 E-R图设计
E-R图(Entity Relationship Diagram)是指用来表现数据库中实现实际世界建模的数据库概念模型。以下将“电力信息、电力能耗数据分析、关于我们”等作为实体,它们的局部E-R图,如图4-3所示:
图4-3局部E-R图

4.4.3数据库表设计
数据库表的设计是本系统开发里最不可忽视的环节,电力能耗数据分析各个表的设计结果如下:
表4-1:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
image varchar 200 头像
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-2:关于我们
字段名称 类型 长度 字段说明 主键 默认值
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-3:电力信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
miaoshu longtext 4294967295 描述
faburiqi varchar 200 发布日期
fabuwang varchar 200 发布网
zuozhe varchar 200 作者
laiyuan longtext 4294967295 来源
detail longtext 4294967295 详情

表4-4:电力能耗数据分析
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yuefen varchar 200 月份
chengshi varchar 200 城市
shangyeyongdianliang double 商业用电量
juminyongdianliang double 居民用电量
gongyeyongdianliang double 工业用电量
zongyongdianliang double 总用电量

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

表4-6:城市
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
chengshi varchar 200 城市

第5章 系统的实现
5.1系统登录
在登录页面正确输入用户名和密码后,点击登录进入操作系统进行操作;如图5-1所示。

图5-1系统登录界面
5.2管理员功能实现
管理员进入主页面,主要包括对电力信息、城市、电力能耗数据分析、系统简介、个人中心等功能进行操作。管理员主页面如图5-2所示:

图5-2 管理员主界面
5.2.1电力信息
在电力信息页面输入标题通过进行搜索、爬取数据或删除电力信息列表,并根据需要对电力详情信息进行查看或删除操作;如图5-3所示:

图5-3电力信息界面
5.2.2城市
在城市页面输入城市进行搜索、新增或删除城市列表,并根据需要对城市详情信息进行查看、修改或删除操作;如图5-4所示:

图5-4城市界面
5.2.3电力能耗数据分析
在电力能耗数据分析页面选择城市和月份进行搜索、城市、导出、下载模板、上传模板、导入、新增或删除电力能耗数据分析列表,并根据需要对电力能耗数据分析详情信息进行查看、修改或删除操作;如图5-5所示:

图5-5电力能耗数据分析界面
5.2.4系统简介
在系统简介页面输入标题进行搜索系统简介列表,并根据需要对系统简介详情信息进行查看或修改操作;如图5-6所示:

图5-6系统简介界面
5.2.5个人中心
在个人中心页面点击个人信息,输入用户名和上传头像进行保存个人信息,还可以对密码进行修改操作;如图5-7所示:

图5-7个人中心界面
5.2.6看板
管理员进行爬取数据后,点击主页面右上角的看板,可以查看到发布网站、作者、城市、月总用电量、商业用电量、居民用电量、工业用电量、电力信息等实时的分析图进行可视化管理;如图5-8所示:

图5-8看板界面

第6章 系统测试
6.1测试目的与意义
系统测试是系统开发过程的最后阶段,而且是非常重要的一个阶段,测试阶段繁琐又漫长,很多时候我们都意识不到它的重要性。它的必要性体现在它是能够保障系统质量与可靠性的重要一关,是对系统的最后一步审查。
通过测试以确定用户对该系统的需求是否已经得到了满足,发现问题以后,我们要不断的调试以找出出现问题的具体原因与位置,然后对其进行修改,直到达到本系统要求的正确度。
6.2测试方法
在系统开发的过程中,对于系统的各个功能模块,每当完成一个部分功能的编码以后,都需要及时的对该模块进行测试,根据程序设计的逻辑结构,构建与之相适应的测试用例,对该模块的功能结构的合理性进行测试和验证,此外,还需要设计相应的测试方法检验该功能单元的编码正确性。
6.3测试用例
为了测试电力能耗数据分析用户的登录以及各功能能否正常运行,设计了以下测试用例。
表6-1 测试用例设计表
编号 功能模块 步骤 预期结果
1 用户登陆 填写注册时用户名和密码:guanyu,123456.点击登录 登陆成功
填写用户名guanyu,密码124 提示“登陆失败,请联系管理员”
填写用户名guan,密码123456 提示“登陆失败,请联系管理员”
填写用户名guan,密码124 提示“登陆失败,请联系管理员”
2 个人信息修改 电话号码输入非11位数字 提示“输入的手机号有误”
电话号码输入11位数字 修改成功
3 管理员登录 填写正确的用户名,密码 登陆成功
由于篇幅原因,各个功能模块测试用例分析不一一赘述,以用户注册功能模块、个人信息修改模块和评价模块为例进行描述,测试用例分析表如表6-2所示。
表6-2 个人信息修改模块测试表
步骤 操作描述 数据 测试结果
1 输入格式错误的手机号,密码和地址 输入密码:123,地址:XXX,电话:1234567890 系统提示“您的手机号输入有误”
2 输入格式正确的手机号,密码和地址 输入密码:123,地址:XXX,电话:12345678901 系统提示“修改成功”
3 输入地址和格式正确的手机号,不输入密码 输入地址:XXX,电话:12345678901 系统提示“密码不能为空”
4 输入密码和格式正确的手机号,不输入地址 输入密码:123,电话:12345678901 系统提示“地址不能为空”
5 输入密码和地址,不输入手机号 输入密码:123,地址:XXX 系统提示“您的手机号输入有误”

6.4测试结果
表6-1功能模块测试用例设计表的预期结果与表6-2功能模块测试结果均相符,系统模块功能均完善,在登录模块,对于用户填写的错误信息系统会做出提示,符合需求分析阶段的要求。
经过不断测试修改,电力能耗数据分析已基本实现预期功能。系统实现了电力信息、城市、电力能耗数据分析、系统简介、个人中心等功能。

第7章 总结与展望
7.1总结
随着时代的发展,都电力能耗数据也爆发出了强大的潜力,人们对于快捷高效的追求愈演愈烈,而传统管理方式显然不再适用快节奏的今天,都电力能耗数据迫切希望出现一个工具,来帮助电力能耗的高效管理。本文系统性的论述了电力能耗数据分析的研究与设计的过程,其主要的内容如下所示:
1.系统性的分析了电力能耗数据分析的研究背景和国内外的研究现状,简单性的介绍了该系统的理论意义和实践意义;
2.简单介绍了实现的相关技术,包括:python 技术、MySQL数据库、B/S模式等技术;
3.从用户需求方面对系统的功能需求进行了分析;
4.对系统的功能做了详细的设计,并加以实现;
5.对系统做了大量的测试,并对存在的问题加以修改完善。
最终实现了电力能耗数据分析的成功运行,系统内实现了都电力能耗数据的全部功能,能够满足人们对于高效便捷的需求,可以成为人们身边的好助手,同时也增加了一种高效的管理途径。
7.1展望
由于第一进行较全面的系统开发,且期间还有面临毕业实习等因素耽误时间,在本身能力就不够的情况下,系统的基本功能虽然能够正常运行,但是仍然需要进一步更改和优化:
1.系统的安全性还需进一步改善,来保证系统用户的信息的安全;
2.系统的美工方面还需要加强。
通过这个毕业设计,使我对手机应用软件的开发以及Python 语言和MySQL数据库有了更深刻的学习和理解,在系统开发的过程中,我针对电力能耗数据分析的开发进行了更深入的研究,我相信,不管是在以后的学习还是在生活当中,此次的学习经历都会使我受益匪浅,此次毕业设计实践也会为我以后的工作打下良好的基础。

参考文献
[1] 汪洋,姜新通.MVC框架在Python与Django下的设计研究[J]. 电脑与信息技术,2021,29(1):55-57,63.
[2] 韦立梅,苏兵.Django框架下Python网站开发过程综述[J].电 脑与电信,2019(10):54-56.
[3]汪洋,姜新通.MVC 框架在 Python 与 Django 下的设计 研究[J].电脑与信息技术,2021(01).
[4]吴建洪. 基于Django的Web自动化测试平台的研发与应用[D].西南大学,2022.DOI
[5]郭瀚亭.基于Django框架的文件分享平台的设计与开发[J].信息记录材料,2022,23(03)
[6]孙建军,李琪,吕强.浅析Web开发工具Django的MVC架构[J].品牌与标准化,2021(06):105-106+109.
[7]郑戟明,董云朝,柳青.MySQL数据库数据导入导出方法的探讨[J].电脑知识与技术,2022,18(22):24-25.
[8]吴锋珍.基于主从同步的MySQL负载均衡设计与部署[J].湖南邮电职业技术学院学报,2022,21(02):40-43.
[9]刘博文. 深入浅出Vue.js[M]. 北京: 人民邮电出版社, 2019. 36-92
[10]妥泽花.基于黑盒测试与白盒测试的比较探究[J].电子世界,2021(11):55-56.
[11]Zerouali Ahmed,Mens Tom,Decan Alexandre,Gonzalez Barahona Jesus,Robles Gregorio.A multi-dimensional analysis of technical lag in Debian-based Docker images[J].Empirical Software Engineering,2021, 26(2):34-39.
[12]Zhang Xiao, Yu Ali, Wang Xin, Zhang Xue. Sports Work Strategy of College Counselors Based on MySQL Database Big Data Analysis[J]. International Journal of Information Technology and Web Engineering (IJITWE), 2023, 18 (1): 1-14.

致 谢
随着电力能耗数据分析的完成和毕业论文终稿的完成,我猛然间的感觉到空气中都弥漫着毕业那种让人不舍的味道,我们马上就要用自己手中的彩画笔为自己最绚丽也是最难忘的四年大学时光画上一个圆满的句号。但是,大学生活的结束却又意味着我们人生的下一段征程的开始。面对我们人生中的每一个阶段的结束,我们总是难以用最简单的语言表达出这个时刻我们内心最真的感觉。
首先,我想特别感谢我的指导老师。在我做毕业设计和写论文的过程中,总是离不开指导老师的身影。老师认真负责、严谨求实的态度十分令人敬佩。每一次我有问题的时候,联系老师,老师都会及时给与我解答,任何的麻烦感觉到了老师这里都轻而易举的被解决掉。老师给与我的建议和意见都使我茅塞顿开,获益匪浅。值此论文定稿之时,我真心的想向我的指导老师表达我心中最最衷心的感谢和最最崇高的敬意。其次,我想要感谢信息学院的全体老师。大学四年的时光里,没有他们的付出我不会有这样大的进步。没有老师们的认真授课,我不会获得这样多的知识与见识。四年里,我给所有的老师添过各种大大小小的麻烦,谢谢老师们不计前嫌,一如既往的无私的帮助。谢谢您!
古人曾说:良师益友利于行。良师和益友都是我们人生中不可缺少的一部分,是我们成长的路上最最宝贵的一大笔财富,所以最后的最后我想感谢这群可爱的同学们。四年时光,说短不短,然而说长不长,但是我仍记得我们一起上过的课,一起吐过的槽,一起吵过的架,一起参加过的比赛,一起晒过的太阳,还有一起吃过的食堂。我们谁也没有辜负这段时光,没有浪费这段光阴,真好!虽然即将分别,再也吃不到那难吃却又便宜的食堂了,再也住不到这么便宜的宿舍,再也不能一起顶着烈日站军姿的时光了,再也没有上课躲着老师偷偷睡过的课了,再也没有。可是,你们的样子却深深地印刻在我的脑海里,虽然以后我们可能山高水长,但是我相信我依然会记得你那阳光般灿烂的容颜和烈日般灿烂的笑容。愿我们一切都好!
由于自己的水平还是非常有限的,毕业设计以及本篇论文完成的可能差强人意,欢迎各位老师提出意见,给予帮助和指正。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐