实验室设备管理系统软件工程
- 格式:docx
- 大小:16.20 KB
- 文档页数:2
实验室设备管理系统项目开发计划10级计算机科学系计算机科学与技术(网络工程)组长:(25)小组成员:(20)(28)(41)(44)实验室设备管理系统项目开发计划1 引言1 .1 编写目的本开发计划的目的是:对软件需求的全面、深入的理解是软件开发工作获得成功的前提条件,作为软件定义时期的最后一个阶段,需求分析的任务是明确用户对目标系统的需求,主要是确定对系统的综合要求,同时分析系统的数据要求。
它能提高软件开发过程的能见度,便于实现软件开发人员对开发过程的工程化管理与控制,便于项目管理人员、开发人员、测试人员、维护人员之间更好地交流与协作。
1 .2 背景项目软件名称:实验室设备管理系统目前国内学校教学设备自动化管理水平不是很高。
大多数学校设备管理办法是设备采购进来以后,将设备的基本情况和相关信息登记存档,然后将档案存档。
以后档案基本就没人维护,如设备位置变迁、检修情况、设备当前运行状态等信息根本不会体现在设备台帐上,即设备跟踪信息不能及时体现在设备档案上。
某些使用设备管理系统学校,对设备的跟踪信息即使能体现在设备档案上,但设备的缺陷处理及设备缺陷等功能没有实施,设备检修的备品备件情况和检修成本核算没有实现,整个学校设备管理信息化仍处于较低水平。
本管理系统合理的借鉴国际领先的设备管理思想并结合国内学校设备管理现状,可以完全能满足国内学校设备管理的需要。
并通过对各行业设备管理情况的长期研究探索,以灵活、通用为主要设计思想,开发适合于各行业设备管理信息系统。
本系统将会提高学校的办公效率和设备可靠性,减少工作人员的劳动强度,减少办公耗材,提高学校的现代化管理水平。
实时报警功能对学校的安全生产更是不可忽视。
特别要求:需求分析必须详细,并且有相关专家合作进行任务来源:闽江学院开发单位:闽江学院计算机科学系“实验室设备管理系统”开发小组:(25号,组长), (20号,成员), (28号,成员),(41号,成员),(44号,成员)1 .3 参考资料ASP --- 电子工业出版社数据库原理---电子工业出版社SQL Server--- 电子工业出版社1 .4 术语和缩写词(暂无)2 任务概要2 .1 工作内容本项目开发过程中需要进行的主要工作为:开发符合用户需求的软件,并编制相关文档和计划。
实验室设备管理系统设计实验室设备管理系统是一种用于帮助实验室管理人员有效管理和监控实验室设备的软件系统。
它可以提供设备的登记、借还、维修、报废等功能,从而提高实验室设备的利用率和管理效率。
下面是一个关于实验室设备管理系统的设计,总共超过1200字。
一、系统需求分析1.系统目标:设计一个实验室设备管理系统,实现设备的登记、借还、维修和报废等功能,提高设备的利用率和管理效率。
2.功能需求:b)设备借还功能:实验室人员可以通过系统进行设备的借还操作,管理人员可以查看设备的借出情况和借用人员。
c)设备维修功能:实验室人员可以通过系统进行设备的维修申请,并记录维修的过程和结果。
d)设备报废功能:实验室人员可以通过系统申请设备报废,并记录报废的原因和日期。
e)设备查询功能:实验室管理人员可以通过系统查询设备的基本信息、借还情况、维修记录和报废记录等。
3.性能需求:a)系统响应时间:系统应能在合理的时间内响应用户的请求,并保持系统的稳定性。
b)数据安全性:系统应具备数据加密和访问控制的功能,保障数据的安全性。
c)系统容错性:系统应具备容错和故障恢复功能,确保系统的正常运行和数据的完整性。
二、系统设计1.技术选型:选择使用Web开发框架进行系统的开发,如Python的Django框架或Ruby的Ruby on Rails框架,以便快速构建系统。
数据库可选用关系型数据库,如MySQL或PostgreSQL。
2.系统模块设计:a)用户模块:负责用户的注册、登录、权限管理等功能。
b)设备管理模块:负责设备的登记、借还、维修和报废等功能。
c)设备查询模块:负责设备的查询功能。
d)报表统计模块:负责生成设备的统计报表,如设备的借还记录、维修记录和报废记录等。
3.数据库设计:设计设备、用户、设备借还记录、设备维修记录和设备报废记录等表,使用外键关联各表。
4.系统界面设计:设计符合用户习惯的用户界面,界面简洁明了,易于操作。
●题目一: “教务管理系统之子系统——学院课程安排”●系统简介每个学期期中, 学校教务处向各个学院发出下各学期教学筹划, 涉及课程名称、课程代码、学时、班级类别(本科、专科、成人教诲、研究生)、班号等;学院教学主管人员依照教学任务和规定给出各个课程有关限制(如: 任课教师职称、上课班数、最高和最低周学时数等);任课教师自报本人授课筹划, 经所在教研室协调任可, 将教学筹划上交学院主管教学筹划人员, 批准后上报学校教务处, 最后由教务处给出下个学期全学院教师教学任务书。
●假设上述排课过程所有由人工操作, 现规定为上述过程实现计算机自动解决过程。
●限定条件(1)每位教师主授课程门数不超过2门/学期: 讲师如下职称教师不能承担学院定主课主讲任务。
(2)学院中层干部主讲学时不能超过4学时/周。
(3)本学期浮现严重教学事故教师不能承担下各学期主讲任务。
(4)本系统输入项至少涉及: 教务处布置教学筹划, 学院教师自报授课筹划和学院定关于授课限制条件。
本系统输出项至少涉及: 教务处最后下达全院教师教学任务书和学院各个班级下各学期课程表(可以不含上课地点)。
●题目二: “学校教材定购系统”●系统简介本系统可以细化为两个子系统: 销售系统和采购系统销售系统重要工作过程为: 一方面由教师或学生提交购书单, 经教材发行人员审核是有效购书单后, 开发票、登记并返给教师或学生领书单, 教师或学生可以到书库领书。
采购系统重要工作过程为:若是教材脱销, 则登记缺书, 发缺书单给书库采购人员;一旦新书入库后, 即发进书告知给教材发行人员。
以上功能规定在计算机上实现。
●技术规定和限制条件(1)当书库中各种书籍数量发生变化(涉及进书和出书)时, 都应修改有关书库记录, 如库存表或进/出库表。
(2)在实现上述销售和采购工作过程时, 需考虑关于合法性验证。
系统外部项至少涉及: 教师、学生和教材工作人员。
系统有关数据存储至少涉及: 购书表、库存表、缺书登记表、待购教材表、进库表和出库表。
实验室设备管理系统开发计划书实验室设备管理系统项目开发计划10级计算机科学系计算机科学与技术(网络工程)组长:(25)小组成员:(20)(28)(41)(44)实验室设备管理系统项目开发计划1 引言1 .1 编写目的本开发计划的目的是:对软件需求的全面、深入的理解是软件开发工作获得成功的前提条件,作为软件定义时期的最后一个阶段,需求分析的任务是明确用户对目标系统的需求,主要是确定对系统的综合要求,同时分析系统的数据要求。
它能提高软件开发过程的能见度,便于实现软件开发人员对开发过程的工程化管理与控制,便于项目管理人员、开发人员、测试人员、维护人员之间更好地交流与协作。
1 .2 背景项目软件名称:实验室设备管理系统目前国内学校教学设备自动化管理水平不是很高。
大多数学校设备管理办法是设备采购进来以后,将设备的基本情况和相关信息登记存档,然后将档案存档。
以后档案基本就没人维护,如设备位置变迁、检修情况、设备当前运行状态等信息根本不会体现在设备台帐上,即设备跟踪信息不能及时体现在设备档案上。
某些使用设备管理系统学校,对设备的跟踪信息即使能体现在设备档案上,但设备的缺陷处理及设备缺陷等功能没有实施,设备检修的备品备件情况和检修成本核算没有实现,整个学校设备管理信息化仍处于较低水平。
本管理系统合理的借鉴国际领先的设备管理思想并结合国内学校设备管理现状,可以完全能满足国内学校设备管理的需要。
并通过对各行业设备管理情况的长期研究探索,以灵活、通用为主要设计思想,开发适合于各行业设备管理信息系统。
本系统将会提高学校的办公效率和设备可靠性,减少工作人员的劳动强度,减少办公耗材,提高学校的现代化管理水平。
实时报警功能对学校的安全生产更是不可忽视。
特别要求:需求分析必须详细,并且有相关专家合作进行任务来源:闽江学院开发单位:闽江学院计算机科学系“实验室设备管理系统”开发小组:(25号,组长), (20号,成员), (28号,成员),(41号,成员),(44号,成员)1 .3 参考资料ASP --- 电子工业出版社数据库原理---电子工业出版社SQL Server--- 电子工业出版社1 .4 术语和缩写词(暂无)2 任务概要2 .1 工作内容本项目开发过程中需要进行的主要工作为:开发符合用户需求的软件,并编制相关文档和计划。
本科实验报告课程名称:软件工程实验项目:实验设备管理系统实验地点:致远楼专业班级:学号:学生姓名:指导教师:2014年5 月一、实验目的和要求随着高校规模的扩大,实验室及仓库的增多,人工管理实验设备已变得过于低效,为了解决这一问题,高校实验室设备管理系统将实现设备管理的自动化。
实验室设备管理系统将贯穿于设备从购进到报废的整个流程的管理过程,帮助管理员高效地管理整个高校的所有设备,并给上级领导提供一个审核监督管理的平台。
二、实验内容和原理实验内容1.系统简介某大学每学年都需要对实验室设备使用情况进行统计、更新。
其中:(1)对于已彻底损坏的实验设备做报废处理,同时详细记录有关信息。
(2)对于有严重问题(故障)的需要及时修理,并记录修理日期、设备名、编号、修理厂家、修理费用、责任人等。
(3)对于急需使用但实验室目前又缺乏的设备,需以“申请表”的形式送交上级领导请求批准购买。
新设备购入后要立即进行设备登记(包括类别、设备名、编号、型号、规格、单价、数量、购置日期、生产厂家、保质期和经办人等信息),同时更新申请表的内容。
(4)随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段等条件进行查询。
2.技术要求及限制条件(1)所有工作由专门人员负责完成,其他人不得任意使用。
(2)每件设备在做入库登记时均由系统按类别加自动顺序号编号,形成设备号;设备报废时要及时修改相应的设备记录,且有领导认可。
(3)本系统的数据存储至少包括:设备记录、修理记录、报废记录、申请购买记录。
(4)本系统的输入项至少包括:新设备信息、修理信息、申请购买信息、具体查询统计要求。
(5)本系统的输出项至少包括:设备购买申请表、修理/报废设备资金统计表。
实验需求分析1引言1.1 编写目的:本实验室设备管理系统在可行性研究的基础上,是为了进一步明确实验室设备管理系统的软件需求,目的是让读者能够了解本系统的开发目的,开发方法,以及目前的硬件和软件的情况和开发所需要资金和设备,概要设计说明书和完成后续设计与开发工作将在此基础上进一步提出。
实验室设备管理系统需求分析***班某某学号****目录1 引言 ......................................................................................................................................... - 3 -1.1 编写目的....................................................................................................................... - 3 -1.2 背景............................................................................................................................... - 3 -1.3 参考资料....................................................................................................................... - 3 -2 需求分析.................................................................................................................................. -3 -2.1 项目设计的基本原理................................................................................................. - 4 -2.2 可行性研究................................................................................................................. - 4 -2.2.1 技术可行性.................................................................................................... - 4 -2.2.2 经济可行性.................................................................................................... - 4 -2.2.3 操作可行性.................................................................................................... - 5 -2.2.4 社会因素可行性............................................................................................ - 5 -2.2.5 可行性研究结论............................................................................................ - 5 -2.3 系统功能及用户需求分析......................................................................................... - 5 -2.4 系统安全性及完整性需求......................................................................................... - 6 -2.5 运行需求..................................................................................................................... - 7 -3 软件系统数据流图.................................................................................................................. - 7 -3.1 顶层数据流图............................................................................................................... - 7 -3.2 层数据流图................................................................................................................... - 7 -3.3 一层数据流图............................................................................................................... - 8 -实验室设备管理系统需求分析1 引言1.1 编写目的本实验室设备管理系统在可行性研究的基础上,是为了进一步明确实验室设备管理系统的软件需求,目的是让读者能够了解本系统的开发目的,开发方法,以及目前的硬件和软件的情况和开发所需要资金和设备,概要设计说明书和完成后续设计与开发工作将在此基础上进一步提出。
实验室设备管理系统目录目录 (1)可行性研究报告 (6)1引言 (6)1.1编写目的 (6)1.2背景 (6)1.3定义 (6)1.4参考资料 (7)2可行性研究的前提 (7)2.1要求 (7)2.2目标 (9)2.3条件、假定和限制 (10)2.4进行可行性研究的方法 (10)2.5评价尺度 (10)3对现有系统的分析 (11)3.1处理流程和数据流程 (11)3.2工作负荷 (11)3.3费用开支 (11)3.4人员 (11)3.5设备 (12)3.6局限性 (12)4所建议的系统 (12)4.1对所建议系统的说明 (12)4.2处理流程和数据流程 (13)4.3改进之处 (14)4.4影响 (15)4.4.1对设备的影响 (15)4.4.2对软件的影响 (15)4.4.3对用户单位机构的影响 (15)4.4.4对系统运行过程的影响 (15)4.4.5对开发的影响 (15)4.4.6对地点和设施的影响 (16)4.4.7对经费开支的影响 (16)4.5局限性 (16)4.6技术条件方面的可行性 (16)5投资及效益分析 (17)5.1支出 (17)5.1.1基本建设投资 (17)5.1.2其他一次性支出 (17)5.1.3非一次性支出 (17)5.2收益 (17)5.2.1一次性收益 (17)5.2.2非一次性收益 (18)5.2.3不可定量的收益 (18)5.3收益/投资比 (18)5.4投资回收周期 (19)5.5敏感性分析 (19)6社会因素方面的可行性 (19)6.1法律方面的可行性 (19)6.2使用方面的可行性 (19)7结论 (19)软件需求说明书 (20)1引言 (20)1.1编写目的 (20)1.2背景 (20)1.3定义 (20)1.4参考资料 (21)2任务概述 (21)2.2用户的特点 (21)2.3假定和约束 (21)3需求规定 (22)3.1对功能的规定 (22)3.2对性能的规定 (22)3.2.1精度 (23)在精度需求上,根据使用需要,在各项数据的输入,输出及传输过程中,由于本系统使用了数据结构,可以满足各种精度的需求。
实验室设备管理系统软件工程在实验室建设的课题里,一些重要实验室需要做到环境建设、实验设备采购、实验室家具采购,其中往往在实验室装修阶段,我们需要格外重视实验室系统工程建设,下面陕西宏硕带大家来看看实验室建设里有哪些系统工程。
一、实验室暖通系统:实验室排风涉及实验人员的安全性和舒适性,必须严格控制好排风效果、噪声和节能等因素。
通常,为避免实验室内产生的毒害气体交叉污染,实验室气流方向应从低危险区域向高危险区域流动,气流设计应从办公区域,廊道,以及其他辅助区域流入实验室,保持实验室内的适当负压,确保实验室内的气流不外泄到走廊,为保证效果必须采用VAV变风量排风系统。
同时,需采取有效的变风量补风措施,并保持实验室内的适当负压(5~10)Pa,且补风不能影响室内温度。
这些与普通的办公室暖通空调要求相差很大。
二、实验室洁净系统:洁净实验室主要目的是保护实验人员的安全,防止感染细菌和病毒,保护实验样品的安全,防止污染,确保实验结果的准确性。
其建设要点包括:工艺布局合理,根据需要设置更衣、风淋和缓冲间,做到人流、物流、污物流三流清晰,避免交叉感染;装饰材料应易于清洁消毒、耐腐蚀、不起尘、不开裂、光滑防水,相交位置做圆弧处理,无缝对接;空调净化系统的划分应有利于实验室的消毒灭菌、自动控制系统的设置和节能运行;采用洁净空调系统,设粗、中、高三级空气过滤器,排风与送风连锁;气流有序,由清洁区向半污染区和污染区流动。
三、实验室供气系统:实验室供气系统虽然投资份额相对较小,但对实验环境的安全性有重要影响。
首先,气瓶间必须采取的专业的通风、防爆措施;其次,气路系统要有泄露报警、紧急切断和强排风等装置;第三,为了保证气体纯度和气压的稳定性,必须进行多级减压供气,设置气路吹扫、排空等设施。
综上所述,实验室各专业建设相互交错、穿插进行,装修、水电、排风、补风、空调、供气等专业必须周密设计,统筹安排,精心施工,才能保证施工进度和质量。
实验设备管理系统程序报告1. 引言实验设备管理系统是一个用于管理和跟踪实验室设备的程序。
该系统的目标是提高实验室设备的使用效率和管理效果。
本报告将详细讨论该系统的设计、实施和运行情况。
2. 设计实验设备管理系统的设计在满足实验室设备管理需求的基础上,注重易用性和灵活性。
以下是系统的主要设计要点:2.1 数据库设计系统采用关系数据库来存储实验设备信息,包括设备名称、型号、购买日期、购买价格、使用状况等。
数据库的设计采用了实体-关系模型,确保了数据的一致性和完整性。
2.2 用户界面设计系统的用户界面简洁直观,方便用户进行设备管理操作。
主要界面包括设备列表、设备详情、设备借用申请等。
用户可以轻松地浏览、搜索和编辑设备信息。
2.3 设备借用流程设计系统实现了设备借用的流程管理。
用户可以提交设备借用申请,管理员审核通过后,设备可以借用一段时间。
在借用期间,系统会自动提醒用户归还设备。
3. 实施实验设备管理系统的实施分为以下几个步骤:3.1 硬件和软件需求为了运行该系统,需要一台支持数据库运行的服务器,并安装合适的数据库软件。
此外,用户需要具备一台电脑或移动设备来访问系统的用户界面。
3.2 系统安装系统的安装包可以从内部的软件仓库中下载。
安装过程简单,用户只需按照提示进行操作即可。
3.3 数据库初始化在安装完成后,需要进行数据库的初始化。
管理员需要创建数据库表和初始数据,以便系统能够正常运行。
3.4 用户注册和权限设置新用户需要注册账号,并指定账号的权限。
管理员拥有最高权限,可以对设备进行编辑和审批操作。
3.5 系统使用培训为了让用户能够熟悉系统的使用,可以组织培训课程。
培训内容包括登录、设备浏览、设备借用等基本操作。
4. 运行情况实验设备管理系统自投入使用以来,取得了良好的运行效果。
以下是系统运行情况的主要方面:4.1 设备管理效率提高借助该系统,实验室设备的管理效率得到了显著提高。
管理员可以通过系统追踪设备的使用情况,并对设备进行统一管理。
实验室设备管理系统项目开发总结报告10计算机科学系计算机科学与技术(网络工程)组长:成员:实验室设备管理系统项目开发总结报告1引言1.1编写目的编写本报告的目的是研究本系统的总体需求、背景。
对开发结果开发评价进行分析,得出经验与教训。
1.2背景本项目是对实验室设备管理系统作出的项目总结报告。
此软件的任务是由闽江学院提出的。
组成开发小组进行开发的。
开发小组成员:1.3定义SQL全称:结构化查询语言1.4参考资料参考资料如下所示:[1] 余金山,林慧.SQL Server 2000/2005数据库开发实例与提高[M].北京:电子工业出版社,2005[2] 唐学忠.SQL Server 2000数据库教程[M].北京:电子工业出版社,2005[3] 陈国君.Java2程序设计基础[M].北京:清华大学出版社,2006[4] 孙一林.Java数据库编程实例[M].北京:清华大学出版社,2003.[5] 黄明,梁旭.Java信息系统设计与开发实例[M].北京:机械工业出版社,2004.[6] 但正刚.Java2入门与提高[M].北京:清华大学出版社,2003.[7] 萨石煊,王珊等.数据库系统概论(第三版) [M].北京:高等教育出版社,2000.[8] 李香敏等.SQL Server 2000编程员指南[M]. 北京希望电子出版社,2003.[9] 隆华软件工作室.SQL Server 2000程序设计[M].北京:清华大学出版社,2002.[10] 赵强. 精通JSP编程[M]. 北京:电子工业出版社,2006.[11] Phil Hanna. JSP技术大全[M]. 北京:机械工业出版社,2002[12] Shari Lawrence Pfleeger. Software engineering theory and practice[M].Beijing:Advanced Education Press,2003.2实际开发结果2.1产品此程序系统包括9个程序名称,他们分别是:登陆程序、操作界面程序、申请设备查询程序、维修设备查询程序、报废设备查询程序、设备维修记录登记程序、设备维修记录查询程序、设备报废记录程序、设备申请程序。
目录一、设计所完成的任务要求 (1)1、设计所完成的任务 (1)2、设计所完成的技术要求 (1)二、系统环境配置和使用工具简单介绍 (1)1、系统环境配置 (1)2、使用工具简单介绍 (1)三、可行性分析 (2)1、决定可行性的主要因素 (2)2、技术可行性 (2)2.1、对系统的简要描述 (2)2.2、待开发系统可能带来的影响 (2)2.3、技术上的可行性 (2)3、经济可行性 (2)3.1、支出 (2)3.1.1、基建支出 (2)3.1.2、其他一次性支出 (2)3.1.3、经常性支出 (3)3.2、收益 (3)3.2.1一次性收益 (3)3.2.2、经常性收益 (3)3.2.3、不可定量收益 (3)3.3、收益/投资比 (3)3.4、投资回收周期 (3)3.5、经济可行性总结 (3)4、社会因素可行性分析 (3)4.1、法律因素可行性 (3)4.2、用户使用可行性 (4)四、系统需求分析 (4)1、系统所要达到的功能 (4)2、分层数据流图 (4)3、数据字典 (6)4、数据加工处理描述 (7)五、系统设计 (7)1、系统结构图设计 (7)2、输出设计 (9)3、存储文件格式设计 (10)4、用户界面设计 (10)5、关键模块详细设计 (13)5.1、输入项目 (13)5.2、输出项目 (13)5.3、程序流程图 (14)5.4、测试要点 (14)六、课程设计总结 (15)七、附系统相应程序代码(部分) (16)八、参考文献 (22)九、小组小结 (22)题目五、“实验室设备管理系统”一、设计所完成的任务要求1、设计所完成的任务本设计是针对于实验室设备管理而开发的一个用于实验室设备日常管理的软件,该软件每学年要对实验室设备使用情况进行统计、更新,其中:(1)对于已彻底损坏的作报废处理,同时详细记录有关信息。
(2)对于有严重问题(故障)的要即使修理,并记录修理日期、设备名、修理厂家、修理费、责任人等。
实验设备管理系统数据库设计说明书一、概述1.数据库设计文档概述本文档为软件工程一课的设计项目《实验设备管理系统》的数据库设计说明书,具体描述《实验设备管理系统》的数据库设计,用于说明该系统在数据库存储各方面的内容,作为系统代码设计的基准文档。
2.项目简要介绍软件系统名称:实验设备管理系统项目提出:根据指导老师的选题从中选取项目目标:本系统将会很大程度上提高学校的办公效率和设备可靠性,能够精细化的管理所有实验室设备,克服实验室管理人员对实验室设备管理中存在的漏洞和疏忽.减少管理人员的工作强度和操作复杂度,减少办公耗材避免不必要的浪费,能够真正的做到轻松高效管理整个实验室资产,真正的在技术上提高学校的现代化管理水平。
系统模式:采用客户端/服务器模式系统开发环境:Microsoft Visual Studio 2008数据库管理系统:Microsoft SQL Server 2008软件开发者:软件应用范围:大中小学校3.参考资料:《实验设备管理系统》需求说明书《数据库系统概论》(第四版)王珊萨师煊编著高等教育出版社《软件工程导论》(第5版) 张海藩编著《asp.net程序设计》二、数据库外部设计1.本数据库的应用软件及其与数据库的接口数据库软件:Microsoft SQLServer 2008系统要求建立的数据库名称:Experiment使用该数据库的应用软件:实验设备管理系统该应用软件在Microsoft Visual Studio 2008编程环境下设计,采用Microsoft Visual Studio 2008基于······的数据库访问接口技术,建立与数据库的通讯连接。
应用程序对数据库的操作,通过执行查询语句生成结果。
2.数据库管理系统SQLServer 2008 在Microsoft的数据平台上发布,可以组织管理任何数据.可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。
[理学]实验室管理系统软件工程课程设计正式版(文档可以直接使用,也可根据实际需要修改使用,可编辑欢迎下载)软件工程课程设计项目组报告设计题目:A4 实验室设备管理系统(V3.0)班号:信息061项目组号:A4项目组长: 朱云辉学号: 3060702115成员: 荣华肖广保孙俊宝任西山指导教师:修宇完成时间2021年1月10日安徽工程科技学院计算机科学与工程系2021年1月A4实验室设备管理系统V3.0提交日期:2021年1月10日目录第一章A可行性研究报告 (4)1 引言 (5)2 可行性研究的前提 (6)3 技术可行性分析 (7)4经济可行性分析 (7)5用户使用的可行性 (8)6 结论意见 (8)第二章B需求分析说明书……………………………………… .. 91 引言 (10)2 目标系统任务概述 (12)3需求规定............................................................... (13)4建立数据字典 (15)5算法描述 (16)6建立E-R图 (16)7建立状态图 (16)第二章C概要设计说明书 (19)1引言 (20)2总体设计 (21)3接口设计 (22)4运行设计 (23)5系统数据结构设计 (24)第三章D详细设计说明书 (27)1引言 (28)2程序系统结构 (29)3程序设计说明 (33)第四章E测试说明书 (37)1引言 (38)2测试要求 (42)3测试策略 (42)4测试计划 (43)5测试用例设计 (43)6评价 (44)项目总结 (45)个人小结 (46)《软件工程课程设计》任务书一、本课程设计的地位、目的《软件工程课程设计》是培养训练学生软件开发能力的重要实践性教学环节,与《软件工程》课程的教学内容紧密配合,同步进行。
开设该课程设计的主要目的是:通过软件开发的实践训练,使学生进一步理解该课程介绍的概念、方法和原理等内容,体会软件生存期的各个阶段和软件开发过程,建立本课程的整体框架;加深对开发过程中所涉及的各种图形工具的认识和理解;学会利用现有的计算机辅助工具独立完成软件系统的开发工作。
精心整理第一章需求分析1、系统需求描述:实验室设备管理系统是利用Eclipse作为开发工具、SQL Server2000作为数据库的系统。
管理员可以对实验室设备信息进行查询及相关实验室设备的使用情况查看。
管理员可以根据本人用户名2、系统数据流图(功能模型DFD)2.1 0层数据流图如下:图2.1 0层数据流图2.2 1层数据流图:2.4总数据流图:图2.4 总数据流图3、系统数据模型E-R图实体和属性的定义。
E-R模型的“联系”用于刻画实体之间的关联。
一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。
若有联系,进一步确定是1:N,M:N,还是1:1等,还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系等等。
3.1实验室设备信息E-R图,如下图所示:图3.5损坏设备E-R图3.6管理员E-R图,如下图所示:图3.6管理员E-R图3.7总体E-R图第二章概要设计1、实验室设备管理系统模块结构图2(2)模块功能:对实验室中的设备进行查询,了解设备状况。
(3)模块背景描述:对实验室中的设备进行查询,了解设备状况。
(4)接口:查询处理接口3、数据库设计1、逻辑结构设计(设分别将取得的信息存入NAME和PASSWORD两变量中打开数据库中的用户信息表,用sName变量与列名为用户名的列项进行比较IF 查到了与NAME相同的项,判断 PASSWORD是否相等不相等则返回错误,要求重新输入相等则取得登陆权限用来判断用户身份,给予相关权限。
ELSE 则返回错误,要求重新输入1.3 模块流程图如下:图1.1 用户登录管理模块流程图1.4 数据库相关信息表1.1用户登陆表模块流程图如右:3、设备维修管理模块3.1功能描述3.23.3 数据库相关信息 表1.3维修记录表 4、设备购买管理模块模块流程图如下:4.14.2 4.3 5、模块图5.1 设备报废管理模块流程图5.1功能描述在整个系统中对于已彻底损坏的设备作报废处理记录和查询。
实验项目:实验室设备管理系统一、项目管理:二、软件需求分析1 软件系统需求描述:实验室设备管理系统是利用Eclipse 作为开发工具、SQL Server2000作为数据库的系统。
要求实现如下功能:⑴所有工作由专门人员负责完成,其他人不得任意使用; ⑵对于已彻底损坏的作报废处理,同时详细记录有关信息;⑶对于有严重问题(故障)的要即使修理,并记录修理日期、设备名、修理厂家、修理费、责任人等;⑷对于急需但又缺少的设备需以“申请表”的形式送交上级领导请求批准购买。
新设备购入后要立即进行设备登记(包括类别、设备名、型号、规格、单价、数量、购置日期、生产厂家、购买人等),同时更新申请表的内容;⑸随时对现有设备及其修理、报废情况进行统计、查询,要求能够按类别和时间段(某日期之前)查询。
本管理系统通过计算机对实验设备进行自动管理,设备管理员可以直接在计算机实现实验设备的信息管理,并在一定程度上实现自动化,改善了工作运行效率和效果。
2 软件系统数据流图1) 顶层数据流图设备管理员上级领导实验室设备管理系统2) 0层数据流图处理要求2登陆信息处理结果身份验证1审核3无效登陆信息审核结果3)一层数据流图信息表表申请表新设备表表4)总数据流图登陆表设备基本信息表3软件系统数据字典:1、数据流条目①登陆信息输入:设备管理员输出:身份验证1描述:登陆信息=用户名+密码+登陆权限②查询信息输入:合法人员对设备的查询操作输出:设备信息表描述:查询信息=设备名/型号/类别/购置日期③维修信息输入:所需维修设备的信息输出:确定维修设备的记录描述:维修信息=设备名+修理日期+修理厂家+修理费+负责人④新设备输入:购买设备的信息输出:确定购买的新设备的记录描述:新设备=类别+设备名+型号+规格+单价+数量等⑤报废设备输入:所需报废的设备的信息输出:报废的设备记录描述:报废设备=类别+设备名+型号等⑥审核信息输入:审核3输出:上级领导描述:审核信息=报废设备信息/新设备购买记录2、加工条目身份验证1,统计查询2.1,维修2.2,购买2.3,报废2.4,生产报表3.1,审核3.23、文件条目①登陆表输入:身份验证1输出:身份验证1数据结构:用户名+密码+登陆权限②设备基本信息表输入:统计查询2.1数据结构:类别+设备名+型号+规格等③维修记录表输入:统计查询2.1,维修2.2输出:统计查询2.1数据结构:设备名+修理日期+修理厂家+修理费+责任人等④新设备表输入:统计查询2.1,购买2.2输出:统计查询2.1数据结构:类别+设备名+型号+规格+单价+数量+生产厂家+购买人等⑤报废记录表输入:报废2.4,统计查询2.1,生产报表3.1输出:统计查询2.1,生产报表3.1数据结构:类别+设备名+型号等⑥申请表输入:统计查询2.1,生产报表3.1输出:统计查询2.1,生产报表3.1,购买2.3数据结构:设备名+型号+规格+数量+负责人三:软件设计1实验室设备管理系统模块结构图2界面设计3实验室设备管理系统数据设计设备管理员用户名密码登陆权限管理设备设备名设备号类型审核上级领导用户名密码4管理系统其中的3个模块的详细设计①上级领导操作模块②设备管理员操作模块③统功能操作模块5数据库设计①登陆表②设备基本信息表③维修记录表设备型号varchar 10 not null设备名varchar 20 not null维修日期datetime 8 null维修厂家varchar 30 null维修费用float 8 null责任人varchar 10 null④报废记录表列名数据类型长度允许空设备型号varchar 10 not null设备名varchar 20 not null报废日期datetime 8 null责任人varchar 10 null⑤申请表列名数据类型长度允许空设备名varchar 10 not null日期Datatime 8 not null规格varchar 10 not null数量int 4 null申请人Varchar 10 Null四、编码与单元测试1、各模块示意图2、用户登录界面:package shebeiguanli;import java.applet.*;import java.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import yout.*;/***<p>Title:实验室设备管理系统登录界面</p>*@author gengdexin*@version 1.0*/public class Log extends JFrame {/** 构建显示对象*/JPanel contentPane;XYLayout xYLayout1 = new XYLayout();JPasswordField password = new JPasswordField(); JLabel jLabel1 = new JLabel();JLabel jLabel2 = new JLabel();JLabel jLabel4 = new JLabel();JTextField jTextField1 = new JTextField();JLabel jLabel3 = new JLabel();JLabel jLabel5 = new JLabel();JLabel jLabel6 = new JLabel();public Log() {enableEvents(AWTEvent.WINDOW_EVENT_MASK);try {jbInit();}catch(Exception e) {e.printStackTrace();}}private void jbInit() throws Exception {contentPane = (JPanel) this.getContentPane();password.addActionListener(new Log_password_actionAdapter(this));contentPane.setLayout(xYLayout1);this.setSize(new Dimension(500, 400));this.setTitle("实验室设备管理系统");jLabel1.setFont(new java.awt.Font("SansSerif", 0, 25));jLabel1.setForeground(Color.red);jLabel1.setText("欢迎进入实验室设备管理系统");jLabel2.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel2.setText("姓名");jTextField1.setText("");jLabel3.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel3.setText("密码");jLabel4.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel4.setText("开发人员:耿德新蔺明亮毛冬冬");jLabel5.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel5.setText("李章华吕文强顾海驹");jLabel6.setFont(new java.awt.Font("SansSerif", 0, 15));jLabel6.setForeground(Color.red);jLabel6.setText("交流:****************");contentPane.add(jLabel1, new XYConstraints(80, 10, 350, 34));contentPane.add(jLabel2, new XYConstraints(92, 142, -1, -1));contentPane.add(jTextField1, new XYConstraints(130, 145, 91, 26));contentPane.add(jLabel3, new XYConstraints(222, 144, -1, -1));contentPane.add(password, new XYConstraints(263, 144, 105, 28));contentPane.add(jLabel4, new XYConstraints(50, 250, -1, -1));contentPane.add(jLabel5, new XYConstraints(150, 280, -1, -1));contentPane.add(jLabel6, new XYConstraints(100, 340, -1, -1));}protected void processWindowEvent(WindowEvent e) {super.processWindowEvent(e);if (e.getID() == WindowEvent.WINDOW_CLOSING) {System.exit(0);}}void password_actionPerformed(ActionEvent e) {try {Frame1 Frame= new Frame1();Frame.show();validID();}catch (Exception ew) {System.out.println(ew.getMessage());}this.setVisible(false);}//连接sqlvoid validID() {try {String str1, str2;str1 = jTextField1.getText();str2 = password.getText();Connection con = null;String url = "jdbc:odbc:shebeiguanli";String user = "";String password = "";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con = DriverManager.getConnection(url,user,password);Statement stmt =con.createStatement();//执行动态的sql语句PreparedStatement pstmt = con.prepareStatement(//依据读者的名字查询读者的信息的sql语句"use shebeiguanli select * from 登录 where username=?");//将读者的名字添加到具体的sql语句中pstmt.setString(1, str1);//使用ResultSet中的方法executeQuery()来完成sql语句的执行 ResultSet res = pstmt.executeQuery();//使用getString()来获取sql查询的结果if ((!res.next()) || res.getString("password") == null) { JOptionPane.showMessageDialog(this, "查无此人", "错误",JOptionPane.ERROR_MESSAGE);}else {// if ( !res.getString(2).equals(str2)) {if ( !res.getString(2).equals(str2)) {JOptionPane.showMessageDialog(this, "密码错误", "错误", JOptionPane.ERROR_MESSAGE);}else {System.out.println("正确");do{System.out.println(res.getString(1)+":" + res.getString(2));}while (res.next());loader();}}pstmt.close();con.close();}catch (ClassNotFoundException e) {System.out.println(e.getMessage());}catch (SQLException edd) {edd.printStackTrace() ;System.out.println(edd.getMessage());}}void loader() {try {Frame9 Frame= new Frame9();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}}class Log_password_actionAdapter implementsjava.awt.event.ActionListener {Log adaptee;Log_password_actionAdapter(Log adaptee) {this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.password_actionPerformed(e);}}3、主界面:package shebeiguanli;import java.awt.*;import java.awt.event.*;import javax.swing.*;import yout.*;//系统主界面public class Frame9 extends JFrame {JPanel contentPane;JMenuBar jMenuBar1 = new JMenuBar();JMenu 设备查询 = new JMenu();JMenuItem 设备信息 = new JMenuItem();JMenu 设备申请 = new JMenu();JMenuItem 申请登记 = new JMenuItem();XYLayout xYLayout1 = new XYLayout();JLabel jLabel1 = new JLabel();JMenu jMenu2 = new JMenu();JMenuItem jMenuItem7 = new JMenuItem(); JMenu jMenu3 = new JMenu();JMenuItem jMenuItem8 = new JMenuItem();JMenuItem jMenuItem1 = new JMenuItem();JMenuItem jMenuItem3 = new JMenuItem();JLabel jLabel2 = new JLabel();JLabel jLabel3 = new JLabel();JLabel jLabel4 = new JLabel();JMenu jMenu5 = new JMenu();JMenuItem jMenuItem2 = new JMenuItem();public Frame9() {enableEvents(AWTEvent.WINDOW_EVENT_MASK);try {jbInit();}catch(Exception e) {e.printStackTrace();}}private void jbInit() throws Exception {contentPane = (JPanel) this.getContentPane();contentPane.setLayout(xYLayout1);this.setSize(new Dimension(600, 500));this.setTitle("实验室管理系统");设备查询.setFont(new java.awt.Font("SansSerif", 0, 20));设备查询.setText("设备查询");设备信息.setFont(new java.awt.Font("SansSerif", 0, 20));设备信息.setText("设备信息查询");设备信息.addActionListener(new Frame9_设备信息_ActionAdapter(this));设备申请.setFont(new java.awt.Font("SansSerif", 0, 20));设备申请.setText("设备申请");设备申请.addActionListener(new Frame9_设备申请_actionAdapter(this));申请登记.setFont(new java.awt.Font("SansSerif", 0, 20));申请登记.setText("申请登记");申请登记.addActionListener(new Frame9_申请登记_ActionAdapter(this));jLabel1.setFont(new java.awt.Font("SansSerif", 0, 40));jLabel1.setForeground(new Color(210, 0, 0));jLabel1.setHorizontalAlignment(SwingConstants.LEADING);jLabel1.setText("实验室管理系统");contentPane.setFont(new java.awt.Font("Dialog", 0, 11));contentPane.setForeground(Color.darkGray);jMenu2.setFont(new java.awt.Font("SansSerif", 0, 20));jMenu2.setFocusPainted(false);jMenu2.setText("维修记录");jMenuItem7.setFont(new java.awt.Font("SansSerif", 0, 20));jMenuItem7.setText("维修记录登记");jMenuItem7.addActionListener(newFrame9_jMenuItem7_actionAdapter(this));jMenu3.setFont(new java.awt.Font("SansSerif", 0, 20));jMenu3.setText("报废记录");jMenuItem8.setFont(new java.awt.Font("SansSerif", 0, 20));jMenuItem8.setText("设备报废登记");jMenuItem8.addActionListener(newFrame9_jMenuItem8_actionAdapter(this));设备查询.addSeparator();jMenuItem1.setFont(new java.awt.Font("SansSerif", 0, 20));jMenuItem1.setText("维修记录查询");jMenuItem1.addActionListener(newFrame9_jMenuItem1_actionAdapter(this));jMenuItem3.setFont(new java.awt.Font("SansSerif", 0, 20));jMenuItem3.setText("设备报废查询");jMenuItem3.addActionListener(newFrame9_jMenuItem3_actionAdapter(this));jLabel2.setFont(new java.awt.Font("SansSerif", 0, 40));jLabel2.setForeground(Color.red);jLabel2.setText("欢迎进入");jLabel3.setFont(new java.awt.Font("SansSerif", 0, 40));jLabel3.setForeground(Color.red);jLabel3.setText("实验室设备管理系统");jLabel4.setFont(new java.awt.Font("SansSerif", 0, 15));jLabel4.setForeground(Color.red);jLabel4.setText("交流:****************");jMenu5.setFont(new java.awt.Font("SansSerif", 0, 20));jMenu5.setText("退出系统");jMenuItem2.setFont(new java.awt.Font("SansSerif", 0, 20));jMenuItem2.setText("退出");jMenuItem2.addActionListener(newFrame9_jMenuItem2_actionAdapter(this));jMenuItem2.addItemListener(newFrame9_jMenuItem2_itemAdapter(this));设备查询.add(设备信息);设备查询.addSeparator();设备申请.addSeparator();设备申请.add(申请登记);设备申请.addSeparator();jMenuBar1.add(设备查询);jMenuBar1.add(设备申请);jMenuBar1.add(jMenu2);jMenuBar1.add(jMenu3);jMenuBar1.add(jMenu5);jMenu2.addSeparator();jMenu2.add(jMenuItem7);jMenu2.addSeparator();jMenu2.add(jMenuItem1);jMenu2.addSeparator();jMenu3.addSeparator();jMenu3.add(jMenuItem8);jMenu3.addSeparator();jMenu3.add(jMenuItem3);jMenu3.addSeparator();contentPane.add(jLabel1, new XYConstraints(175, 1, -1, -1));contentPane.add(jLabel3, new XYConstraints(150, 200, -1, -1));contentPane.add(jLabel2, new XYConstraints(50, 100, 163, 45));contentPane.add(jLabel4, new XYConstraints(180, 350, -1,-1));jMenu5.addSeparator();jMenu5.add(jMenuItem2);jMenu5.addSeparator();this.setJMenuBar(jMenuBar1);}public void设备信息_actionPerformed(ActionEvent e) {try {Frame2 Frame= new Frame2();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}public void申请登记_actionPerformed(ActionEvent e) {try {Frame7 Frame= new Frame7();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}protected void processWindowEvent(WindowEvent e) {super.processWindowEvent(e);if (e.getID() == WindowEvent.WINDOW_CLOSING) {设备信息_actionPerformed(null);}}void shebei_actionPerformed(ActionEvent e) {try {}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem1_actionPerformed(ActionEvent e) { try { Frame4 Frame= new Frame4();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem3_actionPerformed(ActionEvent e) {try {Frame6 Frame= new Frame6();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem4_actionPerformed(ActionEvent e) {try {Frame3 Frame= new Frame3();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem5_actionPerformed(ActionEvent e) { try {Frame6 Frame= new Frame6();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem6_actionPerformed(ActionEvent e) { try {retur Frame= new retur();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem7_actionPerformed(ActionEvent e) { try {Frame3 Frame= new Frame3();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem8_actionPerformed(ActionEvent e) {try {Frame5 Frame= new Frame5();Frame.show();}catch (Exception ew) {System.out.println(ew.getMessage());}}void jMenuItem2_itemStateChanged(ItemEvent e) {System.exit(0);}void jMenuItem2_actionPerformed(ActionEvent e) {System.exit(0);}void设备申请_actionPerformed(ActionEvent e) {}}class Frame9_设备信息_ActionAdapter implements ActionListener { Frame9 adaptee;Frame9_设备信息_ActionAdapter(Frame9 adaptee) {this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.设备信息_actionPerformed(e);}}class Frame9_申请登记_ActionAdapter implements ActionListener { Frame9 adaptee;Frame9_申请登记_ActionAdapter(Frame9 adaptee) {this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.申请登记_actionPerformed(e);}}class Frame9_jMenuItem5_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem5_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem5_actionPerformed(e);}}class Frame9_jMenuItem7_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem7_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem7_actionPerformed(e);}}class Frame9_jMenuItem8_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem8_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem8_actionPerformed(e);}}class Frame9_jMenuItem1_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem1_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem1_actionPerformed(e);}}class Frame9_jMenuItem3_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem3_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem3_actionPerformed(e);}}class Frame9_jMenuItem2_itemAdapter implementsjava.awt.event.ItemListener {Frame9 adaptee;Frame9_jMenuItem2_itemAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void itemStateChanged(ItemEvent e) {adaptee.jMenuItem2_itemStateChanged(e);}}class Frame9_jMenuItem2_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_jMenuItem2_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jMenuItem2_actionPerformed(e);}class Frame9_设备申请_actionAdapter implements java.awt.event.ActionListener {Frame9 adaptee;Frame9_设备申请_actionAdapter(Frame9 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.设备申请_actionPerformed(e);}}4、设备查询:package shebeiguanli;/** <p>Title实验室设备管理系统查询页面<p>* @author gengdexin*/import java.io.*;import .*;import java.sql.*;import ng.*;import javax.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import yout.*;import com.borland.dbswing.*;public class Frame2 extends JFrame {JPanel contentPane;JLabel jLabel1 = new JLabel();XYLayout xYLayout1 = new XYLayout();JLabel jLabel2 = new JLabel();JLabel jLabel3 = new JLabel();JTextField jTextField1 = new JTextField();JLabel jLabel4 = new JLabel();JTextField jTextField2 = new JTextField();JPanel jPanel1 = new JPanel();XYLayout xYLayout2 = new XYLayout();JScrollPane jScrollPane1 = new JScrollPane();JLabel jLabel5 = new JLabel();JTextField jTextField3 = new JTextField();public Frame2() {enableEvents(AWTEvent.WINDOW_EVENT_MASK);try {jbInit();}catch(Exception e) {e.printStackTrace();}}private void jbInit() throws Exception {contentPane = (JPanel) this.getContentPane();contentPane.setLayout(xYLayout1);this.setSize(new Dimension(600, 500));this.setTitle("实验室设备管理系统");this.addHierarchyBoundsListener(newFrame2_this_hierarchyBoundsAdapter(this));jLabel1.setFont(new java.awt.Font("SansSerif", 0, 25));jLabel1.setForeground(Color.red);jLabel1.setText("实验室设备管理系统");contentPane.setForeground(Color.black);jLabel2.setFont(new java.awt.Font("SansSerif", 0, 30));jLabel2.setText("设备查询");// statusBar.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel3.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel3.setText("设备名称");jTextField1.setText("");jLabel4.setEnabled(true);jLabel4.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel4.setText("设备型号");jTextField2.setText("");jTextField2.addActionListener(newFrame2_jTextField2_actionAdapter(this));jPanel1.setLayout(xYLayout2);jLabel5.setFont(new java.awt.Font("SansSerif", 0, 25));jLabel5.setForeground(Color.red);jLabel5.setText("该设备详细信息");jTextField3.setText("");contentPane.add(jLabel1, new XYConstraints(200, 0, 300,50));contentPane.add(jLabel2, new XYConstraints(200, 47, 231, 58));contentPane.add(jLabel3, new XYConstraints(47, 102, 101, 42));contentPane.add(jTextField1, new XYConstraints(128, 108, 112, 34));contentPane.add(jTextField2, new XYConstraints(361, 107, 109, 36));contentPane.add(jPanel1, new XYConstraints(75, 166, 453, 277));jPanel1.add(jScrollPane1, new XYConstraints(14, 8, 433, 221));jScrollPane1.getViewport().add(jTextField3, null);jPanel1.add(jLabel5, new XYConstraints(112, 240, -1, -1));contentPane.add(jLabel4, new XYConstraints(278, 111, -1, -1));}protected void processWindowEvent(WindowEvent e) {super.processWindowEvent(e);if (e.getID() == WindowEvent.WINDOW_CLOSING) {System.exit(0);}}void Select() {try {String str1, str2;str1 = jTextField1.getText();str2 = jTextField2.getText();Connection con = null;String url = "jdbc:odbc:shebeiguanli";String user = "";String password = "";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con = DriverManager.getConnection(url,user,password);Statement stmt =con.createStatement();PreparedStatement pstmt = con.prepareStatement("use shebeiguanli select * from 设备基本信息 where 设备型号=? and 设备名=? ");pstmt.setString(2, str1);pstmt.setString(1, str2);ResultSet res = pstmt.executeQuery();String id;String name;String guige,danjia,day,changjia,peo,num;String outputarea=" 设备型号 " +" 设备名称 "+" 规格 "+" 单价 "+" 购买日期 "+" 生产厂家 "+" 数量 "+" 责任人 "+'\n';if(res.next()){do{id = res.getString(1);name = res.getString(2);guige = res.getString(3);danjia = res.getString(4);day=res.getString(5);changjia = res.getString(6);peo=res.getString(7);num=res.getString(8);outputarea+=" "+id+" "+name+" "+guige+" "+danjia+" "+day+" "+changjia+" "+peo+" "+num+" "+"\n";jTextField3.setText(outputarea);}while(res.next());}else{jTextField3.setText("不存在");}}catch (ClassNotFoundException e) {System.out.println(e.getMessage());}catch (SQLException edd) {edd.printStackTrace() ;System.out.println(edd.getMessage());}}void this_ancestorMoved(HierarchyEvent e) {}void jTextField2_actionPerformed(ActionEvent e) {Select();}}class Frame2_this_hierarchyBoundsAdapter extendsjava.awt.event.HierarchyBoundsAdapter {Frame2 adaptee;Frame2_this_hierarchyBoundsAdapter(Frame2 adaptee) { this.adaptee = adaptee;}public void ancestorMoved(HierarchyEvent e) {adaptee.this_ancestorMoved(e);}}class Frame2_jTextField2_actionAdapter implementsjava.awt.event.ActionListener {Frame2 adaptee;Frame2_jTextField2_actionAdapter(Frame2 adaptee) { this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jTextField2_actionPerformed(e);}}5、维修记录:package shebeiguanli;/** <p>title实验室设备管理系统维修记录页面<p> * @author gengdexin*/import java.io.*;import .*;import java.sql.*;import ng.*;import javax.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import yout.*; public class Frame3 extends JFrame { JPanel contentPane;XYLayout xYLayout1 = new XYLayout(); JLabel jLabel1 = new JLabel();JLabel jLabel2 = new JLabel();JLabel jLabel3 = new JLabel();JLabel jLabel4 = new JLabel();JLabel jLabel5 = new JLabel();JLabel jLabel6 = new JLabel();JLabel jLabel7 = new JLabel();JLabel jLabel8 = new JLabel();JTextField jTextField1 = new JTextField();JTextField jTextField2 = new JTextField();JTextField jTextField3 = new JTextField();JTextField jTextField4 = new JTextField();JTextField jTextField5 = new JTextField();JTextField jTextField6 = new JTextField();JButton jButton1 = new JButton();public Frame3() {enableEvents(AWTEvent.WINDOW_EVENT_MASK);try {jbInit();}catch(Exception e) {e.printStackTrace();}}private void jbInit() throws Exception {contentPane = (JPanel) this.getContentPane();contentPane.setLayout(xYLayout1);this.setSize(new Dimension(500,500));this.setTitle("实验室设备管理系统");jLabel1.setFont(new java.awt.Font("SansSerif", 0, 25));jLabel1.setForeground(Color.red);jLabel1.setText("实验室设备管理系统");jLabel2.setFont(new java.awt.Font("SansSerif", 0, 30));jLabel2.setRequestFocusEnabled(true);jLabel2.setText("维修记录");jLabel3.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel3.setText("设备型号");jLabel4.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel4.setText("设备名");jLabel5.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel5.setText("维修日期");jLabel6.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel6.setText("维修厂家");jLabel7.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel7.setText("维修费用");jLabel8.setFont(new java.awt.Font("SansSerif", 0, 12));jLabel8.setText("责任人");jTextField1.setText("");jTextField2.setText("");jTextField3.setText("");jTextField4.setText("");jTextField5.setText("");jTextField6.setText("");jButton1.setFont(new java.awt.Font("SansSerif", 0, 25));jButton1.setText("提交");contentPane.add(jLabel1, new XYConstraints(120, 0, 250, 37));contentPane.add(jLabel2, new XYConstraints(166, 27, -1, -1));contentPane.add(jLabel3, new XYConstraints(94, 90, -1, -1));contentPane.add(jLabel4, new XYConstraints(97, 140, -1, -1));contentPane.add(jLabel6, new XYConstraints(94, 240, -1, -1));contentPane.add(jTextField1, new XYConstraints(173, 80, 128, 38));contentPane.add(jTextField2, new XYConstraints(173, 130, 127, 40));contentPane.add(jLabel5, new XYConstraints(94, 190, -1, -1));contentPane.add(jTextField3, new XYConstraints(174, 180, 126, 38));contentPane.add(jTextField4, new XYConstraints(174, 230, 125, 40));contentPane.add(jButton1, new XYConstraints(176, 375, 121, 43));contentPane.add(jLabel7, new XYConstraints(94, 290, -1, -1));contentPane.add(jLabel8, new XYConstraints(94, 340, -1, -1));contentPane.add(jTextField5, new XYConstraints(174, 280, 126, 38));contentPane.add(jTextField6, new XYConstraints(174, 330, 126, 38));}protected void processWindowEvent(WindowEvent e) {super.processWindowEvent(e);if (e.getID() == WindowEvent.WINDOW_CLOSING) {System.exit(0);}}void jTextField1_actionPerformed(ActionEvent e) {}void Insert() {try {//定义显示的字符串String str1;String str2;String str3;String str4;String str5;String str6;str1 = jTextField1.getText();str2 = jTextField2.getText();str3 = jTextField3.getText();str4 = jTextField4.getText();str5 = jTextField5.getText();str6 = jTextField6.getText();Connection con = null;S tring url = "jdbc:odbc:shebeiguanli";S tring user = "";S tring password = "";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con = DriverManager.getConnection(url,user,password);Statement stmt =con.createStatement();PreparedStatement pstmt = con.prepareStatement("use shebeiguanli insert into 维修记录(设备型号,设备名,维修日期,维修厂家,维修费用,责任人)VALUES(?,?,?,?,?,?)");pstmt.setString(1, str1);pstmt.setString(2, str2);pstmt.setString(3, str3);pstmt.setString(4, str4);pstmt.setString(5, str5);pstmt.setString(6, str6);ResultSet res = pstmt.executeQuery();pstmt.close();con.close();}catch (ClassNotFoundException e) {System.out.println(e.getMessage());}catch (SQLException edd) {edd.printStackTrace() ;System.out.println(edd.getMessage());}}void jButton1_actionPerformed(ActionEvent e) {Insert();}}6、维修记录查询package shebeiguanli;/** <p>Title实验室设备管理系统维修查询页面<p> * @author gengdexin*/import java.io.*;import .*;import java.sql.*;import ng.*;import javax.sql.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import yout.*;import com.borland.dbswing.*;public class Frame4 extends JFrame {JPanel contentPane;JLabel jLabel1 = new JLabel();XYLayout xYLayout1 = new XYLayout();JLabel jLabel2 = new JLabel();JLabel jLabel3 = new JLabel();JTextField jTextField1 = new JTextField();JLabel jLabel4 = new JLabel();JTextField jTextField2 = new JTextField();JPanel jPanel1 = new JPanel();XYLayout xYLayout2 = new XYLayout();JScrollPane jScrollPane1 = new JScrollPane();JLabel jLabel5 = new JLabel();JTextField jTextField3 = new JTextField();public Frame4() {enableEvents(AWTEvent.WINDOW_EVENT_MASK);try {jbInit();}catch(Exception e) {e.printStackTrace();}}private void jbInit() throws Exception {contentPane = (JPanel) this.getContentPane();contentPane.setLayout(xYLayout1);this.setSize(new Dimension(600, 500));this.setTitle("实验室设备管理系统");this.addHierarchyBoundsListener(newFrame4_this_hierarchyBoundsAdapter(this));jLabel1.setFont(new java.awt.Font("SansSerif", 0, 25));jLabel1.setForeground(Color.red);jLabel1.setText("实验室设备管理系统");contentPane.setForeground(Color.black);jLabel2.setFont(new java.awt.Font("SansSerif", 0, 30));jLabel2.setText("设备维修记录查询");jLabel3.setFont(new java.awt.Font("SansSerif", 0, 20));jLabel3.setText("设备名称");jTextField1.setText("");。
中南民族大学管理学院实验室管理信息系统课程名称:软件工程年级:2009专业:信息管理与信息系统指导教师:杨健完成时间:2011年11月13日小组成员:伍振华09056006王添玺09056010目录1.前言..............................................................................................................................................42.系统总体功能分析.......................................................................................................................42.1系统总体功能分析.................................................................................................................4 2.2各模块需求分析.....................................................................................................................52.2.1个人信息查询模块............................................................................................. (5)2.2.2值班信息模块........................................................................................................52.2.3文档管理员模块............................................................................................................52.2.4设备维护员功能模块....................................................................................................52.2.5请假管理模块................................................................................................................62.2.6角色管理模块................................................................................................................63.实验室后台各部分功能需求分析.......................................................................................... (6)3.1实验室勤工人员功能分析...............................................................................................7 3.2实验室维护员功能需求分析...........................................................................................83.3实验室文档管理员功能需求分析................................................................................ (9)3.4终极管理员需求分析............................................................................................... (10)4.系统流程图............................................................................................... ..................................114.1实验室值班安排子系统系统流程图.............................................................................114.2设备管理子系统系统流程图................................................................................ (12)4.3实验室文档管理系统系统流程图.................................................................................124.3.1档案入库系统流程图………………………….……………………………………………………….….124.3.2文档删除流程图………………………………………………………………………………………….….144.3.3文档外借流程图 (1)4.3.4文档归还流程图....................................................................................................... (14)5.数据流图....................................................................................................... ..............................155.1数据流条目....................................................................................................................155.2处理逻辑描述........................................................................................................ (19)5. 2.1管理员信息处理逻辑………………………………………………………….195.2.2值班表安排处理逻辑 (19)5.2.3值班信息管理处理逻辑 (20)5.2.4设备故障信息数据流图 (2)05.2.5请假管理处理逻辑 (21)5.2.6论坛管理数据流图 (2)25.2.7设备资产管理处理逻辑……………………………………………………235. 2.8角色管理处理逻辑…………………………………………………………245.2.9公告管理处理逻辑 (26)5.2.10文档入库处理逻辑 (27)5.2.11文档删除及查询已删除文档处理逻辑 (2)85.2.12文档外借处理逻辑………………………………………………………………295.2.13文档归还处理逻辑 (31)5.3数据流图....................................................................................................................315. 3.1管理员信息数据流图 (32)5.3.2值班表安排数据流图 (3)25.3.3值班信息管理数据流 (32)5.3.4设备故障信息数据流图 (33)5.3.5请假管理数据流图............................................................................................ (3)35.3.6论坛管理数据流图...................................................................................... (34)5.3.7设备资产管理数据流图 (3)45.3.8角色管理数据流图…………………………………………………………345.3.9公告管理数据流图......................................................................................................... (35)5.3.10文档入库数据流图……………………………………………………….355.3.10 文档入库数据流图……………………………………………………………….355. 3.11文档删除及查询已删除文档数据流图 (35)5.3.12文档外借数据流图 (36)5.3.1 2.1文档不在库中时数据流图…………………………………………………….……………..365.3.12.2文档在库中时数据流图………………………………………………..…………………......365.3.13文档归还数据流图 (36)6.数据库概念模型设计..................................................................................................................376.1数据库描述............................................................................................................... (37)6.2数据实体描述 (3)76.3数据实体—关系图(E-R 图)................................................................................. (38)需求分析说明书最后系统实现的目标是全面覆盖实验室管理的各个方面,为学生提供一些必要的实验资源,为老师提供方面的实验室管理,从而提高我们实验室的管理水平,同时增加我们的管理效率及质量。
实验室设备管理系统软件工程
在实验室建设的课题里,一些重要实验室需要做到环境建设、实验设备采购、实验室家具采购,其中往往在实验室装修阶段,我们需要格外重视实验室系统工程建设,下面陕西宏硕带大家来看看实验室建设里有哪些系统工程。
一、实验室暖通系统:
实验室排风涉及实验人员的安全性和舒适性,必须严格控制好排风效果、噪声和节能等因素。
通常,为避免实验室内产生的毒害气体交叉污染,实验室气流方向应从低危险区域向高危险区域流动,气流设计应从办公区域,廊道,以及其他辅助区域流入实验室,保持实验室内的适当负压,确保实验室内的气流不外泄到走廊,为保证效果必须采用VAV变风量排风系统。
同时,需采取有效的变风量补风措施,并保持实验室内的适当负压(5〜10)Pa,且补风不能影响室内温度。
这些与普通的办公室暖通空调要求相差很大。
二、实验室洁净系统:
洁净实验室主要目的是保护实验人员的安全,防止感染细菌和病毒,保护实验样品的安全,防止污染,确保实验结果的准确性。
其建设要点包括:工艺布局合理,根据需要设置更衣、风淋和缓冲间,做到人流、物流、污物流三流清晰,避免交叉感染;装饰材料应易于清洁消毒、耐腐蚀、不起尘、不开裂、光滑防水,相交位置做圆弧处理,无缝对接;空调净化系统的划分应有利于实验室的消毒灭菌、自动控制系统的设
置和节能运行;采用洁净空调系统,设粗、中、高三级空气过
滤器,排风与送风连锁;气流有序,由清洁区向半污染区和污染区流动。
三、实验室供气系统:
实验室供气系统虽然投资份额相对较小,但对实验环境的安全性有重要影响。
首先,气瓶间必须采取的专业的通风、防爆措施;其次,气路系统要有泄露报警、紧急切断和强排风等装置;第三,为了保证气体纯度和气压的稳定性,必须进行多级减压供气,设置气路吹扫、排空等设施。
综上所述,实验室各专业建设相互交错、穿插进行,装修、水电、排风、补风、
空调、供气等专业必须周密设计,统筹安排,精心施工,才能保证施工进度和质
量。
此外,实验室恒温恒湿、纯水、弱电等专业也有其特殊要求。
实验室建设不同于普通的建设项目,具有综合性、专业性、系统性强的特点,必须统一部署,总体协调,集中建设,才能从组织管理的源头更好地控制项目风险。