基于MDA架构面向服务的线损整合研究与实现
2017-03-24杨福国
杨福国
摘 要:针对营配一体化中线损服务的计算提出了一种基于MDA架构和面向服务的开发方法,通过IBM提出的SOMA(Service-Oriented Modeling and Architecture )面向服务的分析与设计方法学,进行线损服务识别、线损服务定义、线损服务实现,让分布在异构系统中的线损服务,能够准确、实时的进行计算与交互,实现智能电网对于四分线损的要求。
关键词:MDA;SOA;SOMA;用电信息采集系统;线损服务;智能电网;四分线损
中图分类号:TM73 文献标识码:A 文章编号:1671-2064(2017)02-0117-02
1 绪论
近年来,由于智能电网的推广各级供电单位投入了大量人力和物力在线损计算的研发项目,其中包括用电信息采集系统、电能量采集系统、配网系统等[3]。各个系统对于线损的侧重点不同,例如用电信息采集系统侧重于台区线损,电能量采集系统侧重于线路线损和分区线损,配网线损侧重于分压线损,各系统之间都是独立计算线损,并没有将个系统进行线损应用整合,从而形成了四分线损信息孤岛。在计算线损的过程中,需要统计分区线损、线路线损、台区线损、分压线损,要统计全口径发、供、售电量,这就要求将各系统的线损服务进行服务识别、服务定义、和服务实现,最终实现线损服务整合的目的[2]。
2 线损服务整合
2.1 MDA架构与面向服务的开发方法
2.1.1 SOA架构
SOA[1](Service Oriented Architecture)最早是Gartner于1996年提出来的软件架构方法,后期受到IBM、SUN、BEA、Oracle等公司的完善和推廣,使得SOA的思想和理论逐步得到完善。SOA的主要优点包括:IT能够更好更快地提供业务价值(Business Centric)、快速应变能力(Flexibility)、高度的重用性(Reusability)等。
面向服务的分析和设计是SOA中最总要的阶段,通过图1我们可以了解到面向服务的建模和架构分为三个阶段来进行服务分析和设计——发现服务、描述服务和服务实现。
实现SOA的技术基础包括Web服务标准:SOAP协议,WSDL规范,UDDI协议等。Web服务是用标准的、规范的XML概念描述一些操作的接口。该接口实现了服务的细节,允许基于不同的硬件、软件平台和编程语言来开发和使用服务。Web服务是一种部署在Web上的对象或者组件,Web服务是基于Web服务提供者、Web服务请求者、Web服务注册中心三个角色和发布、发现、绑定三个动作构建的。如图2Web服务体系结构图所示。
本文就是通过SOA架构,将不同的业务逻辑与业务实现相分离,作为服务请求者它只考虑需要什么样的业务实现,并不考虑如何实现的;作为服务提供者它只要满足独立的业务需求,不考虑具体的实现语言,对外只提供服务接口和地址,这其中起到关键作用的是服务注册中心,它将服务提供者提供的服务有序的进行保存,对服务请求者提供的请求进行检索,并回馈给服务请求者具体的服务接口和地址,从而是服务请求者能够通过服务接口和地址找到相应的服务,从而满足自己的要求。
2.1.2 SOMA开发方法
SOMA设计模式是依据SOA的松耦合和地址透明的设计原则,建立的几种设计模式:用于设计服务注册库的“服务注册表”模式,用于设计企业服务总线的“企业服务总线模式”,用于实现业务流程的“服务编排模式”等。
服务注册表模式是最基础的设计模式,具有以下几种变量。(1)私有目录;(2)专有目录;(3)共有目录。如图3所示。
SOMA的开发方法包括服务识别、服务定义、服务实现、服务合成四部分。
服务识别包括自顶向下,自底向上和从中间到两头的方法来进行业务领域的分解,现拥有资产分析和目标服务建模。在自顶向下方法中,业务用例蓝本为业务服务提供规范;自顶向下的过程常常被称为业务领域分解,包括将业务领域分解为功能区域和子系统,把过程或流程分解为过程、子过程、高级业务用例等。这些用例将作为候选用例来确定暴露给企业外部或是满足企业内部的业务需求。
服务定义阶段的主要任务是规范性的描述服务各个方面的属性,既包括输入/输出消息等功能性属性,还包括服务安全约束和响应时间等服务质量约束,以及服务在业务层面的诸多属性,如涉及的业务规则、业务事件、时间/人员消耗等。
服务实现包括现有子系统分析、确定服务分配。
服务合成根据业务流程将各服务实现有序的串联起来的过程。
2.2 线损服务整合
2.2.1 服务识别
本文通过自底向上的方法,将四分线损进行分解。将用电信息采集系统的台区线损,电能量采集系统的线路线损和分区线损,配网线损的分压线损,抽象为服务候选者。通过对服务候选者的服务暴露,将服务候选者转变为服务提供者。如图4所示。
2.2.2 服务定义
通过服务定义将线损服务的流入、流出消息定义,服务安全约束进行定义。如图5所示。
2.2.3 服务实现
应用eclipse开发平台,将各个定义后的服务进行服务实现。以台区线损服务为例,将台区线损服务实现成台区线损web service。服务的流入流出定义为service_i、service_o,服务安全约束遵守IEEE标准[4]。
2.2.4 服务合成
服务合成是通过具体线损业务将具体的线损服务整合成一个完成流程的过程。如图6所示。
3 实验数据
该线损服务整合在安徽、新疆、安徽、蒙东、冀北、河北等多个省级集中部署的用电信息采集系统中进行了测试,实践证明对线损统计的准确性和实时性都有了明显效果。如表1所示。
4 结语
该线损服务整合已经得到了各网省公司认可,对于四分线损的计算提供了一种实现方法,对于国网营销部、计量部日常的维护工作具有一定的指导意义。
参考文献:
[1]安旭.基于SOA的模型驱动开发方法的研究[D].东北师范大学,2011(7).
[2]张勋友.基于SOA的电力系统信息集成平台的研究与实现[J].煤矿机电,2008(2).
[3]王锡凡.电力系统电能损耗的计算方法的商榷[J].电机工程学会1963年年会报告,1963.