机房管理系统的设计与实现课程设计报告.doc

上传人:龙*** 文档编号:1010901 上传时间:2018-11-15 格式:DOC 页数:10 大小:257.50KB
下载 相关 举报
机房管理系统的设计与实现课程设计报告.doc_第1页
第1页 / 共10页
机房管理系统的设计与实现课程设计报告.doc_第2页
第2页 / 共10页
机房管理系统的设计与实现课程设计报告.doc_第3页
第3页 / 共10页
机房管理系统的设计与实现课程设计报告.doc_第4页
第4页 / 共10页
机房管理系统的设计与实现课程设计报告.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、 课 程 设 计课程名称: 软件工程课程设计 设计题目: 机房管理系统的设计与实现 班 级: 学 号: 姓 名: 指导教师: 完成时间: 2016 年 6 月 哈尔滨工程大学教务处 制课程设计报告机房管理系统的设计与实现班级: 学号: 姓名: 教师评语:教师签名:2016 年 6 月课程设计题目 机房管理系统的设计与实现目的和背景随着计算机技术的迅速发展,高等院校招生规模的扩大,需要上机的课程和学生人数逐年增多,由几年前只承担各专业的公共基础课和计算机专业的专业课,到目前需要承担相当数量专业的专业课或专业基础课,课程门数和学生数量都在呈直线上升的态势。鉴于以上因素和上机人员随机性大、开机时间长

2、、管理机房重复性工作量大等特点,开发方便用户与管理员使用的机房管理系统,提高管理效率,降低劳动强度,更好地让机房服务教学,具有重要的现实意义。主要内容本系统分为四个模块,分别为用户注册模块、用户登录模块、用户信息显示模块和用户及机器使用情况模块,它们的功能如下:1) 用户注册模块:为所有潜在用户提供注册的功能;2) 用户登录模块:已注册用户可以通过登录使系统为其分配机器,并开始计时、计费;管理员可直接通过登陆进入管理页面;3) 用户信息显示:为用户实时显示自身相关信息;4) 用户及机器使用情况管理:为管理员提供所有用户和机器信息及使用情况的显示,并提供添加、删除、查找、修改信息等操作。采用的工

3、具方法系统开发语言:Python数据库管理:SQLAlchemy运行平台:windows 10运行环境:Python 3.5.0、flask 0.10.1进度安排6 月 20 日-6 月 22 日 需求分析6 月 22 日-6 月 24 日 机房管理系统概要设计、详细设计6 月 24 日-6 月 27 日 机房管理系统实现6 月 27 日-6 月 29 日 机房管理系统测试6 月 29 日-6 月 30 日 撰写课程设计报告参考资料1 (美 ) 格林布戈 (Grinberg,M.)著,安道译.Flask Web 开发: 基于 Python 的 Web 应用开发实战.2015:65-74.2 (

4、美 ) Jon Duckett 著,刘涛/陈学敏译.HTML & CSS 设计与构建网站.2013:417-441.3 Flask 官方文档:http:/flask.pocoo.org/4 Python 3.5 官方文档:https:/docs.python.org/3/11 引论1.1 研究背景随着计算机技术的迅速发展,高等院校招生规模的扩大,需要上机的课程和学生人数逐年增多,由几年前只承担各专业的公共基础课和计算机专业的专业课,到目前需要承担相当数量专业的专业课或专业基础课,课程门数和学生数量都在呈直线上升的态势。鉴于以上因素和上机人员随机性大、开机时间长、管理机房重复性工作量大、收费标准

5、多样化等特点。开发方便用户与管理员使用的机房管理系统,提高管理效率,降低劳动强度,更好地让机房服务教学,具有重要的现实意义。机房的日常管理中,因上机人员的多样性,所以为所有潜在用户提供注册功能,成功注册之后,可进行登录上机,并对用户实时显示自己的上机时间、费用等使用信息;而管理员进行登录后,则对其提供所有用户、机器的上机时间、费用等使用信息与状态,并进行分类显示,提供对机器增加、删除、查找,允许对机器信息进行修改,增加备忘信息等操作。这些功能适用于任何常规机房,为用户提供登录注册的功能解决了上机人员多样、随机的问题;其次,相对传统的人工管理,用户的上机、下机无需管理员频繁的进行登记,并且上机后

6、自动计时、计费,方便对用户的上机收费管理;最后,管理员无需在机房开放时对每个用户的和机器状况进行频繁的登记、修改信息,而由系统自动更新数据库,解决了管理重复工作量大和管理混乱的问题。1.2 研究目标及开发环境本设计主要针对机房使用管理,即实现基本机房管理系统功能。为用户提供注册、登录、实时信息显示,方便用户对机房的使用;为管理员提供机房信息及使用情况的管理,进行“增删改查”等操作,方便管理员的日常管理。系统开发语言:Python数据库管理:SQLAlchemy运行平台:windows 10运行环境:Python 3.5.0、flask 0.10.12 需求分析2.1 系统概述采用 B/S 结构

7、( Browser/Server,浏览器/服务器模式) ,在服务器处理不同请求时,对用户信息和机器状况进行数据库的插入、删除、修改、查找等操作,完成数据库信息的更新,并根据不同请求将合适的响应发送到客户端,对用户和管理员进行信息的展示,提供进行操作的接口。系统应该提供用户的登录和注册功能,并对用户可以进行相关信息的显示,在用户登录后分配机器并开始计时、计费,方便对用户的上机收费管理;对管理员提供每台机器的信息和使用情况的显示,包括上机次数、上机时间、上机费用等,并提供增加、删除、查找、修改等操作,可以记录或修改每台机器的备忘信息。提供注册功能可以使机房为不同用户提供统一的管理,同时为机房提供必

8、要的用户信息;用户登录后进行自动分配机器,并开始自动计时、计费,方便对用户的上机收费管理;对用户提供的相关信息显示,可以使用户及时的了解自身信息;对管理员提供的操作可以方便的让管理员了解、查询、更新机房信息。2.2 系统功能分析本系统主要功能是为用户提供统一的机房使用方式,并对管理员提供机器信息和使用情况的显示和管理,通过报表模式展示。由此可知系统主要功能分为用户注册模块、用户登录模块、用户信2息显示模块和机器使用情况管理模块,具体功能分析如下表 1 所示。表 1 系统功能分析表序号 模块名称 功能描述1 注册模块为潜在用户提供注册功能,注册后可登陆并使用机器2 登陆模块已注册用户可以通过登录

9、使系统为其分配机器,并开始计时、计费;管理员可直接通过登陆进入管理页面3 用户信息显示模块 为用户实时显示自身信息4 机器使用情况管理模块为管理员提供所有用户和机器信息及使用情况的显示,并提供添加、删除、查找、修改信息等操作3 系统设计3.1 系统实现模式本系统由 4 个模块,分别为用户注册模块、用户登录模块、用户信息显示模块和机器使用情况管理模块,每个模块对数据库进行不同操作。用户注册之后数据库中保存用户信息,用户才可进行登录;登录成功后进行电脑的分配、计时、计费,更新数据库信息,之后根据是否为管理员进行跳转;机器使用情况管理模块可对数据进行更改、显示;用户信息模块只可显示登录用户的信息显示

10、。系统结构图如下所示:插入新用户 进行登陆信息验证数据 成功则分配电脑,进行计时,更新数据更新数据读取信息读取信息机器使用图 1 系统结构图3.2 系统功能流程图系统对新用户提供注册服务,成功注册之后,用户可以进行登录,如果登陆成功,则此时系统用户注册模块数据存储 用户登录模块机器使用情况管理模块用户信息显示模块3为用户分配机器,更新数据库,并开始自动计时,为用户发送显示相关信息的响应;如果登录者为管理员,则发送机房管理信息的相关响应,并提供操作相关信息的功能。下图为系统业务流程图:ny ny图 2 系统业务流程图3.3 系统数据库设计数据库记录用户的用户名、邮件地址、密码、是否为管理员,这些

11、数据由 users 表管理;记录机器的编号、备忘信息、上机开始时间、花费时间、上机费用(每次用户登录时更新) ,这些数据由 computers 表管理。computers 表有一指向 users 表的外键,关系使用它连接两表的具体用户和机器,用户登录时与空闲机器建立连接,用户退出时断开连接。computers 表的具体设计如表 2 所示,users 表的具体设计如表 3 所示:表 2 电脑信息表字段名 字段类型 备注id Integer 机器 idname String 机器编号memo Text 备忘信息start_time DateTime 上机开始时间spend_time Interva

12、l 上机时间spend_money Float 上机费用user_id Integer 外键,引用用户 id登录密码正确吗是管理员吗注册分配电脑,信息展示,自动计时机房常规管理信息的显示,操作 退出登录开始结束4表 3 用户信息表字段名 字段类型 备注id Integer 用户 idusername String 用户名email String 用户邮件password_hash String 密码散列值is_admin Boolean 是否为管理员computers 对使用机器的反向关系4.系统实现根据上述系统实现模式,功能流程,数据库设计,可实现下述模块。4.1 注册模块注册主要负责新用户

13、信息的增加,页面表单中填写用户数据后,使用 post 方法发送到服务程序,程序获取用户数据,在数据库中的 users 表中插入数据。实现步骤:1. 在首页选择注册后显示注册表单;2. 用户填写表单后发送数据;3. 程序根据数据进行数据库中新用户的增加。 注册界面如图 3 所示:图 3 注册界面展示4.2 登录及用户信息显示模块登录模块负责用户的认证,为认证用户分配电脑,并开始计时,计费,更新数据库。实现步骤1. 显示登录页面,用户填写数据好发送数据;52. 根据数据验证用户,如成功则将该用户与数据中空闲电脑建立连接,开始计时、计费;3. 根据数据库中相关信息显示用户页面登录界面如图 4 所示:

14、图 4 登录界面展示用户信息界面如图 5 所示:图 5 用户界面展示4.4 机器使用情况管理模块为管理员提供所有用户和机器信息及使用情况的显示,并提供添加、删除、查找、修改信息等操作,管理操作通过向服务器发送请求,服务程序执行数据库操作完成。实现步骤:1. 管理员执行操作,向服务器发送操作请求;62. 服务程序根据操作执行数据库操作,向客户端发送响应;3. 客户端通过响应,显示操作结果。管理界面如图 6 所示:图 6 管理界面展示5 总结本系统采用 B/S 结构(Browser/Server ,浏览器/服务器模式) ,根据机房实际需求,设计用户界面,提供所展示的内容与进行操作的接口;根据所管理

15、内容,分别创建用户、机器数据表;根据浏览器的不同请求,在服务器进行相关数据库的操作,完成数据库的更新,并将合适的响应发送到客户端,进行操作结果显示。在进行课程设计过程中,我逐渐熟悉了开发 Web 程序的流程,学习如何使用 HTML、CSS和 JavaScript 进行网页开发,并对 B/S 结构的工作方式有了更深的了解;同时,我在实践中对软件工程概念有了更深的认识,完成一个完整的机房系统对我的学习有很大的帮助。6 参考文献1 (美) 格林布戈 (Grinberg,M.)著,安道译.Flask Web 开发: 基于 Python 的 Web 应用开发实战.2015:65-74.2 (美) Jon Duckett 著,刘涛/陈学敏译.HTML & CSS 设计与构建网站.2013:417-441.3 Flask 官方文档:http:/flask.pocoo.org/4 Python 3.5 官方文档:https:/docs.python.org/3/

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。