1、(此文档为 word 格式,下载后您可任意编辑修改!)摘 要学生公寓是每一位在校学生生活、学习、相互交流的主要场所,是透视一个学校文明程度和一个集体精神风貌的窗口,如何提供一个良好的学生公寓的管理体系,对学校和同学而言至关重要,因此学生公寓的建设与发展,直接影响着学校后勤社会化改革的发展进程,也直接关系到在校学生的切身利益、正常的教学秩序和高校的稳定。以往的学生公寓管理基本上还处于人工操作的阶段,随着计算机技术和网络技术的日益广泛应用,采用计算机以及网络来管理学生公寓,有着很好的前景。该学生公寓管理系统主要划分了管理员和学生两种权限,实现的功能有学生信息的管理,宿舍信息的管理,宿舍的分配功能等
2、。系统具有界面友好,操作简便的特性。该系统主要包括信息管理,房间管理,住宿管理,出入管理,违纪管理,用户管理这些功能模块,最后本文还介绍了系统设计的关键技术,通过这些技术,提高了学生公寓管理的效率。关键词:学生、公寓、管理。序言在当今的社会,可以说的信息技术的发展时代,在社会的方方面面无不涉及到各种信息的处理。信息是人们对客观世界的具体描述,是人们进行交流与联系的重要途径。人类社会就处在一个对信息进行有效合理的加工中。它将促进整个社会的发展。随着社会信息技术的提高,计算机已被广泛应用于当今社会的各个领域,成为推动社会发展的首要技术动力。其中教育事业是我们社会发展的重中之重。因此,本次设计我选择
3、了具有一定实际应用价值且是各大高等院校中不容忽视的课题学生宿舍管理系统。高等院校的教学管理是一项系统工程,而对学生宿舍的管理是常规管理的一项基础工程。随着高等教育事业的发展,对高校的各项管理提出了越来越高的要求。若我们继续采用传统的管理方法和管理工具来进行教学管理,就不能满足科学的、现代化的管理要求。在计算机科技迅猛发展的今天,在高校的教学改革不断深入发展的今天,要想提高办学水平,就必须把管理水平提高到一个新的高度来认识,并付诸实践。因此,为学生宿舍建立一个行之有效的、程序化的管理系统,用科学的、现代化的手段来管理学生宿舍,是优化教学管理、提高教学质量的迫切需要。该系统的实施,将使我们及时地、
4、全面准确地掌握全校学生宿舍的基本情况、寝室人员的查询,更好地管理学生宿舍,调动广大教师的积极性,并能在这个基础上研究、探索教学规律,及时调整、优化寝室管理过程;该系统还设置了适当的管理员使用权限,数据的增加、删除和修改等维护措施;同时还可为领导和管理部门提供全面的、定量的信息,方便校方对学生宿舍的全面考核方面提供了客观的依据。另外,使用计算机对学生宿舍进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够大大减少了管理人员的工作量,提高办事效率。目录1 可行性研究 .11.1 问题描述 .11.2 可行性分析 11.2.1
5、问题定义 11.2.2 可行性分析研究 21.2.3 经济可行性 31.2.4 技术可行性 31.2.5 操作可行性 .41.3 项目开发 41.3.1 开发目的 41.3.2 项目背景 41.3.3 项目概述 51.3.4 项目开发计划 61.3.5 开发工具介绍 61.4 总结 72 需求分析 .82.1 任务需求分析 82.2 系统流程图 102.2 数据流图 .122.3 数据字典 .132.4 代码设计 163 概要设计 173.1 概述 .173.2 功能需求 .173.3 软件模块结构设计 .173.4 系统整体结构图 183.5 数据库设计 193.5.1 E-R 图的实体及属
6、性 193.5.2 系统 E-R 图 .193.5.3 关系转换规则 224 详细设计 234.1 表设计 234.2 人机界面设计 364.2.1 一般交互设计 274.2.2 信息显示设计 274.2.3 数据输入设计 285 软件测试 305.1 概述 305.2 系统测试 305.3 软件界面介绍 315.4 测试实例 36设计总结 37致谢 40参考文献 411 可行性研究1.1 问题描述随着时代的发展,计算机技术越来越深入各行各业,为广大的用户提供了更为周到和便捷的服务。目前各行各业广泛使用专用系统,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其
7、用户群十分庞大,因此,设计开发好一个专用系统对一个机构(或部门)的发展十分重要。近年来,随着用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越人性化。对于学校而言,学生公寓管理是必不可少的组成部分。目前仍然存在有学校停留在公寓管理部门人员手工记录数据的阶段,手工记录对于规模小的学校来说勉强可以接受;但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的,而且当查找某条记录时,由于数据量庞大,只能依靠人工去一条一条地查找,这样不但麻烦而且浪费许多时间,工作效率比较低。采用计算机来管理公寓和学生的信息,大大提高了查
8、询的速度,节约了人力和物力资源,达到了预期的要求。今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面: (1)计算机可以代替人工进行许多繁杂的劳动; (2)计算机可以节省许多资源;(3)计算机可以大大的提高人们的工作效率;(4)计算机可以使敏感文档更加安全,等等。1.2 可行性分析系统可行性分析是在用户的要求和系统调研的基础上进行的,对新系统的开发从社会、技术、经济、管理等方面进行分析,并得出新系统的开发工作可行、不可行,最后完成可行性分析。1.2.1 问题定义 可行性分析一般可定义为:可行性分析是在建设的前期对工程项目的
9、一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。1.2.2 可行性分析研究可行性分析阶段的主要工作包括以下几个方面:(1)新系统目标可行性分析:分析新系统的目标是否符合某此小发展的需要。(2)社会可行性分析:社会可行性分析主要是指管理信息系统的开发是否符合国家法律、政策。(3)技术可行性分析:技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术。(4)管理可行性分析:管理可行性分析主要是分析现行的管理体制和领导是否具有现代化的管理意识和管理水平。(5)硬件资源:开发管理信息系统所需的硬件资源包含以下两个方面:系统开发人员在管理信息系统的开发过程中所需要
10、的计算机仪器设备及其有关的外部仪器设备;管理信息系统开发成功投入使用后,使用单位所应具备的计算机仪器设备及其有关的外围仪器设备。对硬件资源进行可行性分析时主要考虑计算机的主机内存、类型、功能、联网能力、安全保护措施以及输入输出仪器设备,外存储器和联网数据通信仪器设备的配置、功能、效率等指标是否符合系统方案设计要求,同时还要考虑计算机的性能价格比。(6)软件资源:软件资源的可行性分析主要考虑以下几点是否满足用户的要求:操作系统的选择;编译系统的选择;数据库管理系统的选择;高级编程语言的选择;汉字处理系统的选择;本系统在开发前,与相关的部门的领导和具体的操作人员密切沟通,认真听取他们的意见,并吸收
11、他们的积极观点,使本系统的开发在相当大的程度上具有一定的先进性和合理性。(7)系统软件的结构设计:通过对本系统的详细分析,软件模块结构设计目标如下:系统主要应完成的功能如下:信息管理,房间管理,住宿管理,出入管理,违纪管理,用户管理等。(8)结构设计:本系统在运行时,可以根据不同的使用需要,选择不同的功能模块进入相当的系统使用;同时,为了方便对系统的快速操作,本系统设计了几个功能集成模块,可以对一些数据进行统一的快速操作;并为了系统的安全考虑,本系统设立了密码修改等功能。1.2.3 经济可行性主要从对项目的经济上进行分析评价,一方面是支出的费用,包括设备购置费、管理和维护费用、人员工资和培训费
12、等,另一个是取得的收益。这是个超小型的管理系统,从投入的人力,财力与物力来讲是非常之小的,只要一台电脑,一台打印机,这个系统就可以搞起来,考虑到学校里有电脑,现只要购置一台打印机就可以了。从节省人力方面,可以让管理人员从繁与复杂的工作中解脱出来,做更多的工作,可以给宿舍里的管理提高一个层次。并且,分析系统开发是否会对其它产品或利润带来一定影响。经过对上述几个方面的调查研究和分析,我们得出学生公寓管理系统这个软件的市场前景是相当客观的,在经济角度来说,开发学生公寓管理系统是可行的。1.2.4 技术可行性技术技术可行性分析主要包括四个方面:目前有关的技术能否支持所开发的新系统;新系统开发人员的数量
13、和水平,即人力资源;硬件和软件资源。从这些方面考虑技术的可行性。 技术上的可行性分析要考虑将来要采用的硬件和软件技术能否满足用户提出的要求(如计算机的容量、速度等) 。根据客户提出的系统功能、性能及实现系统的各项约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术以较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。此外,还要考虑开发人员的水平,做为计算机信息管理专业毕业的优等生,数据库设计方面对于我们应该还过得去,在宿舍里生活了两年,对这个管理模试应该比较的熟。所以在仔细查询资料后,通过和组员
14、的配合,终于在两周后做了出来。1.2.5 操作可行性主要是管理人员对开发信息系统是否支持,现有管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。公司领导非常重视信息系统的建设,对于系统的开发给予了大量的支持,中层管理人员对此也有共识,最终操作人员对新系统也表示欢迎。系统建成后,虽然将改变原有的工作方式,但系统操作简单、易于理解,操作人员经过短时间的培训就可以使用该系统。1.3 项目开发1.3.1 开发目的本设计的目的主要是为了检查我们综合运用以前所学知识的能力,开发一个多功能的学生公寓管理系统。为了方便公寓管理人员在数据方面的管理,结合当今各学校的宿舍管理,为了能全面、准确、有效地
15、管理学生公寓的各种信息而开发与研制的一个系统。其主要功能是快速适应现代化物管水平和解决工作人员繁重而冗长的工作量。使得他们在学生公寓的各方面都会达到事半功倍的效果,减轻了人力的负担,方便了数据的存储,增加了安全性。本次课程设计不仅考查了我综合运用以前所学知识的能力,同时也锻炼了我的实际动手能力,对于我以后工作能力的培养具有重要的意义。1.3.2 项目背景在当今的社会,可以说的信息技术的发展时代,在社会的方方面面无不涉及到各种信息的处理。信息是人们对客观世界的具体描述,是人们进行交流与联系的重要途径。人类社会就处在一个对信息进行有效合理的加工中。它将促进整个社会的发展。随着社会信息技术的提高,计
16、算机已被广泛应用于当今社会的各个领域,成为推动社会发展的首要技术动力。其中教育事业是我们社会发展的重中之重。因此,本次设计我选择了具有一定实际应用价值且是各大高等院校中不容忽视的课题学生宿舍管理系统。高等院校的教学管理是一项系统工程,而对学生宿舍的管理是常规管理的一项基础工程。随着高等教育事业的发展,对高校的各项管理提出了越来越高的要求。若我们继续采用传统的管理方法和管理工具来进行教学管理,就不能满足科学的、现代化的管理要求。在计算机科技迅猛发展的今天,在高校的教学改革不断深入发展的今天,要想提高办学水平,就必须把管理水平提高到一个新的高度来认识,并付诸实践。因此,为学生宿舍建立一个行之有效的
17、、程序化的管理系统,用科学的、现代化的手段来管理学生宿舍,是优化教学管理、提高教学质量的迫切需要。哈尔滨工业大学作为国家重点大学,更应该有一个与现代化技术相接轨的管理系统,走在现代化科技的最前沿,以提高办学的综合水平,为高校建设奠定坚实的基础。该系统的实施,将使我们及时地、全面准确地掌握全校学生宿舍的基本情况、寝室人员的查询等各方面的情况,更好地管理学生宿舍,调动广大教师的积极性,并能在这个基础上研究、探索教学规律,及时调整、优化寝室管理过程;该系统还设置了适当的管理员使用权限,数据的增加、删除和修改等维护措施;方便校方对学生宿舍的全面考核方面提供了客观的依据。另外,使用计算机对学生宿舍进行管
18、理,具有手工管理无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够大大减少了管理人员的工作量,提高办事效率。希望能在生活中对管理学生有所帮助。1.3.3 项目概述在现代的学生宿舍管理工作中,由于高校扩招,学生人数巨增,传统的管理方法已经不适合高校宿舍管理的需要,以前在管理方面采用的管理系统有一些落后,随着学生人数的不断增加,该系统在数据管理方面有一些混乱,越来越不能适宜管理的需要,因此需要一个功能更完善,操作更方便,容量更大的管理信息系统。因此宿舍管理系统是各大高校所需要使用的一个管理系统由于宿舍系统是一个比较大型的信息管理系统,它需要专业的
19、工作人员才能完成复杂的功能,而且不同的高校的管理内容和方式有所不同其目的在于加深对信息系统基础理论和基本知识的理解,初步掌握使用信息系统分析、设计的基本内容和方法,提高解决实际问题的能力。作为学习,我们设计这个管理系统不可能作一个标准的应用系统,而只是制作了一个有一般代表意义的小型宿舍管理系统。这样既深化了理论知识也提高了实践能力。1.3.4 项目开发计划1.开发任务阶段分三个大的阶段第一阶段进行资料的查询工作,开发第二阶段完成本系统的数据流图跟 E-R 图。第三阶段完成概要设计跟详细设计。第四阶段书写文档。2.资金预算。 软件资金投入较少,具体预算分配简略。 3.关键问题各模块之间的联系和后
20、台数据库的完成。使用目前的设备与现有开发技术完全可以开发出该系统,总的来说该项目没有较大的技术难点与其他的一些风险因素。对于出现的一些小难点总都能得到解决。1.3.5 开发工具介绍本系统采用 Visual Studio 2010 与 Microsoft Office Access 2010 作为开发工具,以 C#为主要编程语言,Access 数据库为后台开发。其中 Visual Studio 是微软公司推出的开发环境,是目前最流行的 Windows平台应用程序开发环境。Visual Studio 2010 版本于 2010 年 4 月 12 日上市,其集成开发环境(IDE)的界面被重新设计和组
21、织,变得更加简单明了。Visual Studio 2010 同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview-CTP),并且支持开发面向 Windows 7的应用程序。除了 Microsoft SQL Server,它还支持 IBM DB2 和 Oracle 数据库。Microsoft Office Access 是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点,是 Microsoft Offi
22、ce 的系统程序之一。Microsoft Office Access 是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它是微软 OFFICE 的一个成员, 在包括专业版和更高版本的 office 版本里面被单独出售。MS ACCESS 以它自己的格式将数据存储在基于 Access Jet 的数据库引擎里。它还可以直接导入或者链接数据( 这些数据存储在其他应用程序和数据库)。软件开发人员和数据架构师可以使用 Microsoft Access 开发应用软件,“高级用户”可以使用它来构建软件应用程序。和其他办公应用程序一样,ACCESS 支持 Visual Basic
23、宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括 DAO(数据访问对象),ActiveX 数据对象 ,以及许多其他的 ActiveX 组件。可视对象用于显示表和报表,他们的方法和属性是在 VBA 编程环境下,VBA 代码模块可以声明和调用 Windows 操作系统函数。1.4 总结 通过以上两点的分析,编写或开发这个公寓管理系统是可行的,只要这个系统能实现对学生基本情况的录入、学生情况查询、资料修改与删除、出入管理、学生注册、用户管理等就可以了。如果技术方面可行,浏览与查询方面的功能应该编写得强大一点,再好有条件组合的查询,可以实现按男女生分类查询,也可以按专业、寝室号、籍贯等分类查
24、询,以便学校方面管理人员可以很方便的查询想要的数据,以便进行统一管理,统一安排。在我们经过认真地可行性研究,系统基本上做到了在技术、经济、运行、法律上的可行。因此,相信在按照计划上实施的前提下,全系统的设计将会按时、高质量完成。所以,系统研制和开发是可以马上进行的。2 需求分析需求分析工作是软件生存周期中重要的一步,也是起决定性的一步。我们在这个阶段要准确的回答系统必须作什么。我们试图通过它来全面了解整个系统的软件功能和性能方面的要求,为软件设计打下坚实的基础。要对目标系统提出完整、准确、清晰、具体的要求。学生公寓管理系统需求分析的目标主要有:获得当前系统的物理模型,了解当前系统是如何运行的;
25、抽象出学生公寓管理系统的逻辑模型,对物理模型进行筛选,得到与软件系统有关的部分;建立学生公寓管理系统的逻辑模型,得出数据流图和数据字典;补充目标系统的逻辑模型最后画出分层次的数据流图、E-R 图、数据字典、和算法描述等。2.1 任务需求分析数据库需求分析是数据库结构的第一个阶段,也是非常重要的一个阶段在这个阶段主要是收集其本的数据,数据结构及数据处理的流程,组成一份详尽的数字字典,为以后进一步设计打下基础。在大学中为了减少公寓管理人员大量繁琐的工作。公寓管理人员通过使用本系统,可以随时根据需要,查询公寓、房间、来访人员、出入查询等一系列的信息,对学生公寓管理系统中的数据进行录入、添加、删除和查
26、询,并可以根据特定条件对数据进行查询。减少学校在学生公寓管理方面的人力和物力的投资。学生公寓管理系统功能强大、操作简单,拥有友好的界面,适用于各类学校的学生公寓管理。主要涉及到的要分析的任务和需求有:(1)信息要求:宿舍楼管理员能查询上面提到的宿舍楼的所有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,报修的所有信息,夜归的详细信息和学生的基本信息。以利于对整个宿舍楼的全面管理。(2)处理要求:当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;或者学生转换专业,他们记录中院系的信息也要作相应的修改等等。当宿舍楼的
27、电话号码发生变更时,宿舍楼管理员能根据有关证明做出修改。当宿舍财产报修及时解决后,管理员应登记解决时间,表明该报修问题已成功解决。(3)安全性要求:.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;.系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生) ,管理员。当然这是为后期做高级数据库系统打下基础的。(4)完整性要求:.各种信息记录的完整性,信息记录内容不能为空;.各种数据间相互的联系的正确性;.相同的数据在不同记录中的一致性。在数据库需求分析后
28、应该得到一个数据字典文档,包括:数据项:包括名称,含义,类型,取值范围,长度以及和其它数据项之间的逻辑关系。数据结构:若干个数据项的有意义的集合,包括名称,含义以及组成数据结构的数据项。数据流:指数据库中数据的处理过程,包括输入和输出。针对本系统:通过宿舍管理内容和过程进行分析,所设计的数据项和数据结构如下:学生基本信息:包括的数据项有:姓名,学号,性别,专业,班级,院系。宿舍情况:包括:宿舍号,宿舍楼号。住宿分配情况:包括:宿舍楼号,宿舍号,学号。学校院系,专业,年级和班级结构表.包括:院系,年级,专业和班级。用户表,包括:用户名,密码和自动编号。2.2 系统流程图在进行可行性研究时需要了解
29、和分析现有的系统,并以概括的形式表达对现有系统的认识;进入设计阶段以后应该把设想的新系统的逻辑模型转变成物理模型,因此需要描绘未来的物理系统的概貌。系统流程图是概括地描绘物理系统的传统工具。它的基本思想是图形符号以黑盒子形式描绘组成系统的每个部件(程序、文档、数据库、人工过程等) 。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。图 2.1 系统流程图2.2 数据流图数据流图是一种能全面的描述信息系统逻辑模型的主要工具,它与对系统的物理描述无关。由于图形描述简明、清
30、晰,不涉及到技术细节,所描述的内容面向用户,是系统分析员和用户进行交流的有效手段。绘制数据流图的主要原则是明确系统界面、自顶向下逐层扩展。首先在调研的基础绘制出最高层的关联图;然后确定系统的几个主要逻辑功能绘制出顶层图,再逐层分解,得出下一层的数据流图;同事布局还要合理。数据流图的形成过程是整个系统逻辑模型的形成过程。数据流图的四种基本元素为:外部实体:系统与外部有关联的人或单位;数据流:流动的一向或一组数据,也表示数据文件的存储操作;处理:也成为功能,它对输入数据流进行处理,形成输出数据流;数据存储:用于存储数据的文件等;本数据流图中采用的基本成分的符号如图 3.1 所示:数据源点终点 变换
31、数据的处理 数据存储 数据流图 2.2 数据流图的基本符号2.3 数据字典 数据字典是关于数据的信息的集合,也就是对数据中包含的所有元素的定义的集合,它为软件开发人员提供数据库设计的参考,并为用户了解系统时作为一个必有工具。 本数据字典主要定义数据字典 5 个主要字段内容,具体说明如下: 1.名字:数据元素的名字,作为在数据流图中的标识符,显示数据流 的内容。 2.别名:数据元素的另一个名字,其作用是对于 a. 对于同样的数据,不同的用户使用了不同的名字; b. 小组开发人员可能对同一数据使用了不同的名字; c. 小组不同的开人员对同一数据流使用了不同的名字; 3.描述:是对这个名字代表的数据
32、流进行简要的描述,以加深理解; 4.定义:对这个名字代表数据流的详细定义其组成部分; 5.位置:表示这个数据流的来源;数据字典卡片: (1)学生信息卡片(2)房间信息卡片(3)来访登记卡片(4)入住登记卡片(5)违纪登记卡片(6)出入登记卡片(7)登录信息卡片2.4 代码设计通过代码设计将本管理信息系统中的管理对象数字化及字符化,以代码的形式表示客观事物的实体类别,从而使计算机能够识别和处理管理对象。设计中尽量考虑代码的适用性、合理性、简明性、系统性、稳定性、可扩充性、标准性和便于识别记忆等原则。3 概要设计3.1 概述学生公寓管理系统作为数据库项目应用的一种,在开发时,首先要明确用户对该系统
33、的需求,也就是用户希望所开发的系统具有什么样的功能,然后开发人员在理解明确用户需求的基础上对需求进行分析,最后根据需求分析结果设计系统的功能。学生公寓管理系统的主要功能是对学生公寓进行智能化管理,包括对公寓基本情况的设置,对学生的住宿、离校、调整、客人来访、晚归等情况的管理,公寓内物品管理等。每个公寓都有为学生服务的做作人员,这些工作人员的信息也应该进行管理。为了系统的安全性,还要对使用该系统的人员做一下分类处理,以保证信息的安全。3.2 功能需求经分析该学生公寓管理系统应该具备以下功能:(1)登陆功能:启动程序,初始化系统。(2)信息管理:包括信息录入、查询、修改、删除等。(3)住宿管理:包
34、括住宿情况、办理入住、办理迁出、来访人员登记、人员查询等。(4)房间管理:包括房间录入、房间查询等。(5)出入管理:包括出入登记、出入查询等。(6)违纪管理:包括违纪登记、违纪查询等。(7)用户管理:用户设置和数据备份。3.3 软件模块结构设计系统软件功能结构采用 HIPO 分层技术,自顶向下逐步分解,以 HIPO 分层图为描述工具表示本系统的模块层次结构。模块设计是主要考虑是尽量提高模块功能的独立性与简化模块之间的接口,采用以变换为中心和以实物为中心相结合的分析方法进行模块设计,根据模块独立原理对软件结构进行精化。为了合理的分解,得到尽可能高的内聚、尽可能松散的耦合,最终得到一个易于实现、易
35、于测试和易于维护的软件结构,因此在设计中应该对模块进行再分解或合并。最终设计结果以模块层次图表示。3.4 系统整体结构图“学生公寓管理系统”的设计与开发,能够为学生提供快捷方便的查询基本信息。管理员能够对学生的基本信息进行录入、查询、修改和删除功能,方便学生入住登记与查询,同时对来访人的信息录入及查询,大大方便了管理员的工作,及查询信息的方便性。 3.5 数据库设计数据库设计是在选定的数据库管理系统基础上建立数据库的过程。经过系统分析阶段的工作,开发人员对现行管理系统的信息处理步骤和方法都已掌握。在对系统分析阶段的工作成果:数据流图、数据字典进一步分析的基础上,使用实体关系图(E-R)工具对整
36、个系统的数据库结构进行设计。在数据库设计中相当重要的一步就是将概念模型转化为计算机上 DBMS 所支持的数据模型。实体 属性 联系图3.2 E-R 图的组成元素3.5.1 E-R 图的实体及属性学生(姓名、学号、性别、班级、入学年份、所属系别、联系电话、登记日期、入住日期)房间(栋号、房间号码、入住性别、可住人数、入住人数、空缺人数)来访人员(姓名、性别、证件号)3.5.2 系统 E-R 图根据对数据流图和数据字典的分析,我们可以确定该应用中的实体,属性和实体之间的关系。根据以上分析规划出的实体有:学生、房间、来访人员。(1)来访人员实体 E-R 图(2)房间实体 E-R 图(3)学生实体 E
37、-R 图(4)系统综合 E-R 图3.5.3 关系转换规则E-R 图向关系模型转化要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。对于实体,将每个实体转换为一个关系,实体的属性即为关系的属性,实体的码即为关系的码。对于实体间的联系,有以下三种不同的情况:若实体间的联系为1:1,可以在两个实体转换成的两个关系中任意一个关系的属性中加入另一个关系的码。若实体间的联系为1:n,则在 n 端实体转换成的关系中加入1端实体转换成的关系码。若实体间的联系时 n:m,则将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合。4 详细
38、设计4.1 表设计进一步确定以上关系模式中数据项的类型和长度,将每个关系转换为数据库中的二维表格,并确定了各个表的主码和外来码,得到以下表结构:1. 登录信息表登录信息表是对用户所设置的登录信息的存储及调用,登录信息中包括用户名、密码、身份等。如表 4.1 所示:表 4.1 登录信息表字段名 数据类型 数据长度 可否为空 说明用户名 Varchar 10 否 用户登录名密码 Varchar 20 否 登录密码身份 Varchar 10 否 用户权限2. 学生信息表学生信息表是对在校学生基本信息的统计,主要包括姓名、学号、性别、班级、入学年份、所属系别、联系电话、登记日期。如表 4.2 所示:表
39、 4.2 学生信息表字段名 数据类型 数据长度 可否为空 说明姓名 Varchar 10 否 学生姓名学号 Int 10 否 主键性别 Varchar 2 否 学生性别班级 Varchar 20 否 所在班级入学年份 Int 4 否 入学的年份所属系别 Varchar 20 否 所在系别联系电话 Int 12 是 联系方式登记日期 Datatime 10 是 入学日期3. 房间信息表房间信息表是对学生公寓中房间和房间入住情况的统计,主要包括栋号、房间号码、入住性别、可住人数、入住人数、空缺人数。如表 4.3 所示:表 4.3 房间信息表字段名 数据类型 数据长度 可否为空 说明栋号 Int 5
40、 否 主键房间号码 Int 5 否 宿舍号入住性别 Varchar 2 是 学生性别可住人数 Int 5 是入住人数 Int 5 是空缺人数 Int 5 是4. 来访登记表来访登记是对来访人员基本信息及相关信息的登记,主要包括日期、来访人、证件号码、被访人姓名、栋号、被访人房间、来访原因、来访时间、离开时间。表 4.4 来访登记表字段名 数据类型 数据长度 可否为空 说明日期 Datatime 10 否 来访日期来访人 Varchar 10 否 来访人姓名来访人性别 Varchar 2 是 访客性别证件号码 Int 50 否 主键被访人姓名 Varchar 10 否 学生姓名栋号 Int 5
41、是 公寓号被访人房间 Varchar 5 否 宿舍号来访原因 Varchar 50 是 来访的原因来访时间 Datatime 10 是 访问的时间离开时间 Datatime 10 是 离去的时间备注 Varchar 20 是5. 出入登记表出入登记主要是对学生出入公寓时的登记,包括学号、姓名、栋号等。表 4.5 出入登记表字段名 数据类型 数据长度 可否为空 说明学号 Int 10 否 主键姓名 Varchar 10 否 学生姓名栋号 Int 5 否 公寓号房间号码 Int 5 否 宿舍号所属系别 Varchar 20 是 所在系别班级 Varchar 20 是 所在班级出入时间 Datati
42、me 10 是 出入公寓时间宿管员 Varchar 10 是6. 入住登记表入住登记是学生申请入住公寓时登记的基本信息,包括栋号、房间号码、床位号、学号、姓名、性别、所属系别、班级、入学年份、联系电话、入住日期。表 4.6 入住登记表字段名 数据类型 数据长度 可否为空 说明栋号 Int 5 否 入住公寓号房间号码 Int 5 否 入住宿舍号床位号 Int 5 是 所住床位学号 Int 10 否 主键姓名 Varchar 10 否 学生姓名性别 Varchar 2 否 学生性别所属系别 Varchar 20 是 所在系别班级 Varchar 20 是 所在班级入学年份 Datatime 4 是
43、 入学的年份联系电话 Int 12 是 联系方式入住日期 Datatime 10 是 入住的日期7. 违纪登记表违纪登记是对违纪学生及违纪时间、违纪行为、处理结果的登记,包括学号、姓名、栋号、房间号码、院系、班级、违纪时间、违纪行为、处理结果、宿管员。如表 4.7 所示:表 4.7 违纪登记表字段名 数据类型 数据长度 可否为空 说明学号 Int 10 否 主键姓名 Varchar 10 否栋号 Int 5 是 所在楼房号房间号码 Int 5 是 所在宿舍号院系 Varchar 20 是 所属院系班级 Varchar 20 是 所在班级违纪时间 Datatime 10 是 违纪的时间违纪行为
44、Varchar 50 是 违纪的原因处理结果 Varchar 50 是 处理结果宿管员 Varchar 10 是4.2 人机界面设计人机交互界面设计是接口设计的一个重要组成部分。对于交互式系统来说,人机界面设计和数据设计、体系结构设计及过程设计一样重要。在设计人机界面的过程中,几乎总会遇到下述 4 个问题:系统响应时间、用户帮助设施、出错信息处理、命令交互。系统响应时间是许多交互式系统用户经常抱怨的问题。一般来说,系统响应时间指从用户完成某个控制动作,到软件给出预期响应之间的这段时间。常见的用户帮助设施可分为集成的和附加的两类。当遇到复杂的不能解决的问题的情况,用户的第一选择就是查看帮助和用户
45、手册来寻找解决问题的方法。我们的软件为用户提供了强大的帮助文件和用户手册,用户可在期中查询到各种问题的解决方法和软件的用法提示。出错信息和警告信息,是出现问题时交互式系统给出的“坏消息” 。出错信息设计的不好,将向用户提供无用甚至误导的信息,反而会加重用户的挫折感。命令行曾经是用户和系统软件交互的最常用的方式,并且曾经广泛应用于各种应用软件中。而我们的软件考虑到客户人群的水平后并没有设计这个功能。4.2.1 一般交互设计一般交互涉及信息显示、数据输入、和系统整体控制等方面。(1)保持一致性。为客户交互界面中的菜单选择、命令输入、数据显示以及众多的其他功能,使用一致的格式。(2)信息的反馈。向用
46、户及时提供视觉和听觉的信息反馈,以保证在用户和系统之间及时地建立双向通信。在本系统设计过程中,基本做到了信息的及时反馈,在信息显示的大部分窗体中包括了刷新按钮,会对数据库中的数据进行及时地显示。另外,在进行错误操作是,会弹出提示窗口并发出警告提示音。(3)执行有较大影响的操作前提示用户确认。在设计过程中,如果用户要执行删除操作,以及对数据库的读写操作时,都会有窗体弹出询问继续操作或者予以提示。(4)减少两次操作间需要记忆的内容。为了避免用户为下一步操作而记忆大量数据,所以在设计过程中在需要数据传递的窗体中设置全局变量,来传递数据。(5)对话、移动和思考的效率。尽量减少用户击键的次数,在设计时考
47、虑到了用户屏幕的布局以减少用户鼠标移动的距离,尽量避免用户在操作中发生疑问的情况。(6)允许错误。允许用户的误操作尽量不对系统造成伤害。(7)按功能对动作分类,并据此设计屏幕布局。屏幕布局尽量将软件所具有的所有功能在主页面展示,界面一目了然。4.2.2 信息显示设计应当尽量为用户提供的界面显示时完整的、明确的和容易理解的。这样才能满足用户的需求。使用不同的方式显示信息:用文字、图形、声音,按位置、移动和大小,使用颜色和省略等方式传达信息。(1)只显示与当前工作有关的信息。在用户操作有关系统的特定功能的信息时,不必看到与之无关的数据、菜单和图形。(2)使用便于用户迅速吸收数据的方式来表示数据。在
48、系统设计的过程中,较多地使用了图表的形式表示数据,例如在分析中就使用了柱状图的形式表现了复杂的数据。这样,用户可以直观的体会到图表所表示的含义。(3)使用一致的标记、标准的缩写和可预知的颜色。为了使系统所表达的含义准确、无误,就必须适用一致的标记、标准的缩写和可以预知的缩写,这样用户就无需参照其他信息源就能理解,而正确地适用软件。(4)产生有意义的错误信息。对于系统在运行过程中产生的错误尽量给用户返回一个容易理解的错误信息,以使用户保持对系统的信任,和系统的可用性。(5)使用窗口分隔不同类型的信息。使用不同的窗口显示、保存不同类型的信息。(6)高效率的使用显示屏。当使用多窗口时,应该有足够的空
49、间使得每个窗口至少都能显示出一部分。此外,屏幕的大小应该选得和应用系统的类型相配套。在各个显示数据的窗口中,由于数据窗体项目较多,所以在数据窗体空间中较多的是用了垂直和水平滚动条,以保证信息的全面正确显示。4.2.3 数据输入设计用户的大部分时间用在选择菜单命令、键入数据和向系统提供输入。在系统中,键盘是主要的输入介质,但是鼠标等设备的也是重要的输入手段,所以,对于他们的数据输入操作有如下约定:(1)尽量减少用户的输入动作。为了方便用户的使用,鼠标应当尽量减少操作的幅度。(2)保持显示信息和输入信息之间的一致性。对于用户来说,要保证其输入的数据在显示上与其他显示的视觉特征(例如:文字大小、颜色、位置等)要一致。(3)允许用户自定义输入。用户可能希望定义自己专用的命令或略去某些类型的警告信息和动作确认,人机界面应该为用户提供这样做的机制。(4)交互应该是灵活的,并且可调整成用户最喜欢的输入方式。用户类型与喜欢的输入方式有关,不同的用户喜欢不同的输入方式。(5)使用当前动作语境中不适用的命令不起作用。这可使得用户不去做那些肯定会导致错误的动作。(6)让用户控制交互流。用户应该能跳过不必要的动作,改变所需做的动作的顺序,以及在不退出程序的情况下从