计算机实验室管理系统设计与实现.docx
《计算机实验室管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《计算机实验室管理系统设计与实现.docx(29页珍藏版)》请在冰豆网上搜索。
计算机实验室管理系统设计与实现
系统分析与设计
课程设计
题目
计算机实验室信息管理系统
学生姓名
指导教师
学院
完成时间
2013.12.20
1.前言
1.1系统必要性分析
随着以信息技术为代表的现代科技时代的到来,现代信息管理手段已经渗透到社会的各行各业。
同样,高校的实验室管理手段也随着信息技术的发展而不断变革和完善。
网上计算机实验室管理作为实验室管理系统的一项功能,可以利用现代化信息技术解决计算机实验室预约过程中出现的问题,改善计算机实验室预约以及设备管理长期处于手工状态的落后局面,提高管理水平和效率。
教师和教学管理人员可以通过计算机实验室管理系统进行教学资源查询和预约功能办理,从而使得现有计算机上机课进行的更加高效规范。
以前学校计算机实验室的预约主要是采取手工操作,先由教师提出预约申请,经学院同意后送教务处,再由教务处根据其所需实验室的类型、使用人数和时间,在课表中查找,对于符合条件的标注记号后,签发实验室预约单。
整个程序繁琐费时、效率低,还时常出现差错,造成实验室预约上的冲突。
尤其是近年来,随着我国高等教育的不断发展,高校办学规模不断扩大,学生人数迅速增加,计算机实验室需要管理的对象日益多样化。
在此背景下,原有的实验室管理模式已不能再满足高等教育发展的需要。
所以开发一套计算机实验室的管理系统是十分有必要的,可以大幅度提高学校的计算机实验课管理效率,方便教师更合理的安排实验课日程。
1.2系统可行性分析
1.2.1经济可行性
系统的开发成本和今后的运行、维护成本都较低。
这些成本远远低于系统投入使用后给高校带来的实际经济效益,同时还会大大提高高校实验室管理的效率,所以经济上是可行的。
1.2.2技术可行性
计算机实验室管理系统使用JSP开发语言,调试相对简单。
当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是可行的。
1.2.3运行可行性
本系统的开发,是典型的Mis开发,主要是对数据的处理,包括数据的收集,数据的变换,及数据的各种报表形式的输出。
采用流行的JSP+Sqlserver2000体系,今后运行维护对于主机的要求很低,所以开发完成后,进行运行和维护是可行的。
2.需求工作流
2.1构建业务模型
2.1.1数据流图
图2-1数据流图顶层图
计算机实验室主要有三个使用对象,分别为实验室管理员,教师和学生。
其中实验室管理员和教师可以向实验室管理系统写入信息同时可以查看实验室管理系统中信息。
学生可以通过实验室管理系统查看信息。
图2-2数据流图0层图
实验室管理系统又可以细分为三个加工,分别为用户管理,实验室相关信息管理(包括基本信息和设备信息),和实验室预约管理。
实验室管理员可以通过用户管理模块增删改查用户信息,同时用户管理模块根据实验室管理员的输入存储相应的用户信息。
实验室相关信息管理加工可以处理管理员的对实验室相关信息的增删改查操作,同时教师可以查看实验室的相关信息。
实验室预约管理加工可以处理教师提出的实验室预约使用请求,同时管理员可以处理这些预约请求,并通过该加工将审核结果反馈给教师。
图2-3数据流图1层图0
继续细分加工之后,形成了一层图,图2-3显示了登录验证的加工,3类使用人员通过登录验证加工的验证之后进入各个相应的管理界面。
图2-4数据流图1层图1
用户管理可以细分为用户存储,用户信息显示,用户信息修改,其中管理员可以增删改查用户信息,学生和教师可以改查个人信息。
图2-5数据流图1层图2
实验室相关信息管理可以细化出6个加工,实验室管理员将实验室信息通过实验室信息存储加工存入实验室基本信息表中,并通过信息显示加工显示相关信息,教师和学生可以查看相关信息。
实验室管理员可以将实验室的设备信息通过实验室设备信息及其对应的实验室等信息存入实验室设备存储表。
教师通过设备损坏记录加工记录设备损坏情况,并存入设备损坏记录表。
教师通过软件安装加工提出软件安装申请,管理员通过申请审核加工审核安装申请,同时将审核信息反馈给教师。
图2-6数据流图1层图3
实验室预约数据流图如上图所示,细化出了四个子加工,教师通过预约单填写加工提交预约信息,实验室管理员查看预约信息,通过预约单审核加工审核预约信息,同时存储实验室使用记录,并将审核信息返回到实验室占用情况显示加工,教师可以查看实验室审核情况。
教师通过实验室通知加工发布实验室上机信息,学生从实验室通知加工获取实验室上课通知。
2.2系统需求
2.2.1用例图
1管理员用例图
图2-7管理员用例图
管理员相关的用例如上图所示,有七个基本用例,分别为实验室基本信息维护、用户信息维护、设备信息维护、预约审核、损坏设备管理、查询以及登录验证用例。
实验室基本信息维护用例包括三个用例,分别为基本信息添加、基本信息修改、基本信息删除,通过这三个用例管理员可以对实验室的基本信息进行增删改操作。
用户信息维护和设备信息维护用例同样也包括三个用例,管理员可以通过这些用例来对用户信息以及设备信息进行增删改操作。
预约审核用例可以泛化出两个用例,分别为实验室使用申请审核和软件预装审核用例。
查询用例可以泛化出实验室信息查询,设备查询以及用户查询三个用例。
损坏设备管理用例用于管理员对实验室损坏的设备进行管理,这个用例依赖于设备信息维护用例。
登录验证用例用于验证管理员的身份,其余六个用例都依赖于登录验证用例,只有以管理员的身份登录系统,才能执行其余留个用例。
2教师用例图
图2-8教师用例图
教师相关的用例如上图所示,有六个基本用例,分别为预约单填写、损坏单填写、上机课公告发布、个人信息维护、查询、登录验证。
预约单填写用例可以泛化出两个用例,分别为实验室使用预约单填写和软件预装预约单填写用例。
用于教师填写预约单,申请使用实验室。
损坏单填写用例用于教师对于实验课后设备的损坏情况进行记录。
上机课公告发布用例用于在教师申请实验室成功之后发布上机课信息。
个人信息维护用例用于教师修改一些个人的信息。
查询用例可以泛化出两个用例,分别可以进行实验室信息查询和设备查询。
登录验证用例用于验证教师的身份,其余五个用例都依赖于登录验证用例,只有以教师的身份登录系统,才能执行其余留个用例。
3学生用例图
图2-9学生用例图
学生相关的用例如上图所示一共有三个用例,分别为个人信息维护、登录验证、上课信息查看用例。
个人信息维护用例用于学生修改一些个人信息。
上机课信息查看用例用于查看教师发布的上机课信息。
登录验证用例用于验证学生的身份,其余两个用例都依赖于该用例。
4整体用例图
图2-10整体用例图
整体用例图如上图所示,实验室管理员的预约审核以及损坏设备管理用例分别依赖于教师的预约单填写用例和损坏单填写用例。
学生的上课信息查看用例依赖于教师的上机课公告发布用例。
2.2.2活动图
1信息维护活动图
实验室管理员进行信息维护的活动图如下图所示,首先管理员登录系统,判断登录是否成功,若不成功回到登录系统页面若成功则显示管理界面。
进入管理界面之后可以管理实验室的各项信息也可以查询各项实验室信息。
管理员点击注销之后退出管理系统,流程结束。
图2-11信息维护活动图
2实验室使用预约活动图
实验室使用预约流程活动图如下图所示,教师首先查看空闲的可供使用的实验室,可以预约这些实验室,在数据库中存储相应的预约单,由实验室管理员审核预约申请。
如果预约申请审核通过则在数据库中存储实验室使用记录表,显示预约成功。
教师看到预约成功的通知之后发布实验室上课通知,整个预约流程结束。
如果审核不通过,则直接显示不成功,整个预约流程结束。
图2-12实验室使用预约流程活动图
3软件预装活动图
实验室软件预装流程活动图如下图所示,教师首先查看实验室中所包含的软件,如果已经有上机所要求的软件,则整个预约流程直接结束。
如果没有安装需要的软件,教师首先提交软件预装申请单,在数据库中存储相应的预装申请单,由实验室管理员审核预装申请单,如果审核通过,实验室管理员在数据库中添加软件条目,并在对应的实验室中安装软件同时通知教师软件安装成功。
如果审核不通过,通知教师软件预装申请不通过,整个流程结束。
图2-13实验室软件预装申请流程活动图
4实验室设备损坏管理活动图
实验室设备损坏管理流程活动图如下图所示,首先当教师发现设备损坏后,填写设备损坏单,并在数据库中存储相应的设备损坏记录。
实验室管理员处理相应的设备损坏事故,首先判断是否为人为损坏,若不是人为损坏,则直接维修相应的设备,并更新相应的设备信息,若是人为损坏,则与事故人协商赔偿措施,完成赔偿之后更新相应的设备信息,并删除相应的设备损坏记录。
图2-14实验室设备管理流程活动图
3.分析工作流
3.1类建模
实验室管理系统分为8个类,分别为用户类、设备类、实验室类、登录类、查询类、预约类、公告类、预约类。
用户类通过管理类来管理实验室和设备,通过预约类来预约实验室,通过查询类来查询信息,通过公告类来发布公告和查看公告,通过登录类来登录系统。
图3-1实验室管理系统类建模
3.2状态图
实验室管理系统的状态图如下图所示,首先登录系统,若登录失败则返回登录界面,若登录成功,判断登录的身份,以管理员身份登录成功则进入管理员管理界面,点击设备维护可以对实验室的设备进行维护(包括增删改查操作),提交维护内容,显示相应的信息,并返回管理员管理界面,其他信息维护同理。
点击预约单审核,则审核相应的预约单,并将审核结果写入数据库。
若以教师身份登录成功,则可以点击查看实验室各项信息,可以提交审核/损坏单,并查看审核状态,若审核成功则发布上课通知,进入实验课上课信息发布界面,并将上机课信息写入数据库中。
学生身份登录成功可以查看实验课上课信息。
最后点击注销之后,整个流程结束。
图3-2实验室管理系统状态图
3.3顺序图
3.3.1个人信息管理
个人信息管理顺序图如下图所示,首先用户登录系统,进入管理主界面,点击个人信息维护之后,进入个人信息管理页面,填写相关的修改信息,通过Control层将修改写入数据库,并返回更新后的结果,最后将更新的结果在个人信息列表展示出来。
图3-3个人信息管理顺序图
3.3.2上机课信息发布
上机课信息发布顺序图如下图所示,教师登录系统后进入教师管理主界面,点击上机课信息发布后进入上机课发布界面,通过Control将上机课信息写入数据库,并返回更新后的信息,最后将更新后的上机课信息展示在上机课信息列表中。
图3-4上机课信息发布顺序图
3.3.3实验室设备管理
实验室设备管理顺序图如下图所示,首先管理员登录系统,进入管理员管理主界面,点击实验室设备管理之后,通过Control将相关的实验室设备维护信息写入数据库,并返回相关的信息,并在实验室设备信息列表中展示出更新的信息。
图3-5实验室设备管理顺序图
3.3.4实验室信息管理
实验室信息管理顺序图如下图所示,首先管理员登录系统,进入管理员管理主界面,点击实验室信息管理之后,通过Control将相关的实验室维护信息写入数据库,并返回相关的信息,并在实验室信息列表中展示出更新的信息。
图3-6实验室信息管理顺序图
3.3.5损坏单审核
损坏单审核顺序图如下图所示,管理员登录系统,进入管理员管理主界面,提出损坏单审核申请,通过Control层进行相关的审核,并将审核信息写入数据库,数据库传回相应的信息,并在损坏单列表中显示。
图3-7损坏单审核顺序图
3.3.6填写损坏单
填写损坏单顺序图如下图所示,教师登录系统进入教师管理主界面,点击填写损坏单申请,通过Control层将相关的损坏单信息写入数据库,并返回更新信息,将相关的更新信息显示在损坏单列表中。
图3-8损坏单填写顺序图
3.3.7填写预约单
填写预约单顺序图如下图所示,师登录系统进入教师管理主界面,点击填写预约单申请,通过Control层将相关的预约信息写入数据库,并返回更新信息,将相关的更新信息显示在预约单列表中。
图3-9预约单填写顺序图
3.3.8信息查询
信息查询顺序图如下图所示,用户首先登录进入管理主界面,提出查询请求,向Control层传入查询信息,通过Control层在数据库中查询相对应的信息,返回查询消息并在查询信息显示界面显示出来。
图3-10信息查询顺序图
3.3.9用户登录
用户登录顺序图如下图所示,首先用户登录系统,传入login信息,通过Control层连接数据库,并查询相关帐号信息,在Control层验证帐号信息是否正确,如果错误返回登陆界面,正确则进入用户管理主界面。
图3-11用户登录顺序图
3.3.10用户管理
用户管理顺序图如下图所示,首先管理员登录系统,进入管理员管理主界面,点击用户管理之后,通过Control将相关的用户维护信息写入数据库,并返回相关的信息,并在用户列表中展示出更新的信息。
图3-12用户管理顺序图
3.3.11预约单审核
管理员登录系统进入教师管理主界面,点击填写预约单审核,通过Control层将相关的预约审核信息写入数据库,并返回更新信息,将相关的更新信息显示在预约单审核列表中。
图3-13预约单审核顺序图
3.4包图
计算机实验室管理系统包图设计如下图所示,分为三个包,分别为界面包(UI)、业务逻辑包(Control)和数据访问包(DAL)。
界面包用来存放负责界面的一些类,如表单类,显示类等等。
业务逻辑包用来存放一些中间逻辑处理的类,比如预约审核类,身份验证类等。
数据访问包用来存放调用数据库需要用到的类。
图3-14实验室管理系统包图
4.设计工作流
4.1类图详细设计
类图详细设计如下图所示,定义一个用户抽象类,同时泛化出三个子类,分别为管理员类,教师类和学生类。
用户类包括用户ID,用户登录密码,用户姓名,用户年龄,用户电话号码等属性。
管理员子类包括一个构造函数,教师子类包括一个职称属性以及构造函数和查询函数,学生子类包括班级属性以及构造函数和查询函数。
一到多个用户对应一个管理类,管理类包括增加用户、修改用户、删除用户、增加实验室、修改实验室、删除实验室、增加设备、修改设备、删除设备等函数。
一个管理类管理多个实验室类和多个设备类。
实验室类包括实验室ID、实验室名字、实验室地点、实验室面积、实验室管理者、占用状态等属性。
同时一个实验室类包含多个设备。
设备类是一个抽象类,包含ID,名字、型号、所属实验室等属性,设备类泛化出两个子类分别为硬件类和软件类,硬件类又包含价格,数量属性,软件包含版本属性。
一个教师类和管理员类可以使用多个预约类,预约类包含ID,预约时间,预约地点,预约原因等属性,还包含预约审核和预约提交两个函数。
一个教师类可以使用多个公告类,公告类包含id,实验课名,实验时间、实验地点,实验内容还包含公告发布函数,学生可以查看公告类的内容。
此外还包括登录类和查询类。
图4-1实验室管理系统类图详细设计
4.2数据库设计
4.2.1概念模型
用户分为三类,分别为实验室管理员、教师、学生。
实验室管理员包含管理员编号,管理员姓名,登录密码,创建时间等属性,教师包括教师编号,教师姓名,登录密码,教师年龄,教师职称,手机号码,备注等属性,学生包括学生编号,学生姓名,登录密码,年龄,所属班级,备注等属性。
实验室包括实验室编号,实验室名,实验室地点,实验室机位,实验室面积等属性。
一个管理员管理多个实验室。
实验室软件包括软件编号,软件名,软件版本,软件价格,备注等属性。
实验室硬件包括硬件编号,硬件名,硬件价格,硬件数量,备注等属性。
一个实验室安装多个软件,一个实验室拥有多个实验室硬件。
使用预约单包括预约单编号,预约实验室编号,预约原因,预约时间,使用班级等,审批状态等属性。
软件预装申请单包括预装单编号,预装实验室编号,软件名称,软件版本,备注等属性。
设备损坏单包括,损坏设备编号,损坏时间,责任人,处理状态,备注。
一个教师可以提交多个预装单、多个预约单以及多个设备损坏单,一个实验室管理员可以审核多个预装单、多个预约单以及多个设备损坏单。
上课公告包括编号,上课时间,课程名,上机课内容等属性,一个教师可以发布多个上课公告同时一个学生可以查看多个上课公告。
图4-1概念模型设计
4.2.2逻辑模型
逻辑模型设计如下图所示,实验室表中添加管理员的编号,预约单,预装单,设备损坏单中添加了申请教师编号和审核管理员编号。
上课公告表中添加了教师编号和班级编号。
实验室硬件和实验室软件表中增加了所属实验室的编号。
图4-2逻辑模型设计
4.2.3物理模型
最后生成数据库设计的物理模型,表的设计如下图所示。
分为十个表,分别为实验室管理员表,教师表,学生表,预约单表,预装单表,损坏单表,实验室表,软件表,硬件表,公告表。
具体的属性设计如下图所示。
图4-3物理模型设计
5.系统实现
5.1界面设计
5.1.1登录界面
对于一个完整的实验室预约管理系统,不仅要求功能强大、操作简单,还要有良好的设计风格和另人爽目的界面。
登录界面对于整个系统来说是非常重要的,因为它设置了进入本系统的用户和口令,防止非法用户进入系统,破坏系统安全和所保存的数据,只有合法的用户在输入正确的密码后方可进入系统,否则将提示密码或用户名输入错误,并询问用户是否重新输入。
这样就对使用者有了限制,增加了系统的安全性和保密性,便于控制和管理,有利于系统的维护。
图5-1实验室管理系统登陆界面
5.1.2实验室基本信息管理界面
实验室接本信息管理界面包括增删改查实验室信息界面。
下图所示为增加实验室信息界面,主要用于添加新的实验室信息。
图5-2添加实验室信息界面
下图所示为实验室列表页面,可以查看可以在此页面选择需要修改或者需要删除的实验室信息。
点击修改之后可以在新的界面修改相应的实验室信息。
点击删除之后可以直接删除需要删除的信息。
图5-3实验室信息列表界面
5.1.3用户信息管理界面
用户信息管理包括教师用户管理,学生用户管理和管理员用户三个部分。
都可以对这些用户的信息进行增删改查,以教师用户管理界面为例,进行界面设计。
教师用户添加界面,可以添加新的教师用户信息,教师编号和登录密码必须要填写。
增加教师用户信息之后,该教师就可以凭借教师编号和登录密码登录教师管理界面。
图5-4教师用户信息添加界面
下图所示为教师用户列表页面,可以查看教师用户信息,同时可以在此页面选择需要修改或者需要删除的教师用户信息。
点击修改之后可以在新的界面修改相应的教师用户信息。
点击删除之后可以直接删除需要删除的信息。
图5-5教师用户信息列表界面
5.1.4实验室设备管理界面
下图所示分别为增加实验室硬件和增加实验室软件的界面,两者相类似。
通过这两个界面,管理员可以添加新的实验室硬件信息和新的软件信息。
图5-5增加实验室硬件信息列表界面
图5-6增加实验室软件信息列表界面
下图所示为实验室软硬件信息列表,管理员和教师可以在此页面查看各个实验的软硬件信息,确定是否满足自己上课的基本要求。
在此页面管理员可以删除或者修改相应的软硬件信息。
图5-7实验室硬件信息列表界面
图5-8实验室软件信息列表界面
5.1.5实验室设备损坏管理界面
实验室设备损坏信息由教师填写,管理员可以查看设备损坏信息,并可以删除相应的设备损坏信息。
界面设计如下图所示。
图5-9实验室设备损坏列表界面
图5-10教师记录设备损坏信息界面
5.1.6实验室预约管理界面
实验室预约管理,教师和管理员均可以查看实验室列表,教师点击每个列表的最后一列就可以进入预约页面,在预约页面填写相关的信息并提交,就完成预约流程。
管理员可以在实验室预约列表点击审核按钮进行审核,相关界面如下图所示。
图5-11教师查看实验室信息信息界面
图5-12教师提交实验室预约信息界面
图5-13教师查看预约信息是否通过审核界面
6.总结
通过本学期学习《系统分析与设计》这门课程,我们系统的学习了系统设计的相关理论并通过这次课程设计我们基本掌握了PowerDesigner和RationalRose这两个工具使用方法。
以往我们虽然有过很多课程设计的经验,但也只是设计一个模块或一个小系统,而这一次课程设计是综合所学的系统分析设计和计算机编程的知识来设计一个适合运行管理的实验室预约信息管理系统。
要想设计使用户满意,就需要我们付出更多的努力。
我们在设计中经常出现一些问题不知该如何解决,我们通过相互交流解决了很多难题。
在设计的过程中不仅培养了我们的自学和编程能力,还提高了我们与人沟通的能力。
参考文献
1.萨格等.系统分析与设计.北京.电子工业出版社,2006年10月:
1-205
2.Bruce.Eckel.《Java编程思想》.机械工业出版社,2003年10月:
1-378
3.FLANAGAN.《Java技术手册》.中国电力出版社,2002年6月:
1-465
4.孙一林,彭波.《Java数据库编程实例》.清华大学出版社,2002年8月:
30-210
5.LEEANNEPHILLIPS.《巧学活用HTML4》.电子工业出版社,2004年8月:
1-319
6.耿祥义,张跃平.《JSP实用教程》.清华大学出版社,2003年5月1日:
1-354
7.孙涌.《现代软件工程》.北京.希望电子出版社,2003年8月:
1-246
9.萨师煊,王珊.《数据库系统概论》.高等教育出版社,2002年2月:
3-460