计量计费系统的设计与实现 毕业论文.doc_第1页
计量计费系统的设计与实现 毕业论文.doc_第2页
计量计费系统的设计与实现 毕业论文.doc_第3页
计量计费系统的设计与实现 毕业论文.doc_第4页
计量计费系统的设计与实现 毕业论文.doc_第5页
免费预览已结束,剩余46页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计量计费系统的设计与实现计量计费系统的设计与实现 摘要 本文介绍了计量计费系统的设计与实现,并从水电气热等 几个方面详细介绍了本系统的主要功能和设计思想。 作为能源管理系统的子系统,计量计费系统属于系统应用软件层,构筑在统一支撑 平台层之上。本系统采用 java 语言开发,采用 osgi 框架、mvc 模式,运用 javascript、servlet、xml、log4j 等技术,实现了一个基于 web 的 b/s 模式的系统。 系统建设的主要功能是对能源消耗情况(包括电、水、气、热等)进行采集、计量、 汇总,实现多样化查询,根据不同计费方式和标准对能耗进行计费,并生成相应的 账目报表,还可对各项数据进行对比分析生成表单和图形以供进行科学的规划。通 过该系统的实施,实现对整个企业能源消耗数据的及时、快速和准确的监测,利用 互联网技术、门户网站等手段为企业领导以及相关管理部门提供了多方位、可视化 的便捷服务,实现信息快速传递、共享、管理和应用。 关键词:计量计费系统,能源管理,osgi,java metering and billing system method research abstract this article describes the metering and billing systems design and implementation, and from several aspects such as water, electricity and heat are introduced in detail the main function of the system and design ideas. subsystem as an energy management system, metering and billing system is a system application software layer, to build support in a unified platform layer. the system uses java language development, the use of osgi, mvc framework, the use of javascript, servlet, ole technology, implements a web-based b / s mode system. the primary function of the system building energy consumption (including electricity, water, gas, heat, etc.) for the collection, measurement, aggregation, diversification query, depending on the billing and accounting standards on energy consumption, and generates the corresponding the statement of accounts, but also comparative analysis of the data generated forms and graphics for scientific planning. through the implementation of the system to realize the energy consumption across the enterprise data in a timely manner, rapid and accurate monitoring, the use of internet technology, portals and other means for business leaders and the relevant management departments to provide a multi-directional, visual and convenient services, achieve rapid transmission of information, sharing, management and applications. key words: metering and billing systems, energy management, osgi,java 指导教师: 赵世国iii 本文介绍了计量计费系统的设计与实现,并从水电气热等几个方面详细介绍了本系统本文介绍了计量计费系统的设计与实现,并从水电气热等几个方面详细介绍了本系统 的主要功能和设计思想。的主要功能和设计思想。.iv i 目 录 1 引言 1 1.1 计量计费系统概述1 1.2 计量计费系统在国内外的发展现状 1 1.3 开发方案与预期结果 2 2 核心技术及工具3 2.1 系统开发工具和环境 3 2.1.1 青岛精益优华公司自主研发的 ide 开发工具3 2.1.2 oracle 数据库3 2.1.3 osgi 服务器3 2.2 系统开发涉及的关键技术介绍 4 2.2.1 javascript 技术简介 4 2.2.2 xml 技术简介 4 2.2.3 log4j 技术简介 4 2.2.4 osgi 技术简介 4 2.2.5 mvc 模式简介 5 3 系统分析 6 3.1 系统功能需求总体描述6 3.1.1 项目背景6 3.1.2 总体目标6 3.1.3 项目内容6 3.2 功能需求详细描述7 3.2.1 基础数据模块10 3.2.2 计量管理模块10 3.2.3 计费管理模块12 3.2.4 综合查询模块13 3.3 系统非功能性需求14 3.3.1 平均响应速度14 3.3.2 可靠性 15 3.3.3 安全性 15 3.3.4 可扩展性15 3.3.5 易用性 15 3.3.6 集成性 15 4 系统设计 16 4.1 系统设计思想16 4.1.1 b/s 结构开发思想16 4.1.2 面向对象的软件开发设计思想16 4.1.3 代码分层思想16 4.1.4 mvc 模式设计思想 16 4.1.5 osgi 框架设计思想 17 4.2 主要数据表 18 ii 4.3 系统框架 26 4.4 详细功能模块28 4.4.1 登录模块28 4.4.2 基础数据模块31 4.4.3 核心业务模块34 5 系统测试 47 5.1 具体模块测试47 5.2 测试结果48 6 结束语49 参 考 文 献 50 致 谢51 第 1 页 共 54 页 1 引言 1.1 计量计费系统概述 作为能源管理系统的子系统,计量计费系统旨在对各项能源的消耗情况进行精确、 系统的统计和分析,进而根据数据制定下一步的节能计划。顾名思义,计量计费系 统的核心任务就是计量与计费,在此基础上附加数据分析查询等满足用户需求的功 能。通过计量数据采集(水,电,气等多种计量原始数据的采集) ,计量数据处理 (数据存储,数值转换,数据分配等处理) ,计量数据记录和归档(按时间、类别 等要素) ,计量数据分析(分析数据的合理性,找出问题数据) ,人工抄表,手工录 入(弥补现场计量设备的不足) ,合理调整,分步审核,最终实现对能耗的较为全 面的统计和归纳。 1.2 计量计费系统在国内外的发展现状 世界范围内的能源紧张,使得人们对能源问题日益关注。经济的发展离不开能源的 支撑,我国经济已进入新的快速增长阶段,而粗放式的增长方式使得我国能源、淡 水、矿产等资源不足的矛盾进一步凸显。随着国家及各级地方政府节能降耗目标责 任制的层层落实,能源统计工作也越来越受到重视。通过数据分析,使能源使用合 理,控制浪费,达到节能减排,节能降耗,可以帮助企业对每条生产线、每个工作 班组以及主要耗能设备进行实时考核,并可以帮助企业进一步优化工艺,以降低单 位能耗成本,提高企业综合竞争力。 计量计费系统强调过程方法和管理的系统理论的有机结合,这样才使得 pdca 循环 更具有管理的生命力。标准通过规范各种能源管理活动、制度和措施,注重寻求和 利用适宜的节能技术和方法,以及最佳能源管理实践和经验,达到节能减排的目的。 欧美发达国家在计量计费上起步比较早,他们大力推进以高能效、低排放为核心的 “低碳革命” ,着力发展“低碳技术” ,通过对能耗情况的实时监控来制定相应的能 耗计划,对产业、能源、技术、贸易等政策进行重大调整,以抢占先机和产业制高 点。西欧发展最快的是德国,计量计费系统得到了大面积推广应用。欧共体第三个 科技发展总体规划(20 世纪 90 年代)将测量、检测技术列为 15 个专项之一。1 我国在计量计费方面起步晚,起初大多是依靠国外的设备和技术,尽管近年来通过 政策的改变和政府的鼓励和支持,有了很大发展,但是与国处先进技术相比,还存 在很大差距的。据了解,个别工业企业对原煤、电、油、气等能源产品的折标系数 不规范,或计量、检测工作不规范;特别是对原煤入厂计量,化验不及时,出现一 些评估值;企业能源亏损不准确,人为因素也起了一定的作用,计量工作人员在能 源介质的计量工作中,由于计量不准确从而造成了很大的浪费。如各种返矿,自产 废钢,工厂管理人员由于计量手段问题,不能分开计量,有的认为是内部循环而根 本不计量。标准不严格,如在钢铁工业中,很随意地就把高等级的钢种改制成低等 级的钢种,从而造成核算的数据扭曲失真,为成本决策分析提供错误的数据。 早在 2002 年,中国标准化研究院就开始了有关能源计量管理体系标准的研究工作, 逐步探索建立我国的能源计量管理体系系列国家标准。但由于诸多原因,研究初期 并没有正式提出国家标准立项。在借助国家发改委和科技部两个课题研究、试点和 相关经验积累的基础上,申请了国家标准立项并获得批准。国家标准正式立项后, 标准提出单位和起草单位组成了工作组,制定了工作计划,通过深入研究并多次召 开工作组讨论会,形成了“能源管理体系-要求 (征求意见稿) ” ,2同时,标准 第 2 页 共 54 页 制定单位通过各种渠道,收集到了大量相关的能源管理体系标准和资料,并据此对 标准草案内容进行了逐步完善。 能源计量计费与节能监测、能源审计、能源统计、能源利用状况分析是企业能源管 理和节能工作的基础,而能源计量是基础中的基础。如果企业没有合理配备能源计 量器具,能源管理部门就难以获得准确可靠的能源计量数据,对企业的节能监测、 能源审计、能源统计、能源利用状况也就难以进行科学的分析和统计。从而无法为 企业的能源管理和节能工作提供可靠、准确的指导方向,可能造成企业能源严重浪 费,增加生产成本。由于企业能源的浪费,随之也会带来对环境的污染和破坏。自 改革开放以来,国家的经济出现了快速发展,随着经济的快速发展,国家对企业的 节能降耗工作提出了更高更新的要求,企业能源计量工作就显得更为重要,必须与 国家对企业节能、环保的要求相适应。3,4 大中型企业虽然普遍重视能源计量计费工作,建立了比较完善的计量检测保证体系, 但信息化程度普遍不高,能源计量数据没有充分发挥作用。只有韶关钢铁、珠江钢 铁、唐钢等钢铁企业建立了功能比较先进的能源计量、统计、实时监控的计算机网 络,在其他行业能源计量信息化建设水平还比较低,远远不能适应目前建立资源节 约型社会、实现科学计量、节能降耗的需要。 总体而言,我国在计量计费工作上存在技术和制度的不足,亟待完善。 1.3 开发方案与预期结果 本系统是基于 java 的系统应用层软件。具体设计时使用青岛精益优华公司自主研 发的 ide 开发工具进行设计和开发,并通过青岛精益优华公司业务应用平台进行界 面的展示和用户操作。采用 osgi 框架、mvc 模式,使用了 xml,log4j,servlet,javascript 等技术。后台数据库采用 oracle 数据库。 通过模拟数据的输入,本系统能实现能源消耗量从采集、统计、归档、分析到最终 生成报表曲线等一系列功能,给用户最直观的能耗展示。 第 3 页 共 54 页 2 核心技术及工具 2.1 系统开发工具和环境 系统采用 oracle 作为后台数据库,osgi 作为服务器,使用青岛精益优华公 司自主研发的 ide 开发工具结合青岛精益优华公司业务应用平台以及 ie9 浏览器开 发。 2.1.1 青岛精益优华公司自主研发的 ide 开发工具 本工具是对 eclipse 的一个扩展。eclipse 是一个开放源代码的、基于 java 的可扩展 开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开 发环境。幸运的是,eclipse 附带了一个标准的插件集,包括 java 开发工具(java development tools,jdt) 。利用它,我们可以链接多种数据库进行开发。如 oracle、sql、mysql 等。其包括完备的编码、调试、测试和发布功能,完整支持 html,javascript、jsp 等脚本语言,且支持多种框架如 structs、hibernate 等。且它 可以运用自己开发的插件进行开发,提升开发效率。而我们自己研发的工具正是基 于 eclipse 的基础上进行添加插件而完成的,且运用现今流行的 osgi 服务,这实现 了可在服务启动的情况下,进行项目的部署,停止某个项目的服务等操作,这样大 大提高了维护的效率。且我们运用了 jdk1.6,这样让此工具又有了新的功能,如支 持泛型、注记等功能,便于程序员开发。 2.1.2 oracle 数据库 oracle 数据库是一种大型数据库,其由 oracle 公司开发,且在前不久收购了 sun 公 司,顾可知其发展不可估量。oracle7.x 以来引入了共享 sql 和多线索服务器体 系结构。这减少了 oracle 的资源占用,并增强了 oracle 的能力,使之在低档 软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持数量 庞大的用户群。提供了基于角色(role)分工的安全保密管理。在数据库管理功能、 完整性检查、安全性、一致性方面都有良好的表现。提供了与第三代高级语言的接 口软件 pro*系列,能在 c,c+等主语言中嵌入 sql 语句及过程化(pl/sql)语句, 对数据库中的数据进行操纵。提供了新的分布式数据库能力。可通过网络较方便地 读写远端数据库里的数据,并有对称复制的技术。甴此可知,oracle 数据库的功能 无限庞大。 oracle 与其他数据库相比具有一定的优势。具我所知,现今流行的数据库有微软的 sqlserver、sun 公司的 mysql、ibm 的 db2 及微软的 access 等。与其相比,oracle 提供了丰富的函数,可让用户操作起来极其便捷,且还支持大量媒体数据。最重要 的一点是它可容许大量的数据进行存取。由此可知,选择 oracle 数据库是一个正确 的选择。 2.1.3 osgi 服务器 osgi 服务平台提供在多种网络设备上无需重启的动态改变构造的功能。为了最小 化耦合度和促使这些耦合度可管理,osgi 技术提供一种面向服务的架构,它能使 这些组件动态地发现对方。osgi 联 盟已经开发了为例如象 http 服务器、配置、 日志、安全、用户管理、xml 等很多公共功能标准组件接口。这些组件的兼容性 插件实现可以从进行了不同优化和使用代价的不同计算机服务提供商得到。然而, 服务接口能够基于专有权基础上开发。 由以上特点,让 osgi 技术拥有独一无二的新的配件市场机会。选择 osgi,可让程 序员更好的进行后期的维护等工作,顾选择它,也是个不错的选择。 第 4 页 共 54 页 2.2 系统开发涉及的关键技术介绍 2.2.1 javascript 技术简介 javascript 是一种由 netscape 的 livescript 发展而来的原型化继承的面向对象的动 态类型的区分大小写的客户端脚本语言。最早是为了解决因为网速问题而导致验证 请求耗时太长的问题。javascript 可以操作 html,修改 html 元素的属性、样式, 还可添加或删除元素,类似的语言有微软的 jscript。javascript 不需要编译,浏览 器可以直接解释执行。js 是基于对象的,但是本身并不支持继承与多态也没有类 的严格定义,其语法宽松是一种弱类型语言。目前主要用于数据的前端验证,添加 与用户的动态交互行为,以及在 ajax 技术中应用。 2.2.2 xml 技术简介 xml(extensible markup language)即可扩展标记语言,它与 html 一样,都是 sgml(standard generalized markup language,标准通用标记语言)。xml 的简单使 其易于在任何应用程序中读写数据,这使 xml 很快成为数据交换的唯一公共语言, 虽然不同的应用软件也支持其它的数据交换格式,但不久之后他们都将支持 xml,那就意味着程序可以更容易的与 windows、mac os, linux 以及其他平台下 产生的信息结合,然后可以很容易加载 xml 数据到程序中并分析他,并以 xml 格式输出结果。xml 是 internet 环境中跨平台的,依赖于内容的技术,是当前处理 结构化文档信息的有力工具。扩展标记语言 xml 是一种简单的数据存储语言,使 用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然 xml 占 用的空间要比二进制数据占用的空间大,但 xml 极其简单,易于掌握和使用。 2.2.3 log4j 技术简介 log4j 是 apache 的一个开放源代码项目,通过使用 log4j,我们可以控制日志信息 输送的目的地是控制台、文件、gui 组件、甚至是套接口服务器、nt 的事件记录 器、unix syslog 守护进程等。7此外,通过 log4j 其他语言接口,您可以在 c、c+、.net、pl/sql 程序中使用 log4j,其语法和用法与在 java 程序中一样, 使得多语言分布式系统得到一个统一一致的日志组件模块。而且,通过使用各种第 三方扩展,您可以很方便地将 log4j 集成到 j2ee、jini 甚至是 snmp 应用中。我 们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够 更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文 件来灵活地进行配置,而不需要修改应用的代码。 2.2.4 osgi 技术简介 osgi 技术是面向 java 的动态模型系统。osgi 服务平台向 java 提供服务,这些服 务使 java 成为软件集成和软件开发的首选环境。 java 提供在多个平台支持产品的 可移植性。osgi 技术提供允许应用程序使用精炼、可重用和可协作的组件构建的 标准化原语。 这些组件能够组装进一个应用和部署中。 osgi 是目前动态模块系统的事实上的工业标准,虽然一开始只是作为嵌入式设备 和家庭网关的框架来使用,但是实际上它适用于任何需要模块化、面向服务、面向 组件的应用程序。 equinox 项目是 eclipse 开源组织提供的 osgi 框架的实现。eclipse 自 3.0 版本开始, 其内核移植到 osgi 框架上。通过 osgi 框架强大的组件控制,交互和管理能力, 再加上 eclipse 插件的自有特点,eclipse 开源框架得到了跳跃式的发展8。 equinox 项目包括 osgi r4 版本规范核心框架的实现,一系列 osgi 标准服务 第 5 页 共 54 页 bundle 及运行基于 osgi 的系统的一些基础构件。目前,equinox 项目包括 osgi 核心框架的实现,osgi 标准服务 bundle 实现,osgi 的服务器端(j2ee 实现)应 用,equinox 部署更新框架及一些研究方向(未成熟发布的构想如 jmx 管理,安全 管理,面向方面的设计与应用等) 。而 equinox 则是的 eclipse 所使用的 osgi 框 架,是 eclipse 强大的插件体系的基础,eclipse 的稳定可靠性也为该框架带来了 声誉。 2.2.5 mvc 模式简介 mvc 模式是 model-view-controller 的缩写,中文翻译为“模式-视图-控制器 “。mvc 应用程序总是由这三个部分组成。 视图(view)代表用户交互界面,对于 web 应用来说,可以概括为 html 界面,但 有可能为 xhtml、xml 和 applet。随着应用的复杂性和规模性,界面的处理也 变得具有挑战性。一个应用可能有很多不同的视图,mvc 设计模式对于视图的处 理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流 程的处理。业务流程的处理交予模型(model)处理。 模型(model):就是业务流程/状态的处理以及业务规则的制定。业务模型的设计可 以说是 mvc 最主要的核心。9它仅仅告诉你按这种模型设计就可以利用某些技术 组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设 计。mvc 设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次 很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也 不能太近。 控制(controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成 用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器, 选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不 做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务 信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回 给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。 模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过 某个视图的控制器 改变了模型的数据,所有其它依赖于这些数据的视图都应反映 到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的 视图,导致显示的更新。这实际上是一种模型的变化-传播机制。模型、视图、控 制器三者之间的关系和各自的主要功能。 第 6 页 共 54 页 3 系统分析 3.1 系统功能需求总体描述 3.1.1 项目背景 计量计费系统作为能源管理系统的子系统,采用系统化的设计理念,依托计算机网 络技术、通信技术、计量控制技术等信息化技术,实现计量数据的采集、传输、记 录和归档、分析、计费、管理等功能。 3.1.2 总体目标 计量计费软件应提供用于分布式实时数据库管理、历史数据管理、人机交互、网络 消息传递、系统管理、报警服务等。计量计费系统应提供全面的用能计量、计费以 及计量设备管理功能,其模块化功能可以被方便地裁剪,应能适应不同级别用户的 多样化和个性化需求,具有很好的扩展性和兼容性。计量计费系统应完成电、水、 气、热等计量数据采集、处理、历史数据存储,通过计量计费软件完成数据及画面 的查看、报表、计量计费等功能。 3.1.3 项目内容 作为能源管理系统的子系统,计量计费系统属于系统应用软件层,构筑在统一支撑 平台层之上,统一支撑平台应为计量计费的业务和数据处理功能提供强大的基础支 持,使得计量计费系统的功能开发、业务变更和系统升级变得快捷、可靠而平稳, 从而可以更加灵活的满足不同用户的多样化、个性化需求。 系统建设的主要功能是对能源消耗情况(包括电、水、气、热等)进行采集、计量、 汇总,实现多样化查询,对异常数据进行报警,根据不同计费方式和标准对能耗进 行计费,并生成相应的账目报表,还可对各项数据进行对比分析生成表单和图形以 供进行科学的规划。通过该系统的实施,实现对整个企业能源消耗数据的及时、快 速和准确的监测,利用互联网技术、门户网站等手段为企业领导以及相关管理部门 提供了多方位、可视化的便捷服务,实现信息快速传递、共享、管理和应用。 系统指标能耗如图: 第 7 页 共 54 页 企业综合能耗 购入能源消耗量 本企业加工转换的二 次能源生产量 由本企业加工转换的 二次能源自用量 用电量 原煤用 量 原油用 量 企业所有购入能源 列表 生产部门1生产部门2 设备1设备2 设备能耗1设备能耗2 设备在选 定的时间 区间的能 耗状况 电力蒸气 选择时间区间二 次能源产量 原煤油 选择时间区 间二次能源 消耗量 图四 1 图 3.1 企业能耗指标图 3.2 功能需求详细描述 ixpub 技术博客 4wg!k,p 第 8 页 共 54 页 o au2j)vixpub 技术博客 1t8lr(di4f-r 第 9 页 共 54 页 am 计量计费系统的核心任务就是计量与计费,在此基础上附加数据分析查询等满足用 户需求的功能,大致分四个模块: 图 3.2 计量计费系统模块图 ixpub 技术博客 1t8lr(di4f 图四 1 -r 第 10 页 共 54 页 am 3.2.1 基础数据模块 说明:基础数据模块的主要功能为对各项基础数据进行初始化设置、变更和维护。 本系统涉及的基础数据包括计量表,计量方式,计量表类型,计量表单位,计量表 低点,计量月,计量年,厂前厂后,分时电价,水、气、热等单价。 3.2.2 计量管理模块 说明:以月为周期,将采集到的数据进行汇总:对于某些没有自动采集功能的计量 表,采用手动录入的办法,将统计数据填入手动抄表表单,保存后传入数据库;对 于自动采集的数据,系统自动生成单据内容,人工核对后保存。抄表数据应包括以 下内容:计量表名称、用能单位、功能单位上月表底数(电表还应细分为峰平谷总 表底数) 、本月表底数(电表还应细分为峰平谷总表底数) 、本月用量、时间等。修 改与插值类似,直接进入相应月份覆盖原数据即可。 抄表基本流程: 第 11 页 共 54 页 图 3.2 电抄表流程图 第 12 页 共 54 页 图 3.3 电耗量查询流程图 3.2.3 计费管理模块 说明:为各项能耗费用设置计算公式和费用比率。可按月对费率进行更改和调整。 (电费采用分时计费设置不同时段的不同计价费率。 ) 基本流程: 第 13 页 共 54 页 图 3.4 计费管理模块流程图 3.2.4 综合查询模块 说明:根据能耗类别进行查询,并生成相应报表、图形。选择相应能耗类别后,会 弹出一个单位月份的能源消耗表。用户可以通过关键字段过滤筛选所需信息。 具体能耗分类有:电 1 项,水 6 项(生产水、生活水、补水、循环水、软化水、基 建水) ,气 6 项(煤气、空气、氮气、氧气、二氧化碳、乙炔) ,热 3 项(居民采暖、 厂区采暖、蒸汽) ,其他 4 项(甲醇、丙烷、火鸟王、液氮) 。 基本流程: 图 3.5 综合查询模块流程图 3.3 系统非功能性需求 计量计费系统服务端采用 web 应用服务器,数据库软件采用 oracle10g,系统架构 成 5 层模式。并提供性能稳定的硬件设备,应用在数据库服务器和 web 应用服务 第 14 页 共 54 页 器上,并通过建设合理的软件系统架构和发挥第三方软件的出色性能,保障以下非 功能性需求的实现。 3.3.1 平均响应速度 在网络传输速度足够的前提下,一般性数据保存、修改、删除等操作的响应反馈速 度最大不超过 2 秒,一般控制在 1 秒内。web 应用程序最大不超过 8 秒,一般控 制在 2 秒内。 在网络传输速度足够的前提下,一般 10 万条数据的简单查询及统计不应超过 10 秒, 百万条数据的查询及统计不应超过 20 秒。复杂综合性跨模块查询及统计不超过 1 分钟。 3.3.2 可靠性 平台应支持一天 24 小时,一周七天,一年 365 天不间断运行。 平台在连续一年的运行中因软件故障导致停机的次数不得超过 12 次,单次修复时 间不超过 5 小时。 平台在瘫痪后能够在短时间内迅速恢复。 平台在用户出现错误操作时能进行提示,并自动停止该操作。 3.3.3 安全性 安全机制支持集中和分散用户和安全管理。每个用户可以承担多个角色,而且每个 角色都可以有多个控制菜单、页面、操作、字段和数据的访问的多个权限列表。 1)注册和超时安全:用户注册采用 id +口令的方式。合法登录后,支持可配置的 自动超时登录无效设置。 2)应用访问安全(菜单安全):每个角色对应一组菜单项、页面和操作。 3) 数据安全控制:可以控制用户对正在加载的数据的访问。 4) 行级安全:安全视图是特殊类型的 sql 视图,可以通过配置对应用数据库表格 中的独立的数据行访问进行控制。 5) 数据加密:对于涉密、涉及用户隐私的信息,进行加密存储。 6) 处理安全:可以利用进程调度程序将处理定义分配给各种处理组。可以利用安 全管理器授权用户访问或对其施加限制。如果过程定义没有被分配给用户的批准处 理组,那么该用户将不被允许运行该过程。支持所有操作的日志查询功能。 3.3.4 可扩展性 系统适应用户的变更及扩展而不需要对程序做相应的修改。 系统应能适应后续应用的添加,而不至于程序大量的修改或推翻重来。 随着用户数的增长及功能应用的增长,软件系统通过硬件性能的调整而保持相对的 稳定性,维持正常的运行。 3.3.5 易用性 系统软件设计应充分考虑各个用户类和特征,提供适合各级操作人员的简便操作界 面,采用通用的柜员操作平台,操作系统友好性强, 能够做到操作员通过简单的 培训甚至自学就能掌握。 3.3.6 集成性 系统具有 xml 以及基于文件的 api,包含消息传送总线架构。 企业能源管理系统支持一系列国际标准,支持 web 服务;支持 j2ee, soap, uddi, xml,jsr168,wsrp 等技术。也可以和.net 等架构的应用进行集成进行数据交换。 第 15 页 共 54 页 4 系统设计 4.1 系统设计思想 本系统是基于 b/s 的,采用面向对象的软件开发思想,采用符合 mvc 设计模式的 struts2 框架技术,代码分层设计。 4.1.1 b/s 结构开发思想 b/s 结构即浏览器和服务器结构。它是随着 internet 技术的兴起,对 c/s 结构的一 种变化或者改进的结构。在这种结构下,用户工作界面是通过 www 浏览器来实现, 极少部分事务逻辑在前端(browser)实现,但是主要事务逻辑在服务器端 (server)实现,形成所谓三层 3-tier 结构。这样就大大简化了客户端电脑载荷, 减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(tco) 。 以目前的技术看,局域网建立 b/s 结构的网络应用,并通过 internet/intranet 模式下 数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不 同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库;它能有效 地保护数据平台和管理访问权限,服务器数据库也很安全。在 java 这样的跨平台 语言出现之后,b/s 架构管理软件更是方便、快捷、高效。 4.1.2 面向对象的软件开发设计思想 面向对象(object oriented,oo)是 90 年代之后软件开发方法的主流。面向对象的概 念和应用已超越了程序设计和软件开发,扩展到很宽的范围。如数据库系统、交互 式界面、应用结构、应用平台、分布式系统、网络管理结构、cad 技术、人工智 能等领域。 面向对象软件开发的特点主要有: 1、对象唯一性。每个对象都有自身唯一的标识,通过这种标识,可找到相应的对 象。在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。 2、抽象性。抽象性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。 一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关 内容。任何类的划分都是主观的,但必须与具体的应用有关。 3、继承性。继承性是子类自动共享父类数据结构和方法的机制,这是类之间的一 种关系。在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行, 把这个已经存在的类所定义的内容作为自己的内容,并加入若干新的内容。 4.1.3 代码分层思想 web 应用系统规模和复杂程度的不断增大,给系统的开发带来了许多新的问题,如: 程序代码的耦合度增大,代码的可维护性、应用框架及组件的可重用性降低等。针 对这些问题,在基于 mvc 的多层 web 体系结构基础上,对业务层中的模型做进一 步研究,设计了一种优化的分层模型,详细描述了分层模型的设计思想与实现技术, 并通过实例说明了该分层模型的具体应用。可以发现,该优化分层模型方案增加了 模型部分的重用性,降低了层与层之间的耦合度,使得系统具有更好的可维护性、 可扩充性和可移植性。代码分层思想也提高了数据库和整个系统的安全性。 4.1.4 mvc 模式设计思想 mvc 架构是“model-view-controller”的缩写,中文翻译为“模型-视图-控制器” 。 mvc 应用程序总是由这三个部分组成。event(事件)导致 controller 改变 model 或 view,或者同时改变两者。只要 controller 改变了 models 的数据或者属性,所有 依赖的 view 都会自动更新。类似的,只要 controller 改变了 view,view 会从潜在 第 16 页 共 54 页 的 model 中获取数据来刷新自己。mvc 架构是一种架构,其实需要其他模式协作 完成。struts 只实现了 mvc 的 view 和 controller 两个部分,model 部分需要开发 者自己来实现,struts 提供了抽象类 action 使开发者能将 model 应用于 struts 框架 中。11,12 4.1.5 osgi 框架设计思想 osgi service platform 是一个基于 java 的 platform,osgi service platform 是一 个开放并且提供统一接口标准的体系框架,基于这个体系框架,服务提供商,程序 开发人员,软件提供商,服务网管运营商,设备提供商能够协调地联合起来开发, 部署以及管理向用户提供的各种服务。 osgi framework 结构如下图所示: 图 4.1 osgi framework 结构图 modules, life cycle, service registry, services 和 security 是从不同的 5 个角度来划 分 framework 所具备的功能,13而体系结构的最上层是符合 osgi framework 接口 标准的应用程序,也就是 osgi 世界中有名的“bundle” 。 在 osgi r4 规范中大致这样描述到:framework 定义了模块(modularization)的单元, 叫作 bundle。bundle 实际就是一个 jar 格式的文件,其中包含了 java 的 class 文件 和其他资源文件(比如图标,配置文件等等) 。bundle 可以在自己的 manifest 文件 (manifest.mf)中说明自己能够提供哪些 java 包,其他 bundle 如果在自己的 manifest 文件中指定了它需要这个包,那他们之间就可能产生 java 包的依赖关系, 这样多个 bundle 之间就可以共享 java 包。14值得注意的是,bundle 是能够在 framework 中部署的唯一格式。 framework 的 modules 这一方面功能将主要负责 bundle 的安装部署,更新和卸载, 以及 bundle 在设备的物理存储(如果有的话) 。在这个层次,每个 bundle 都是独立 的,它的安装,升级和卸载完全不依赖任何其他 bundle,这点 framework 提供了强 大的隔离性。life cycle 专门负责对 bundle 的解析(比如关联两个有相互依赖关系 的 bundle) ,启动(相当于运行应用程序)和停止(相当于停止应用程序) 。这个层 次中,bundle 间的逻辑关系被创建起来,这些关系能否成功的创建,将会直接影响 bundle 的成功解析和启动。15service registry 可以认为是一个数据库,bundle 启 动后,可以向这个数据库注册它动态提供的服务。只要 bundle 不被停止,且 bundle 不主动撤销注册的服务,这个服务将一直保存在这个数据库中供其它 bundle 来查询和使用。而 services 就是由 bundle 运行时提供的具体服务对象,这些服务对 第 17 页 共 54 页 象的存在,使得 framework 具有极其动态的特征,并为 framework 运行时提供灵活 强大的功能。 4.2 主要数据表 以下为计量计费系统所涉及到的部分实体关系表。对于表中大部分字段的定义和含 义都做了简要说明。 注: 表前缀释义 -前缀前二位 e0 开头的为 ems 中的基础数据主体 e1 开头的为 ems 中的业务主体 r1 开头的为 ems 中的报表主体 -前缀后三位 001 计量表 002 设备 003 工艺(也叫流水线或产品线) 004 生产组织 表 4.1 组织表 表名组织 md_org 字段标题类型及长度默认值备注 recid行标识raw(16)主键 recver行版本number(19)0 unitid单位标识raw(16) stdcode代码nvarchar2(60) stdname名称nvarchar2(60) shortnam e 助记码varchar2(10) type行政组织类型raw(16)关联 md_orgtype 的 recid level层级number(10) creator创建人nvarchar2(10) 说明:组织表记录该公司所有的单位组织以及厂房信息。recid 为唯一标识符, 作为主键;unitid 为单位标识,记录 3 级单位(厂房、部门等)所属的 2 级单位 的 recid;stdname 存贮该条记录的单位名称;level 为层级,共分 3 层:1 为总公司,2 为下属单位,3 为下属单位的车间、部门等。 表 4.2 年份表 表名年份 e1001_year 字段标题类型及长度默认值备注 recid行标识raw(16)主键 recver行版本number(19)0 stdcode代码nvarchar2(60) 第 18 页 共 54 页 stdname名称nvarchar2(60) shortnam e 助记码varchar2(10) creator创建人nvarchar2(10) 说明:年份表记录所有的计量年信息。recid 为唯一标识符,作为主键; stdname 为计量年名称;shortname 为助记码,系统自动生成,规则为:数 字和字母不变,汉子取该文字拼音的大写首字母。 表 4.3 月份表 表名月份 e1001_month 字段标题类型及长度默认值备注 recid行标识raw(16)主键 recver行版本number(19)0 stdcode代码nvarchar2(60) stdname名称nvarchar2(60) shortnam e 助记码varchar2(10) creator创建人nvarchar2(10) 说明:年份表记录所有的计量月信息。recid 为唯一标识符,作为主键; stdname 为计量月名称;shortname 为助记码,系统自动生成,规则为:数 字和字母不变,汉子取该文字拼音的大写首字母。 表 4.3 计量设备表 表名计量设备 e1001_meteringdevice 字段标题类型及长度默认值备注 recid行标识raw(16)主键 recver行版本number(19)0 续表 4.3 计量设备表 unitid单位标识raw(16) stdcode代码nvarchar2(60) stdname名称nvarchar2(60) shortname助记码varchar2(10) memeo备注nvarchar2(255) level层级number(10) creator创建人nvarchar2(10) typeid计量表类型raw(16)关联 e1001_meteringde vicetype 的 recid meteringunitid计量单位raw(16)关联 e1001_meteringun it 的 recid addressid计量表地点raw(16)关联 e1001_meteringde viceaddress 的 recid 第 19 页 共 54 页 meteringtype计量类型number(10) deviceid设备 idraw(16)关联 e0002_device 的 rec id processingid工艺 idraw(16)关联 e0003_processing 的 recid ptpt 倍率number(10)1 ctct 倍率number(10)1 userorg用能单位raw(16)关联 e1001_userorg 的 re id providerorg供能单位raw(16)关联 e1001_providerorg 的 recid wzh位置号nvarchar2(10) beilv倍率number(10) 说明:计量设备表记录所有的计量设备信息。recid 为唯一标识符,作为主键; stdname 为计量设备名称;shortname 为助记码,系统自动生成,规则为: 数字和字母不变,汉子取该文字拼音的大写首字母;unitid 为单位标识,记录 3 级单位(厂房、部门等)所属的 2 级单位的 recid;meteringtype 为计量类型, 0 为自动读数,1 为手抄。 表 4.4 电计量主表 表名电计量主表 r1001_meterdata_ele 字段标题类型及长度默认值备注 recid行标识raw(16)主键 recver行版本number(19)0 unitid单位标识raw(16) 续表 4.4 电计量主表 datatime数据时期nvarchar2(1 0) floatid浮动行 idraw(16) inputorder录入顺序number(18,2) pretopdata正向上次峰值number(18,4) prebottomdata正向上次谷值number(18,4) preavgdata正向上次平值number(18,4) pretotaldata正向上次总值number(18,4) nowtopdata正向本次峰值number(18,4) nowbottomdata正向本次谷值number(18,4) nowavgdata正向本次平值number(18,4) nowtotaldata正向本次总值number(18,4) topdata尖峰量值number(18,4) bottomdata谷底量值number(18,4) 第 20 页 共 54 页

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论