企业资产管理系统资产核查模块的设计与实现文档格式.docx
- 文档编号:16555440
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:34
- 大小:285.23KB
企业资产管理系统资产核查模块的设计与实现文档格式.docx
《企业资产管理系统资产核查模块的设计与实现文档格式.docx》由会员分享,可在线阅读,更多相关《企业资产管理系统资产核查模块的设计与实现文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
ThedesignandimplementofassetverificationmoduleinEnterpriseAssetManagement
College:
InternationalSchoolofSoftware
Subject:
SoftwareEngineering
Name:
JinLizheng
Directedby:
ZhangMuProfessor
LiaoGuangZhiProjectManager
June2009
郑重声明
本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。
尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。
对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。
本学位论文的知识产权归属于培养单位。
本人签名:
日期:
摘要
企业资产管理系统(EnterpriseAssetManagement,简称EAM)是立足企事业单位后勤发展,集数据集成、电子报表、分类汇总、自动生成、网络传递、多极查询于一体的企业资产管理系统,是与现行住房档案管理信息系统和企业资产上报系统相互支持,配套的智能化技术平台,整体上建成运作简便、管理科学、效率很高、最终能实现无纸化办公的品牌服务窗口。
资产核查模块是EAM系统中核心的部分,也是项目管理的基本单元,不论采用何种的表单,所有的企业资产管理数据,在资产核查模块都能查询到。
资产核查结合了所有的企业资产数据,对他们进行综合的分析,并作详细的核查,最后总结出新的资产清单。
以达到资产管理者对企业资产的去留了如指掌。
EAM引入资产核查模块作为其业务层开发的平台,为企业资产明细,核算提供流程支持。
本文描述的是EAM系统的资产核查模块的设计与实现。
根据JZEE的N层体系结构,Web系统大体被分为三层:
表现层、业务层、数据持久层。
本文引入了开源的Struts实现了表现层的框架,Spring实现了业务层的框架,Hibernate实现了数据持久层的框架。
本文运用Hibernate查询功能来实现资产核查模块的数据查询。
Hibernate是一个对象/关系数据库映射工具(O/RMapping),它协调了对象模型和基于SQL的关系模型之间的阻抗不匹配。
运用Hibernate来搭建企业级web应用的数据持久层,并针对开发过程中Hibernate的session关闭而出现的延迟加载问题,给出系统的分析和合理的解决方案,本文将对此做出详细论述。
关键词:
企业资产管理;
资产核查;
J2EE;
Struts;
Spring;
Hibernate。
ABSTRACT
EnterpriseAssetManagementSystem(EnterpriseAssetManagement,referredtoasEAM)isbasedontheenterprises'
rear-servicedevelopment,includingdataintegration,electricreportforms,subtotals,automaticgeneration,networktransmissionandmulti-polarinquiriesintheenterpriseassetmanagementsystem.ItisaintelligenttechnologyplatformwiththeexistingfiletubehousingManagementinformationsystemsandenterpriseassetreportingsystem,andsupporteachother.TheaiminawholeBodyistobuildasoftware,whichhastheoperationofsimple,scientificmanagementandefficiency,andultimatelytoachievepaperlessofficegoodsLicensingservicewindow.
EAMassetverificationmoduleispartofthecoresystemaswellasthebasicunitofprojectmanagement.Nomatterwhattheform,alltheenterpriseassetmanagementdatacouldbequeriedintheassetverificationmodule.TheassetVerificationmodulecombinedwithalloftheassetsoftheenterprisedata,fortheircomprehensiveanalysisanddetailedverification,generateanewlistofassetsattheend.Inthisway,themanagerswillbefamiliarwiththein-and-outofalltheindustryassets.EAMsystemgetsassetverificationmoduledevelopedaspartofitsbusinessplatformlayerinordertodetailthecorporateassetsandaccountprocessestoprovidesupport.
ThispaperdescribesthedesignandimplementationoftheAssetVerificationModulefortheEAMsystem.AccordingtotheN-tierJ2EEarchitecture,webapplicationisgenerallydividedintothreelayers:
viewlayer,businesslogiclayer,persistencelayer.Weusethreeframeworks:
Strutsisframeworkofviewlayer,Springisframeworkofbusinesslogiclayer,HibernateisframeworkofpersistencelayerandallofthesecomefromOpen-Source.ThisarticlefeaturestheuseofHibernatequerytoachievethedataqueryoftheAssetVerificationModule.Thisarticlewilldiscussesthisindetail.
Keywords:
EAM;
Assetverification;
Hibernate
第1章绪论
1.1EAM系统的研究背景及意义
1.1.1EAM系统的研究背景
20世纪中期开始的信息技术革命以来,企业资产管理EAM(enterpriseassetmanagement)系统越来越成为资产密集型企业必备的管理工具之一。
主要适用于资产密集型企业对高价值固定资产的维护、保养、跟踪等信息管理。
它以提高资产可利用率、降低企业运行维护成本为目标[1]。
以优化企业维修资源为核心,通过信息化手段,合理安排维修计划及相关资源与活动,从而提高企业的经济效益和企业的市场竞争力EAM系统的发展与计算机技术、网络技术、数据库技术和检修方式的发展密不可分,由早期DOS版本下的、单机版和一种检修方式的纯设备管理软件发展到现在可跨平台的、Web架构的和多种检修方式于一身的资产管理系统。
。
EAM系统在国外企业中取得了极大的成功。
许多国内外知名厂商都推出了自己的EAM产品,例如美国MAXIMO,DATASTREAM,瑞典IFS,德国西门子的BFS++,都是EAM市场中最优秀的系统之一,Oracle也推出了自己的EAM产品,国内近年来也有这方面的软件产品。
虽然EAM是西方国家发明的,但是同时它也适用于我国的资产密集型企业,特别是那些设备品种多、价值高,对设备完好率及连续可运转率要求高的企业,如发电厂、输配电及供电企业、钢铁公司、粮油加工和矿山等。
1.1.2EAM系统及资产核查模块的意义
EAM系统的实施,将会大大地改进企业内部资产的管理方式,将能延长设备寿命,减少运营成本和提供高效的合作,提高工人工作的安全性和效率,减少停机时间,控制维护费用,降低零件库存和费用,提高采购效率,充分利用设备、设施、人力及替他资源。
减少人为损失,提高工作效率,为领导科学决策听过可靠保证,为企业简化内部流程,提高效率,增强竞争力,提供有力的帮助。
按照著名研究机构GartnerGroup的调查,EAM系统可以在不明显增加维修费用的前提下,通过现代信息技术降低停机时间并增加产量。
EAM可以给企业带来的效益有:
提高有效工作时间10%-20%;
降低库存成本10%-25%;
减少设备停机时间10%-20%;
增加设备使用效率20%-30%;
延长设备生命周期10%左右;
使库存准确率达到95%以上[2]。
资产核查模块是EAM系统中核心的部分,也是项目管理的基本单元,不论采用何种的表单,所有的企业资产管理数据,在资产核查模块都能查询到。
1.2本文的研究内容
1.2.1本文的课题来源和意义
作者参与了易思博公司所提供的毕业设计项目企业资产管理系统EAM的研发工作,独立完成了其中资产核查模块的开发,并独立负责资产核查模块的需求分析、概要设计、详细设计和编码实现。
本文是作者对开发过程的总结与探讨。
该系统在开发的过程中,吸取了国内外先进软件经验,是基于J2EE技术B/S架构的企业资产管理系统。
1.2.2本文的主要工作
本文的主要工作是在描述EAM资产核查模块的架构的基础上,阐述基于J2EE的MVC思想的资产核查模块的设计与实现,并阐述实现数据查询操作所用的hibernate数据查询技术。
本文主要以资产核查模块为例,介绍企业资产管理系统EAM从需求分析到实现的整个开发过程以及后期的维护方法,全文共分为七章:
第一章绪论;
第二章介绍了EAM的基本思想以及EAM系统的开发所应用的技术;
第三章简要介绍了EAM系统的分析与设计;
第四章阐述了EAM资产核查模块的需求分析和描述;
第五章介绍了资产核查模块的设计和实现;
第六章介绍了EAM系统的扩展和维护;
第七章为总结和展望。
第二章企业资产管理系统概述
2.1EAM的定义及范围
2.1.1EAM系统的定义
EAM的定义EAM(EnterpriseAssetManagement)是面向资产密集型企业的企业信息化解决方案的总称。
它以提高资产可利用率、降低企业运行维护成本为目标,以优化企业维修资源为核心,通过信息化手段,合理安排维修计划及相关资源与活动。
通过提高设备可利用率得以增加收益,通过优化安排维修资源得以降低成本,从而提高企业的经济效益和企业的市场竞争力。
在商业竞争日益激烈的今天,对于拥有高价值资产的企业来说,设备维护已不再局限于成本范畴,更成为获取利润的战略工具,EAM系列产品使这一目标得以实现。
EAM是以企业资产及其维修管理为核心的软件系统,它主要包括:
基础管理、工单管理、预防性维护管理、资产管理、作业计划管理、安全管理、库存管理、采购管理、报表管理、检修管理、数据采集管理等基本功能模块,以及工作流管理、决策分析等可选模块。
EAM以资产模型、设备台帐为基础,强化成本核算的管理思想,以工单的创建、审批、执行、关闭为主线,合理、优化地安排相关的人、财、物资源,将传统的被动检修转变为积极主动的预防性维修,与实时的数据采集系统集成,可以实现预防性维护。
通过跟踪记录企业全过程的维护历史活动,将维修人员的个人知识转化为企业范围的智力资本。
集成的工业流程与业务流程配置功能,使得用户可以方便地进行系统的授权管理和应用的客户化改造工作。
EAM管理系统由以下三个基本要素组成:
先进的管理思想、成熟的软件产品和科学的实施方法。
这三个要素缺一不可,去掉任何一个要素,EAM管理系统在企业的应用都不会成功[3]。
EAM系统的最终目标就是:
集成的资产维护与优化资产利用;
可动态调整维护、维修计划;
确保最大化的工作安全及法规的遵从;
提高资产的可靠性,控制维护及维修费用,延长资产的使用生命周期。
2.1.2EAM系统的应用范围
EAM系统主要应用于资产密集型企业,如电信、天然气、石油和电力等,这些企业的特点是:
在国家组成结构中地位显赫,掌握着国家的经济命脉;
资产高度密集、资产的管理成本在总成本中比重最大,至少在50%左右;
资产的安全可靠运行是保障生产任务完成的核心;
生产量取决于资产本身的性能,受原料投入量影响较小;
资产技术含量和自动化程度高;
生产工艺相对简单属流程性企业,对人的依赖性较弱。
2.2EAM系统开发环境与实现技术
2.2.1开发环境简介
EAM系统应用了开发企业及web系统流行的J2EE技术,采用主流的Brower/Server架构,系统运用MVC框架,应用Struts1.2搭建表现层框架,应用Spring2.0搭建应用逻辑层框架,使用Hibernate3.2来实现对象到关系数据库的映射。
系统是在windowsXP环境下开发的,IDE工具使用MyEclipse7.0系列,建模工具使用UML,数据库使用MySQL5.0,Web容器使用Tomcate5.5系列,客户端页面显示使用MicrosoftInternetExplorer6.0并兼容当前windows桌面应用的遨游浏览器。
2.2.2开发工具介绍
1、MyEclipse简介
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,Spring,JSF,CSS,Javascript,SQL,Hibernate。
2、MySQL简介
MySQL是一个小型关系型数据库管理系统,被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
MySQL的特性:
(1)、支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、、OS/2Wrap、Windows等多种操作系统;
(2)、支持多线程,充分利用CPU资源;
(3)、为多种编程语言提供了API。
这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等[4];
(4)、.提供TCP/IP、ODBC和JDBC等多种数据库连接途径;
(5)、.提供用于管理、检查、优化数据库操作的管理工具;
(6)、.可以处理拥有上千万条记录的大型数据库。
2.2.3核心技术
1、J2EE平台规范
J2EE(Java2Platform,EnterpriseEdition)是SUN公司定义的一个开发分布式企业级应用的规范。
它提供了一个多层次的分布式应用模型和一系列开发技术规范。
多层次分布式应用模型是指根据功能把应用逻辑分成多个层次,每个层次支持相应的服务器和组件,组件在分布式服务器的组件容器中运行,容器间通过相关的协议进行通讯,实现组件间的相互调用。
遵从这个规范的开发者将得到行业的广泛支持,使企业级应用的开发变得简单、快速。
J2EE规范定义了以下四个层次:
(1)、客户端层(ClientTier)用来实现企业级应用系统的操作界面和显示层。
另外,某些客户端程序也可实现业务逻辑。
可分为基于Web的和非基于Web的客户端两种情况。
基于Web的情况下,主要作为企业Web服务器的浏览器。
非基于Web的客户端层则是独立的应用程序,可以完成客户机无法完成的工作[5]。
(2)、Web层为企业提供Web服务。
包括企业信息发布等。
Web层由Web服务器和Web组件组成。
J2EEWeb组件包括JSP页面和Servlets。
Web层也可以包括一些JavaBeans。
Web层主要用来处理客户请求,调用相应的逻辑模块,并把结果以动态网页的形式返回到客户端。
(3)、业务层(BusinessTier)也叫EJB层或应用层,它由EJB服务器和EJB组件组成。
一般情况下,许多开发商把Web服务器和EJB服务器产品结合在一起发布,成为应用服务器。
EJB层用来实现企业级信息系统的业务逻辑。
这是企业及应用的核心,由运行在业务层中的EJB来处理。
一个Bean从客户端接收数据、处理,然后把数据放到企业信息系统层存储起来。
同样,一个Bean也可以从企业信息系统层取出数据,发送到客户端程序。
业务层中的EJB要运行在容器中,容器解决了底层的问题,如事务处理、生命周期、状态管理、多线程、安全管理、资源池等。
(4)、企业信息系统层(EnterpriseInformationSystemtier),处理企业系统软件,包括企业基础系统、数据库系统及其它遗留的系统。
它是连接J2EE平台和企业信息系统层的标准API。
业务层和Web层共同组成了三层J2EE应用的中间层,其他两层是客户端层和存储层或企业信息系统层。
2、Hibernate简介
Hibernate是一个开放源代码的O/RMapping(对象关系映射框架),它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任[6]。
为了企业应用与后端数据库频繁交互,并且使得交互更加有效而迅捷,企业应用开发者在应用和数据库之间创建了一个持久层。
这个数据库负责存储从应用到数据库的数据,也负责数据的检索、更新和删除。
在基于J2EE的企业应用中,组成这个持久层的Java类既可以映射对象到数据,也可以映射数据到对象。
持久层建立是简单的,但是,这种关系常常难于建立,因为对象或者下层的数据库结构复杂,很难做到把关系表记录完整的映射到持久对象的关系上来,这主要体现在多表的关系无法直接映射到对持久对象的映射上来,可能是一个表映射多个持久对象,有可能是多个表映射一个持久对象,更有可能的是表的某些字段映射到一个持久对象,另外一些字段映射到别的持久对象上。
Hibernate是一个开源对象与持久性和查询相关的框架,Hibernate帮助基于普通的Java对象模型的持久对象的创建,从而允许持久对象拥有复杂的结构如混合类型、集合和属性,还可以拥有用户自定义的类型。
现在这些持久对象可以有效的反映出底层数据库模式的复杂结构。
为了提高效率,Hibernate包括了一些策略,如与数据库交互时的多重最优化,包括对象的缓存、有效外部连接的获取、必要时SQL语句的执行。
3、基于MVC思想的三层体系结构
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。
随着应用的复杂性和规模性,界面的处理也变得具有挑战性。
一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理[7]。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):
就是业务流程/状态的处理以及业务规则的制定。
业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。
它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。
对一个开发者来说,就可以专注于业务模型的设计。
MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。
抽象与具体不能隔得太远,也不能太近。
MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性[8]。
业务模型还有一个很重要的模型那就是数据模型。
数据模型主要指实体对象的数据保存(持续化)。
比如将一张订单保存到数据库,从数据库获取订单。
我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。
控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层并不做任何的数据处理。
例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 资产 管理 系统 核查 模块 设计 实现