软件工程毕业设计论文.docx
- 文档编号:17908003
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:46
- 大小:1.52MB
软件工程毕业设计论文.docx
《软件工程毕业设计论文.docx》由会员分享,可在线阅读,更多相关《软件工程毕业设计论文.docx(46页珍藏版)》请在冰点文库上搜索。
软件工程毕业设计论文
本科毕业设计说明书(论文)
(2014届)
论文题目室内空气质量监控管理系统的
设计与开发
作者姓名陆凯东
指导教师王子仁
学科(专业)软件工程1005
所在学院计算机科学与技术学院
提交日期2013年5月
摘要
室内空气质量监控管理系统基于B/S结构设计与开发。
系统前端采用ExtJs、JSP等技术,后端采用Spring、Hibernate等技术开发,使用SQLSERVER作为数据库管理系统,以TOMCAT作为应用服务器。
系统主要实现如下功能:
实现对室内的IAQ、热湿和光环境等参数进行实时采集与监控,实时获取室内空气质量状况,当出现室内空气质量问题时能够及时进行报警,系统提供报警信息并能模拟自动化控制设备进行处理问题,并对室内空气质量相关指标的发展趋势作出科学的分析,同时能够生成相关报表对相关环境参数进行详细分析,实现对室内空气质量环境参数进行动态调整和控制,减轻或避免因室内空气质量等环境问题危害人体健康。
论文对室内空气质量监控管理系统的背景作了简要的介绍;介绍了在系统开发中所采用的各种技术;对室内空气质量监控管理系统进行需求分析,列出设计的系统数据流图和数据字典等;介绍了系统的分析、概要及详细设计和实施的简要过程以及对系统各个模块的功能罗列描述;介绍了几个主体模块的具体实现。
关键词:
IAQ,ExtJS,SpringMVC,Hibernate
Abstract
IndoorairqualitymonitoringmanagementsystemisbasedonB/Sstructure.Thefront-endofthisapplicationadoptstheutechnologiesofExtJsandJSP,etc,theback-endadoptsSpringandHibernate,etc.SQLSERVERisusedforthedatabasemanagementsystem,TOMCATischosenforapplicationserver.
Functionalitiesofthisapplicationisasfollow:
torealizereal-timedatacollectionandmonitoringontheindoorenvironmentparameterssuchasIAQ,heatandlight,etc,toacquiretherealtimestatusofindoorairquality,toalarmwhenairrelatedincidentoccurred,toprovidealarminformationandtorealizethesimulationprocesswhichtheautomaticcontrolsystemprocesstheincident,toanalyzeandforecastthetrendofindoorairquality,toadjustrelevantparametersandtomeasureandsolvetheincidentdynamically,sothattoreduceoravoidthedamagesforpeople.
Abriefintroductiontothebackgroundofthisapplicationispresentedinthispaper,therelevanttechnologiesisintroducedforapplicationdeveloping,acompletedrequirementanalysisincludesoftwareandhardwareisgivenandthenecessarydataflowchatsanddatadictionaryisprovided,atotaldescriptionofsystemanalysis,summaryanddetaileddesignandimplementationispresentedherein,especiallythefimplementationoffunctionsofmainmodulesisdescribed.
Keywords:
IAQ,ExtJs,SpringMVC,Hibernate
图目录
表目录
第一章绪论
1.1研究背景
当今人们在室内度过的时间超过九成,这使得人们对室内空气相当的熟悉,室内空气质量等相关的环境问题也成了现今热门话题。
“室内空气质量监控管理系统”是一个基于互联网的B/S体系结构的软件系统。
本软件系统的开发设计目的是实现使用网络技术来对室内的IAQ指标、热湿和光环境等一些数据[1]进行及时的监测,实时准确的了解室内空气质量等环境的相关情况,当出现空气质量问题时立刻产生报警信息并且自动化控制设备处理相关问题,对室内空气质量等环境的发展情况给出正确的分析,同时能够提供相关报表供详细分析使用,完成对室内空气质量的动态调整控制,减少因室内空气质量等问题危害人体健康,造成重大的经济损失。
1.2国内外研究现状
室内空气质量问题从某种角度上来说可以追及原始人类时代,从原始人类把火种带入居住的洞穴,造成洞穴内的烟雾灰尘污染作为开端。
而采取科学方法来处理室内空气质量的记录起码可以从20世纪50年代前开始,美国于20世纪30年代末成立了工业卫生协会,从此社会开始关注生产环境对人体健康的影响。
对不是生产场所的空气质量的关注则起步于1960年的北欧、北美,现在的室内空气质量(即:
IAQ)的概念也是在那时提出的。
以室内空气质量为中心的系统研究起初的重点在于室内空气质量污染物对人体的健康影响以及室内、室外空气质量关系上。
1965年,比尔斯特克尔等来自Holland的一些学者系统且大规模的研究了世界上首个室内与室外空气质量的关系。
这个研究显示室内与室外的空气质量有着显著差异,并且发现了室外空气污染比室内空气的污染程度要低5-10倍左右,低的甚至可以低于20倍,这也就导致了呼吸系统疾病的大面积爆发[2]。
在此之后,室内与室外空气质量的关系的研究工作就一直在继续,而且其涉及范围也越来越广。
基于这些研究,人们对于在多种环境条件下,不同污染物在室内与室外的浓度关系有了更加全面的了解,同时由此建立了一系列关于室内与室外空气质量关系的数据模型[3]。
丹麦首都Copenhagen在1978年举行室内环境的国际会议并且规定其每三年举行一次。
紧接着在80年代中叶的时候美国EPA的工作的重点也从室外大气移到了室内空气。
在西方的各国,包括北约成员国和欧共体也相继开展了关于室内环境方面的研究[4]。
此时,室内空气质量相关管理部门也在已发展国家和区域开始形成。
室内环境的立法工作也在室内环境管理机构的指导下开始逐渐进行,到目前为止,亚洲的日、韩、我国香港,世界卫生组织,还有欧美的各个发达国家等都已经建立了较为完善的室内空气环境方面的法规。
1980年开始我国大规模的出现室内空气污染。
那时为了改善城镇居民的起居环境,各城市大力建造单元式的居民房,在室内装空调的人也开始增多。
伴随着居住的条件大幅度的提升室内的空气质量却在持续恶化。
我国比较晚的从1970年左右才开始从事室内空气污染相关的研究工作,当时以中国预防医科院的钮式如的研究室为中心。
对室内通风的研究是他的起点。
他还专门对室内空气污染物进行研究。
到现在,在保障室内的空气质量通风空调方式的研究上获得了不少进展。
特别是在一些系统配置、度量、定义方式、气流组织、热湿处理以及计算的模式等方面都取得了瞩目成果,室内环境得到了大大的改善。
国内目前从两个方面着手研究室内空气污染[5]。
首先是制订全面且合理的室内的空气质量的标准。
由于我国室内空气污染问题出现时间晚,人们广泛关注室内空气污染问题的时间也晚。
国家还没有制定全面的法律、法规。
基础研究的薄弱使得对应标准、法规难定。
尤其是制定室内空气健康与否的标准将直接的关系到人们身体的健康,需要依据毒理学研究试验结果并且要根据卫生学进行分析和评价。
不是单单一个检测机构就能够胜任这样的工作的。
其次是控制污染源。
控制污染根本方法是消灭污染源,例如在相应法规的保证下禁止使用能产生污染物的建筑材料等的措施是相当有作用的。
其一,是在生产过程中通过法律来尽量使建筑材料的健康程度小;其二,是研究室内污染源的释放特性以及可能产生的污染物,控制在装修的时候产生的污染源。
研究污染源的主要方法是通过监测温湿度、空气转换速度等环境因子对污染物的浓度分布的影响,并且模拟污染物的释放状态,建立起相关模型和评测系统的人工环境气的模拟研究。
其中最普遍的是目前已结合了污染物在材料内部扩散以及在表层解析的扩散模型[6]方法。
国内利用人工环境气候箱进行比较深入的研究那些具有可挥发性的有机物(TVOC)的释放特征,不过这些还相差甚远。
可以说,目前存世的所有室内空气质量的标准都存在非常大的不确定性。
到目前为止,也还没有发现相当有效的可以基于web技术的室内的空气质量监控管理系统。
1.3设计任务
结合国内外相关室内空气质量监控管理系统以及类似空气质量智能监控系统的设计实现[7,8],提出自己的设计与开发实现方案。
在当前空气质量日益恶化、雾霾天气频发、室内空气质量严重下降,而人民对生活环境的要求进一步提高的情况下,室内空气质量问题俨然成为一个非常重要的话题,关于如何改善室内空气质量,国家和社会都做了一系列研究和探索。
特别在网络信息技术如此普及的当代,已经完全拥有了实现基于互联网技术进行实时监测的硬件基础[9]而且实时监测和远程监测等软件上的技能也取得了一定成果和实践经验[10,11],所以通过借助网络(web)信息技术来提升改善室内的空气环境质量已成为一种普遍的解决方法,国外已经在这方面开了先锋[12,13]。
本课题的设计开发目标主要定位于利用J2EE的技术以实现室内空气质量监控管理系统,特别在于对J2EE中的一些关键并且高效的技术和框架的应用,如Hibernate、Spring、SpringMVC、ExtJs等。
由于本系统涉及硬件和软件两方面,相对较为复杂和庞大,所以在硬件方面采用模拟的方法,例如数据的采集使用软件模拟、空气净化设备的控制也采用模拟的方式,本设计的主要内容为软件系统方面,基本内容是室内空气质量监控管理系统中的web监控管理系统上。
1.4本文的主要工作
本文的主要工作是在详细分析系统需求以及方法技术的基础上对系统进行一个概要设计和详细设计,并且将系统的具体实现做出一个介绍和说明。
1.5本文的组织结构
本文共分为七章,以“室内空气质量监控管理系统”为背景,研究讨论了ExtJS+DWR+SpringMVC+Hibernate的Web应用架构,以及在各层所采用的开源WEB框架,详细阐述了如何利用相应框架技术对系统的模块进行设计与实现,各章内容如下:
第一章,介绍了课题系统设计的背景,国内外相关方面的研究现状,系统设计的主要任务和本文的主要工作。
第二章,详细介绍了系统的开发所需要的方法与技术,为后期系统的开发做铺垫。
第三章,重点分析了室内空气质量监控管理系统的需求。
第四章,具体介绍了室内空气质量监控管理系统的概要设计。
其内容主要包括系统主要功能的业务流程、功能结构及架构设计和数据库设计。
第五章,详细介绍了室内空气质量监控管理系统的详细设计。
其内容包括开发规范的确定、功能模块的详细设计、系统框架介绍以及框架间的有机整合设计和系统性能优化细节的详细设计。
第六章,着重阐述了室内空气质量监控管理系统的一些具体实现,针对第二章的方法技术、第三章的需求分析和第五章提出的详细设计,在本章给出系统的主体技术实现,具体包括系统框架整合实现和系统界面以及功能模块实现。
第七章,对系统开发进行总结并提出下一步工作。
1.6本章小结
本章简要介绍项目的研究背景、在国内外相关领域的开发和应用现状以及项目研究的任务和意义。
最后,介绍了本文的主要工作及本文组织结构。
第二章方法与技术
本系统采用了ExtJs+DWR+SpringMvc+Hibernate的Web应用架构,使用了传统框架的一个分层结构,利用不同开源框架和技术实现了高效分层,而且在部分层次之间使用了AJAX技术以提高效率。
在系统的开发过程中,涉及到ExtJs、DWR、AJAX、SpringMVC、Hibernate等相关理论及技术,第二章将对上述知识进行简要的介绍。
2.1SpringMVC框架简介
SpringMVC属于SpringFrameWork的后续产物,现在属于SpringWebFlow,拥有足够够建Web应用的MVC模块[14]。
Spring的可插入MVC架构拥有可以自定义使用Struts或者内置的SpringWeb框架的功能。
Spring框架通过策略接口实现了高度的可配性,同时Spring框架包含了众多视图技术,如Velocity、JavaServerPages(JSP)技术、POI和iText[16]。
注意SpringMVC框架不强制要求使用JSP的技术。
SpringMVC框架将模型对象、分派器、控制器和处理程序对象的角色分离,这种角色的分离可以更容易的定制它们[15]。
2.1.1Spring的控制反转(IOC)
所谓控制反转InversionofControl(IOC)[16]也就是应用程序代码自身将程序的主要控制功能转移到了容器或者框架。
依赖注入DependencyInjection(DI),可以理解为在应用运行期间容器会将某种依赖的关系主动放入到相应控件中。
2.1.2面向切面编程(AOP)
面向方面编程[16]是对面向对象编程的补充,他提供另一种考虑程序的结构的方法来实现。
应用程序被解释成多个层次的对象就是所谓的面向对象,面向切面编程就是将程序解释成几个方面或者说是一些关注点。
这种方法能够将好比事务管理这样的有很多横切对象的关注点(这种关注点专业术语称为横切关注点)进行模块化。
AOP框架属于Spring的关键组件,但ApplicationContext和SpringIOC容器(BeanFactory)不依赖AOP,这意味着一旦不需要用到AOP就可不用的。
AOP以提供一个较为管用的中间件的解决方案的方式对SpringIOC进行了补充。
2.2Hibernate框架
Hibernate框架在业务层中被用来操作数据库。
Hibernate技术是一个开源的对象关系间映射的框架,它相当轻量级的对象封装了JDBC,这使Java编程人员可以任意的使用对象编程的思维来对数据库进行操作[17]。
Hibernate框架可以在任何场合替代JDBC使用,其最有里程碑意义的是Hibernate框架可以取代CMP于应用EJB的J2EE架构中,取代完成有关数据的持久化任务。
Hibernate框架通过载入类映射文件(xmlMapping)和配置文件(hibernate.cfg.xml)中的内容,自动的生成SessionFactory实例工厂,由工厂的openSession()方法创建每次所需要的Session对象,然后借助持久化对象(persistentobject)在Session对象的相关方法中完成对数据库的有关操作,这不需要使用SQL和JDBC对数据进行操作。
图21Hibernate工作原理
2.3JMS机制
JMS[18]也称作Java消息服务应用程序接口,它是Java平台中关于面向消息的一个中间件(MOM)的API,用于在两个应用程序间或分布式系统中发送消息,进行异步通讯。
JMS通过提供标准的产生、发送、接收消息便于应用的开发。
2.4AJAX
AJAX也就是(异步JavaScript和XML)建立交互式网页应用的一种网页开发技术[19,20]。
主要有了如下几点技术:
使用DOM(DocumentObjectModel)进行动态交互以及显示;基于WEB标准(standards-basedpresentation)的XHTML加CSS的表示;利用XSLT和XML进行数据交换以及相关的操作;利用JavaScript[21]技术将所有的对象绑定在一起;利用XMLHttpRequest进行非同步的数据检索操作。
和LAMP或DHTML很相似AJAX并不是指单一的某种技术而是巧妙地运用一些相关技术的技术。
使用AJAX的最大好处是可以在不更新整个页面的基础上去对部分数据进行维护,这为Web应用程序更为快速地回应用户的动作提供了支持,同时也避免了那些没有改变过的信息在网络上进行发送[22]。
2.5ExtJs框架
ExtJS用于建立前端的展示页面是一个和后台没有什么关系的前端AJAX框架,ExtJS可以用以开发RIA也被称为富客户端的AJAX应用[23]。
因此,可以把ExtJS框架用到.Net、Php、Java等各种开发语言所开发的应用中去。
ExtJs的开发起初是由JackSlocum根基与YUI技术的,他借鉴JavaSwing等机制来组织可视化组件,所以无论是从UI界面中的CSS层叠样式的运用,到数据解析方面的异常处理,都可以说是一个少有的JavaScript客户端的技术精品。
Ext的开发理念和UI的组件模型由YUI和Swing两者中蜕变、生成,而且为开发者给出了众多不同浏览器间的兼容处理。
相对于直接面向W3C对象模型、DOM来开发UI组件,ExtJs要方便的多。
2.6DWR技术
DWR(DirectWebRemoting)是一个Web应用远程调用的框架[24]。
AJAX开发在这个构架的帮助下可以非常简洁方便。
在DWR环境下,用户机利用JavaScript使用服务端的Java方法就和使用本地相同(DWR根据Java类来实时自动生成JavaScrip代码)。
2.7开发环境
(1)系统平台:
MicrosoftWindows7
(2)系统构架:
B/S构架
B/S结构(Browser/Server,浏览器/服务器模式)模式统一了客户端,在服务器上实现系统核心功能,大大的简便了系统的开发、使用和维护,其中WEB浏览器是客户端上最首要的应用软件。
在客户机上只需要安装浏览器(Browser),例如InternetExplorer或NetscapeNavigator,然后在服务器安装上Sybase、Oracle、SQLServer或Informix等数据库。
WebServer服务使得浏览器同服务器上的数据库交互数据。
B/S结构的最大优点就是没有地域和软件平台的限制,只要一台能上Internat的电脑就可以使用,客户端上无需安装、无需维护。
系统的扩展非常容易。
(3)服务器软件:
Tomcat
Tomcat是一个Jakarta项目中的Apache软件基金会的主要的项目,他是由Sun、Apache还有另外一些公司和个人一起开发完成的。
因为有了Sun公司的支援和参与所以在Tomcat中总是能展现最新的JSP和Servlet规范,Tomcat5便支持了最新的JSP2.0和Servlet2.4规范。
由于Tomcat的性能稳定、技术先进,同时他还是免费的,所以深受Java开发爱好人员的喜爱同时也取得了很多软件开发商的认同,成为当前相当流行的Web应用程序服务器。
(4)系统开发工具:
Eclipse(集成环境)
Eclipse是一个可扩展的基于Java语言的而且开源的开发环境平台。
其本质上只是一组服务和一个框架,他主要用于使用组件插件来构建需要的开发环境。
很方便的是,Eclipse还拥有一个标准插件包,其中就有Java的开发工具(JavaDevelopmentKit,JDK)。
Eclipse已经超出了Java集成开发环境的功能定位。
Eclipse还拥有针对希望扩展Eclipse的软件开发人员的插件的开发环境,因为这个开发环境允许开发人员构建出和Eclipse环境能够无缝集成的工具。
基于Eclipse中的所有东西都是插件。
对于为Eclipse提供插件以及为用户提供相同的IDE的人来说,所有的工具开发人员都拥有同等的发挥空间。
这种一致和平等性并不仅局限在Java语言的开发工具中。
虽然Eclipse本身是使用的Java语言所开发的,不过它的实际用途不限于Java编程语言;例如,已经可以使用支持诸如COBOL、C/C++、PHP的组件或者计划以后将会推出。
Eclipse开发框架还可以用来当做和软件开发没有什么关系的一些其他的应用程序类型的基础,例如内容管理系统等。
(5)数据库软件:
SQLServer2008
MicrosoftSQLServer2008是一个经典的关系数据库的管理系统,其为结构化数据和关系型数据提供了相当安全以及可靠的存储的功能,使得用户可以方便的构建并且管理用于具体业务的高性能和高可用的数据应用程序。
2.6.1服务器端环境要求
下面给出系统开发时服务器端所使用的配置:
操作系统:
MicrosoftWindows7ServicePack132位
硬件配置:
Intel(R)Core(TM)i3CPUM370@2.40GHz、4G内存、320G可用硬盘
运行环境工具:
JavaJDK1.6
服务器软件:
Tomcat6.0
系统开发工具:
Eclipse(集成环境)
2.6.2客户端环境要求
操作系统:
Windows2000或WindowsXP或WindowsVista或Windows7或Windows8或Linux视窗操作系统。
2.8主要开发语言
本系统采用Java进行开发,Java编程语言是由SUN公司在1995年推出的新一代面向对象的编程语言。
Java编程技术有很好的效率,平台可移植性、通用性和安全性,可以广泛应用在数据中心、个人电脑、游戏机、手机、科学等领域的超级计算机和互联网,与此同时,它的开发者是世界上最大的专业社区。
在移动互联网和云计算行业的世界环境中,Java有广阔前景和显著的优势。
其特点是:
①.平台无关性:
平台无关性就是指Java能在不同的平台上运行。
Java使用了虚拟机原理,并使得Java应用在虚拟机上运行,以此实现Java接口在不同平台之间互通。
使用Java编写的应用程序没有平台和地域障碍。
Java语言的数据类型与具体机器硬件等没有什么关系,Java虚拟机(JavaVirtualMachine)的实现是建立在操作系统和硬件基础之上的,Java虚拟机可以解析Java的二进制代码这可以用于不同平台之间的接口。
②.安全性:
Java编程很像C++,有学习过C++语言的读者能够很快的掌握Java语言的精髓。
Java编程语言舍弃了C++语言中的指针直接操作存储器地址的功能。
程序运行时内存将由操作系统来分配。
Java语言使用安全管理器管理应用程序,以此防止程序的一些非法访问。
③.面向对象:
Java语言将数据封装在类中这样能设计出简洁和好维护的应用程序。
同时类的继承性和封装性等对象特性使程序编译一次就可以被重复使用。
编程人员只需要重点设计以及应用接口和类。
Java语言提供了很多一般对象类,只需要通过继承方法就可以使用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 毕业设计 论文