电力交易平台业务中台设计研究 您所在的位置:网站首页 电力信息平台 电力交易平台业务中台设计研究

电力交易平台业务中台设计研究

2024-07-16 21:22| 来源: 网络整理| 查看: 265

0 引言

近年来电力市场化进程逐步加快,电力市场主体将更加多元,数量与日俱增;现货市场和辅助服务市场将逐步开放,分布式交易、可再生能源配额等新兴交易品种也将不断加入市场,交易组织形式和交易品种将不断丰富;各省级电力市场发展情况各具特点,电力交易规则变化频繁。为应对上述现状,电力交易平台作为电力交易业务的技术载体需具备业务需求快速响应能力。

目前单体架构的电力交易平台的业务支撑能力具有局限性。单体架构系统耦合性高,系统升级需考虑全局,功能影响范围大,难以实现快速迭代。同时单体架构需停机部署,影响正常运转,且当某一环节并发量过高时,可能会导致整个系统服务崩溃。为解决上述问题,文献[1-2]提出一种基于微服务的电力交易系统架构设计方案,主要针对系统微服务支撑组件展开研究,并通过实验验证了微服务架构对系统的多方面性能带来较大提高,但缺少面向电力交易业务的思考。文献[3]从系统分层设计的角度进行了基于微服务的电力交易平台架构设计,但只描述了设计结论,未对设计方法展开论述。本文在微服务架构的基础上进一步引入业务中台架构来解决上述问题,并对设计方法展开研究。

中台架构多基于微服务架构建设,因此具备微服务架构的优点[4-5]。同时中台架构在微服务架构的基础上进行了系统共性能力以及稳定能力的提取和抽象,通过对底层功能的封装和组织,提供了“搭积木”式的系统构建能力,可实现快速、灵活的系统升级和改造[6]。

综上,本文将在电力交易业务领域引入中台思想,设计研究电力交易平台业务中台架构与构建方法,提高系统需求快速响应能力。

1 业务中台设计总体思路

中台架构的概念由阿里巴巴公司于2015年12月提出,目标是建立大数据时代更具灵活性的“大中台、小前台”[7]机制,即前台的业务能够更敏捷、快速的应对变化,而中台将集合全局运营数据能力和产品技术能力,对前台业务形成强有力的支撑[8]。

当前中台战略已在互联网和传统行业等各类信息平台中得到广泛应用[6, 9-11]。本文借鉴阿里巴巴的中台建设思路并结合电力交易业务特点,在基于电力交易平台系统重构的条件下,主要从顶层设计的角度进行业务中台的设计主要有以下步骤:

1)能力中心的规划。基于电力交易业务领域边界清晰的特点,本文选择使用领域分析方法,根据对电力交易、市场注册、信用评价等业务流程的全局分析,进行能力中心的规划,得到初步的能力中心的设计。

2)能力中心业务划分。使用领域分析方法对各业务功能的关键要素进行拆解,并对拆解结果进行分布分析,根据分布情况将业务需求归纳到各能力中心。

3)能力中心服务识别。根据业务流程及用例分析结果提取核心用例,根据用例之间的关系聚合出初步的微服务划分。同时,基于电力交易业务需求变化频繁,不同业务需求重合度大的特点,本文选择从复用性和稳定性的角度对微服务划分结果进行优化,得到微服务划分结果。最后进行微服务详细设计。

4)中台运转机制设计。设计能力中心与前台应用及后台服务之间的交互方式,使得业务中台能够在系统中正常运转。同时设计中台服务治理机制。

2 业务中台能力中心的规划 2.1 能力中心规划思路

本文采用域驱动设计的思想进行能力中心的划分,对具有某个边界的业务领域进行抽象,划分出单独的能力中心。每个能力中心中包含了领域内用户关注的业务需求,并拥有清晰的业务边界。

能力中心的规划首先对系统整体业务进行分析,基于前期的工作实践和成果使用领域模型分析方法进行业务域的划分,并根据业务领域划分结果进行能力中心的划分,以业务相对独立、单一职责,边界清晰的原则拆分得到能力中心;其次从系统技术支撑维度抽取各个业务域共同依赖的系统支撑能力,形成技术视角的能力中心。

2.2 电力交易平台能力中心的规划

首先,从业务分析角度,电力交易业务的核心是市场主体的交易组织,总体业务上分两条业务线:

1)面向市场主体。市场主体的完整业务流程首先是在电力交易平台进行注册,注册完成生效后可以登录平台参与电力交易,交易达成之后可签订合同,并可查询交易中心根据合同编制的发电计划,交易执行结束后需要进行电费结算,同时市场主体可以查询交易中心对外发布的市场信息。

2)面向电力交易中心。电力交易中心的业务部门大体分为负责市场主体的注册以及信息管理的市场部,负责交易组织、出清计算、合同管理、计划编制交易部,负责市场主体结算的结算部以及负责市场运行合规监察及风险管控的合规部。

初步根据业务线划分业务域为面向电力交易中心的对应各个业务部门的市场成员管理、交易管理、市场结算、市场合规业务域以及面向市场主体提供服务的市场服务业务域。

其中,市场成员管理业务域在向其他业务域提供市场主体信息查询服务的同时具有独立的注册、综合服务等业务,可以单独建立成用户中心。

交易管理业务域包含核心业务,且业务域过于复杂庞大,因此需要进行进一步拆分。其内部可划分为交易出清、合同管理、计划管理这3个子业务域,其中交易完成后,根据交易结果一次性写入合同,在每月多次进行的计划编制中需要频繁使用合同数据。因此合同与交易交互频率较低,业务相对独立,可以拆分出来,而计划编制业务与合同耦合性较强,与交易耦合性低,可以和合同管理业务共同形成合同中心。

结算管理业务域在流程上位于交易管理业务之后,需要使用合同和计划的结果数据作为前置数据,在功能上边界较为清晰,业务相对独立,可以形成结算中心。

市场合规业务域在业务上分为系统监控和市场监管这两个部分,其中系统监控更多由技术层面的组件实现,而市场监管部分涉及各业务流程的监管,以及市场主体信用管理,业务相对独立,边界明显,可以形成信用中心。

市场服务作为各个业务部门对市场主体提供服务的载体,与其他业务域交互十分频繁,不能作为单独的能力中心,需要将业务拆分到其对应的面向电力交易中心的能力中心中。

同时,从技术维度分析,每个业务域都涉及到发送消息、短信、邮件、待办等消息提醒服务,所以可划分出消息中心,为其他能力中心提供消息服务能力支撑。而对于其他公用但服务调用形式相对简单的技术能力如日志服务、缓存服务等则归为公共服务而不作为独立的能力中心。

综上,本文规划出电力交易平台的能力中心,包括:合同中心、结算中心、信用中心、用户中心、消息中心等6个能力中心。这些能力中心后续的中台设计过程中以及新需求响应过程中,可能需要发生变化,来支撑业务需求。

3 能力中心业务划分 3.1 能力中心业务划分方法

本文能力中心的业务能力的划分采用领域分析方法,对各系统业务功能的实体、值对象、聚合及聚合根、事件等关键要素进行拆解,并对拆解结果进行分布分析,根据分布情况将业务需求归纳到各能力中心。其中实体指具备唯一标识、具有业务逻辑、可被持久化的,对应现实世界业务的对象;值对象指实体的属性或者补充说明;聚合通过定义对象之间的关系和边界来实现领域模型的内聚,一个聚合是一组相关的被视为整体的对象;每个聚合都有一个根对象(聚合根实体);事件指实体的业务方法。这些关键要素共同组成了领域模型。

能力中心业务划分主要分为以下步骤:

1)业务及应用功能输入。

梳理电力交易平台业务,包括业务需求、典型业务流程以及功能现状,得到业务功能梳理结果,以一级功能、二级功能、功能需求描述和非功能需求描述的形式展现。即以业务及应用功能作为输入,进行分析梳理,抽象和沉淀成服务作为输出。

2)业务功能分析。

按照管理视角、客户视角、运营视角去细粒化的进行用户、动作、业务对象的标准化定义,以便对业务二级功能的描述进行合理的拆解。同时通过业务功能分析,在每个能力中心中设定一个典型功能作为“聚合根”。

3)业务功能关键要素拆解。

本部分使用2W1H分析方法进行关键要素拆解,即参与用户(Who)、动作(How)、业务对象(What)的拆解。将业务功能的二级功能根据功能需求描述和非功能需求描述从用户、动作、业务对象3个要素进行拆解分析。

4)关键要素分布分析。

根据业务功能的二级功能从用户、动作、业务对象3个关键要素的拆解结果进行分析,主要从共用性、覆盖度等分析统计用户、动作、业务对象在各个业务功能的情况。

5)业务功能归纳。

分析二级功能拆解得到的用户、动作、业务对象与各能力中心的“聚合根”的关联性,根据关联性的大小将二级功能归纳到各个能力中心。

3.2 电力交易平台业务能力划分

通过上述方法,将电力交易平台业务划分到各个功能模块,初步划分结果如下:

出清中心,包括交易配置、交易公告、交易序列创建、交易申报、交易出清、交易算法、安全校核、交易结果发布等业务。

合同中心,包括合同生成、电子签章、合同范本、合同管理、合同变更、零售合同、合同共享、多级合同、计划编制、电力电量平衡等业务。

结算中心,包括结算通用基础信息配置、结算规则配置、结算数据校验、省内发电侧、用电侧结算、跨区跨省联络线通道结算等业务。

用户中心,包括市场注册、市场成员共享、市场成员管理等业务。

信用中心,包括指标体系管理、信用评价管理、预警管理、联合惩戒管理、业务监视等业务。

消息中心,包括APP消息推送、消息订阅、邮件消息发送、短信消息发送、消息提醒等业务。

4 能力中心服务识别 4.1 能力中心服务识别方法

服务识别主要有3种方法:自顶向下、自底向上和中间聚合的方法[12]。自顶向下的方法主要从实际业务需求出发,对业务流程进行抽象提取,具有良好的可扩展性[13],适合应用于新系统的设计。自底向上的方法针对遗留系统(即旧版本的系统)进行软件聚类,找出可以独立完成某项业务功能的模块,包装为服务,适合于将遗留系统微服务化的过程。中间聚合方法是上述两种方法的组合[14]。由于电力交易平台业务中台的设计是从顶层设计开始的基于新系统的设计,因此本文采用自顶向下的方法进行能力中心内部的微服务识别。

服务识别的过程可看作是对业务模型进行分解、再合并和抽象,得到满足特定规则的微服务集合的过程,可归纳如下:

1)业务建模。对能力中心内部的业务进行分析,通过语义抽象和建模方法得到业务流程图以及业务实体[15],并对业务流程节点及涉及的实体进行关联。

2)业务模型分解。使用用例分析法将业务模型拆解成参与者以及用例的形式,并针对每个用例包含的业务动作绘制业务时序图,进一步将用例分解为一连串关联的业务动作。

3)用例合并及服务抽象。首先根据业务流程确定核心用例,分析核心用例与相关的支撑用例之间的关系,主要有包含关系、扩展关系和泛化关系等[16]。其次根据核心用例与其他用例间的关联关系,分配每种关联关系不同的权值,关联权值关系大表明与核心业务用例的关联紧密,适合划分在同一个微服务[17]。根据核心用例及其关联用例的划分得到初步的候选服务集。

4)识别结果优化。上述步骤得到的候选服务集仅考虑业务关联性,因此还需要从复用性、稳定性角度对微服务的划分粒度进行调整与优化,以提高服务在复用效率,同时降低复用成本。在服务识别优化过程中,需要分析微服务实现的功能模块的复用性和需求稳定性。对于可以应用在多类业务的处理中或者被较多服务调用的功能模块,可以考虑将其独立成一个粒度较小的微服务。同时,需要分析业务活动的需求稳定性,稳定的业务对应的功能可以抽象为较大粒度的服务,而需求经常发生变化的业务最好与稳定的业务分离开,抽象成粒度较小的微服务。

5)微服务设计。微服务划分完成后,需要对微服务实现的功能进行进一步的设计。能力中心中的微服务应包含数据处理模块以及业务处理模块,其中数据处理模块需要确定微服务与数据库表字段之间的关联关系,业务处理模块需确定微服务对外提供的接口的输入参数、输出参数并设计微服务之间调用关系。

4.2 电力交易平台出清中心服务识别

以出清中心为例,进行服务识别。

第一步进行流程分析,出清中心包含3个核心通用流程:预交易流程、中长期交易流程以及现货交易流程。以中长期交易为例,节点包含交易公告生成、交易公告发布、交易申报、交易出清、交易结果发布,并梳理各流程节点关联的实体。

第二步对每个业务流程绘制用例图,包含各个交易品种等。并进一步细化为时序图,如图 1所示。

图 1 用例分析示例 Fig. 1 Example of use case diagram

第三步为核心用例确定,中长期交易业务流程中的电力用户直接交易为最典型交易场景,因此以此场景中的用例为核心用例。通过用例关联关系分析,不同交易品种及组织方式的相应流程节点的用例与核心用例关联紧密,可划分到一个微服务。同时现货交易用例与核心用例关联小,因此单独划分为一个微服务。初步划分微服务为交易配置微服务、交易公告微服务、交易申报微服务、交易出清微服务、交易结果发布微服务、交易统计分析微服务、现货支撑微服务。

第四步为识别结果优化。首先抽取复用性强的能力,分析中发现交易基础数据支撑能力被多个微服务频繁调用,因此可单独抽象为交易基础数据微服务。其次对业务稳定性进行分析,预交易业务虽然在流程上与中长期交易相同,但是其业务存在较多需求不确定性,因此需要单独抽象成预交易微服务。不同的交易品种交易出清过程大体相同,只是在交易出清算法上有所不同,同时新的交易品种往往需要新的出清算法支撑,因此可单独抽象出交易算法微服务。

第五步为微服务设计。通过系统详细设计进一步进行微服务调用关系、微服务对外提供接口参数、微服务与数据库表字段之间的关联关系、微服务接口实现逻辑等的设计。

5 中台运转机制设计 5.1 业务中台交互设计

业务中台交互设计包含能力中心与前台应用以及后台功能之间的交互方式的设计,使得业务中台能够在系统中实现运转。本文设计的业务中台架构中,前台为实现前端界面的业务应用,直接与用户进行交互;中台为支撑业务开展的业务能力,通过业务服务层与前台进行交互;后台为支撑微服务框架运转的提供非业务功能的基础服务层以及数据存储层。前中后端结构设计如图 2所示。

图 2 业务中台交互设计图 Fig. 2 Design of data exchange in business middle platform

1)业务中台与前台应用间的交互:业务中台中的能力中心由域服务组成。域服务由数据处理模块和业务处理模块组成,包含能力中心中沉淀的稳定的核心业务能力。本文设计的业务中台与前台业务应用之间存在一层业务服务层,它既不属于前台也不属于中台,由业务服务组成,通过组合调用业务中台中的域服务支撑对应的前台业务应用。业务服务层可通过对不同的域服务的组合调用来快速实现新功能,实现业务需求的敏捷响应。

2)中台与后台服务间的交互:在中台架构下,后台包含基础组件以及数据存储层。基础组件多为不被用户感知的实现系统支撑能力的服务,包括微服务支撑组件、公共技术组件等。后台服务于域服务的区别在于,后台服务不实现具体业务功能,只提供相对简单、基础的技术层面的功能。数据存储层包含数据存储服务,支撑数据库的基础增删改查能力,每个能力中心对应一个数据库以及一个数据存储服务。业务中台中的域服务可通过接口调用模式与基础组件服务以及数据存储服务实现交互。

5.2 业务中台服务治理机制设计

业务中台中的微服务的划分结果在设计开发阶段是未经过验证的,可能存在不合理的划分,但是在上线运转的过程中,可以通过微服务框架支撑组件包含注册中心、配置中心、链路追踪、熔断降级以及服务监控功能等,在运行之中实时监控微服务调用链路、负载情况以及故障情况。通过链路长度、调用频率、负载情况、故障频率等指标可以对现有微服务进行评估,并对成为性能瓶颈的微服务进行重构治理,使微服务的划分在不断的系统迭代之中不断优化,达到服务治理的效果[18-20]。

6 典型业务场景应用 6.1 典型业务支撑

以省间集中竞价交易场景为例,如图 3所示,具体说明业务中台的应用场景。

图 3 中台在省间集中竞价交易场景中的应用 Fig. 3 Application of middle platform in centralized bid-ding transaction among provinces

1)场景说明。

省间集中竞价交易业务流程包含交易序列管理、交易公告发布、交易申报、优化出清和交易结果发布等5个主要环节。

2)中台支撑说明。

本工作场景涉及业务中台的用户中心、信用中心、出清中心、合同中心、结算中心和消息中心,通过共同协作能力组合可对省间集中竞价交易业务提供有效支撑。在本场景中,各环节场景及环节与中心对应关系如下:

① 交易序列管理。通过用户中心的市场成员共享服务获取准入成员信息、通过信用中心的信用评价管理服务获取市场主体的信用评级,通过出清中心的交易公告服务录入交易序列基本信息。

② 交易公告发布。通过用户中心的市场成员共享服务获取市场主体信息,通过出清中心的交易公告服务完成公告发布,通过消息中心的短信消息发送服务把公告信息发送给相应的市场主体。

③ 交易申报。通过用户中心的市场成员共享服务获取市场主体信息,通过信用中心的信用评价管理服务获取市场主体在申报阶段的信用评级,通过合同中心的市场主体支撑服务(合同)查询市场主体已经签订的合同电量;通过出清中心的市场主体支撑服务完成申报数据校验及交易申报。

④ 优化出清。基于上述基础服务提供的信息,出清中心通过内部市场主体支撑服务、交易出清服务、出清计算服务的组合完成市场出清,再通过消息中心将出清结果发布给相应市场主体。

⑤ 交易结果发布。优化出清完成后进入交易结果发布环节,本环节涉及业务中台的用户中心、消息中心和出清中心,出清结果信息通过消息中心适时通知到交易双方。

6.2 应用成效

业务中台应用在电力交易平台中可以实现快速响应业务需求,同时可以精简系统功能,使系统便于维护。以支撑新的交易品种为例,如果新交易品种业务流程和原有交易品种的业务流程相同,只是在交易公告发布、交易申报环节有所不同,那么在业务中台架构下只需要修改出清中心的交易配置服务,实现新交易品种的交易配置、参数配置、页面显示配置、流程配置等,而不需要完整的开发出整个业务流程。而在单体架构下,则需要针对新交易品种的全流程进行开发,所以系统存在大量冗余功能,且对于单个流程节点的修改会影响整个流程的功能。因此,业务中台实现了业务支撑能力的有效沉淀,缩减了需开发的功能范围,提高了系统的可维护性以及业务需求的快速响应能力。

7 结论

本文分析了电力交易平台单体架构面临的问题,探讨了基于中台架构的电力交易平台体设计方案,对业务能力中心划分、业务服务识别、中台运转机制等重点问题进行了研究,并结合典型业务场景验证了电力交易业务中台架构改造的有效性。目前基于本文思路的设计成果已经应用于新一代电力交易平台中,通过划分的六大业务能力中心支撑了中长期交易、现货交易等核心业务。实践表明设计的业务中台能够有效支撑业务开展以及需求快速响应。

本文虽然初步完成了电力交易业务中台架构设计,基础业务应用也完成了初步的服务识别,但是如何建立一套面对业务发展变化的服务治理方法,目前还需要进一步探索研究,后续将在后续实践应用中不断探索完善。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有