宿舍管理系统设计Word下载.docx
《宿舍管理系统设计Word下载.docx》由会员分享,可在线阅读,更多相关《宿舍管理系统设计Word下载.docx(36页珍藏版)》请在冰豆网上搜索。
为了提高学校宿舍管理部门的工作效率,充分利用资源,减少不必要的人力、物力和财力的支出;
方便宿舍管理部门的工作人员全面地掌握学生住宿情况;
提高学生对宿舍管理的互动性等目的,为学校开发设计专用的系统--学生宿舍管理系统来管理学生的宿舍信息,使学生宿舍信息实现管理的标准化和制度的规范化是十分必要的。
此系统将针对巢湖学院宿舍管理的具体情况进行设计与实现。
本系统针对目前宿舍管理人员在工作时存在的各种问题,提供一个较为方便的解决方案,使管理人员在日常管理工作过程中,提高工作效率,并使得学校宿舍资源得以有效配置,从而提高我们学校高效的日常管理水平,也让学校更好的为学生提供便利的服务。
第2章开发工具及相关技术介绍
2.1C++语言的特点
本系统采用了程序设计语言C++,它是一种优秀的面向对象程序设计语言,是在C语言的基础上发展而来的,但它比C语言更易被人们学习和掌握。
C++以其独特的语言机制在计算机科学的各个领域中得到了广泛的应用[2]。
面向对象的设计思想是在原来结构化程序设计方法基础上的一个质的飞跃,C++完美地体现了面向对象的各种特性。
C++的设计原则是:
C++可设计成静态类型机制,有着与C语言同样高效且可移植的多用途程序设计语言,C++可设计成有着直接和广泛的支持多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计),C++尽可能的设计成与C语言兼容,从而提供一个从C语言到C++的平滑过渡[4]。
2.2MicrosoftOfficeAccess2003的特点
MicrosoftOfficeAccess是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统,MSACCESS用它自己的格式将数据存储在基于AccessJet的数据库引擎里,它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库),Access有强大的数据处理、统计分析能力,利用Access的查询功能,可以方便地进行各类汇总、平均等统计[1],并可灵活设置统计的条件。
Access用来开发软件,比如生产管理、销售管理、库存管理等各类企业管理软件,其最大的优点是:
易学[6]。
2.3MFC技术介绍
MFC(MicrosoftFoundationClasses),是一个微软公司提供的类库(classlibraries),是以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量[9]。
其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。
MFC的主要优点是可以用面向对象的方法来调用WindowsAPI,且便于应用程序的开发。
MFC将很多应用程序开发中常用的功能自动化,并且提供了文档框架视图结构和像活动文档这样的便于自定义的应用程序框架[5]。
同时,在VisualC++内部也内建了很多对MFC的例如类向导这样的支持以减少软件开发的时间,使用类向导可以生成从helloworld这样的简单程序到活动文档服务器这样的复杂程序。
MFC的消息映射机制也避免了使用性能较低的庞大虚函数表[7]。
第3章系统需求分析
软件需求分析包括对需求进行推敲和润色以保证所有的涉众人都能够理解需求,以及自习检查并找出其中的错误、漏洞以及其他缺陷。
分析包括将高层的需求分解成具体细节、创建开发原型,以及评估可行性和协商需求优先级。
其目的是开发高质量、内容详细的需求,让管理者能够对项目做出实绩的评估,使技术人员能够继续进行设计、开发和测试[8]。
3.1系统可行性分析
系统的可行性分析是建立在用户的要求和系统调研的基础上进行的,可行性分析的主要工作包括:
(1)组织管理可行性
本宿舍管理系统是由学校的宿舍管理部门提出的,在计算机与信息工程学院老师的带领下,开发人员及学院学生利用自己的时间而设计实现的。
在开发过程中,学院学生大都拥有自己的电脑,而且学院也能够提供计算机用于开发系统项目。
因此,从组织形式及管理层面上来说,设计实现巢湖学院宿舍管理系统是可行的。
(2)技术可行性分析
本系统开发主要包括前端应用程序的开发和后台数据库的建立与维护。
为了达到具体管理体制的要求,满足管理人员的需求,系统在多方面提供方便的查询,解决了大量的手工计算,在添加楼栋以及学生信息时都可以智能的提供参考信息,界面具有很高的友好性和交互性,操作简单方便,即使没有相关计算机专业知识的宿舍管理人员也可以迅速的掌握使用方法。
随着数据库管理系统的普及以及可视化编程软件的出现,数据库管理信息系统的开发变得更为简单。
对于上一节提到的各种技术,包括MFC技术,C++语言,ADO数据库技术,如今也都发展到了成熟的阶段,对于开发人员来说,这些常见的技术资料也比较容易收集,因此开发宿舍管理系统是完全可行的。
(3)经济可行性分析
经济可行性分析主要是开发新系统所投入的资金与系统投入使用后所带来的经济效益进行比较。
本系统主要的经济投入是在软件的维护上,而使用的硬件环境要求很低,因此在硬件环境上所需投入很低。
但在软件方面,C++运行环境以及MicrosoftOfficeAccess2003数据库,在市面上的成本也是相当低廉,操作系统为Windows98/Windows2000/WindowsXP/Windows7等,均可正常运行。
3.2系统任务描述
巢湖学院管理系统要处理的是每栋楼内的学生信息,是利用信息化进行集中管理而开发的系统。
旨在使宿舍管理人员更加方便,全面,快捷的管理宿舍。
根据系统功能的要求,可以将其分为两个业务模块,分别是超级管理员和宿舍管理员。
再根据不同的业务模块将系统分解成为几个功能模块来分别设计。
根据系统功能分析,有超级管理员流程页面和宿舍管理人员流程页面,共同实现系统的功能。
首先分析超级管理员流程页面,由欢迎页面到登录页面后,如果登录成功,则进入相应的对话框,菜单项依次为宿舍管理人员信息管理,楼栋信息管理,院系以及专业信息管理,关于作者,退出系统;
对于宿舍管理人员流程界面,由欢迎页面到登陆界面后,如果登陆成功,菜单项会有8个菜单项,依次为学生信息管理,宿舍信息管理,外来人员信息管理,奖罚信息管理,申请报修信息管理,高级查询,关于作者,退出系统。
3.3系统功能分析
3.3.1系统的功能需求
在系统可行性分析和任务描述的基础上,更加了解本系统需要的功能,此后设计了本宿舍管理系统,本系统主要考虑到宿舍管理人员管理的普遍要求,本系统的功能主要包括:
(1)宿舍管理人员信息管理
本模块是在超级管理员登陆超级管理员界面后可以选择进入本模块下提供了对宿舍管理人员的管理功能,包括添加新的宿舍管理人员,删除不在职的宿舍管理人员,修改宿舍管理员的密码,以及查询所有的宿舍管理人员信息。
(2)宿舍楼信息管理模块
本模块是在超级管理员登陆超级管理员界面后可以选择进入本模块下提供了对楼栋信息的管理功能,包括添加新投入使用的楼栋信息(确定该楼栋居住学生的性别以及宿舍的类型,以及楼栋的名称等),删除不再使用的楼栋,修改楼栋信息(在宿舍楼栋整合时可以使用),查询楼栋的信息(楼栋名,管理人员名,空余房数等)
(3)院系以及专业信息管理
本模块是在超级管理员登陆超级管理员界面后可以选择进入本模块下提供了对院系以及专业信息管理,又分为两个子模块,分别是院系名称的添加,修改和删除;
专业名称的添加,修改和删除。
本模块主要为了满足在宿舍管理人员录入学生信息时可以方便的选择而不是输入,也方便学校在整合院系和专业时及时更改学生的相关信息,而不用一个个修改学生信息,提高宿舍管理的效率。
(4)关于作者
本模块是在超级管理员登陆超级管理员界面后可以选择进入本模块查看本系统的作者以及版本信息,方便软件需要维护和更新时联系作者。
(5)退出系统
本模块是在超级管理员登陆超级管理员界面后可以选择进入本模块后可以点击此退出当前对话框。
(6)学生信息管理
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后对学生的信息进行管理,包括学生的入住(录入学基本信息和为学生分配宿舍),学生的搬迁(在学生换宿舍时比较方便),学生离校,学生基本信息的修改,以及查询学生信息。
(7)宿舍信息管理
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后对宿舍进行管理,包括添加宿舍长信息,修改宿舍长信息,查询宿舍长信息,查询某个宿舍的学生信息。
(8)外来人员信息管理
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后对日常外来人员进出楼栋进行管理,包括添加外来人员信息(时间由提交时定,宿舍管理人员无权修改),删除外来人员信息(可以方便一段时间集中处理无用的信息),查询外来人员信息。
(9)奖罚信息管理
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后对楼栋中的良好行为和不良行为进行奖罚的信息管理,便于营造一个崇良弃恶的生活氛围,主要包括录入奖罚信息(奖罚的对象可以选择学生或者宿舍),删除奖罚信息,查询奖罚信息。
(10)申请报修信息管理
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后对学生要求报修的事物信息进行管理,主要包括学生报修事物信息的录入,维修人员填写维修结果,删除已经维修好的报修信息,查询报修信息。
(11)高级查询
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后选择多种方式查询学生信息和宿舍信息,主要包括按楼层查询学生信息,按系别查询学生信息,以及查询未满宿舍的信息。
(12)关于作者
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块查看本系统的作者以及版本信息,方便软件需要维护和更新时联系作者。
(13)退出系统
本模块是在宿舍管理员登陆宿舍管理员界面后可以选择进入本模块后可以点击此退出当前对话框。
3.3.2系统数据流图
在对功能需求深入的理解上,分析本系统,概括本系统的数据流、加工处理、数据存储、源点和终点,进而描绘形成系统流程图[8]。
入学:
学生持录入通知书到学校报到,将处理形成入学清单。
维修:
宿舍管理人员根据学生提出的维修申请并处理形成生成维修单。
外来人员进出:
宿舍管理人员通过外来人员进出添加删除外来人员的信息。
奖罚处理:
奖罚事件处理后形成奖罚信息由宿舍管理人员录入数据库,管理员增修改:
由超级管理员根据在职管理员信息及申请对宿舍管理员做出增删改操作。
具体如图1:
在职信息与申请
在职信息与申请信息
通知书
入学单处理信息
报修信息
申请信息
处理结果
奖罚信息清单
反馈结果
报修清单
来访者清单
奖罚信息
维修清单来访者信息奖罚事件
图1系统数据流图
3.3.3系统数据分析
在详细分析巢湖学院宿舍管理系统数据流程的基础上,总结概况出该系统所是使用的实体以及实体间的关系得到E—R图:
(1)实体包括:
学生,超级管理员,宿舍管理员,外来人员,楼栋信息,宿舍信息,奖罚信息,报修信息,院系,专业
图2学生实体图
图3超级管理员实体图
图4宿舍管理员实体图
图5外来人员实体图
图6宿舍楼实体图
图7院系实体图
图9奖罚实体图
图11报修事物实体图
(2)由上面的实体分析得到本系统的总体E-R图,如图所示:
图12巢湖学院宿舍管理系统总体E-R图
第4章系统设计
4.1系统总体结构设计
本系统会涉及到大量的学生信息,考虑到维护学生信息的安全,本系统在登陆时要求输入用户名和密码,如果是超级管理员不用选择管理的楼栋,而宿舍管理人员必须选择其工作的楼栋名,每个宿舍管理人员只能管理一栋楼。
本系统的数据库采用MicrosoftOfficeAccess2003,开发工具采用VC6.0,C++可以较好的实现与该数据库的建立与维护,且编程效率高,开发周期短,易于维护和扩充。
其中分为超级管理员模块和宿舍管理人员模块。
超级管理员模块如下:
(1)通过“宿舍管理员信息管理”/“添加宿舍管理员”模块,添加宿舍管理员。
(2)通过“宿舍管理员信息管理”/“删除宿舍管理员”模块,删除宿舍管理员。
(3)通过“宿舍管理员信息管理”/“修改宿舍管理员”模块,修改宿舍管理人员登录密码或者管理的楼栋。
(4)通过“宿舍管理员信息管理”/“查询宿舍管理员”模块,查询宿舍管理人员的信息。
(5)通过“宿舍楼信息管理”/“添加宿舍楼信息”模块,添加新投入使用的宿舍楼的信息。
(6)通过“宿舍楼信息管理”/“删除宿舍楼信息”模块,删除不再使用的宿舍楼的信息。
(7)通过“宿舍楼信息管理”/“修改宿舍楼信息”模块,修改宿舍楼居住学的性别或者改变宿舍的类型。
(8)通过“宿舍楼信息管理”/“查询宿舍楼信息”模块,查询宿舍楼的信息。
(9)通过“院系及专业管理”/“院系增删”/“添加院系名称”模块,添加学校新设的院系名称。
(10)通过“院系及专业管理”/“院系增删”/“删除院系名称”模块,删除学校不再招生的院系名称。
(11)通过“院系及专业管理”/“院系增删”/“修改院系名称”模块,修改学校改变的院系名称。
(12)通过“院系及专业管理”/“专业增删”/“添加专业名称”模块,添加学校新增的专业名称。
(13)通过“院系及专业管理”/“专业增删”/“添加专业名称”模块,删除学校不再招生的专业名称。
(14)通过“院系及专业管理”/“专业增删”/“修改专业名称”模块,修改学校修改的专业名称。
(15)通过“关于作者”模块,查看本系统作者以及软件版本信息。
(16)通过“退出系统”模块,退出当前对话框。
宿舍管理人员模块如下:
(1)通过“学生信息管理”/“学生入住”模块,添加学生信息。
(2)通过“学生信息管理”/“学生搬迁”模块,修改学生搬迁后的信息。
(3)通过“学生信息管理”/“学生离校”模块,删除离校学生的信息。
(4)通过“学生信息管理”/“学生基本信息修改”模块,修改学的基本信息。
(5)通过“学生信息管理”/“学生信息查询”模块,查询学生信息。
(6)通过“宿舍信息管理”/“添加宿舍长”模块,为宿舍添加宿舍长信息。
(7)通过“宿舍信息管理”/“修改宿舍长”模块,修改宿舍长信息。
(8)通过“宿舍信息管理”/“查询宿舍长信息”模块,查询宿舍长信息。
(9)通过“宿舍信息管理”/“查询宿舍学生信息”模块,查询宿舍学生信息。
(10)通过“外来人员管理”/“添加外来人员”模块,添加进出外来人员信息。
(11)通过“外来人员管理”/“删除外来人员”模块,删除进出外来人员信息。
(12)通过“外来人员管理”/“查询外来人员”模块,查询进出外来人员信息。
(13)通过“奖罚信息管理”/“录入奖罚信息”模块,添加奖罚信息。
(14)通过“奖罚信息管理”/“删除奖罚信息”模块,删除奖罚信息。
(15)通过“奖罚信息管理”/“查询奖罚信息”模块,查询奖罚信息。
(16)通过“申请报修信息管理”/“学生报修损坏物”模块,添加学生申报损坏物的信息。
(17)通过“申请报修信息管理”/“维修人员填写维修信息”模块,修改维修结果信息。
(18)通过“申请报修信息管理”/“删除报修信息”模块,删除申报损坏物的信息。
(19)通过“申请报修信息管理”/“查询报修损坏物”模块,查询学生申报损坏物的信息。
(20)通过“高级查询”/“按楼层查学生”模块,按楼层来查询学生信息。
(21)通过“高级查询”/“按系别查学生”模块,按系别来查询学生信息。
(22)通过“高级查询”/“查询未满宿舍”模块,查询未满信息。
(23)通过“关于作者”模块,查看本系统作者以及软件版本信息。
(24)通过“退出系统”模块,退出当前对话框。
在上面系统总体结构设计的基础上,分析得出本系统的的主要功能模块框架图如下:
图13巢湖学院宿舍管理系统功能框架图
4.2系统数据库设计
数据库开发在软件开发过程中至关重要,因为目前几乎没有系统不使用数据库单独存在,而数据库设计就是要在用户给定的应用环境中,通过一系列的逻辑设计和物理设计,构造出恰当的数据库模式、子模式,建立数据库和设计应用程序结合开发,进而满足用户对信息的存储修改删除和查询等各种操作[3]。
下面将列出本系统主要使用的数据库表:
表1本系统所用到的主要信息表及说明。
表名
说明
dormManager
宿舍管理员信息表
student
学生信息表
building
宿舍楼信息表
dormitory
宿舍信息表
dorm_student
宿舍学生信息表
foreigner
外来人员信息表
damagedStuffReport
损坏物报修表
dormPunishmentAndReward
奖罚(宿舍)信息表
表2:
管理员信息表,主要用来管理与管理员相关的数据。
主键:
用户名(buildingNum,buildingSex,name)。
表2宿舍管理员信息表
名称
数据类型
说明作用
是否为空
大小
name
varchar
用户名
否
50
password
密码
20
buildingNum
楼号
buildingSex
居住学生性别
表3:
学生信息表,主要用来管理与学生相关的数据。
学号(studentId)。
表3学生信息管理表
studentId
学号
deptName
院系名称
majorName
专业名称
studentName
学生姓名
studentSex
性别
telephone
手机号码
是
15
relativePhone
亲属电话
address
家庭地址
表4:
宿舍楼信息表,主要用来管理与楼栋相关的数据。
主键:
(buildingNum,builingSex)。
表4宿舍楼信息表
作用
住学生性别
floors
楼层
dorms
每层楼房间数
dormType
房间类型
usedDorm
已用房间数
表5:
宿舍信息表,主要用来处理与宿舍相关的数据。
主键:
(buildingNum,buildingSex,dormNum)。
表5宿舍信息表
dormNum
宿舍号
宿舍类型
dormLeaderId
宿舍长学号
usedBed
已用床铺
表6:
宿舍学生表,主要宿舍和学生相关的数据。
主键(全部字段)。
表6宿舍学生管理表