近些年来,随着科技的飞速发展,互联网的普及逐渐延伸到各行各业中,给人们生活带来了十分的便利,宿舍管理系统利用计算机网络实现信息化管理,使整个宿舍管理的发展和服务水平有显著提升。 本文拟采用nodejs技术和express搭建系统框架,后台使用MySQL数据库进行信息管理,设计开发的宿舍管理系统。通过调研和分析,系统拥有管理员和学生两个角色,主要具备系统首页、个人中心、学生管理、宿舍信息管理、宿舍分配管理、水电费管理、进入宿舍管理、出入宿舍管理、维修信息管理、卫生信息管理、考勤信息管理、留言板、交流论坛、系统管理等功能模块。将纸质管理有效实现为在线管理,极大提高工作效率。 前端技术:nodejs+vue+elementui, Express 框架于Node运行环境的Web框架, 语言 node.js 框架:Express 前端:Vue.js 数据库:mysql 数据库工具:Navicat 开发软件:VScode 视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。

代码结构讲解  1、 node_modules文件夹(有npn install产生)     这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。 2、package.json文件      此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。 3、public文件夹(包含images、javascripts、stylesheets)       这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。 4、routes文件夹       用于存放路由文件。 5、views文件夹       存放视图。  目 录 第一章 概述 4 1.1 研究背景 4 1.2研究目的及意义 4 1.3国内外发展现状 4 1.4 研究内容 4 1.5本文的结构 5 第二章 开发工具及技术介绍 6 2.1 nodejs编程语言 6 2.2 MySQL数据库 6 2.3express框架 7 第三章 系统分析 8 3.1功能需求分析 8 3.2系统可行性分析 8 3.2.1技术可行性 8 3.2.2 经济可行性 8 3.2.3社会可行性 9 3.3 系统用例分析 9 3.4系统流程图设计 10 3.4.1 登录流程图 10 3.4.2 添加新用户流程图 11 第四章 系统设计 13 4.1系统设计原理 13 4.2功能模块设计 13 4.3 数据库设计 13 4.3.1数据库设计原则 13 4.3.2数据库E-R图设计 14 4.3.3数据库表结构设计 16 第五章 系统功能实现 27 5.1系统功能实现 27 5.2后台模块实现 29 5.2.1管理员功能实现 29 5.2.2学生功能实现 36 第六章 系统测试 37 6.1系统测试的目的 37 6.2软件测试过程 37 6.3系统测试用例 37 结 论 39 致 谢 40 参考文献 41

第一章 概述 1.1 研究背景 近些年,随着中国经济发展,人民的生活质量逐渐提高,对网络的依赖性越来越高,通过网络处理的事务越来越多。随着宿舍管理的常态化,如果依然采用传统的管理方式,将会为工作人员带来庞大的工作量,这将是一个巨大考验,需要投入大量人力开展对宿舍管理等相关工作进行管理,单一且反复的操作容易出错且不易被察觉,工作人员对此风险并不能完全归避。利用现代信息技术,设计开发一款宿舍管理系统,能够极大的节省人力物力、提高工作效率、降低工作成本。 1.2研究目的及意义 本论文拟采用计算机技术设计并开发的宿舍管理系统,主要是为宿舍提供服务。使得的用户可依据、时间、地点或者其他特定条件,筛选出符合的信息,给用户提供更符合实际的合理化建议,再为用户提供服务。本课题的意义在于,用户能通过使用宿舍管理系统,提高用户的工作效率和服务质量,进而提高用户的体验感。 1.3国内外发展现状 相比于国内,国外的线上管理系统建设比较早,在上世纪就已经很先进,但受七十年代的经济危机影响,导致部分国家发展缓慢,但也有些发达国家走群众路线,全面发展网络技术。 在国内,线下管理系统已经特别完善,它基于计算机技术,让系统具有信息化、科学化、自动化等特性。在计算机的辅助下,国内该类系统可使管理者提高信息的复用率,对数据的处理、备份等方面也有了显著的效率提升,这种有效的工作可使管理者能更快的做好决定,也实现了“无纸化”的信息管理方式。由于其功能特别完善,也导致系统比较庞大,所以在了解该类系统的功能、操作后,决定开发一款宿舍管理系统,它的功能小,但是操作简单、快速、准确的特点,也体现了设计它的意义。第三章 系统分析 3.1功能需求分析 需求分析的首要任务是要分析用户的需求,知道用户存在的一些情况,并且要明确用户的使用状况,然后设计规划解决的问题。其中在使用定性的分析以及定量的分析,从这两个方面获取用户的需求。一方面定性的分析获得的应该是用户的基本需求,能够发现现在人们的习惯要求。所以定性的需要主要是为了多与用户交流,从而更为深刻的了解一些存在的需求问题;定量的分析则是发现一些潜在的用户,并且获得不一样的反馈内容。所以定量的需求要让用户来阐述一些情况,一定让使用者清晰的进行客观的描述,这样才能够比较全面的获得用户的需求所在。 其中获得用户需求以后,就要可以将用户需求设计为系统的功能模块。在能及时的分析和发现有关需求的情况下,需要系统同时的跟进需求设计。在宿舍管理过程中还需要创建需求工作的数据分析,以便于后面的分析做总结。写入一个需求的报告内容,其中需要包含完整的描述需求、以及功能需求、模型等后续开发过程中还需要用到的部分资料。 需求的分析中用户需求就是比较的重要,而且可以通过各种的路径,以及各用户对于系统的功能需求,你需要对这些内容做出整理以及分类,然后分析这些需求的现实情况下的可能原因,还需要有认真的分析过程,结合现实的情况下最终做出一系列的需求资料。在有关用户的期望分析中能够明确一些可能实现的情况,宿舍管理功能是许多个可以测试的功能相结合的,正是由于这些功可以使得用户能够更加积极的提供出需求,让系统功能可以变得更加的完善。这样就可以保证所有设计的功能模块都是可以用到的,而且也是可测试的,对于后续系统的开发能够有比较关键的作用,也能快速完成用户所提供的需求。 1.4 研究内容 (1)调研:通过网络、图书馆等渠道调查该课题的参考资料。 (2)系统需求分析:对参考资料分类整理,设想需求与功能,再研究实现功能所需的开发工具、技术、数据库等。 (3)系统概要设计:设计功能模块、流程、数据库模型、表与字段间的关系等。 (4)系统实现:对系统用户以文字加截图的形式进行精细化分解。 (5)系统测试:测试的作用和好处,测试的具体操作步骤,分析需求与测试结果是否一致。 1.5本文的结构 本论文分为六个章节。 第一章,绪论,其包含课题背景及意义,现国内外的发展现状,本课题要研究的内容,所使用开发工具的描述等信息。 第二章,主要介绍了系统的开发技术。 第两章,先讲述功能需求分析,再讲述系统可行性分析和流程图的设计。 第四章,是系统设计原理,功能模块设计和数据库设计。 第五章,详情讲述每个界面的正确操作步骤。 第六章,该章讲述了测试的目的以及测试过程及用例。 最后对论文进行总结,包括致谢和参考文献等内容。 3.2.2 经济可行性 经济可行性,可分为两种,支出和收入,该系统属于研究型毕业设计,所以收入部分暂不考虑。支出可分为,设备、场地、开发环境、人力、时间等一切需考虑的因素,所有信息都是影响形成系统的一部分。设备:只需一台笔记本电脑,配套的输入设备;场地:暂定为图书馆与校内的自习室;开发环境:良好;人力:自身、指导老师、同学;时间:从选题到毕业为止,大约八个月。从以上描述可知,大部分条件已经满足,所以该系统不会存在经济方面的问题,所以是可行的。 3.2.3社会可行性 社会可行性,广义而讲可涉及到道德方面、法律方面、社会方面,每个方面都会影响系统的形成[12]。本系统的是独立且没有任何传播性质的信息,更涉及不到道德层面,法律层面;本系统也没有触发法律,没有赌博、黄色等类型信息,同时也是遵从国家法律,不会显示任何触发法律层面的信息;社会方面,该系统是为方便客户提供更好的服务,是轻量级的宿舍管理系统,会为人们带来快速并有效查询的功能,也是具有贡献意义的。总体而言,该系统也是具有社会可行性的。 3.3 系统用例分析 宿舍管理系统综合网络空间开发设计要求。目的是将传统管理方式转换为在网上管理,完成宿舍管理的方便快捷、安全性高、交易规范做了保障,目标明确。宿舍管理系统可以将功能划分为管理员功能和学生功能。 (1)管理员关键功能包括对系统首页、个人中心、学生管理、宿舍信息管理、宿舍分配管理、水电费管理、进入宿舍管理、出入宿舍管理、维修信息管理、卫生信息管理、考勤信息管理、留言板、交流论坛、系统管理等进行管理。  4.3.3数据库表结构设计 该系统采用的数据库是MySQL,根据该系统的数据存储特点进行数据库关系表的设计。下面是该系统中关键部分关系表的详情信息。 表4-1:交流论坛 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP title varchar 200 帖子标题 content longtext 4294967295 帖子内容 parentid bigint 父节点id userid bigint 用户id username varchar 200 用户名 avatarurl longtext 4294967295 头像 isdone varchar 200 状态

表4-2:用户表 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 username varchar 100 用户名 password varchar 100 密码 role varchar 100 角色 管理员 addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-3:维修信息 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP biaoti varchar 200 标题 sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 weixiuriqi date 维修日期 weixiuneirong longtext 4294967295 维修内容 sfsh varchar 200 是否审核 待审核 shhf longtext 4294967295 审核回复

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

表4-5:token表 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 userid bigint 用户id username varchar 100 用户名 tablename varchar 100 表名 role varchar 100 角色 token varchar 200 密码 addtime timestamp 新增时间 CURRENT_TIMESTAMP expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-6:卫生信息 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 weishengqingkuang varchar 200 卫生情况 dengjiriqi date 登记日期 xiangqing longtext 4294967295 详情 sfsh varchar 200 是否审核 待审核 shhf longtext 4294967295 审核回复

表4-7:出入宿舍 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 churushijian datetime 出入时间 xiangpian longtext 4294967295 相片

表4-8:关于我们 字段名称 类型 长度 字段说明 主键 默认值 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-9:宿舍分配 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 chuangweihao varchar 200 床位号 fenpeiriqi date 分配日期 beizhu longtext 4294967295 备注

表4-10:水电费 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 yuefen varchar 200 月份 shuifei float 水费 dianfei float 电费 zongjine float 总金额 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 dengjishijian date 登记时间 xiangqing longtext 4294967295 详情 ispay varchar 200 是否支付 未支付

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

表4-12:留言板 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP userid bigint 留言人id username varchar 200 用户名 avatarurl longtext 4294967295 头像 content longtext 4294967295 留言内容 cpicture longtext 4294967295 留言图片 reply longtext 4294967295 回复内容 rpicture longtext 4294967295 回复图片

表4-13:考勤信息 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 yuefen varchar 200 月份 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 wanguitianshu int 晚归天数 queqintianshu int 缺寝天数 qingjiatianshu int 请假天数 dengjishijian date 登记时间 beizhu longtext 4294967295 备注

表4-14:进入宿舍 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 xueshengxuehao varchar 200 学生学号 xueshengxingming varchar 200 学生姓名 jinrushijian datetime 进入时间 zhaopian longtext 4294967295 照片

表4-15:学生 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP xueshengxuehao varchar 200 学生学号 mima varchar 200 密码 xueshengxingming varchar 200 学生姓名 xingbie varchar 200 性别 touxiang longtext 4294967295 头像 xueshengdianhua varchar 200 学生电话 banji varchar 200 班级 zhuanye varchar 200 专业

表4-16:宿舍信息 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP sushemingcheng varchar 200 宿舍名称 susheleixing varchar 200 宿舍类型 susheloudong varchar 200 宿舍楼栋 fangjianhao varchar 200 房间号 kezhurenshu varchar 200 可住人数 yizhurenshu varchar 200 已住人数 youchuangwei varchar 200 有床位 gengxinshijian date 更新时间 xiangqing longtext 4294967295 详情

第五章 系统功能实现 5.1系统功能实现 当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到宿舍管理系统的导航条和系统简介等;  第六章 系统测试 6.1系统测试的目的 测试是为了发现问题,而不是证明程序没有问题。测试是可编写测试用例来描述测试的步骤、预想的界面或效果与实际的差距,来验证程序是否正确。测试的原则有几条,测试需要输入条件和输出结果,制定测试用例来规范测试的步骤,也会适当的推进测试的进度。正常的测试流程是从项目立项开始,就可按需求先写测试用例,与程序开发同步进行,等程序开发完成,测试用例也可同时完成,等程序开发交接到测试时,可直接展开测试工作。 6.2软件测试过程 软件测试是软件设计的最后一个阶段,它贯穿于整个设计过程,是一项巨大的任务。软件测试需要测试程序的所有部分。每个部分的测试是不同的,在测试之前需要分为以下几个阶段: 一、单元测试,即模块测试;这是检查软件程序代码的测试。用于软件的最小单位部分。单元测试分为手动测试和动态测试。为了保证程序算法的正确性,静态检测应标准化程序的逻辑、标准化和正确性。该步骤是检测尽可能多的错误。动态检测通过将实际结果与预期结果进行比较来检测错误。 二、集成测试:该测试基于单元测试,用于测试系统的各个功能模块。任何软件设计都会有一个集成阶段,因此在软件测试过程中,集成测试是必不可少的一部分。在集成测试过程中,由于测试是在模块之间进行的,因此在测试过程中可能不会发现问题,但在整个测试过程中会暴露出来。同时,在集成测试过程中,注意模块连接过程中是否有数据丢失。还应注意的是,尽管单个模块的误差可能很少且没有影响,但拼接可能对系统产生很大影响。 三、系统测试:系统测试遵循集成测试。系统测试将通过集成测试的部分作为整个系统的一部分。它与电子设备的所有软硬件一起,可以通过实际操作检测模拟的实际环境中是否存在错误。系统测试需要与计划中的理想情况进行比较,以找出与预期的差异。在分析设计器后确定如何修改。在软件的实际操作过程中,会出现许多意外错误,测试人员可能无法在第一时间解决问题。因此,系统测试应尽可能在实际运行情况下进行,以达到更好的测试目的。 四、验收测试:验收测试是在设计完成和发布之前对系统的最终测试。它需要了解用户和合作伙伴的需求。我们将与他们一起完成测试,并根据他们的需求进行有针对性的修改,成为能够更好地同时满足两者需求的软件。 6.3系统测试用例 性能测试是指通过自动化测试工具模拟系统在不同负载和压力情况下,观察平均响应时间、CPU占用率和内存占用率等性能评价指标的变化情况,以检验系统性能是否能达到预期目标,确保平台上线后稳定运行。 本文采用开源的测试工具JMeter模拟用户对平台API网关的并发请求行为,并发量从200开始逐渐递增,利用JMeter自带的监听器与插件记录平均响应时间、CPU占用率和内存占用率等性能评价指标,具体测试结果如表6-1所示: 表6-1 API网关性能测试结果

由测试结果可知,在系统并发量逐渐递增到1200的过程中,平均响应时间控制在1.5秒内,异常率保持为0%,响应失败率小于5%} CPU占用率小于80%,内存占用率小于95%,达到了预期的性能目标。当并发量达到1400时,有一部分请求出现异常,各项性能指标也超出以上标准,说明目前系统在1400并发请求时达到了性能瓶颈。

结 论 本系统将采用nodejs 技术和express框架来搭建本系统的框架。系统从选题开始,共经历了搜集选题背景信息和选题目的及意义的分析,通过对国内外的研究,需求分析的整理,数据库的模型和表的设计,具体代码的实现。 通过调研和分析,该系统主要包括个人中心、学生管理、宿舍信息管理、宿舍分配管理、水电费管理、进入宿舍管理、出入宿舍管理、维修信息管理、卫生信息管理、考勤信息管理、留言板、交流论坛、系统管理等功能。 该系统从设计和实现,再到系统的测试,每个环节都一一经历学习,每个环节都顺利完成。其实,在配置系统的开发工具时,就已遇到各种问题,但在导师和同学的帮助下,都已顺利的解决。本系统很多功能都不够完善,希望日后技术和经验都更丰富的情况下,能完善系统的不足之处。

致 谢 时光荏苒,岁月如梭。大学美好的四年学涯生活即将结束,但仔细想想,这四年之间发生了很多故事。曾经与同学、老师、亲朋好友在大学里所有美好的事物都将成为回忆,心中浮满好多不舍。如果让我总结大学四年生活,我会说我成长了,这四年时光非常值得!感谢所有相遇的老师、朋友们! 首先,我要感谢我的指导老师,谢谢您这段时间对我的论文修改,是您的耐心、细心辅助我顺利的完成了论文的编写,也感谢您的奉献精神,让我学习到了职业精神,希望我以后也能对我的工作同样的负责。 其次,我要感谢我的同学,四年里分享我的情感生活,让我们成为了志同道合的朋友,感谢在大学认识你们。 最后,我要感谢我的父母和亲戚,是你们这些年的耐心的陪伴,让我成为了现在能独立思想的个人,有思想、有理想的人。谢谢所有感谢曾经帮助过我的人,谢谢你们,谢谢!

精彩链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。