资源描述
学生宿舍管理系统的设计与实现二级学院专 业班 级学生姓名学 号指导教师2013年3月诚 信 声 明我声明,所呈交的毕业论文(设计)是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文(设计)中不包含其他人已经发表或撰写过的研究成果,也不包含为获得其他教育机构的学位或证书而使用过的材料。我承诺,论文(设计)中的所有内容均真实、可信。毕业论文(设计)作者(签名): 年 月 日学生宿舍管理系统的设计与实现【摘要】学生宿舍管理系统实现计算机来管理宿舍和学生的信息,把宿舍管理部门的工作人员从日常繁杂的事务中解脱出来。通过使用学生宿舍管理系统可以提高高校宿舍管理部门的工作效率;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的。因此,根据实际情况,本系统是在Visual Studio 2010的开发平台下,采用ASP.NET、ADO.NET、三层架构技术,并结合SQL Server 2005,开发一个基于Web的学生宿舍管理系统。本系统的用户主要分为学生、维修人员、管理员三种角色。学生的主要功能是:搜索宿舍相关信息、浏览下载通知公告、上报维修信息、留校登记、完善个人信息、留言等。维修人员的主要功能是:查看报修情况、报修审核、处理报修信息。管理员主要功能是:宿舍管理、登记管理、公告栏管理、班级管理、信息查询、留言管理、资料管理、系统管理。【关键词】学生宿舍管理;ASP.NET; ADO.NET;三层架构;SQL Server 2005Development And implementation Of Dormitory Management SystemAbstract The student dormitory management system will realize computer management of dormitory and student informations, and help the student dormitory management staff to release from the cockamamie daily affair.Through the use of the students dormitory management system can improve the managerial efficiency and convenient dormitory management staff to grasp of student accommodation fully, etc. According to the actual situation, therefore, this system is developed in Visual Studio 2010 platform, ASP.NET, ADO.NET, Three layer architecture technology, and combined with SQL Server 2005, develop a students dormitory management system based on Web.The user of this system is mainly divided into three roles : maintenance personnel, administrator and student. Students main function is: search dormitory information, browse the download report and announcements, maintenance information, stay in registration, perfecting the personal information, and leave a message. Maintenance personnels main function is: check the repair situation review, handle the repair information and repair service. Administrator main function is: dormitory management, register management, bulletin management, class management, information query, message management, information management, systems management.Keywords Students Dormitory Management System ASP.NET ADO.NET Three Layer Architecture Technology SQL Server 2005目 录1前言11.1系统开发的背景11.2系统的现状11.3课题研究的目的和意义21.3.1课题研究的目的21.3.2课题研究的意义22主要开发技术简介32.1ASP.NET 4.0和Microsoft Visual Studio 201032.2C#开发语言32.3SQL Server 200542.4三层架构42.5B/S体系结构42.6数据库访问技术ADO.NET52.6.1ADO.NET概述52.6.2数据库连接62.6.3执行数据操作62.6.4数据绑定63系统分析73.1系统概述73.2需求分析73.2.1功能需求73.2.2性能需求83.3可行性分析93.3.1技术可行性93.3.2经济可行性93.3.3管理可行性93.4系统流程图10 3.5系统用例图和用例图分析103.5.1客户端用例图103.5.2管理端用例图154系统总体设计204.1总体设计概述204.2功能模块设计214.2.1系统层次模块图214.3数据库设计224.3.1数据库管理系统的选择224.3.2数据库的概念结构设计234.3.3数据库的逻辑结构设计244.3.4数据库的物理结构设计295详细设计305.1系统架构305.2项目结构305.3系统架构web.config配置文件315.4SQLHelper类的介绍315.5系统主要功能的实现345.5.1用户登录345.5.2新生角色功能模块实现385.5.3学生角色功能模块实现395.5.4维修人员角色功能模块实现445.5.5管理员角色功能模块实现466系统测试577结论58参考文献59致 谢601 前言1.1 系统开发的背景随着计算机技术的发展,信息管理系统已经应用于各个行业,学生宿舍管理是一项繁琐复杂的工作,若以人工管理,必然存在许多缺点,如:工作量大、耗费许多人力和时间、计算量大、容易出错、效率低等。高校学生宿舍是大学生学习、生活和交往的基本场所,对大学生的身心发展有直接的影响。随着高校后勤的社会化,高校学生宿舍管理也应有所变化1。随着计算机技术的快速发展以及网络的推广,基于计算机和网络的高校管理软件得到广泛的应用。对于学校而言,学生宿舍管理是必不可少的组成部分。目前大多数学校停留在宿舍管理部门的工作人员手工记录数据的阶段,手工记录对于规模小的学校来说勉强可以接受;但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的,而且当查找某条记录时,由于数据量庞大,只能依靠人工去一条一条地查找,这样不但麻烦而且浪费许多时间,工作效率比较低。采用计算机来管理宿舍和学生的信息,大大提高了查询的速度,节约了人力和物力资源,达到了预期的要求。因此,开发一个基于Web的学生宿舍管理系统是十分必要的。1.2 系统的现状目前,计算机管理信息系统逐渐普及,许多高校教学管理系统得到广泛应用,学生宿舍管理系统是管理系统的一种,是高校学生宿舍结合网络技术的应用例子。然而,针对高校学生宿舍管理而设计的管理系统十分少见,大多数高校的学生宿舍管理处于人工管理阶段,从管理角度来讲,有一定的缺陷和漏洞,对学生的具体情况,分布等等,不能及时查询,然而,由于手工操作,使得宿舍管理部门的工作人员的劳动量大,存在管理不及时、有一定误差的情况。随着高校信息化发展,人工管理方式必将被淘汰,宿舍工作需要一种新的管理方式。针对学校的实际情况,设计一套针对学生宿舍的管理信息系统是十分必要的。学生宿舍管理系统提高高校宿舍管理部门的工作效率;充分利用资源;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的;为宿舍管理部门,开发设计专用系统-学生宿舍管理系统,来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分必要的。1.3 课题研究的目的和意义1.3.1 课题研究的目的学生宿舍管理信息量大,工作量大,采用人工管理方式容易出错,效率低,管理困难,已经不再满足办公自动化和信息化管理的需求。因此,结合学校实际需求,设计并实现学生宿舍管理系统,一方面是为了摆脱现阶段的人工管理方式,实现计算机处理和信息化管理,提高宿舍管理的效率,确保数据正确性,方便数据管理和维护;另一方面是为了满足现代化高校学生宿舍管理的需要,不但能够实现方便快捷的数据管理和维护,而且能够对今后改革和管理进行指导。运用信息技术对教学、学生工作进行管理,是提高工作效率的一种途径。1.3.2 课题研究的意义为了实现提高高校宿舍管理部门的工作效率;充分利用资源;减少不必要的人力,物力和财力的支出;方便宿舍管理部门的工作人员全面地掌握学生住宿情况等目的;为宿舍管理部门,开发设计专用系统-学生宿舍管理系统,来进行管理学生宿舍信息,使学生宿舍信息实现标准化的管理和规范化的制度是十分必要的。专用系统是一个信息管理系统,它将实现检索迅速和查找方便;信息的录入,修改和删除功能;以及对新入校学生进行宿舍安排等功能,学生登录系统可以进行查看宿舍相关信息和查看管理员发布的通知公告的信息。它简化了手工处理的繁琐,提高了效率,确保数据正确性,方便数据管理和维护,使管理工作更加公平化、合理化和科学化。当今社会是知识经济时代,网络化和信息化是基本的存在形式,基于B/S模式的学生宿舍管理系统适应了知识经济时代的要求,充分发挥了人的智力,有效地利用了校园网等资源,促进了科技、经济和人的和谐统一。2 主要开发技术简介目前有许多软件开发人员都开发了该系统,他们所选择的技术都各有不同。数据库技术方面:可以采用SQL、ACCESS、DB2、ORACLE、MySQL等;应用模式方面:可以采用B/S模式、C/S模式、B/S+C/S混合模式;开发工具方面:可以采用ASP、ASP.NET、PHP、JSP、VB等。这些技术都有这各自的优点和缺点,通过不同的技术的选择搭配,所开发出来的系统的效果也不同。但是根据系统的经济可行性和操作可行性,本系统采用B/S模式,主要利用ASP.NET技术、三层框架技术,并结合C#、JavaScript等基础知识完成。2.1 ASP.NET 4.0和Microsoft Visual Studio 2010本系统的设计采用了ASP.NET技术,使用Microsoft Visual Studio 2010集成开发工具,ASP.NET也对应是4.0版本。ASP.NET是由Microsoft公司提出的动态网站设计技术与程序框架,它带给人们的是全新的技术,和由此产生的开发效率的提高,网站性能的提升。使用ASP.NET提供的内置服务器控件或第三方生成的控件,可以创建既复杂又灵活的用户界面,大幅度减少了生成动态网页所需的代码,同时,ASP.NET能够在服务器上动态编译和执行这些控件代码2。ASP.NET的核心是.NET框架,它提供了大量的类库、组件和API等,开发人员可以直接使用。2.2 C#开发语言Visual Studio.NET 2010集成了Visual Basic、Visual C#、Visual C+等多种开发语言,本系统开发使用的是C#程序设计语言。C#是一种简单、现代、类型安全和面向对象的程序设计语言,它的优越性得益于.NET平台提供的支持3。面向对象语言的特点是抽象性、继承性和封装性,对象、类是基本的概念。对于需要保护的对象的数据,可以封装起来,保证数据和程序的安全性。使用C#语言开发的应用程序具有代码重用、安全性保证、支持跨系统运行的优点4。2.3 SQL Server 2005本系统采用的数据库是SQL Server 2005数据库管理系统,是一个关系型的数据库管理系统,与Visual Studio 2008开发工具紧密集成5,为开发人员提供更加方便的数据管理方式。SQL Server 2005数据库是一个全面的数据库平台,其数据引擎是企业数据管理解决方案的核心,集成了商业智能工具、分析、报表等功能,为用户提供企业级的数据管理6。SQL Server 2005可以为开发人员、数据库管理员、信息工作者以及决策者提供了创新的解决方案,帮助用户从数据中获取更多的收益。SQL Server 2005数据库的数据引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,可以构建和管理用于业务的高可用和高性能 的数据应用程序。2.4 三层架构在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。三者具体应用的原则是:DAL只提供基本的数据访问,不包含任何业务相关的逻辑处理;UI只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理;BLL负责处理业务逻辑。通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理。处理完成后,返回必要数据给UI。而各个层之间的引用关系是UI - BLL - DAL。采用三层结构的技术使系统具有性能好,安全性强,可维护性高,扩展性强,高内聚,低耦合等优点。系统根据面向对象的思想,采用此三层架构技术对系统的代码进行分层封装,这样大大提高代码的重用率,使其整体上更加简洁和有效。2.5 B/S体系结构本系统是一个基于Web技术的管理信息系统,采用B/S体系结构,即Browser/Server结构,它实质也是一种客户端/服务器结构,只不过它的客户端是浏览器。在B/S体系结构中,用户通过浏览器向Web服务器发出请求,服务器对浏览器的请求进行处理,然后将处理结果返回到浏览器并通过HTML呈现给用户。采用该体系结构的系统具有以下优点:l 无需开发客户端软件,维护和升级方便;l 可跨平台操作,任何一台机器只要装有WWW浏览器软件,都可以作为客户机访问系统;l 具有良好的开放性和可扩充性;l 可采用防火墙技术来保证系统的安全性,有效地适应了当前用户对管理信息系统的新需求7。数据库服务器(数据层)客户端(表示层)服务器(应用逻辑层)图2-1 B/S体系结构B/S体系结构是一种三层结构,即表示层、应用逻辑层、数据层,如下图2-1所示:表示层主要为客户端提供应用程序的访问入口,传递用户的请求以及返回请求处理后的数据;服务器主要是响应客户端发来的请求并进行处理,然后将处理的结果返回到客户端;数据层为服务器进行数据查询和操作提供数据服务8。三层结构是一种逻辑上的结构,各自分工,减轻了服务器的负担。2.6 数据库访问技术ADO.NET2.6.1 ADO.NET概述ADO.NET是.NET 框架提供的数据访问的类库,对Microsoft SQL Server、Oracle、OLEDB等数据源提供一致的访问,应用程序使用ADO.NET连接到这些数据源,并查询和更新所包含的数据9。本系统实现时的数据访问是通过ADO.NET进行的,它可以使系统从SQL Server数据源中快速访问数据。ADO.NET用于数据访问的类库包含.NET 框架数据提供程序和DataSet两个组件。.NET 框架数据提供程序包含四个核心的类,分别是Connection类、Command类、DataReader类和DataAdapter类。DataSet是ADO.NET的核心组件,专门用来处理数据源中读出的数据,是独立于数据源的数据访问形式。2.6.2 数据库连接连接数据库使用ADO.NET的Connection类,通过Connection对象实现应用程序与数据之间的通信,连接到指定的数据源。该对象的ConnectionString属性用于获取或设置打开数据库连接的字符串,然后通过调用Open()方法打开数据库连接,进行数据访问。不同的.NET 数据提供程序使用不同的Connection类进行连接,本系统采用SQL Server数据库管理系统,因此使用SqlConnection类的对象连接数据库。2.6.3 执行数据操作从数据库中读取到数据以后,需要对数据进行操作,包括查询、添加、删除和修改的操作,Command对象就是用于执行对数据操作命令的。先创建Command对象,通过该对象的CommandText属性传递sql语句,然后执行数据操作命令。2.6.4 数据绑定数据绑定是ASP.NET环境中提供的多种服务器控件使程序员更加快速高效地完成数据的呈现,复杂的数据绑定控件还提供了大量的功能实现对数据的操作,例如排序、新增、修改和删除等,使数据的呈现和操作变得更加简单灵活12。这些数据绑定控件的实现过程是先查询返回要呈现的数据源,填充到DataSet对象或者DataTable对象,然后将其设置为绑定控件的DataSource属性,调用DataBind()方法即可将指定数据源绑定显示。本系统主要使用了DropDownList、GridView控件等。3 系统分析3.1 系统概述本系统根据学生宿舍管理实际需求把学生宿舍管理系统的用户分为学生、维修人员、管理员。本系统主要具备的以下功能:刚入学的新生不需要登录系统,直接点击登录界面的“新生指南”就可以进入新生管理界面,指导新生下载相应的资料,从而查看本人的相关信息,再使用本系统;学生具有完善个人资料、宿舍相关信息查询、水电费查询、浏览和下载通知公告、阅读相关公告和信息平台、报修登记和查询、留校登记、晚归查询、文明宿舍查询、违规宿舍查询、留言、快速导航的功能;维修人员具有查询学生上报维修信息的情况、审核维修信息、处理维修信息的功能;管理员具有宿舍管理、登记管理、公告栏管理、班级管理、信息查询、留言管理、资料管理、系统管理的功能。本系统是一个采用ASP.NET技术开发的Web应用系统,方便使用,简单快捷。本系统应该达到以下要求: 1、系统能够提供友好的用户界面,使操作人员的工作量最大限度地减少。2、系统具有良好的运行效率,能够达到提高效率的目的。3、系统具有良好的可扩充性,可以在原有的功能基础上进行扩充。3.2 需求分析3.2.1功能需求学生宿舍管理系统充分利用计算机的功能实现对信息管理、信息录入、信息查询、信息修改、信息打印等的自动化控制,将会使学生宿舍管理工作大大减轻,方便友好的信息管理用户界面,简便的操作,完善的数据库管理,将会使得信息管理系统应用于现代化学生宿舍管理中,成为管理人员的得力助手。对于本系统,用户的权限主要分为学生、维修人员、管理员。n 学生:完善个人资料;宿舍查询;水电费查询;浏览通知公告;下载重要文件;阅读相关公告和信息平台;报修登记和查询;留校登记;晚归查询;文明宿舍查询;违规宿舍查询;留言;快速导航。n 维修人员:查询学生上报维修信息的情况;审核维修信息;处理维修信息。n 管理员: 宿舍管理:宿舍分配;学生入住安排; 登记管理:宿舍违规管理;水电费管理;夜归统计;评分录入;来访登记; 公告栏管理:公告上传;在线编辑; 班级管理:学院管理;专业管理; 信息查询:学生信息查询;辅导员查询;宿舍信息查询;学生留校查询;宿舍评分查询;文明宿舍查询;学生夜归查询;来访信息查询; 留言管理:回复和删除留言的功能; 资料管理:水电费导出和打印;文明宿舍评分导出和打印;留校统计导出和打印; 系统管理:添加用户;密码修改;删除用户;3.2.2性能需求本系统由Web服务器和数据库服务器以及客户端(浏览器)组成,对软硬件环境的要求如下:(1)硬件环境l 处理器:Intel Pentium 4或以上;l 内存:256MB或以上;l 硬盘空间:80GB以上。(2)软件环境l 操作系统:建议采用Windows Server 2003/XP/Windows 7;l 数据库:Microsoft SQL Server 2005;l 浏览器:IE6.0或以上。操作系统对采用ASP.NET技术开发的本系统影响不是很大,但性能好的操作系统可以使系统运行得更加流畅,减少系统崩溃的可能性13。3.3 可行性分析 3.3.1技术可行性本系统是一个基于B/S模式的管理信息系统,随着Internet技术的快速发展,B/S模式的系统架构方式已经很成熟。采用ASP.NET技术,为基于Web应用实现动态交互网页提供技术环境支持,MS SQL Server 2005提供良好的数据存储和管理方式,这使得本系统的实施具有可行性。3.3.2经济可行性本系统对软硬件的要求不是很高,随着学校信息化管理水平的提供,学校拥有良好的硬件和软件环境,以及畅通的校园宽带,以现有的设备足以配置一个新的系统,并且十分方便,不需要购进新的硬件设备和软件而增加开支。计算机在校园中逐渐普及,学生可以在自己的电脑通过浏览器访问本系统,而无需购买特殊的客户端软件,使用系统很方便。此外,通过本系统开展学生宿舍管理,不必再用手工登记资料,避免人员浪费,也方便对数据的管理,为学生和管理员节省时间,提高了效率。3.3.3管理可行性学校已有管理信息系统应用的案例,学生和管理员使用这些管理软件不再是难事。本系统界面友好,操作简单,不需要对学生、管理员进行专门的培训便可掌握使用本系统。学校拥有专业的老师和管理人员,使管理和维护本系统成为可能。综上所述,学生宿舍管理系统充分利用了计算机软硬件资源和网络资源,技术成熟,成本低廉,操作简单,管理方便,使宿舍管理摆脱手工处理方式,实现自动化处理和信息化管理,因此,本系统的实施是可行的。3.4 系统流程图学生宿舍管理系统的系统流程图如图3-1所示:图3-1 学生宿舍管理系统流程图3.5 系统用例图和用例图分析3.5.1 客户端用例图1、刚入学的新生不需要登录系统,直接点击登录界面的“新生指南”就可以进入新生管理界面,并指导新生下载相应的资料,从而查看本人的相关信息,再使用本系统。学生需要登录系统,才可以实现登记,查看等功能。维修人员需要登录系统,才可以查看报修情况,对相应的宿舍报修情况进行审核和处理报修信息。学生宿舍管理系统客户端用例图如图3-2所示:图3-2 学生宿舍管理系统客户端用例图2、具体用例描述:2.1登录新生刚入学时不知道本人的学号、密码、宿舍号等相关信息,所以不需要登录学生宿舍管理系统,只要在本系统的登录界面点击“新生指南”就可以进入新生管理模块,新生通过浏览入学注意事项,并下载指定的文件来查看本人的学号、密码、宿舍号等相关信息。学生必须在系统的登录界面输入学号、密码、选择学生角色、验证码,若通过系统验证才可以进入学生宿舍管理系统的学生首页。维修人员必须在系统的登录界面输入管理员设定的账号与密码、选择维修人员角色、验证码,若通过系统验证则进入学生宿舍管理系统的维修人员主页面。2.2完善个人资料学生进入系统后必须完善个人基本信息。具体描述如下:用例描述:填写基本信息,包括登录密码、确认密码、民族、出生日期、家庭住址、邮箱、辅导员姓名,系统自动显示宿舍号、人数、宿舍电话号码;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:得到修改个人基本信息成功的提示并更新数据库。基本路径: a) 进入管理系统,点击导航条的“个人资料”;b) 填写学生基本信息,包括登录密码、确认密码、民族、出生日期、家庭住址、邮箱、辅导员姓名;c) 填写信息经校验合法后,提示修改成功,并存入数据库。2.3 报修登记学生需要报修时,只有宿舍长才能进入报修登记界面,系统自动识别学号和姓名,宿舍长需要填入报修的内容,提交报修记录时系统自动存储当前的时间。具体描述如下:用例描述:宿舍长填入报修的内容;执行者:宿舍长;前置条件:学生已登录学生宿舍管理系统;后置条件:提示提交成功,并存入数据库。基本路径: a) 进入管理系统,点击导航条的“报修登记”;b) 宿舍长需要填入报修的内容,提交报修记录时系统自动存储当前时间;c) 系统提示记录成功的信息并存入数据库中。2.4留校登记学校放假的时候,留在学校的学生需要登记自己的留校情况,系统自动识别登录学生的学号和姓名。具体描述如下:用例描述:只有登录者本人才能输入自己的信息;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:提示登记成功,并存入数据库。基本路径: a) 进入管理系统,点击导航的“报修登记”;b) 登录者本人选择放假假期,登记时间;c) 登记成功后,系统提示登记成功的信息,并显示学号、姓名、班级、假期、登记时间。2.5查询学生在系统中可进行宿舍查询、报修宿舍查询、晚归查询、文明宿舍查询、违规信息查询、水电费查询,根据输入的条件,查找出相应的信息。具体描述如下:用例描述:学生查询功能;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:提示查询成功,并显示相应的查询信息。基本路径: a) 进入管理系统,点击导航的相应查询功能;b) 输入查询的条件;c) 点击“搜索”按钮,显示相应的信息。2.6留言板学生可对学校存在的情况进行建议或者投诉或者表扬,后台会对留言内容进行过滤非法言语。具体描述如下:用例描述:学生留言;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:留言成功后,存入数据库中,并在留言板显示出来。基本路径: a) 进入管理系统,点击留言板;b) 点击“我要留言”,进入留言界面,再输入150字以内的留言,后台会对留言内容进行过滤非法言语,如:与脏话、色情、政府等相关的信息;c) 可以重新输入自己不满意的留言,或者删除自己不满意的留言;2.7浏览通知公告学生进入管理系统,在首页会显示5条最新发布的通知公告,学生可以直接点击标题,就可以浏览相应的通告的内容。具体描述如下:用例描述:学生浏览通知公告;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:浏览相应的通知公告。基本路径: a) 进入管理系统的首页,点击“通知公告”旁的“更多”;b) 进入公告栏界面,分页显示所有发布的通知公告的标题和发布时间;c) 点击需要浏览公告的标题,既可以成功浏览公告的内容。2.8下载通知公告学生进入管理系统的公告栏界面,可以点击“下载”。具体描述如下:用例描述:学生下载重要的通知公告;执行者:学生;前置条件:学生已登录学生宿舍管理系统;后置条件:点击“下载”按钮之后,下载文件到用户指定的目录下。基本路径: a) 点击要下载的公告;b) 点击“下载”按钮,选择下载存放路径;c) 提示下载成功信息。2.9 宿舍维修审核维修人员登录系统后,可以对学生上报的维修信息进行查看,审核宿舍维修信息。具体描述如下:用例描述:维修人员对宿舍报修情况进行审核;执行者:维修人员;前置条件:维修人员已登录学生宿舍管理系统;后置条件:审核成功,并存放入数据库。基本路径:a) 进入维修人员管理界面,搜索宿舍报修信息;b) 对报修情况进行审核并输入维修处理意见;c) 点击“审核”,提示审核成功,并存放入数据库。3.0 处理维修信息维修人员登录系统后,对维修人员已经上门维修的信息进行删除。具体描述如下:用例描述:维修人员处理维修信息;执行者:维修人员;前置条件:维修人员已登录学生宿舍管理系统;后置条件:提示处理成功,并更新数据库。基本路径:a) 进入维修人员管理界面,搜索宿舍报修信息;b) 对已经维修的信息进行删除;c) 提示处理成功,更新数据库。3.5.2 管理端用例图1、管理员必须在系统的登录界面输入设定的账号与密码、选择管理员角色、验证码,若通过系统验证则进入系统的后台管理主页面。管理员主要有宿舍管理、登记管理、公告栏管理、班级管理、信息查询、留言管理、资料管理、系统管理这8大模块。学生宿舍管理系统管理端用例图如图3-3所示:图3-3 学生宿舍管理系统管理端用例图2、具体用例描述:2.1 宿舍管理宿舍管理包括宿舍分配和学生入住安排。具体描述如下:用例描述:宿舍管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:更新数据库。基本路径:a) 进入宿舍管理的宿舍分配,管理员输入宿舍信息,包括宿舍号、宿舍类别、宿舍人数、宿舍电话,并成功保存入数据库中。b) 进入宿舍管理的学生入住安排,输入学号、姓名、性别、宿舍号、宿舍身份,学院名称、专业名称、班级名称3个联动选择;c) 点击“添加”,提示添加成功,显示刚才添加的学生信息并保存入数据库中,能对相应的信息进行编辑和删除;2.2 登记管理宿舍管理包括宿舍违规管理、水电费管理、夜归统计、评分录入、来访登记5个小模块。具体描述如下:用例描述:登记管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:如果登记信息维护完成,会把相关信息保存入数据库中。基本路径:a) 进入登记管理的各个模块,输入相关的信息;b) 如果登记管理信息维护完成,会把相关信息保存入数据库中。2.3 公告栏管理管理员有两种方式上传文件,一种是上传已经存在的文件,另外一种是在线编写通知,根据数据流的方式来保存文件,管理员根据需要来选择这两种方式,并以时间顺序显示上传的文件,可以删除上传的文件。具体描述如下:用例描述:公告栏管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:如果公告栏信息维护完成,则上传方式会把相关信息保存在数据库中。基本路径:a) 进入公告栏管理的公告上传或者进入公告栏管理的在线编辑;b) 上传文件或者编辑文本,点击上传或保存;c) 可以保存到数据库中。2.4 班级管理班级管理包括对学院的管理和对专业的管理,可以在学院的管理中添加、删除、修改、查询学院,可以在专业管理中添加、删除、修改、查询专业。具体描述如下:用例描述:班级管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:如果学院、专业信息维护完成,则相应信息将记录到数据库中。基本路径:a) 分别进入学院管理和专业管理,显示目前系统已经添加了的信息;b) 分别输入信息,显示输入的信息;c) 如果学院、专业信息维护完成,则相应信息将记录到数据库中。2.5 信息查询管理管理员在后台可输入相应的条件进行查询。具体描述如下:用例描述:信息查询管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:提示查询成功,并显示相应的查询信息。基本路径:a) 进入管理系统的信息查询,输入查询的条件;b) 提示查询成功,并显示相应的查询信息。2.6 留言管理管理员可浏览学生的留言,可对学生的留言进行回复和删除。具体描述如下:用例描述:留言管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:留言信息维护完成,则更新数据库。基本路径:a) 进入留言管理界面,显示目前系统已有的留言;b) 可以回复相应的留言;c) 可以删除不合理的留言。2.7 资料管理使用水晶报表对水电费表、文明宿舍表、留校表进行显示,管理员可以对水电费表、文明宿舍表、留校表进行导出和打印。具体描述如下:用例描述:资料管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:导出到用户指定的目录下或打印出表。基本路径:a) 进入相应的资料管理界面,显示目前系统的信息;b) 点击报表的“导出”和“打印”;c) 导出表到用户指定的目录下,打印出表。2.8 系统管理管理员可以对用户信息进行查看、添加、删除、修改。具体描述如下:用例描述:系统管理;执行者:管理员;前置条件:管理员已登录学生宿舍管理系统后台;后置条件:如果用户信息维护完成,则用户的相应信息将记录到数据库中。基本路径:a) 进入系统管理界面,显示目前系统的用户的信息;b) 可以添加用户账号、用户密码、用户姓名、用户类型;c) 可以删除和修改用户; 4 系统总体设计4.1 总体设计概述系统设计是系统开发过程中的核心,从需求出发,总体上描述系统架构应该包含的组成要素。架构是指将应用系统的每个功能部分分解到独立的组件中,并将各种组件划分到各个逻辑层中14。本系统采用三层架构,它将系统的功能单元分到三个逻辑层中,是为了便于开发项目后维护及变更的一种有效实用的架构模式,在各种B/S项目中被广泛的采用。学生宿舍管理系统的整体架构设计如图4-1所示:图4-1 学生宿舍管理系统整体架构设计本系统采用了三层架构,对其进一步细化分层,可得出如下的层次结构: 数据访问层(DAL):主要是对数据的增、删、改、查操作,负责保存系统的数据,并当有请求时把它们发送给业务层。 业务逻辑层(BLL):包含了项目中的业务逻辑,负责调用DAL中的方法实现业务的处理,并在表示层与数据访问层之间起到衔接的作用。 表示层(webUI):用于显示数据和接受用户输入数据的一层,即为用户界面。在三层架构模型中,有一个很重要的约束是在层之间的数据传递必须遵从特定的顺序。表示层只能访问业务层,而永远不能直接访问数据层。业务层就像中间的“大脑”,负责与其他层通信,处理和协调所有信息流。4.2 功能模块设计4.2.1系统层次模块图学生宿舍管理系统主要有3个角色:学生、维修人员、管理员。本系统主要具备以下功能:刚入学的新生不需要登录系统,直接点击登录界面的“新生指南”就可以进入新生管理界面,指导新生下载相应的资料,从而查看本人的相关信息,再使用本系统;学生具有完善个人资料、宿舍相关信息查询、水电费查询、浏览和下载通知公告、阅读相关公告和信息平台、报修登记和查询、留校登记、晚归登记和查询、文明宿舍查询、违规宿舍查询、留言;维修人员具有查询学生上报维修信息的情况、审核维修信息、处理维修信息;管理员具有宿舍管理、登记管理、公告栏管理、班级管理、信息查询、留言管理、资料管理、系统管理。学生宿舍管理系统客户端总体功能结构图如图4-2所示:图4-2 学生宿舍管理系统客户端总体功能结构图学生宿舍管理系统管理端总体功能结构图如图4-3所示:图4-3 学生宿舍管理系统管理端总体功能结构图4.3 数据库设计4.3.1 数据库管理系统的选择数据库技术是信息资源管理最有效的手段,是建立数据库及其应用系统的核心和基础。它要求对于指定的应用环境,构造出较优的数据库模式,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息,满足用户的各种应用需求(信息要求、处理要求、数据的及时性要求) 15 。一个好的数据库管理系统对管理信息系统的应用有着举足轻重的影响。在数据库管理系统的选择上,主要考虑:(1)数据库的性能;(2)数据库系统的系统平台;(3)数据库管理系统的安全保密性能;(4)数据的类型。目前市场上的数据库产品有IBM DB2、Microsoft SQL Server、Oracle等系列,这些产品都是基于SQL语言,并且拥有精密复杂的安全控制以适应不同的商业需要。本系统采用Microsoft SQL Server数据库系统,性能优越,安全性高,而且与服务器Microsoft操作系统和ASP.NET技术平台结合性好,既可以使用Visual Studio 2010集成的数据库系统,又可以使用独立的数据库管理软件管理本系统的数据。4.3.2 数据库的概念结构设计概念设计用来反映现实世界中的实体、属性和它们之间的关系的数据形式,建立数据库的每一幅用户视图。实体是客观存在并可相互区别的事物,可以是具体的人、事、物,也可以是抽象的概念或联系。实体所具有的某一特性称为属性,一个实体可以由若干个属性来刻画。实体与实体之间存在着联系,分为一对一、一对多、多对多联系三种。E-R图所表示的概念模型与具体的DBMS所支持的数据模型相独立,是各种数据模型的共同基础,因而是抽象和描述现实世界的有力工具16。E-R图用矩形表示实体,菱形表示实体之间的关系,无向边把菱形和实体连接起来。学生宿舍管理系统的ER图如图4-4所示:图4-4 数据库ER图ER图各实体的具体属性如下:1、 管理员:用户号、用户名、登录密码、用户类型;2、 学生:学号、学生姓名、登录密码、性别、民族、出生日期、家庭地址、邮箱、入学时间、班级ID、宿舍ID、辅导员、宿舍身份;3、 班级:班级ID、班级、专业ID;4、 专业:专业ID、专业、学院ID;5、 学院:学院ID、学院;6、 宿舍:宿舍ID、宿舍号、宿舍类别、宿舍人数、宿舍电话;7、 留言:留言ID、学号、留言标题、留言时间、留言内容、回复人、回复内容、回复时间;8、 水电费:水电费ID、宿舍ID、学年、学期、水表数、电表数、总费用;9、 宿舍报修:报修ID、学号、内容、报修登记时间、审核、审核时间、审核意见;10、 宿舍违规:违规ID、宿舍ID、违规内容、违规时间;11、 晚归:晚归ID、学号、原因、时间;12、 宿舍评分表:宿舍评分表ID、宿舍评分、学年、学期、宿舍ID、是否文明宿舍;13、 来访:来访ID、来访姓名、身份证 、学生学号、来访时间;14、 公告:公告ID、标题、发布公告时间;15、 图片:图片ID、地址;16、 留校表:留校ID、学号、学年、留校假期、登记时间。4.3.3 数据库的逻辑结构设计数据库的逻辑结构设计是将E-R图进行分解、合并后重新组织起来形成数据库全局逻辑结构,包括所确定的关键字、属性、记录结构、所建立的数据之间的相互关系。数据的逻辑结构用二维表表示,本系统涉及的表主要有:(1)管理员表: admin表4-1管理员表字段名称数据类型主/外键允许空说明idvarchar(6)主键no用户号adminnamevarchar(6)no用户名adminpwdvarchar(20)no登陆密码admintypevarchar(1)no用户类型(2)学生表:users表4-2学生表字段名称数据类型主/外键允许空说明useidvarchar(10)主键no学号usernamevarchar(20)no学生姓名userpwdvarchar(8)no学生密码usersexvarchar(8)yes性别userminzuvarchar(8)yes民族userbirthdayvarchar(8)yes出生日期useraddressvarchar(8)yes家庭地址useremailvarchar(8)yes邮箱enterdatevarchar(8)yes入学时间classidint外键no班级IDhomeidint外键no宿舍IDteachervarchar(20)yes辅导员shenfenvarchar(10)no宿舍身份(3)班级表:class表4-3班级表字段名称数据类型主/外键允许空说明idint主键no班级IDclassnamevarchar(50)no班级pidint外键no专业ID(4)专业表:profession表4-4 专业表字段名称数据类型主/外键允许空说明idint主键no专业IDprofessionvarchar(50)yes专业cidint外键yes学院ID(5)学院表:college表4-5 学院表字段名称数据类型主/外键允许空说明idint主键no学院IDacademyvarchal(50)no学院(6)宿舍表:home表4-6 宿舍表字段名称数据类型主/外键允许空说明homeidint主键no宿舍IDhomehaovarchar(5)no宿舍号homesexvarchar(4)no宿舍类别homecountvarchar(50)no宿舍人数homephonevarchar(30)yes宿舍电话(7)留言表:guestbook表4-7 留言表字段名称数据类型主/外键允许空说明idint主键no留言IDuseridvarchar(10)外键no学号titlevarchar(50)no留言标题edittimevarchar(50)no留言时间contentvarchar(250)no留言内容replyvarchar(250)yes回复内容renamevarchar(50)yes回复人replytimevarchar(50)yes回复时间(8)水电费:billinfo表4-8 水电费表字段名称数据类型主/外键允许空说明idint主键no水电费IDhomeidint外键no宿舍IDyearvarchar(50)no学年monthvarchar(50)no学期watercubeintno水表数electricdegreeintno电表数costvarchar(50)no总费用(9)宿舍报修表:homebad表4-9 宿舍报修表字段名称数据类型主/外键允许空说明idint主键no宿舍报修IDuseridvarchar(10)外键no学号contentvarchar(100)no报修内容datatimevarchar(50)no报修登记时间shenhevarchar(4)yes审核timevarchar(50)yes审核时间ideavarchar(250)yes审核意见(10)宿舍违规表:illegal表4-10 宿舍违规表字段名称数据类型主/外键允许空说明idint主键no宿舍违规IDhomeidint外键no宿舍IDhomeillegaltextno宿舍违规内容timevarchar(50)no违规时间(11)晚归表:nightreturn表4-11 晚归表字段名称数据类型主/外键允许空说明idint主键no晚归IDuseridvarchar(10)外键no学号reasonvarchar(250)no原因timevarchar(50)no时间(12)宿舍评分表:scores表4-12宿舍评分表字段名称数据类型主/外键允许空说明idint主键no宿舍评分IDhomescoresvarchar(50)no宿舍评分schoolyearvarchar(50)no学年termvarchar(50)no学期homeidint外键no宿舍IDhomeynvarchar(2)no是否文明宿舍(13)来访表:visitors表4-13 来访表字段名称数据类型主/外键允许空说明idint主键no来访IDvisitornamevarchar(50)no来访者姓名idcardvarchar(18)no身份证visituseridvarchar(10)外键no学生学号timevarchar(50)no来访时间(14)公告表:news表4-14 公告表字段名称数据类型主/外键允许空说明idint主键no公告ID
展开阅读全文