大家好,今天给大家介绍基于C#+asp.net+sqlserver的实验室预约模型系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦
文章目录:
项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:12146个字26页
包含内容:整套源码+完整毕业论文
提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。
基于B/S结构的开放实验室预约系统针对原有手工管理效率低下,缺乏安全性、可控性等缺点,以校园网为依托,采用科学、高效的教学管理方式,使教师预约实验室比原来更加方便、快捷。
开放实验室预约系统将具有良好的开放性、扩展性、完善的系统功能,能全面满足对实验室大量信息进行管理等需求。整个系统既为学生、教师提供了一个简单易用的浏览界面,也为管理员提供了一个通用的、友好的、易扩展的管理界面,并对以后进一步扩大管理系统的规模提供了良好的建设平台,具有很好的灵活性。
1.2 开发背景
实验室是高等院校实施素质教育、培养学生创新精神与实践能力的重要基地。实验室对教师和学生开放,为教师和学生提供实践教学条件是实现教学改革的重要内容。
目前,传统的实验室管理方式为:教师通过电话或到实验室进行实验室预约的申请,管理员用手工记录实验室预约情况,管理员根据教师申请的具体条件和时间进行实验室分配,电话通知教师实验室预约成功或失败。传统的操作方式比较繁琐,工作量大,操作也不规范。
为了提高实践教学水平,规范实验室开放管理,迫切需要一套能够替代传统管理方式的实验室预约系统。因此,决定开发本系统,运用信息技术和计算机管理技术,建立实验室预约平台,在网上公布实验室开放状态,容纳人数等信息,并采用网上预约的形式,方便教师通过网络实时查看实验室开放情况,也方便学生通过网络了解实验课程状况。
1.3 开发目标
本次开发,将实现实践教学的动态、开放性管理,达到提高实践教学的工作效率,优化资源配置,提高实验管理水平的目的。主要开发目标如下:
1.4 功能介绍
本系统是基于B/S结构的开放实验室预约管理系统,由于学生在完成了本学期学院理论课程的选课后,在已确定选中的课程中,部分课程含有实验教学部分(包含独立的实验课程)。因此,负责实验教学的指导教师将进行实验室的预约以方便教学。实验室管理员发布学院所开放的实验室基本情况(包括实验教室、实验项目、容纳人数、管理员等信息),指导教师可以根据实际的教学安排,通过学校校园网自主地对实验室进行预约(实验教室和实验时间)。
1.5 系统特点
系统共设有用户注册/身份验证、实验室预约、预约情况查询、管理员管理等四个主要的功能模块,满足了教师进行实验室预约、实验室管理员进行管理、学生进行实验室预约情况的查询等各个方面的需求。它具有网络化、智能化、高性能、低维护、界面友好、操作简单、功能强大、管理方便、平台优秀等一系列的优点,能够完全按照用户的需求,稳定、安全、快速地运行于校园局域网之上,实现了校园网内的任意计算机都能进行实验室预约信息的查询,进行实验室预约操作,访问相关信息。从而充分利用了学校现有的资源,促进了教学管理系统的网络化,智能化,顺应了教学管理的发展趋势。
1.6 预约过程
整个预约过程分两个阶段:
初步预约阶段
指导教师根据实验教室、实验时间及学生人数等实际情况,按照“先来后到”选中原则进行实验室的预约。
确认预约阶段
为了充分利用学院教学资源,部分教师的实验室预约申请因学生人数少或与其他教师的预约相冲突,而被管理员取消,所以指导教师在预约的实验室使用前三天,务必在预约系统中查询确认所选的实验室是否选中,详情请查询“系统消息”或实验室预约情况。
预约过程如图1所示:
图1 预约过程
6. 系统设计
2.1 系统实现基础
2.1.1 概述
本系统工作在B/S模式下,实际上是一种3层模型,包括前台用户窗口、后台数据库和中间应用程序。用户窗口围绕主页展开,主页设计采取自顶向下的规则,逐级分解各功能链接点的子功能。
系统开发平台:
Microsoft Windows server + IIS 5.0 + IE 6.0;
Microsoft SQL Server Enterprise Edition ;
Microsoft .NET Framework SDK 1.1 + MDAC 2.7。
系统开发工具:
Macromedia Dreamweaver8;
Microsoft SQL Server Enterprise Edition;
Microsoft Visual Studio.NET 。
系统要求服务器端运行于安装了IIS服务器组件的Windows Server及以上版本的Windows平台。为了提供对.NET应用和ASP.NET数据库通信的支持,系统还必须下载安装Microsoft .NET Framework(.NET框架)和Microsoft Data Access Components (MDAC)2.7。同时还应当安装7.0版本以上的Microsoft SQL Server数据库系统提供后台的数据库服务
系统对客户端基本没有要求,凡是安装有Web浏览器并能对校园网进行访问的计算机都可以作为客户端使用。
图2系统体系结构图
2.1.2 Microsoft SQL Server 简介
省略
SQL Server 对数据仓储的支持主要表现在:可伸缩性,数据转换服务,索引视图,数据挖掘,综合性分析服务,联机分析处理, OLAP灵活性,可支持Web的分析,元数据服务。
本次设计将SQL Server 作为系统的后台数据库。
2.1.3 ASP.NET 简介
.NET是一个理想化的未来互联网环境。.NET被定位为可以作为平台支持下一代互联网的可编程结构。.NET的最终目的是让用户随时都能访问所需要的信息、文件和程序。
ASP.NET 是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的Web应用程序。ASP.NET是一个基于.NET框架的编译环境,可以用任何.NET兼容的语言创建应用程序。另外,整个.NET框架可用于任何ASP.NET应用程序。包括管理的公共语言运行库环境、类型安全、继承等。与以前的Web开发模型相比,ASP.NET具有以下优点:增强的性能、世界级的工具支持、威力和灵活性、简易性、可管理性、可缩放性、可用性、自定义性和扩展性。
本次设计将采用ASP.NET 作为前台开发工具。
2.1.4 ADO.NET简介
Microsoft通过ADO.NET为编程人员提供了功能强大的数据访问能力。在ADO.NET中通过Managed Provider所提供的应用程序编程接口(API),可轻松地访问各种数据源的数据包括OLEDB所支持的和ODBC支持的数据库。ADO.NET的优点主要表现在这几个方面:互操作性、可维护性、可编程性以及可扩展性。
ASP.NET作为Web应用程序的开发工具,可以用来开发前台应用程序界面,但对后台数据库的操作就有些力不从心了,而ADO.NET则是专门针对数据库进行操作,而且专门为SQL Server数据库定义了一系列的操作规范以及操作函数、方法、对象。在应用程序的创建过程中,将它们结合在一起,可以使软件功能更加完美,并是它们充分发挥各自的优点。
2.2 系统功能设计
通过对用户需求调研并分析,确定本系统应该具备的功能,包括:用户注册/身份验证、实验室管理、实验室预约和预约情况查询。各模块的具体功能设计如下:
用户注册/身份验证功能
提供给用户注册和登录接口,实现教师、学生、管理员三者身份的用户注册、修改、添加、删除管理等。
实验室管理功能
提供接口为管理员管理实验室服务,使管理员能够添加、修改、删除实验教室及相关信息,能够对学生、教师的基本信息进行管理,对公共信息的发布管理以及对实验室预约进行受理等。
预约实验室功能
提供接口为教师预约服务,功能有:实验室状况列表,已经预约的情况,通知服务等。
预约情况查询功能
提供接口为用户(教师、学生和管理员)查询服务,如实验室的使用情况查询、教师的预约情况查询、其他查询服务等。
2.3 功能模块划分
2.3.1 基本模块划分
按不同用户的权限划分,本系统主要包括以下几个模块,如图3所示:
图3 基本模块划分
2.3.2 超级管理员模块
超级管理员模块划分如图4所示:
图4 超级管理员模块
超级管理员模块具体功能如表1所示:
表1 超级管理员操作模块
图5管理员模块
图6 教师模块
图7学生模块
2.4 数据库结构设计
2.4.1 数据库设计概述
省略
2.4.2 数据库组成
数据库名称:LabBooking
数据库文件:LabBooking_Data.MDF
事务日志文件:LabBooking_Log.LDF
2.4.3 数据库建表
根据本系统各个功能模块的需要,在数据中建立了若干张表,下面列出各主要表的相关信息:
2.5 系统安全性设计
本系统是一个基于Web网络的开放式系统,它可以被校园网中的任何一台计算机访问,同时它又包含了一些比较敏感的数据,不允许随意地被更改或删除,因此维护站点的安全性就显得尤为重要。
ASP.NET提供了多种强大的身份验证机制,考虑到系统运行的实际情况,本系统采用了基于表单的身份验证方式。它建立在cookie的基础上,当用户登录到ASP.NET应用程序上时,ASP.NET会发出一个用于身份验证的cookie,在以后的Web请求中,该cookie会在服务器和客户机之间来回传送,用于验证用户请求的合法性。
实验室预约系统放置于系统根目录下的LabBooking文件夹中。通过在该文件夹中放置一个名为Web.config的XML文件,就可以实现对文件夹中的所有页面的保护。
当客户端请求该文件夹中的页面时,Web.config文件会对收到的请求进行验证,如果请求中包含所需的cookie文件,则可顺利提供响应;如果请求中不含有所需的验证信息,则ASP.NET会强行将页面定位到login.aspx文件要求用户进行验证,通过后在客户端系统的临时文件夹中生成LabBooking的cookie供以后的请求使用。当客户端退出系统或关闭对应的浏览器窗口时,该cookie将从客户机系统中自动删除,以保护系统的安全。
2.6 系统界面初步设计
省略
2.7 预约冲突处理初步设计
在指导教师使用本系统进行实验室预约时,可能会发生冲突的情况:几个教师在同一时刻预约同一个实验室。本系统在教师提交预约申请时,将尽最大努力避免这种冲突,在冲突发生后,会及时解决冲突。
避免冲突的实现:在指导教师申请预约实验室时,若此时实验室为开放状态且空闲,将成功提交此次申请,并提示“预约成功”;若此时实验室已有教师预约,将提示“已有教师在申请中,但此次申请依然有效”,预约成功;若此时实验室已有教师预约成功且已通过实验室管理员受理,则提示“预约失败”,此时预约申请无效。
解决冲突的方法:为了解决指导教师由于同时申请预约实验室而产生的冲突,本系统采用实验室管理员手工处理的方式来解决。手工处理比起自动处理将具有更加人性化和更加合理化的特点。而本系统也会使用十分友好的、易操作的界面将由手工处理带来的繁琐降到最低程度。若有两个教师同时预约一个实验室,实验室管理员需要进行实验室预约受理,当选中一条预约申请时,系统会提示管理员此时有另外一个教师也预约了这个实验室,这样管理员将视具体情况来决定是否受理申请。
3 系统详细设计与实现
3.1 系统首页的窗体设计与实现
3.1.1 功能描述
这个窗体主要用来实现用户的登录。用户需要输入用户名和密码,并通过单击单选按钮来选择相应的用户身份。学生的用户名为学号,教师和管理员的用户名则为工作证号。当单击“登录”按钮时,系统将根据用户名、密码和用户身份等信息进行用户身份验证,如果在用户数据库中找到相应表项时,系统将允许用户登录。学生将登录到学生首页,教师将登录到教师首页,管理员将登录到管理员首页。当登录信息不符合时,系统将拒绝用户登录,并提示“用户名或密码错,请重新输入”的信息。超级管理员可以直接输入特定的用户名和密码,登录到超级管理员的首页。
当单击注“注册”按钮时,将进入用户注册页面。
3.1.2 界面实现
系统首页的窗体实现如图8所示
图8 系统首页的窗体实现
3.2 预约实验室的窗体设计与实现
3.2.1 功能描述
这个窗体主要用来实现指导教师对实验室的预约提出申请,包括实验教室和实验时间等条件。单击实验室下拉列表中的实验室房间号,则在下面的列表部分会显示此时处于开放状态的实验室。单击周次、日次和节次等时间信息的下拉列表,则在下面的列表部分会显示可以预约的实验时间。单击“提交申请”按钮可以对此次申预约实验室进行申请操作,若此次预约的实验教室和实验时间已经被其他指导教师成功预约并通过实验室管理员的受理,则此次预约失败,提示“实验室此时已经被申请”的信息;若此时实验教室空闲或有其他指导教师申请预约但未被实验室管理员受理,则此次预约成功,提示“申请成功”的信息,即可将新的数据保存到数据库中。
在单击实验室下拉列表,选择要预约的实验室时,在下拉列表后会动态的显示当前选择的实验室的主要信息,包括实验室类型和容纳人数,点击更多能查看到当前选择的实验室的详细信息。
图9 预约实验室的窗体实现
3.3 申请结果查询的窗体设计与实现
3.3.1 功能描述
这个窗体主要用来实现指导教师对实验室预约申请结果的查询,共包括预约申请中、预约已通过、预约未通过三种状态。若预约已通过或未通过时,会显示受理或不受理此次预约申请的管理员。单击实验教室可以查看实验室详细信息(包括实验室房间号、实验室类型、容纳人数、开放状态、简介等信息),单击管理员可以查看管理员的详细信息(包括管理员的联系方式等信息)。单击“退选”按钮可以对此次预约申请进行退选操作,系统将提示“是否进行此次退选”,若选确定,即可将数据从数据库中删除。
在上面的列表部分,单击实验室下拉列表,会显示此时处于开放状态的实验室;单击周次、日次等时间信息的下拉列表,会显示可以预约的实验时间。选择好搜索条件后,单击“搜索”按钮可以对实验室申请结果进行精确的查询操作,若有满足查询条件的实验室申请结果,则会显示在下面的表格中;若没有满足查询条件的实验室申请结果,则在下面的表格中没有任何显示。
点击表格页眉部分的实验室和周次列,则能对表格相应的列内容进行排序。第一次点击为升序,第二次点击为降序,再次点击又为升序,依此规律不断循环。
图10 申请结果查询的窗体实现
3.4 实验室预约查询的窗体设计与实现
3.4.1 功能描述
这个窗体主要用来实现学生、指导教师对实验室预约结果的查询,包括已预约、预约中(学生无权查看此状态)两种状态。若实验室处于预约中的状态时,会显示此次申请预约的指导教师;若实验室处于已预约的状态时,会显示此次申请预约的指导教师和受理此次申请预约的管理员。单击实验教室可以查看实验室详细信息(包括实验室房间号、实验室类型、容纳人数、开放状态、简介等信息),单击管理员可以查看管理员的详细信息(包括管理员的联系方式等信息),单击申请教师可以查看申请教师的详细信息(包括申请教师的联系方式等信息)。
在上面的列表部分,单击实验室下拉列表,会显示此时处于开放状态的实验室;单击周次、日次等时间信息的下拉列表,会显示可以预约的实验时间。选择好搜索条件后,单击“搜索”按钮可以对实验室申请结果进行精确的查询操作,若有满足查询条件的实验室申请结果,则会显示在下面的表格中;若没有满足查询条件的实验室申请结果,则在下面的表格中没有任何显示。
点击表格页眉部分的实验室、周次、日次和节次列,则能对表格相应的列内容进行排序。第一次点击为升序,第二次点击为降序,再次点击又为升序,依此规律不断循环。
图11 实验室预约查询的窗体实现
3.5 基本信息管理的窗体设计与实现
3.5.1 功能描述
基本信息管理包括学生基本信息管理、教师基本信息管理、实验室信息管理和通知服务管理。
学生基本信息管理可以实现对学生信息的修改、删除和查询操作(添加操作在注册中已实现)。包括学生的姓名、密码等信息。同时,能根据不同方式对学生基本信息进行查询。通过点击学号或姓名前的单选按钮,选择要查询的方式,在相应的文本框中输入查询条件,点击查询按钮,若有满足查询条件的学生信息,则会显示在下面的表格中;若没有满足查询条件的学生信息,则在下面的表格中没有任何显示。学号为精确查询,姓名为模糊查询。
教师基本信息管理可以实现对教师信息的修改、删除和查询操作(添加操作在注册中已实现)。包括教师的姓名、密码和联系方式等信息。同时,能根据不同方式对教师基本信息进行查询。通过点击工作号或姓名前的单选按钮,选择要查询的方式,在相应的文本框中输入查询条件,点击查询按钮,若有满足查询条件的教师信息,则会显示在下面的表格中;若没有满足查询条件的教师信息,则在下面的表格中没有任何显示。工作号为精确查询,姓名为模糊查询。
实验室信息信息管理可以实现对实验室信息的添加、修改、删除和查询操作。包括实验室的房间号,实验室类型,容纳人数、开放状态、简介和实验室管理员等信息。若将实验室的开放状态设置为不开放,在教师预约实验室时,将无法对此实验室进行预约,不过依然可以查询该实验室的相关信息。同时,能根据实验室房间号对实验室信息进行查询,在实验室后的文本框中输入查询条件,点击查询按钮,若有满足查询条件的实验室信息,则会显示在下面的表格中;若没有满足查询条件的实验室信息,则在下面的表格中没有任何显示。实验室为精确查询。
通知服务管理可以实现管理员对系统信息的管理,包括信息发布、信息修改和信息删除。信息发布包括信息的题目和内容,发布的对象可以是学生、教师和全体师生。当用户在登录时,会在首页看到实验室管理员发布的最新信息,同时也会看到预约申请受理结果的最新信息。
图12 实验室信息管理的窗体实现
3.6 申请受理的窗体设计与实现
3.6.1 功能描述
这个窗体主要用来实现实验室管理员对实验室预约申请的受理或不受理操作,包括审核中、已受理、未受理三种状态。选择符合受理条件的预约申请,单击其后的复选框,并单击下方的“受理”按钮,若受理成功,会提示“受理成功”的信息,即可将数据库中的数据进行修改,同时以系统消息的方式通知申请教师预约成功。若受理不成功,会提示“受理失败”的信息。同理,选择不符合受理条件的预约申请,单击其后的复选框,并单击下方的“不受理”按钮,若不受理成功,会提示“不受理成功”的信息,即可将数据库中的数据进行修改,同时以系统消息的方式通知申请教师预约失败。若不受理不成功,会提示“不受理失败”的信息。
当选中一条预约申请的复选框时,若系统提示管理员此时有另外一个教师也预约了这个实验室,表明发生了冲突,这样管理员可以视具体情况来决定是否受理申请。
单击实验教室可以查看实验室详细信息(包括实验室房间号、实验室类型、容纳人数、开放状态、简介等信息),单击管理员可以查看申请教师的详细信息(包括申请教师的联系方式等信息)。
在上面的列表部分,单击实验室下拉列表,会显示此时处于开放状态的实验室;单击周次、日次等时间信息的下拉列表,会显示可以预约的实验时间。选择好搜索条件后,单击“搜索”按钮可以对实验室申请结果进行精确的查询操作,若有满足查询条件的实验室申请结果,则会显示在下面的表格中;若没有满足查询条件的实验室申请结果,则在下面的表格中没有任何显示。
点击表格页眉部分的实验室、周次、日次和审核状态列,则能对表格相应的列内容进行排序。第一次点击为升序,第二次点击为降序,再次点击又为升序,依此规律不断循环。
图13 申请受理的窗体实现
4 系统测试
4.1 测试环境
服务器端:运行于Windows 2000 Server,安装了IIS服务器组件,Microsoft .NET Framework(.NET框架)和Microsoft Data Access Components (MDAC)2.7。同时安装了7.0版本以上的Microsoft SQL Server数据库系统提供后台的数据库服务。
客户端:安装有Web浏览器并能对校园网进行访问的计算机。
4.2 功能模块测试
根据系统设计的功能和要求,对系统的超级管理员模块、管理员模块、教师模块,学生模块进行了充分的测试工作,均能满足基本的设计要求。
超级管理员模块:以超级管理员身份登录系统,顺利实现了对管理员的管理、实验室申请的管理和公共信息的管理等功能。
管理员模块:以管理员身份登录系统,顺利实现了对基本信息的管理、学生信息的管理、教师信息的管理、实验室信息的管理、实验室预约的管理和公共信息的管理等功能。
教师模块:以教师身份登录系统,顺利实现了对基本信息的管理、实验室预约和预约查询等功能。
学生模块:以学生身份登录系统,顺利实现了对基本信息的管理、实验室查询等功能。
通过对系统功能模块的测试,确认系统达到了设计要求。
4.3 安全性测试
根据系统安全性设计的要求,对系统的安全性进行了集中的测试。
身份验证:在首页中,只有当正确输入用户名、密码和用户身份时,才能进入系统,若输入错误,系统将拒绝用户登录,并提示“用户名或密码错误,请重新输入”。
非法登录:若想通过在URL中输入地址直接登录到系统,系统将拒绝此次非法登录,将强制链接到首页。
通过对系统安全性的测试,确认系统达到设计要求。
4.4 冲突处理测试
根据系统预约冲突处理设计的要求,对系统的冲突处理进行了集中的测试。
冲突避免:让不同的教师预约相同的实验室,系统在老师预约实验室时实现了冲突避免的功能。
冲突解决:当有冲突发生时,在管理员进行申请受理时,系统给出了正确的提示,帮助管理员解决冲突。
通过对系统冲突处理的测试,确认系统达到设计要求。
结 论
经过这几个月的时间,完成了这套系统的设计与开发。本系统通过计算机网络实现了实验室资源的共享,完成了教师预约实验室、查询预约结果、学生查询实验室安排、管理员对学生、教师和实验室基本信息进行管理,发布系统消息、受理申请等功能,满足了广大师生的需求。其优点是:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低、能够极大地提高工作效率、突破时间和空间的限制。
参考文献
[1] 方睿,刁仁宏,吴四九.网络数据库原理及应用[M].成都:四川大学出版社,2005。
[2] 吉根林,崔海源.ASP.NET程序设计教程[M].北京:电子工业出版社,2005。
[3] Karli Watson,Macro Bellinaso[美].BEGINNING C#[M].北京:清华大学出版社,2002。
[4] Richard Leinecker[美].Special EditionUsing ASP.NET[M].北京:电子工业出版社,2003。
[5] Jesse Liberty[美].Programming ASP.NET[M].北京:电子工业出版社,2007。
[6] 刘晓红,刘翠红.物理实验网上预约系统的设计与实现[D].常州:河海大学常州校区[学士论文],2002。
[7] 肖金秀,冯沃辉,陈少涌.ASP NET程序设计教程[M].北京:冶金工业出版,2003。
[8] 廖信彦.ASP.NET技术参考[M].北京:中国铁道出版社,2001。
致 谢
省略
本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。
序号 | 毕业设计全套资源(点击下载) |
---|---|
本项目源码 | 基于C#+asp.net+sqlserver的实验室预约模型系统设计与实现(源码+文档)C#.net_实验室预约系统.zip |