学生宿舍管理系统--需求说明、概要设计、详细设计 - 菜鸟队

时间:2024-01-30 18:21:04

学生宿舍管理系统--需求说明、概要设计、详细设计

1、引言

 1.1编写目的

     学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备完善的报表生成、修改功能,能够快速的查询学校所需的住宿信息。

1.2背景

  • 宿舍管理系统系统开发 
  • 任务提出者:菜鸟队   

         开发者:菜鸟队   

         用户:各大校园宿舍或类似企业职工宿舍  

  • 宿舍管理系统要实现对设备的管理要求,包括:录入、浏览、删除、修 改、检索和统计等。不同的宿舍或者培训机构只需要对其稍作修改即可开发出符合本单位要求的宿舍管理系统

1.3定义

固定数据类型说明:

 

 

需求说明书

2、任务概述  

 2.1目标        

软件旨在宿舍管理全部电脑化。它主要包括:宿舍号、住宿人员登记、对学生住宿情况查询,可以更快地了解到每个学生的住宿情况,使宿舍的管理效率更高,做的更好!宿舍管理系统是一个现代化软件,他通过集中式的信息数据库将各种档案管理功能结合起来,达到共享数据,降低成本,提高效率,改进服务等目的。 

 2.2用户的特点  

用户只需一个浏览器进行工作,实行客户端的零安装和零维护,并支持远程办公和不间断服务。  

3、功能需求分析  

    在整体设计中,我们将宿舍管理系统分为五个大的功能:系统管理功能、公寓管理功能、信息查询功能、出入登记功能、信息修改功能。下面将具体进行介绍每个功能。    

 (1)系统管理功能

    系统管理功能包括:用户登录、用户密码修改、用户管理、退出系统五个部分。  

 (2)公寓管理功能  

    公寓管理功能包括:楼房管理、宿舍管理、员工管理三个大的部分。 

  (3)信息查询功能  

    信息查询功能基本上包括:按学号进行查询、按姓名进行查询、按班级查询、按寝室号查询、每栋楼房住宿情况查询五个部分。 

  (4)出入登记功能  

    出入登记功能包括:进楼物品登记、出楼物品登记、人员来访登记、结束访问登记四个功能部分。 

  (5)信息修改功能  

    信息修改功能包括:学生基本信息修改、员工基本信息修改等。 除了以上项目外,整个系统还包括登陆管理,即根据不同人员的身份合法性认证,使其进行相应的操作。人员分普通用户、管理员。

4、性能需求分析  

   本系统可以实现许多性能特性,如:实用性、灵活性、可扩展性、易维护性、可靠性等等。    

4.1 实用性  

   实用性是衡量一个应用系统好坏的重要指标。是否与业务紧密结合,是否具有严格的业务针对性,是系统成败的关键。

本系统是在对各种类型的宿舍进行详细的调查之后实现的,实现的各项功能应该十分贴合现代化宿舍的需求,具有很强的实用性。  完全控制式的页面布局,使得入住信息录入工作更简便。   

 4.2灵活性  

    本系统提供了灵活的查询模块可查询同学的联系方式、学生违纪、留言板等信息,灵活组合条件,进行组合查询,达到提高查询效率、界面直观的效果。

 4.3 扩展性  

随着系统应用的普及和推广,系统功能的扩展将是不可避免的,因此,提高系统的可扩展性、可维护性是提高整个系统性能的必然要求。  本系统采用模块化的设计思想,在结构上具有良好的可伸缩性,使用者可根据实际业务需要扩展模块。    

 4.4 易维护性  

本系统采用多层架构设计,使系统结构更清楚,分工更明确,有利于后期的维护。    

 4.5 安全保密性  

    整体的系统安全性是本系统中必须考虑的重点要求。在该系统设计中,安全、可靠将作为第一要素。同时,利用细分的权限管理,拒绝非法用户进入系统和合法用户的越权操作,避免系统遭到恶意破坏,防止系统数据被窃取和篡改。

 4.6 可靠性   

社会向信息时代迅速发展的同时也有潜在危机,即对信息技术的依赖程度越高,系统失效可能造成的危害和影响也就越大。因此,采用良好的操作系统和数据库,确保数据的一致性和完整性,并使系统免受病毒感染,确保系统运行的可靠性具有重要意义。    

 4.7 经济性   

本系统可对同学的信息进行统计及管理工作,方便了宿舍的管理。简化了宿舍管理员的操作。    

 4.8 稳定性   

除了具备以上几点特性,系统还应具备长期持续稳定工作的能力。

5、业务需求分析  

学生宿舍管理系统中管理权限上应当进行严格控制,具体思想如下: 

  1.要想对该学生宿舍管理系统进行操作就应当具有某些操作权限。没有权限的用户将不能通过任何渠道来登录该系统,查看该系统的任何信息和数据,以确保系统的严密性和安全性。    

  2.在上述要求基础上可以为该系统设定多种登录方式,程序开始运行所有功能将是不可使用的,只有系统管理员登录和普通用户登录两个窗口可以使用,没有系统管理员或者普通用户的用户名和密码任何人都不能登录该系统。    

  3.在具体实现时还应为系统管理员和普通用户设定不同的权限,系统管理员应当可以使用系统的所有模块,普通用户对于用户管理模块是无权使用的。    

 5.1 数据流图 

 

 

5.2、数据字典

名字:员工信息  

描述:每栋公寓聘请的员工  

定义:员工信息=员工号+姓名+年龄+性 别 +楼房号+职位+家庭住址  

位置:员工表 

名字:宿舍信息 

描述:宿舍对应的属性 

定义:寝室信息=寝室号+居住性别+应住人数+ 实住人数+住宿费用+电话+备注 

位置:宿舍表

名字:学生信息 

描述:学生对应的属性 

定义:学生信息=学号+学生姓名+学生年龄+学生性别+入学日期+学院+专业 

位置:学生表 

名字:楼房信息 

描述:楼房对应的属性 

定义:楼房信息=楼房号+房间数+楼层数+应住人数  

位置:楼房表

 

 6.数据需求分析  

数据库需求分析调查的重点是“数据”和“处理”,通过调查、收集和分析,获得用户对数据库的需求。  

信息需求:指用户需要从数据库中获得信息的内容与性质,即在数据库中需要存储哪些数据。  

处理要求:指用户需要完成什么处理能力。明确用户对数据有什么样的处理要求从而明确数据之间的关系。  

本课程的功能集中表现为数据的查询,更新和维护,因此需求集中表现为对“数据”的需求。根据登陆身份不同显示不同的功能项,以及所能进行的操作。  

概念结构设计是将缝隙得到的用户需求抽象为概念模型的过程,他是整个数据库设计的关键。  

根据前面的分析,创建各数据表的实体E-R关系图,它是数据库设计非常重要的一步,下面用E-R图的形式表示出各实体的属性。    

 6.1系统E-R 

 

6.2 员工E-R实体图  

员工的实体具有员工号、员工姓名、员工年龄、员工性别、楼房号、员工职位、家庭住址7个属性,员工E-R实体图如下图。

7.运行环境规定 

 7.1运行环境:  在本系统的开发平台为VS2010,后台数据库为SQL Server

 

概要设计说明书

 

2. 范围 

 

2.1 系统主要目标 

 

在科技快速发展的今天,原始的记录方式不但浪费时间,效率也比较低,已经无法适应庞大的数据管理和学校的需要。该软件所要实现的目标就是通过强大的计算机技术给宿舍管理人员和学生带来便利,通过网络可以在系统上查询学生宿舍状况,同时管理人员还可以对学生的信息进行修改。除此之外,目标还包括

 

  * 减少人力与管理费用; 

 

  * 提高信息准确度; 

 

  * 改进宿舍管理; 

 

  * 建立高效的信息传输和服务平台,提高信息处理速度和利用率;  

 

  * 系统设计优良,界面设计精美、友好、快捷,人性化设计,后台管理功能强大、效率高;  

 

   * 更简便、信息化程度更高的宿舍管理流程。

 

2.2 主要软件需求 

 

1.对功能的规定 

 

  A:主界面登录:是本系统的主界面,在该界面中,用户可以选择所要进行的操作如:数据录入,数据查询,数据统计等操作。 

 

  B:系统后台:主要是数据库的逻辑关系的建立,和重要信息的存储管理,通过主界面对后台数据信息进行管理,比如:信息的录入、修改、删除等操作。 本系统有以下功能模块:学生信息管理模块、学生信息查询模块、登录模块。 

 

2.功能描述 

 

    学生信息管理模块:各种数据添加、修改、删除、查询、统计、维护等。学生信息用户查询模块:数据查询等。登录模块:用户的登录和权限的规定。 

 

3. 软件系统结构设计 

 

3.1 HIPO

 

3.2运行模块组合

    具体软件的运行模块组合为程序多窗口的运行环境,各个模块在软件运行过程中能较好的交换信息,处理数据,例如:学生信息查询子模块。

    学生信息查询子模块运行时,通过用户界面与sql2000学生信息数据库链接,搜索与用户输入的学生信息管理子模块。

信息更新(添加、删除、修改)子模块运行时,学生信息管理员通过管理界面接口与数据链接,进行对学生信息的更新,和相关数据的操作。

4.数据库结构设计

5. 用户界面设计规则 

5.1.用户管理部分

1)处理用户注册;

2)处理用户登录;

3)用户可以查询学生信息;

4)用户可以提交与查询报修信息;

5)用户可以插入与删除用户自己的离返校信息; 

6)用户可以修改用户自己密码。 

5.2.管理员管理部分

1)处理管理员登录;

2)管理员可以查询学生信息; 

3)管理员可以插入、修改与查询报修信息; 

4)管理员可以插入与查询学生夜归信息;

5)管理员可以查询在校与离校学生信息; 

6)管理员可以修改管理员密码。

6.出错处理设计

 6.1 出错信息 

出错输出信息: 

    在用户使用错误的数据或访问没有权限的数据后,系统给出提示:”对不起,你非法使用数据,没有权限!“而且用户的密码管理可以允许用户修改自己的密码,不允许用户的匿名登录。用户输入的信息是非中文字符,系统提示:您所输入的信息是非中文字符。 

    用户输入的信息是中文字符,但与本系统已收录的学生信息不匹配,系统提示:您所输入的信息不存在,请仔细核对您输入的信息是否在本系统收录的学生信息范围之内,重新输入,学生管理员输入的不符合数据的类型,系统提示:输入格式错误请重新输入。

6.2补救措施  

出错处理对策: 

    由于数据在数据库中已经有备份,故在系统出错后可以依靠数据库的恢复功能,并且依靠日志文件使系统再启动,就算系统崩溃用户数据也不会丢失或遭到破环,但有可能占用更多的数据存储空间,权衡措施由用户来决定。 

    系统软件出错很容易在出错日志里看到,我们对可能发生的错误会有一个错误编号以及相应的处理方式,以手册的方式提供。用户可以根据系统的提示信息进行相应的排错处理,建立系统运行日志,用于记录系统在运行过程中出现的可以预知的或无法判断的系统错误信息。 

    硬件的出错处理信息需要检查网络环境。

7. 系统维护设计 

    由于系统较小没有外加维护模块,仅靠数据库的一些基本维护措施即可。为便于维护,应该设计了三种日志:系统运行日志、操作日志、出错日志。三种日志根据不同的重要程度采取存放在文件和数据库的方式,系统管理员可以很轻松的监控系统运行情况,数据表的建立和删除有数据系统管理员予以维护。

 

详细设计报告

2、系统性能 

      本管理系统要求较低,大部分权限归属于管理员拥有,学生拥有部分限制的权限对学生和外来人员的权限较少,所以管理员本人可以对本系统放心的使用。系统响应时间在用户能容忍的1~2秒之内。在安全性方面,系统设计充分考虑的数据库安全的重要性,在进行相关操作时,对用户的权限进行了限制,提高了系统的安全性。 

3、程序系统的结构

3.1程序流程图:

3.2模块调用示意图:

4、程序设计说明 

    在整体设计中,我们将宿舍管理系统在使用者登陆时分为系统设置、学生住宿管理信息、卫生评比等七个模块。接下来,在各自的模块中分别实现各自的功能。在每个模块下有分有不同的功能的子模块。每个模块将实现不同的功能。下面将具体进行介绍。

4.1.登录模块 

4.1.1功能简介 

    在系统的登录界面实现系统管理人员或学生的一般用户使用正确的该系统的用户名和密码登录到不同模式中,以及用户在不能正常登陆时安全退出系统。

4.1.2输入项 

    根据需求分析报告中所述,输入项为用户信息(学生信息或者理员信息) 用户信息:用户ID,用户密码,用户类型(普通用户,管理员) 

4.1.3输出项 

    根据概要设计报告中模块设计的思路,该登录模块输出项为:控制代码,是被调模块的名字。 

4.1.4算法 

    该登录模块中应用选择算法,根据用户的要求选择不同的模式。 

4.1.5逻辑流程 

登录模块逻辑流程图:

4.1.6接口 

    本模块为最初的主模块,没有上层模块,根据用户要求调用子模块;在模块的检查用户的合法性时需要调用系统的查询模块,传递参数是用户信息。该模块不直接操作数据库文件。 

4.1.7存储分配 

    根据学生宿舍管理系统需要分析说明以及概要设计的设计思路,系统的登录模块存储在所有数据的最前面,加快系统的进入速度。

4.2 管理模块 

4.2.1功能简介 

      该管理模块的功能可以概述为:承接的作用。调用管理员要求的操作

模式,查询或者登记。

4.2.2输入项 

      管理员根据系统界面的提示,选择操作类型,该类型对应的是模块的名

字。 

4.2.3输出项 

    根据概要设计报告中模块设计的思路,该管理模块输出项为:控制代码,是被调模块的名字。 

4.2.4算法 

    该管理模块中应用选择算法,根据管理员的选择要求选择不同的操作模式。

4.2.5逻辑流程 

管理模块逻辑流程图:

4.2.6接口 

    本模块为只调用下层信息查询模块或者登记模块,传的数据是全局唯一的模块的名字。 

4.2.7存储分配 

    该管理模块按照顺序模块放在登录模块之后即可实现系统的功能且不影响运行速度。 

4.3管理员信息查询模块 

4.3.1功能简介

该模块功能在管理员模式中实现,具体实现学生夜归信息,住宿信息,快件信息和已修信息的查询功能。

4.3.2输入项 

根据需求分析报告中所述,输入的查询条件可以分为按宿舍号,按物品号查询报修信息;按学号,宿舍号查询学生的夜归信息;按学号,姓名,专业查询学生的住宿情况;按学号,姓名,专业查询学生的快件信息。 

4.3.3输出项 

该查询模块的输出数据为固定结构的数据项,将管理员填写的查询条件封装在固定的数据类型中传递给被调用的数据库查询模块。结构基本就是数据的存储结构,具体可见需求分析报告。

4.3.4算法 

该登录模块中采用的算法基本同等级模块相同,为满足管理员的要求可能将管理员的查询条件进行相应的数据格式装换,确保系统的稳定,安全,可靠。 

4.3.5逻辑流程 

信息登记模块逻辑流程图:

4.3.6接口 

信息查询模块是中间模块隶属与上层模块,下层调用有关数据库查询操作的模块,调用时将封装好的数据结构传递给下层模块。 

4.3.7存储分配 

同样考虑到系统管理员是该系统的常用的操作者,并且查询操作是管理员最常用的操作,为了便于管理员快速的进行管理操作,将该模块按照顺序存储在管理模块之后。

4.4管理员信息登记模块 

4.4.1功能简介 

   该模块功能是管理员模式的重要功能,具体实现对学生夜归信息,住宿

信息,快件信息和报修信息的登记(包括新增,删除,修改)功能,以便管理的顺利进行。

4.4.2输入项 

根据需求分析报告中所述,输入项为可以有三种: 

住宿学生信息:学号,姓名,性别,院系,宿舍号,入住时间; 

夜归信息:学号,宿舍号,晚归时间,晚归原因; 

离校信息:学号,宿舍号,离校时间,返回时间; 

已修信息:宿舍号,物品号,提交日期,报修原因。

4.4.3输出项 

该登记模块的输出数据为固定结构的数据项,将管理员填写的信息封装在固定的数据类型中传递给被调用模块。三种结构基本就是数据的存储结构,具体可见与需求分析报告。

4.4.4算法 

该登录模块中应用选择算法,可能应按用户的输入要求进行相应的数据格式装换,确保系统的稳定,安全。 

4.4.5逻辑流程 

信息登记模块逻辑流程图:

4.4.6接口 

信息登记模块是中间模块隶属与上层的登录模块,下层调用有关数据库的对数据操作的模块,调用时将封装好的数据结构传递给下层模块。 

4.4.7存储分配 

考虑到系统管理员是该系统的最常用的操作者,便于管理员快速的进行管理操作,将该模块按照顺序存储在查询模块之后。

4.5学生管理模块 

4.5.1功能简介 

学生管理模块用以实现学生的报修登记,快件收取,信息登记和信息查询的全部功能,并且实现对下层数据库操作模块的调用。

4.5.2输入项 

该模块的输入项包括财务的报修信息,快件收取信息,详细信息参照需求说明书。 

4.5.3输出项 

该模块的输出数据同样为固定结构的数据项,将管理员填写的信息封装在固定的数据类型中传递给被调用的下层模块。 

4.5.4算法 

     模块的实现算法简单没有具体要求,可以是顺序,也可以是选择,保证

没有逻辑错误,具体逻辑流程见下图。

4.5.5数据流程

4.5.6接口 

该学生管理模块是中间模块隶属与上层的登录模块,下层调用有关数据库的对数据修改和查询的模块,调用时将封装好的数据结构传递给下层模块。 

4.5.7存储分配 

Student模块的按照顺序存储在管理员的查询模块之后,就可流畅实现系统的功能。

4.6数据库查询模块 

4.6.1功能简介 

该数据库查询模块顾名思义就可知道是基于数据库操作的模块,用于实现上层模块调用进行数据库的查询操作。

4.6.2输入项 

该数据库查询模块是基于数据库操作的模块。输入数据为上层模块传递的固定结构的数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。 

4.6.3输出项 

输出项和输出项相同,为上层模块传递的固定结构的数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。

4.6.4逻辑流程

4.6.5算法 

本模块算法简单,符合数据库要求的合理即可。 

4.6.6接口 

该模块是基于数据库操作的模块,要和数据库进行通信,这里采用SQL语句。 

4.7数据库修改模块 

4.7.1功能简介 

该数据库查询模块顾名思义就可知道是基于数据库操作的模块,用于实现上层模块调用进行数据库的修改操作。

4.7.2输入项 

该数据库修改模块是基于数据库操作的模块。输入数据为上层模块传递的固定结构的数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。 

4.7.3输出项 

输出项和输出项相同,为上层模块传递的固定结构的修改数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。

4.7.4逻辑流程

4.7.5算法 

本模块算法简单,符合数据库要求的合理即可。 

4.7.6接口 

该模块是基于数据库操作的模块,要和数据库进行通信,这里采用SQL语句。 

4.8显示模块 

4.8.1功能简介 

该模块主要用于显示用户操作结果显示。

4.8.2输入项 

该模块是显示模块。输入数据为上层模块传递的固定结构的数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。 

4.8.3输出项 

输出项和输出项相同,为上层模块传递的固定结构的数据类型,包含住宿信息,报修信息,快件信息和夜归信息等。 

4.8.4逻辑流程

4.8.5算法 

本模块算法简单,符合数据库要求的合理即可。 

4.8.6接口 

该模块是显示模块,编码采用JAVA语言,操作系统采用window系列,所以符合JAVA语言和操作系统的要求正确显示结果,并且确保系统运行健康。