Django校园宿舍管理系统【纯干货分享,免费领源码】

news2024/12/24 2:48:15

摘 要

本论文主要论述了如何使用django开发一个校园宿舍管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述校园宿舍管理系统的当前背景以及系统开发的目的,后续章节将严格按照软件开发流程,对系统进行各个阶段分析设计。

校园宿舍管理系统的主要使用者分为管理员和学生,实现功能包括管理员:首页、系统用户(管理员、学生)模块管理(宿舍管理、宿舍费用、学生退宿、违例信息、违规申诉、宿舍物品、学生入住、物品上报、出入登记)等功能;学生:宿舍费用、学生退宿、违例信息、违规申诉、宿舍物品、学生入住、物品上报、出入登记等功能。由于本网站的功能模块设计比较全面,所以使得整个校园宿舍管理系统信息管理的过程得以实现。

本系统的使用可以实现本python校园宿舍管理系统的信息化,可以方便管理员进行更加方便快捷的管理,可以提高校园宿舍管理系统的管理效率。

关键词:django ;mysql数据库;校园宿舍管理系统

Abstract

This paper mainly discusses how to use django to develop a campus dormitory management system. The system will strictly follow the software development process to carry out the work at all stages, using B/S architecture and object-oriented programming ideas for project development. In the introduction, the author will discuss the current background of the campus dormitory management system and the purpose of the system development. The following chapters will analyze and design the system at all stages in strict accordance with the software development process.

The main users of the campus dormitory management system are divided into administrators and students, and the implementation functions include administrator: home page, system user (administrator, student) module management (dormitory management, dormitory expenses, student check-out, violation information, violation appeal, dormitory goods, student check-in, article reporting, entry and exit registration) and other functions; Students: dormitory expenses, student check-out, violation information, violation appeal, dormitory items, student check-in, item reporting, entry and exit registration and other functions. Due to the comprehensive design of the functional modules of this website, the information management process of the entire campus dormitory management system can be realized.

The use of this system can realize the informatization of this python campus dormitory management system, facilitate the administrator to conduct more convenient and efficient management, and improve the management efficiency of the campus dormitory management system.

Key words: django ; MySQL database; Campus dormitory management system

目  录

1 绪论

1.1研究背景

1.2研究现状

1.3研究内容

2相关技术介绍

2.1 B/S体系工作原理

2.2HTML网页技术

2.3 django框架介绍

2.4 Mysql数据库

3 系统分析

3.1 可行性分析

3.1.1 技术可行性

3.1.2经济可行性

3.1.3操作可行性

3.2 系统性能分析

3.3 系统功能分析

3.4系统流程分析

3.4.1登录流程

3.4.2注册流程

3.4.3添加信息流程

3.4.4删除信息流程

4 系统设计

4.1系统概要设计

4.2系统结构设计

4.3系统顺序图设计

4.3.1登录模块顺序图

4.3.2添加信息模块顺序图

4.4数据库设计

4.4.1数据库E-R图设计

4.4.2数据库表设计

5系统详细设计

5.1登录模块

5.2系统用户管理模块 21

5.3宿舍管理模块 22

5.4学生入住模块 23

5.5违规申诉模块 23

5.6违例信息模块 24

5.7宿舍物品模块 24

5.8出入登记模块 25

6 系统测试 27

6.1 测试定义 27

6.2 测试目的 27

6.3测试方案 28

(1)模块测试 28

(2)集成测试: 28

(3)验收测试: 28

6.4系统分析 30

7 结论 31

参考文献 32

谢辞 34

1 绪论

1.1研究背景

 随着网络不断的普及发展,校园宿舍管理系统依靠网络技术的支持得到了快速的发展,首先要从管理员和学生的实际需求出发,通过了解管理员和学生的需求开发出具有针对性的校园宿舍管理功能,利用目前网络给管理员和学生带来的方便快捷这一特点对系统进行调整,设计的系统让学生的使用起来更加方便,本系统的主要目的就是给管理员和学生带来方便,管理员足不出户只要通过计算机就可以进行宿舍管理。同时随着电子商务的发展校园宿舍管理系统已经受到广大院校的喜爱。

互联网发展至今,已经解决了很多我们解决不了的难题,使得我们工作更加便捷,提高了我们的工作效率。目前各行各业都在运用网络信息管理程序,不同的人群也都接触到信息管理,特别是在各大电商行业广泛的应运起来。通过对当前网络环境发展的分析与总结,开发校园宿舍管理系统可以改变以往的宿舍管理方式,改变传统线下宿舍管理的状态,由于人群的不断增多,使用传统的宿舍管理模式已经远远不能满足于用户需求了,而且越来越多的学校也在开通线上管理,所以开发一个校园宿舍管理系统可以解决学校不利于线下管理的问题,同时学校可以利用网络对球类信息进行管理,设计的网站保证信息的完整安全,这样才能提高工作效率,保证系统安全正常的运行。

1.2研究现状

在国外他们的信息技术的发展是我国的许多倍,从1946年诞生在美国的世界上第一台计算机开始,国外的信息技术就一直在飞速地发展,一些计算机应用软件也纷纷出现,软件技术也一直在不断完善和更新。软件行业早已遍布各个地方。

在国内,我国信息技术发展起步比较晚,后期慢慢的不断地进行优化和改革,才让我们的信息技术上升到新的阶段。在现在软件开发的技术经过大量研究和生活实践基本能够达到独立开发系统应用的水平,生活中的各个行业也把软件操作替换成传统的记录模式。软件行业正是现在比较热门的行业。

随着宿舍管理人数的不断增加,校园宿舍管理系统也在随着增加,由于宿舍信息的增多,校园宿舍管理系统能够对宿舍管理进行完整的规划和管理,而且学校也通过网络系统来完成日常管理信息中的各种需求,所以网上校园宿舍管理系统的开发给人们带来了足够的便利,人们通过系统来满足生活中的需求,因此,由于信息的增加,信息处理系统也随之增加,通过网络来满足现代人群需求。此次开发设计主要是实现校园宿舍管理系统,结合python技术以及mysql数据库进行设计,弥补目前在线球类购物网站中的不足,来开发出一款即方便又实用的校园宿舍管理系统,并且设计的程序具有界面整洁、功能强大等特性,从全局来说,校园宿舍管理系统的设计解决了信息零散、不利于宿舍管理的问题,该系统实现,可以投入到真实环境中,这样不仅能解决以上提及的问题,让信息管理更准则。

1.3研究内容

该校园宿舍管理系统的开发和设计施根据用户的实际情况出发,对系统的需求进行了详细的分析,然后进行系统的整体设计,最后通过测试使得系统设计的更加完整,可以实现系统中所有的功能,在开始编写论文之前亲自到图书馆借阅相关书籍,mysql数据库书籍等编程书籍,然后针对开发的校园宿舍管理系统,去网上查找了很多别人做好的系统,参照他们的设计结果,来对自己的系统进行更加详细的系统的设计,将系统中所有的功能结果一一列举出来,然后进行需求分析,最后对所有的功能模块进行编码,最后完成系统的整体测试,实现系统的正常运行。

这次编写的论文包含了6个部分的内容,具体内容如下:

第一部分绪论:文章主要从课题背景以及研究现状综合阐述了开发此系统的必要性。

第二部分相关技术:系统开发用到的各种技术都大致做出了简介。

第四部分系统分析:对系统的可行性分析以及对所有功能需求进行详细的分析,来查看该系统是否具有开发的可能。

第四部分系统设计:功能模块设计和数据库设计这两部分内容都有专门的表格和图片表示。

第五部分系统实现:进行系统主要功能模块的界面展示。

第六部分系统测试:测试系统的每一个功能是否能够正常运行,是否可以满足人们的需求。

2相关技术介绍

2.1 B/S体系工作原理

B/S架构采取浏览器请求,服务器响应的工作模式。

用户可以通过浏览器去访问Internet上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;

而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;

从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Internet。

在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。

 

2.2HTML网页技术

HTML是一种制作网页的常用语言,它一般是用于制作静态页面。它的命令是可以体现文字信息、链接信息、图形信息和表格信息等等。现在它被大众普遍接受广泛应用在网络上。

2.3 django框架介绍

Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Django框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。Django 框架的核心组件有:

1.6.1 用于创建模型的对象关系映射;

1.6.2 为最终用户设计较好的管理界面;

1.6.3 URL 设计;

1.6.4 设计者友好的模板语言;

1.6.5 缓存系统。

Django(发音:[`dʒæŋɡəʊ]) 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。

Django 根据比利时的爵士音乐家Django Reinhardt命名,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。

由于Django在近年来的迅速发展,应用越来越广泛,被著名IT开发杂志SD Times评选为2013 SD Times 100,位列“API、库和框架”分类第6位,被认为是该领域的佼佼者。

2.4 Mysql数据库

Mysql 经过多次的更新,功能层面已经非常的丰富和完善了,从Mysql4版本到5版本进行了比较大的更新,在商业的实际使用中取得了很好的实际应用效果。最新版本的Mysql支持对信息的压缩,同时还能进行加密能更好的满足对信息安全性的需求。同时经过系统的多次更新,数据库自身的镜像功能也得到了很大的增强,运行的流畅度和易用性方面有了不小的进步,驱动的使用和创建也更加的高效快捷。最大的变动还是进行了空间信息的显示优化,能更加方便的在应用地图上进行坐标的标注和运算。强大的备份功能也保证了用户使用的过程会更加安心,同时支持的Office特性还支持用户的自行安装和使用。在信息的显示形式上也进行了不小的更新,增加了两个非常使用的显示区,一个是信息区,对表格和文字进行了分类处理,界面的显示更加清爽和具体。第二是仪表的信息控件,能在仪表信息区进行信息的显示,同时还能进行多个信息的比对,为用户的实际使用带来了很大的便捷。

针对本文中设计的校园宿舍管理系统在实际的实现过程中,最终选择Mysql数据库的主要原因在于在企业的应用系统应用及开发的过程中会存在大量的数据库比较频繁的操作,而且数据的安全性要求也是非常的高。综合这些因素,最终选择安全性系数比较高的Mysql来对校园宿舍管理系统后台数据进行存储操作。

3 系统分析

3.1 可行性分析

在系统开发之初要进行系统可行分析,这样做的目的就是使用最小成本解决最大问题,一旦程序开发满足用户需要,带来的好处也是很多的。下面我们将从技术上、操作上、经济上等方面来考虑这个系统到底值不值得开发。

3.1.1 技术可行性

本校园宿舍管理系统采用django框架、python编程语言和mysql数据库进行开发设计,作为计算机专业学生,在学校期间就接触到许多关于编程方面的知识,当然也包括各种编程软件,对他们的了解度也比较系统,所以技术开发上面还是有一定把握。

3.1.2经济可行性

我在设计该系统的时候主要是从节约成本出发,然后进行具体的系统的设计,在系统的设计过程中由于采用的所有工具以及技术支持全部都是免费的,因此不需要有任何的成本就可以进行该系统的设计。所用到的所有资源都是免费的,只要有网络就可以进行下载使用,不需要支付相应的费用,因此该项目在经济方面是完全可以实行的。

3.1.3操作可行性

本人自己就是学生,程序开发经验不足,在界面设计上面不会设计太复杂,要讲究简单好看,操作上要方便,不能让用户觉得不流畅。用户一旦进入操作界面,界面上就会有相应提示,跟着操作提示就可以找到对应的功能操作模块,对于用户来说免培训就能使用。

从上面几个部分的可行性分析得出,这次开发的校园宿舍管理系统在开发上面没有什么大问题,值得开发。

3.2 系统性能分析

(1)系统响应效率:页面响应时问应该在3秒以内,最长不能超过4秒,并支持至少10000人同时在线所有系统。

(2)界面简洁清晰:系统界面要求简单明了,容易操作,符合用户操作习惯。

(3)储存性高:因为校园宿舍管理系统中有很多的信息需要存储,因此对于系统的存储量有很大的要求,需要有一个强大的数据库的支持才能确保所有的信息都能安全稳定的进行存储。

(4)易学性:该系统在操作上必须简单好上手,没有很多复杂的操作,只需要简单的进行学习就能操作该系统。

(5)稳定性需求:开发的校园宿舍管理系统要求运行稳定,运行过程中无界面不清楚、字体模糊等现象。

(6)稳定性:开发的校园宿舍管理系统要求运行稳定,运行过程中无界面不清楚、字体模糊等现象。

3.3 系统功能分析

本校园宿舍管理系统主要包括两大功能模块,即管理员、学生模块。

(1)管理员模块:系统中的核心用户是系统管理员,管理员登录后,通过管理员菜单来管理系统。主要功能有:首页、系统用户(管理员、学生)模块管理(宿舍管理、宿舍费用、学生退宿、违例信息、违规申诉、宿舍物品、学生入住、物品上报、出入登记)等功能。管理员用例图如图3-1所示。

 

图3-1 管理员用例图

(2)学生:宿舍费用、学生退宿、违例信息、违规申诉、宿舍物品、学生入住、物品上报、出入登记等功能。学生用例如图3-2所示。

 

图3-2学生用例图

3.4系统流程分析

3.4.1登录流程

登录模块主要满足管理员以及用户的权限登录,用户登录流程图如图3-4所示。

 

图3-4 登录流程图

3.4.2注册流程

未有账号的用户可进入注册界面进行注册操作,用户注册流程图如图3-5所示。

 

图3-5 注册流程图

3.4.3添加信息流程

用户在添加信息时,信息编号自动生成,系统会对添加的信息进行验证,验证通过则添加至数据库,添加信息成功,反之添加失败。添加信息流程如图3-6所示。

 

图3-6 添加信息流程图

3.4.4删除信息流程

用户可选择要删除的信息进行信息删除操作,在删除信息时系统提示是否确定删除信息,是则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图3-7所示。

 

图3-7 删除信息流程图

4 系统设计

4.1系统概要设计

本校园宿舍管理系统选择B/S结构(Browser/Server,浏览器/服务器结构)和基于Web服务两种模式。适合在互联网上进行操作,只要用户能连网,任何时间、任何地点都可以进行系统的操作使用。系统工作原理图如图4-1所示:

 

图4-1 系统工作原理图

4.2系统结构设计

整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。

校园宿舍管理系统结构图如图4-2所示。

 

图4-2 系统功能结构图

4.3系统顺序图设计

4.3.1登录模块顺序图

登录模块主要满足了管理员以及用户的权限登录,登录模块顺序图如图4-3所示。

 

图4-3 登录顺序图

4.3.2添加信息模块顺序图

管理员以及用户登录后均可进行添加信息操作,添加信息模块顺序图如图4-4所示。

 

图4-4 添加信息顺序图

4.4数据库设计

一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,要结合实际情况来对数据库进行针对性的开发设计[12]。

4.4.1数据库E-R图设计

本校园宿舍管理系统采用的是mysql数据库,数据存储快,因为校园宿舍管理系统,主要的就是对信息的管理,信息内容比较多,这就需要好好的设计一个好的数据库,分类要清楚,不能添加信息的时候,造成信息太过混乱,设计好的数据库首先就需要先把各个实体之间的关系表达明确,系统的E-R图如下图所示:

(1) 学生信息实体属性图如下图4-5所示

 

图4-5学生信息实体属性图

(2)宿舍物品实体属性如下图4-6所示

 

图4-6宿舍物品实体属性图

3、违规申诉管理实体图如图4-7所示:

 

图4-7违规申诉管理实体图

4.4.2数据库表设计

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

violation_information表:

名称

类型

长度

不是null

主键

注释

violation_information_id

int

11

违例信息ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

date_of_violation

date

0

违例日期

violation

text

0

违例情况

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

student_check_out表:

名称

类型

长度

不是null

主键

注释

student_check_out_id

int

11

学生退宿ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

bed_no

varchar

64

床号

date_of_check_in

date

0

入住日期

check_out_date

date

0

退宿日期

reasons_for_lodging_out

text

0

退宿原因

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

student_check_in 表:

名称

类型

长度

不是null

主键

注释

student_check_in_id

int

11

学生入住ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

bed_no

varchar

64

床号

date_of_check_in

date

0

入住日期

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

item_reporting表:

名称

类型

长度

不是null

主键

注释

item_reporting_id

int

11

物品上报ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

report_items

varchar

64

上报物品

reported_quantity

varchar

64

上报数量

escalation_instructions

text

0

上报说明

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

student表

名称

类型

长度

不是null

主键

注释

student_id

int

11

学生ID

student_no

varchar

64

学生学号

student_name

varchar

64

学生姓名

gender

varchar

64

性别

examine_state

varchar

16

审核状态

recommend

int

11

智能推荐

user_id

int

11

用户ID

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

item_reporting表:

名称

类型

长度

不是null

主键

注释

item_reporting_id

int

11

物品上报ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

report_items

varchar

64

上报物品

reported_quantity

varchar

64

上报数量

escalation_instructions

text

0

上报说明

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

dormitory_management表:

名称

类型

长度

不是null

主键

注释

dormitory_management_id

int

11

宿舍管理ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

total_number_of_beds

int

11

床位总数

number_of_residents

int

11

已住人数

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

dormitory_items表:

名称

类型

长度

不是null

主键

注释

dormitory_items_id

int

11

宿舍物品ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

item_name

varchar

64

物品名称

item_quantity

varchar

64

物品数量

item_information

text

0

物品信息

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

complaint_of_violation表:

名称

类型

长度

不是null

主键

注释

complaint_of_violation_id

int

11

违规申诉ID

building_name

varchar

64

楼栋名称

dormitory_no

varchar

64

宿舍房号

floor

varchar

64

楼层

student_no

int

11

学生学号

student_name

varchar

64

学生姓名

date_of_violation

date

0

违例日期

complaint_content

text

0

申诉内容

examine_state

varchar

16

审核状态

examine_reply

varchar

16

审核回复

recommend

int

11

智能推荐

create_time

datetime

0

创建时间

update_time

timestamp

0

更新时间

5系统详细设计

5.1登录模块

管理员和学生在登录界面输入账号+密码,点击“登录”按钮,系统在用户数据库表中会对管理员、教师和学生的账号进行匹配,账号+密码正确的话,就会登录到系统中各个用户的主管理界面,否则提示对应的信息,返回到登录的界面,其主界面展示如下图5.1所示。

 

图5.1 登录界面图

5.2系统用户管理模块

管理员可以对系统中所有的用户角色进行管控,包含了管理员、学生这两种角色,如果需要添加新的用户,点击页面中的“添加”按钮根据提示输入上用户信息,点击“提交”以后在对应的用户界面就可以查看到了,可以点击用户后面的“删除”按钮直接删除某一用户,这里以学生用户为例。界面如下图5.2所示。

 

图5.3系统用户管理界面图

5.3宿舍管理模块

管理员点击“宿舍管理”这个按钮可以查看到系统中的宿舍管理信息,支持通过宿舍房号或者楼栋名称或者床位总数进行查询宿舍管理信息,如果想要添加新的宿舍管理信息,点击“添加”按钮然后根据提示输入宿舍管理信息,点击“提交”后,在宿舍管理界面就会显示新增的宿舍管理信息,可以点击某一宿舍管理信息查看宿舍管理信息的详情,也可以直接点击“删除”进行删除宿舍管理。界面如下图5.3所示。

图5.3宿舍管理界面图

5.4学生入住模块

点击“学生入住”这个菜单,可以查看到系统中所有添加的学生入住,支持通过楼栋名称对学生入住进行查询,如果想要了解某一入住的详细信息,点击后面的“详情”会进入详情界面,学生和管理员如果想要选择某一学生入住,点击“退宿申请、宿舍费用”按钮,根据提示填写对应的信息,点击“提交”按钮,信息没有错误在数据库就会提交成功,退宿成功。界面如下图5.4所示。

 

图5.4 学生入住界面图

5.5违规申诉模块

学生点击“违规申诉”这个按钮可以查看到自己提交的违规申诉,支持通过楼栋名称或者宿舍房号进行查询违规申诉,如果想要了解某一违规申诉的详细信息,点击后面的“查看”会进入详情界面,也支持对自己选择的违规申诉进行删除;界面如下图5.5所示。

 

图5.5 违规申诉界面图

5.6违例信息模块

学生点击“违例信息”这个按钮可以查看到自己所有的违例信息,支持通过楼栋名称或者宿舍房号进行查询违例信息,如果想要了解某一违例的详细信息,点击后面的“详情”会进入详情界面,学生和管理员如果想要选择某一违例信息,点击“违规申诉”按钮,根据提示填写对应的信息,点击“提交”按钮,信息没有错误在数据库就会提交成功,申诉成功。界面如下图5.6所示。

 

图5.6 违例信息界面图

5.7宿舍物品模块

点击“宿舍物品”这个菜单,可以查看到系统中所有添加的宿舍物品,支持通过楼栋名称对宿舍物品进行查询,如果想要了解某一宿舍物品的详细信息,点击后面的“详情”会进入详情界面,学生和管理员如果想要选择某一宿舍物品,点击“物品上报”按钮,根据提示填写对应的信息,点击“提交”按钮,信息没有错误在数据库就会提交成功,物品上报成功。界面如下图5.7所示。

 

图5.7宿舍物品界面图

5.8出入登记模块

点击“出入登记”这个菜单,可以查看到系统中所有添加的出入登记信息,支持通过楼栋名称或者宿舍房号或者学生学号对出入登记信息进行查询,只有管理员用户可以添加新的出入登记,点击“添加”按钮,根据提示输入出入登记信息,点击“提交”按钮,新的出入登记信息就在系统中显示出来了,也可以对添加的出入登记信息进行删除。界面如下图5.8所示。

 

图5.8出入登记界面图

6 系统测试

一个系统设计好后,就会进入测试阶段,测试的目标是检验设计好的网站是否可以正常无误的运行,尽可能的发现网站的问题,已使后期网站投入使用后网站尽少出错。

6.1 测试定义

系统测试主要是判断系统是否可以正常运行,功能模块是否可以实现操作。程序代码中是否有错误出现。测试程序是开发过程中的一个主要问题。就算系统完成的再好,再进行程序测试时也会也会发现一个重来没有被发现的错误信息。

测试不仅是系统开发的开始,而且应该贯穿整个系统的整个生命周期。评估系统质量的方法不局限于系统编码和过程,应该与软件设计工作和历史需求分析密切相关。系统错误,不一定是代码错误,可能是阶段的设计摘要和设计细节存在问题,问题也可能出现在需求分析阶段。从实际情况来看,最初的问题很可能是一个小错误,根据按钮的原理,按钮后的按钮位错将是所有位错。该系统的原因也同样适用,随着后续的开发工作,误差将越来越严重。因此就应该对系统进行测试,在一开始就发现系统中存在的问题,就能保证以后系统能够正常稳定的运行。在测试系统中,开发人员应该站在用户的角度来处理测试工作,而现在主要的测试方法是黑盒测试。测试的目的可以概括为以下几点:首先,用户界面和用户需求是一致的,设置界面和设计风格统一;第二,创新设计接口规范设计标准,具有独特的审美特征;最后,人类传统的接口以满足审美需求,不能盲目地追求一种独特的,合理的规划布局,符合审美标准。

6.2 测试目的

测试的目的在于要对系统的稳定和可操作性能进行对照检查。对于软件的开发利用最终的目的在最后的测试和试用,这是一个不可缺少的重要环节。对于软件开发者而言,在对每一个单独的功能进行编排时候,都要有单独的测试,并通过测试阶段才可以研发多个功能性软件,这样既缩短了研发时间,也可以在的单个的早期测试中发现问题,以免融合后的软件,在查找问题时就很难快速解决或者急速定位问题。

校园宿舍管理系统开发设计完成后,需要对其进行系统测试,测试的主要目的就是发现并找出系统中存在的问题,并及时的进行解决,确保系统可以正常稳定的运行下去,在进行系统测试的时候,在一定要非常的认真、仔细,切记不能粗心,不能放过一个漏洞,测试时候一定不要着急,要按照之前指定好的测试步骤一步一步进行,并且将测试的结果进行详细的记录,我们在进行测试的时候做好选择自动化的测试,这样既可以节省时间而且也能确保测试的准确性,如果采用人工测试的方法就不会这么的方便,由于人工测试有很多不确定的因素,在测试过程中很可能会出现一些问题,用机器测试就不会出现任何的问题,而且机器不会疲惫会一直二等工作下去。在测试的时候一定要非常专注,时刻关注着测试的结果,一但发现异常及时进行修改,最后,测试完之后的文档应该保存下来,方便以后测试时用到。系统测试的方法有很多,对于本校园宿舍管理系统的测试,我们使用了测试用得最多的黑盒测试方法来对该系统进行测试。

6.3测试方案

对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性,以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试[14]。

构造测试是白盒测试的另一个名字,了解与分析程序的结构以及性能功用的,从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。

性能测试是黑盒测试别称,程序本身的运作通过程序的进程来观察,主要是看一下程序是不是能够像我们预期的目标那样发展,看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据,到最后看一下我们的这个程序完整性能不能达到要求。

(1)模块测试

单元测试就是模块测试,顾名思义就是测试每个模块所承担的功能是否能够实现,这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差,很好地改正这些错误,就说明我们模块测试进行很成功过。

(2)集成测试:

集成测试就是对系统的测试以及对他子系统的一些性能测试,他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点:

软件耗费较少。

可以提前发现端口的错误。

更好的地位系统中错误的位置。

从底部往上面进行的方案针对于偏下层的结构,而中间的结构就采用折中的方法。

(3)验收测试:

终于到了结尾性的工作了。就是为了给用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。

其结果是分别是:

有一定的差异在用户的需求。

再者就是结果与之差不了多少。

到了最后了,我们发现的问题都是与用户的需求存在一定的关联。

1、登录测试

 测试点:登录

测试的目标:输入账号密码以及验证码后系统会自动进行验证是否正确。

所用的环境:Windows10和IE浏览器。

输入信息:用户名、密码。

步骤:

(1)首先我们打来浏览器,进入该系统的登录界面。

(2)在进入页面登录部分以后可以进行对用户名、密码进行测试,具体测试输入情况如下表6.1所示。

表6.1 登录测试

情况

用户名输入

密码输入

期望结果

(1)

15546219225

1244566

提示“用户名或者密码错误,或账号未经审核”

(2)

aaaaa

123456

提示“用户名或密码错误,或者账号未经审核”

(3)

15546219225

hangguowei

登陆成功

6.4系统分析

本校园宿舍管理系统设计要求基本都可以达到,此系统具有完整的软件功能,良好的用户界面,能够正确的处理错误信息,而且能够准确的提出错误的种类。但是系统测试时也出现了一些系统的不足和缺陷,所以在今后的日子里我会对其视觉上的不足作出修改,其次系统的代码和数据库出现了非常多的冗余现象,都是因为对编程技术的应用不够熟练,在日后我会加强自己的自身学习和能力,减少这样的冗余现象。

经过对上述的测试结果分析,本校园宿舍管理系统无论是在技术方面,还是操作方面,还是经济方面都是完全可以实行的,并且经过测试,该系统操作简单,所有的功能都可以实现,因此该系统可以满足人们的使用需求,值得被推广。

总体说来,软件通过测试。

7 结论

本文研究了校园宿舍管理系统的设计与实现,在文章开端首先对个研究背景、研究现状和研究内容作了简单的介绍,然后通过系统分析,引申出本系统研究的主要内容。

通过对python技术和mysql数据库的简介,从硬件和软件两反面说明了校园宿舍管理系统的设计与实现的可行性,本文结论及研究成果如下:实现了python与mysql相结合构建的校园宿舍管理系统,通过本次校园宿舍管理系统的设计与实现的研究与实现,我感触到学习一门新技术,最重要的是实践,只有多动手才能尽快掌握它,一个系统的开发,经验是最重要的,经验不足,就难免会有许多考虑不周之处。要想吸引更多的用户,系统的界面必须要美观、有特色、友好,功能要健全。

由于在此之前对于python知识并不了解,所以从一开始就碰到许多困难,例如一开始的页面显示不规范、数据库连接有问题已经无法实现参数的传递等等,不过通过我不断的查阅相关的资料,以及向老师同学请教,最后出现的所有的问题都得到了解决,通过这次的系统开发,我学到了很多的知识,也明白了自己在哪些方面有不足的地方,尤其是学会如何从大量的信息中筛选出所需有用的信息,同时我更加深刻的体会到了,虽然书本上的大部分知识都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。在此次毕业设计活动中,我不断的提高了自己,也得到了宝贵的经验,我相信这些对我以后的发展都会有很大帮助。

通过这次校园宿舍管理系统的开发,让我学到了更多的知识,同时通过这次系统的设计也让我明白了自己在哪方面有不足,以后加以学习争取可以开发住更多有用的适用的系统软件,本次系统的设计提高了我的编程水平,为了我今后系统的开发打下了结实的基础。

参考文献

[1]姜秋香,郭伟鹏,王子龙,欧阳兴涛,隆睿睿.Python语言在水文水资源领域中的应用与展望[J/OL].计算机工程与应用:1-16[2023-02-12].http://kns.cnki.net/kcms/detail/11.2127.TP.20221229.1252.002.html

[2]周柯,先茅家,李伟光.基于Python语言的数据专线IT化系统的研究与应用[J].通信与信息技术,2022(S2):89-91+96.

[3]周春吟.基于Python语言图形用户界面设计的研究[J].科学技术创新,2022(35):81-85.

[4]张丽景,张文川.基于对比分析法的高职“MySQL数据库”课程设计——以兰州石化职业技术大学为例[J].现代信息科技,2022,6(21):188-191.DOI:10.19850/j.cnki.2096-4706.2022.21.046.

[5]黄强.基于Web的高职院校学生宿舍管理系统设计与结构分析[J].无线互联科技,2022,19(20):78-80.

[6]林佳一.混合式教学在高职MySQL数据库课程的实践研究[J].电脑知识与技术,2022,18(26):133-135.DOI:10.14004/j.cnki.ckt.2022.1737.

[7]海克洪,王迎曙. 一种人工智能物联网宿舍管理系统及方法[P]. 湖北省:CN111916104B,2022-09-13.

[8]黄人薇,朱冬玲,唐世文.课程目标达成度评价设计与实践的研究——以MySQL数据库基础与应用为例[J].电脑与电信,2022(09):34-38.DOI:10.15966/j.cnki.dnydx.2022.09.012.

[9]王生茂,王嘉豪,尹越,张驰,姜代红.基于Haar特征的人脸识别智能宿舍管理系统[J].电脑知识与技术,2022,18(05):102-104.DOI:10.14004/j.cnki.ckt.2022.0345.

[10]韦大欢.基于疫情防控下人脸识别在宿舍管理系统中的应用[J].现代计算机,2022,28(03):82-86.

[11]Mathieu Didier. Erratum: Modeling Sensitivities of Energetic Materials using the Python Language and Libraries[J]. Propellants, Explosives, Pyrotechnics,2022,47(2).

[12]Rodríguez-Valenzuela Francisco Javier,González-Meza Omar Alejandro,González Gutiérrez Ana Gabriela,Bárcena-Soto Maximiliano,Larios-Durán Roxana,Casillas Norberto. Development of an Application in Python Language to Simulate Cyclic Voltammograms with Multiple Reaction Mechanisms.[J]. Electrochemical Society Transactions,2022,106(1).

[13]涂华燕.基于MySQL宿舍管理系统数据库设计[J].电脑编程技巧与维护,2021(12):104-106.DOI:10.16184/j.cnki.comprg.2021.12.038.

[14]李洋,胡茵茵,宣宏坤,黄春健,黄泽涛,王宗彤.智慧宿舍管理信息系统的设计与分析[J].无线互联科技,2021,18(20):42-44+49.

[15]Zhao Kai. Design and Analysis of Campus Dormitory Management System Based on Java[J]. The Frontiers of Society, Science and Technology,2020,2.0(17.0).

[16]尚进,张建欣.学生管理视角下川北幼专智能宿舍管理系统的研究[J].电子技术与软件工程,2020(24):169-170.

[17]丁书晨, DH宿舍管理系统. 湖北省,武汉东湖学院,2020-08-01.

[18]方琳. 宿舍综合管理系统研究与开发[D].山东大学,2020.DOI:10.27272/d.cnki.gshdu.2020.004870.

[19]王青.高校宿舍智能管理系统设计[J].微型电脑应用,2019,35(06):135-137.

[20]李明慧.基于J2EE的高校宿舍管理系统设计[J].信息技术,2016(06):69-72.DOI:10.13274/j.cnki.hdzj.2016.06.019.

[21]李朝阳. 基于BS技术的学生宿舍消防管理系统的设计与研究[C]//.2014中国消防协会科学技术年会论文集.,2014:696-698.

谢辞

本次毕业设计圆满的结束了,通过这次毕业设计我学到了很多的知识,也提高了我软件开发的能力,在系统开发设计的过程中,出现了很多的问题,但是通过老师和同学们的帮助,最后所有的问题都得到了解决,因此我要感谢在此过程中对我帮助的老师和同学们,感谢指导老师帮助我选课题,给我做详细的讲解,给我提供设计所需要的各种设备,也经常询问我进度与成果,再有难点的时候给我解决思路,帮助我顺利完成。没有他的指导,也不会有我今天所展现出的成果。

首先我要感谢我的指导老师,指导老师在教学任务繁忙的情况下,抽出时间帮助我纠正我在设计当中出现的问题,并耐性地为我的论文作校正,是他的定期检查和指导使得我们的毕业设计高质量完成。他在我整个课题开发和设计的过程中,为程序的设计、框架的设计、代码的撰写方面以及论文框架的设计提供了很多宝贵的意见,并且为我推荐了许多有用的资料和文献,他的指导和建议使我受益匪浅,有了指导老师的辅导和指点,我论文才能够顺利完成。老师的认真负责的工作态度和治学严谨之道使我们这些即将踏入社会的毕业生受益匪浅。

然后要感谢我的同学们,感谢大家对我这次毕业设计的帮助, 也感谢大家在大学生活中对我的陪伴,使得我的大学生活过的很快乐。

另外,我还要感谢父母,感谢一直以来对我的支持,让我能够顺利的完成我的学业,没有你们也就没有我的今天,感谢你们无私的付出,未来我一定会报答你们的。

最后,感谢在座的所有参加我论文答辩的老师们,感谢大家的聆听,你们辛苦了。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/784356.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

脑电信号处理与特征提取——1. 脑电、诱发电位和事件相关电位(胡理)

目录 一、 脑电、诱发电位和事件相关电位 1.1 EEG基本知识 1.2 经典的ERPs成分及研究 1.2.1 ERPs命名规则及分类 1.2.2 常见的脑电成分 1.2.3 P300及Oddball范式 1.2.4 N400成分 一、 脑电、诱发电位和事件相关电位 1.1 EEG基本知识 EEG(Electroencephalogram)&#x…

爬虫001_Pip指令使用_包管理工具_pip的使用_和源的切换---python工作笔记019

scrapy是一个爬虫的框架 确认一下pip这个python中的包管理工具是否已经安装好了 python的环境变量配置完了以后,还需要配置一下pip的环境变量 把这个目录配置好,这个pip的环境变量的配置很简单不多说了. 我们用pip安装一下包,我们安装到上面这个路径里面,就是python的安装路…

生态系统模型:SolVES、DNDC、CMIP6、GEE林业、APSIM、InVEST、META分析、文献计量学、无人机遥感、ArcGIS Pro模型等

【原文链接】:【科研必备软件教程】气象、生态、遥感、水文、洪水、语言、人工智能、地质等领域模型应用https://mp.weixin.qq.com/s/KgSvl20fIjTY0ZWDyF0-8A 【目录】: R语言在生态环境领域中的实践技术应用 CENTURY模型实践技术应用与案例分析 生态…

docker 禅道 不使用自建数据库 使用自定义数据库

网上关于docker 禅道使用非自带数据库资料好少,所以记录下,希望能帮助更多的人。 据说: 其他镜像都是内置了数据库, 如果使用外置的数据库,可以使用这个镜像 ​easysoft/quickon-zentao ​ 以上未知真伪&#xff…

视频的音频提取怎么做?这样提取很简单

提取视频中的音频通常在需要从视频中独立使用音频或需要对音频进行编辑时使用。例如,当我们需要将音频上传到音乐流媒体平台或将其用于播客或其他音频项目时,就可能需要从视频中提取音频。问题是该怎么提取呢?教给大家几种简单的提取方法&…

K8S系统监控:使用Metrics Server和Prometheus

Kubernetes 也提供了类似的linux top的命令,就是 kubectl top,不过默认情况下这个命令不会生效,必须要安装一个插件 Metrics Server 才可以。 Metrics Server 是一个专门用来收集 Kubernetes 核心资源指标(metrics)的…

电压放大器具体要求是什么

电压放大器是一种常见的电路结构,用于将输入信号放大成输出信号。在实际应用中,电压放大器需满足多个方面的要求,以确保其性能和稳定性。下面安泰电子将详细介绍电压放大器的具体要求。 1.放大器的增益 电压放大器的主要功能之一是对输入信号…

python求列表的交集、并集、差集

有这样一个场景,线上有一些生效的策略判断哪些是作弊订单,你通过数据挖掘挖掘了一些特征也判断了一些作弊订单,现在需要下你挖掘出来的特征的效果,那么主要关注两方面: (1)你的特征对于作弊订单…

QT字节数组类QByteArray

QT字节数组类QByteArray 初始化访问某个元素截取字符串获取字节数组的大小数据转换与处理Hex转换数值转换与输出 字母大小写转换字符串数值转化为各类数值QBQyteArray和char*互转QByteArray 和std::string互转与字符串QString互转QByteArray和自定义结构体之间的转化判断是否为…

【人工智能】对研究方法,智能模拟,学科范畴,涉及学科,研究范畴,安全问题,实现方法,人工智能与人类差距等方面的详细讲解

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…

Qt Core学习日记——第五天QMetaProperty

QMetaProperty代表类的属性 用Q_PROPERTY在类中声明属性 在moc会有具体变量名称字符串 函数分析: QMetaProperty::isEnumType 判断这个属性是否是枚举。 QMetaProperty::enumerator 获取属性对应的枚举信息,如果不是枚举返回未定义的QMetaEnum QMetaPr…

关于 Qt在windows使用mingw32编译器时从Qt5.9切换至Qt5.12出现“C2001:常量中有换行符“不修改编码 的解决方法

若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/131901444 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…

[Angular] Import TranslateModule in Angular 16

1.Background Angular 更新至V16版后,支援 standalone,故移除了 NgModule,而TranslateModule 又要在AppModule中 import,那该如何做呢? 2.NPM packages installation npm install ngx-translate/core npm install n…

ElasticSearch Java API 操作

1.idea创建Maven项目 2.添加依赖 修改 pom.xml 文件 <dependency><groupId>org.elasticsearch</groupId><artifactId>elasticsearch</artifactId><version>7.8.0</version></dependency><!-- elasticsearch 的客户端 --…

大型企业采购云管平台的需求是什么?选择哪家厂商好?

很多大型企业已经上云&#xff0c;但一直找不到合适的云管平台。今天我们就来一起简单聊聊大型企业采购云管平台的需求是什么&#xff1f;选择哪家厂商好&#xff1f; 大型企业采购云管平台的需求是什么&#xff1f; 对于大型企业而言&#xff0c;多云管理的主要痛点是海量异…

【C++】深入浅出STL之string类

文章篇幅较长&#xff0c;越7万余字&#xff0c;建议电脑端访问 文章目录 一、前言1、C语言中的字符串2、string类的使用场景 二、初步认识string类1、概述2、常用接口细述1&#xff09;string类对象的默认成员函数2&#xff09;string类对象的常见容量操作① size、length、ca…

linux系统的JDK11安装详细教程

下载jdk jdk-15.0.2.exe等4个文件官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘 安装插件 yum -y install lrzsz 1、上传linux 系统的jdk 切换linux系统需要安装路径 cd /usr/local/ rz 直接回车会弹出本地电脑上传路径 2.命令&#xff1a;tar -zxvf 需要解压的…

[Linux]环境变量 进程地址空间(虚拟内存与物理内存的关系)

hello,大家好&#xff0c;这里是bang_bang&#xff0c;今天我们来讲一下语言层级上的程序地址空间和系统层级上的进程地址空间的区别&#xff0c;在下面中我举的例子会设计到环境变量&#xff0c;所以开篇我先讲讲环境变量。 目录 1️⃣环境变量 &#x1f359; 基本概念 &am…

android studio JNI开发

一、JNI的作用&#xff1a; 1.使Java与本地其他类型语言&#xff08;C、C&#xff09;交互&#xff1b; 2.在Java代码调用C、C等语言的代码 或者 C、C调用Java代码。 由于JAVA具有跨平台的特点&#xff0c;所以JAVA与本地代码的交互能力弱&#xff0c;采用JNI特性可以增强JA…

手写Nacos基本原理——服务注册 配置管理

手写Nacos基本原理 一、背景介绍二、 思路方案三、过程nacosService代码pom文件配置文件具体类 nacosSDK代码pom文件配置类具体类 serviceA代码pom文件配置文件具体类 serviceB代码pom文件配置文件具体类 实现效果四、总结五、升华 一、背景介绍 之前在项目开发的过程中&#…