基于SOA架构的客运调度系统的研究与实现
2015-01-01胥昊闫璐李科
胥 昊 闫 璐 李 科
近些年,随着我国高速铁路的迅猛发展,对调度指挥业务的要求也随之提高,提出一种适应高速铁路运营调度的全新设计思想,既要满足高速铁路调度业务流程,同时能够采用先进的IT技术架构,将调度业务流程与调度指挥系统完美结合,形成一种高效、安全、全新的高速铁路调度指挥与行车控制一体化系统。客运调度系统作为运营调度系统的重要组成部分,采用基于面向服务的体系架构,实行调度所、乘务段二级部署,既整合了既有线上客运调度的业务功能,也优化了客运调度业务流程。通过信息共享平台,与地理信息系统、车辆管理系统、综合维修系统等其他运营调度子系统进行信息交互,促进了高速铁路信息资源的综合利用,发挥了信息化整体效益,提高运营管理和调度指挥的科学决策支持水平,对实现以旅客为中心服务的理念具有重要意义。
1 系统及SOA架构概述
客运调度系统是高速铁路运营调度系统 (简称运调系统)的重要组成部分,是客运专线运输组织指挥的中枢系统之一,能满足时速300~350km/h高速列车按3min追踪间隔运行时,调度指挥需要的乘务计划、客流分配及预测、行车建议及客运调度命令的下达;也可通过运调系统的信息共享平台,对客运调度员所需要的运输计划、设备维修、牵引供电、机车车辆 (动车组)和乘务人员等信息进行综合管理,提供科学、准确、及时的数据统计及报表。
面向服务的架构体系 (SOA),是现今IT业内最为流行的系统架构设计理念。与传统IT技术架构相比,SOA涵盖了更多的思想,能快速响应和满足业务需求变化带来的系统灵活调整。服务(service)是SOA系统的基本功能组成单元,各个应用模块在统一的服务工程及服务规划的基础上,将业务功能进行服务化处理,以应用模块的私有服务或系统公共服务的形式与企业服务总线 (ESB)相接。公共服务注册在服务目录上。业务流程引擎通过对实际业务操作流程的分析及设计的流程服务进行组装及编排,形成业务流程服务。信息访问服务、复合业务服务、表示服务等对子服务进行组合或功能重组,形成粒度更大的服务供应用调用。综上所述,在基于SOA架构的业务应用系统中的服务化过程如图1所示。
在客运调度系统的设计及开发过程中充分借鉴SOA架构的思路与特点,将客票信息查询、乘务计划查询、列车早晚点信息查询、乘务调整计划下达等,涉及数据交互及信息发布的基础功能,封装成细颗粒度的业务服务,统一部署在运调系统的ESB中。通过前端应用根据需要发出的调用请求加载对应的业务服务,待后端业务处理完成后,直接向前端应用界面推送运行结果,向系统使用人员显示相关数据信息。通过业务服务的封装部署,充分体现了SOA架构的松散耦合性、服务重用性、业务可扩展性及各个功能间的互操作性等优点,同时客运调度系统通过采用WMB和MQ等中间件产品及基于JAVA SWT图形化控件开发的客户端,最大程度上保证了系统运行的可靠性及良好的人机体验。
图1 业务应用系统中服务化过程图
图2 客运调度系统总体架构图
2 系统架构及功能
2.1 系统总体架构
针对客运专线调度所客运调度员及乘务段客运调度值班员,客运调度系统分为调度所、乘务段(车站客运终端)二级部署,上下为垂直系统分布,二层系统间的数据传输通过运调系统骨干网实现。如图2所示。
1.前端框架。它是客运调度系统的门户,支持各种设备的接入,包括调度台相关的客户端、智能移动终端的Web访问、决策门户等。
2.业务流程服务。业务流程应用提供对共享业务服务、数据服务编排、组合容器,包括了业务流程分析、梳理、建模、整合、开发、运行、监控等。主要功能是提供业务流程引擎、业务规则引擎、业务流程管理、服务总线等多种协议服务的支持,以及业务流程的设计和开发。从客运调度员的视角,最终体验是面向客运调度业务的工作桌面提供的用户界面、业务功能和后台数据,并不关心后端是哪个应用或数据源;从系统管理人员的视角,其业务是通过企业级共享的、基于标准的、可重用的业务服务组合编排实现。当有新的客运调度业务需求出现,或者组织管理规则调整时,可以通过对细颗粒服务的重用和业务流程编排,快速灵活地适应业务的变化,而不会影响到整体的IT架构。
3.通信服务。实现乘务段或车站客运终端对客运调度系统企业服务总线的访问,从而实现调度所客运调度台与乘务段或车站客运终端的信息联动,支持多种标准的通信协议,满足通信实时性、可靠性要求。
4.业务共享服务。按照统一服务工程框架,从客运调度业务需求中分析、发现的业务服务,代表一定的业务单元,具有一定的共享性、敏捷性。如调度命令下发服务、乘务调整计划下达服务、查询服务等。这些业务共享服务由颗粒度更为细小的服务予以暴露和组合,部署在ESB上,以便由前端框架进行调用。
5.数据服务。在客运调度系统的众多查询功能中,大多数操作从数据模型、数据多个维度或维度的组合,对数据模型进行统一或通用的访问。通过数据模型映射建立数据模型,通过数据逻辑的设计,数据的转换等,建立数据服务。数据服务包括统一视图服务、统一编码数据服务、数据同步服务等。
2.2 系统功能设计
基于SOA架构的客运调度系统的主要功能模块如图3所示。
图3 客运调度系统功能框图
1.查询统计模块。它是客运调度系统中的核心模块之一,根据客运调度业务需求,查询功能中包含了列车早晚点、客票信息、乘务计划、重点列车的查询。统计功能中包含了列车正点率及列车早晚点原因统计。查询方式包括精确查询、模糊查询、关键字查询等。统计的结果会以表格、柱状图及饼状图进行显示。
2.调度命令管理模块。调度命令是铁路各工种调度业务的重要环节,该模块包含客运调度员所需调度命令的编辑、送审、接收、签收、下达、查询全过程操作。
3.应急管理模块。应急管理包含了应急预案的制定,并会将预案生成不同的方案模版予以保存。在需要进行应急方案制定时,自动加载同类型的预案模版,帮助调度员快速便捷完成方案的编辑、送审、下达、接收等一系列操作。预警报警功能在接收到车站客运值班员或其他工种调度员的消息通知后,会在该模块突出显示,并伴有报警声音提示。
4.其他信息管理模块。该模块包含调整建议生成、特殊资讯发布和列车信息查看3个子功能。调整建议即是在列车产生大面积晚点或其他原因造成旅客大面积滞留等特殊情况下,由客运调度员起草编写的列车调整建议信息,该信息会由列车调度员或值班主任予以审阅和发布。列车信息包含该列动车组编组信息,车辆履历信息及司乘人员信息等。
本算例结构如图7所示,该系统含有33个节点,37条支路,5个联络开关[11](图中虚线所示),基准电压为12.66 kV,网络总负荷为5.084 26+j2.547 32 MVA[12]。
5.系统管理模块。该模块包含用户管理、日志管理及联机帮助。用户管理主要包括用户的交接班操作、登录退出操作等。日志管理提供系统对当班调度员所做操作的记录,方便后期的统计及查询。联机帮助中包含对各工种调度的调度职责、调度管理条例的在线查询,同时支持用户对经常查阅的规章制度的定制化管理。
3 系统关键业务流程
在客运调度系统中主要的业务即为相关客运信息的查询管理、调整建议的生成等。
3.1 列车早晚点信息处理
1.系统自动检测列车运行调整计划及实绩报点数据。在这一环节中由实绩报点信息的事件驱动系统自动调用部署在企业服务总线 (ESB)上的运行调整计划检测服务,完成列车调整计划同实绩报点数据的检测。
2.系统自动生成列车早晚点信息。在完成列车调整计划同实绩报点信息的检测后,系统调用部署在ESB上的早晚点信息生成服务,生成列车早晚点信息。
3.发送列车早晚点信息至客运调度员及相关车站客运终端。生成列车早晚点信息后,通过ESB的智能动态路由功能,将消息推送至客运调度台,同时通过通信服务,将消息发送至车站客运终端。
4.客运调度员记录晚点原因及晚点类型。
5.保存列车晚点原因及晚点类型。该步骤会由前端框架发起保存数据的业务请求,ESB解析业务要求后调用对应的数据服务,对数据库相应数据表格进行操作。列车早晚点信息处理的流程图如图4所示。
图4 列车早晚点信息处理业务流程图
3.2 调整建议生成
1.客运调度车站客运终端值班员发送旅客滞留等特殊资讯信息。在该过程中系统调用通信服务,将消息从车站客运终端发送至部署在应用服务器之上的ESB。
3.系统发送信息至客运调度员。该步骤与步骤2同步进行,ESB同时会根据解析后的消息类型,通过动态路由功能将消息推送至客运调度台的对应功能模块。
4.客运调度员判断是否需要增减开行列车。
5.客运调度员制定列车运行调整建议。
6.保存列车运行调整建议。该过程由客运调度台前端框架发起保存业务请求,ESB调用数据服务对数据库进行操作,完成保存功能。
7.送审列车调整建议至值班主任。该步骤与步骤6同步进行,ESB同时将客运调度员制定的列车运行调整建议经由动态路由推送至值班主任台对应功能模块。
8.值班主任审批调整建议。
9.客运调度员发送调整建议至列车调度台。在客运调度台前端框架发起发送请求后,ESB会将审批后调整建议经由动态路由推送至列车调度台对应功能模块。调整建议生成处理流程如图5所示。
图5 列车运行调整建议业务流程图
4 总结
基于SOA架构的业务系统相比较于以前的业务系统具有以下优势。
1.更易维护。关键业务的服务提供者和服务使用者的松散耦合关系确保了该特性的实现。建立在以SOA基础上的客运调度系统,当需求乃至流程发生变化的时候,不需要修改提供业务服务的接口,只需要调整业务服务流程或者修改操作即可,整个应用系统也更容易被维护。
2.更高的可用性。关键业务的服务提供者和服务使用者在松散耦合关系上得以发挥与体现。使用者无须了解提供者的具体实现细节,只需在系统前期将业务需求转换为一个个的服务模块,方便后期的灵活组合应用,并快速形成多样的流程系统。
3.更好的伸缩性。使服务提供者可以彼此独立地进行调整,以满足新的服务需求。这一特性主要体现在流程中快速增删的易用性。
随着我国客运铁路的跨越式发展,客运调度业务也会随之发生变化,这对客运调度系统的功能性及适应性提出了更高的要求。基于SOA架构的客运调度系统在充分满足客运调度员日常调度业务的同时,整合和优化了重点业务流程,还将客运调度业务按照标准Web Service服务进行封装,最大限度的实现了服务重用与共享,为今后的系统升级改造提供了极为便利的条件。根据各用户的需求,既可以单独部署使用,也能够作为高速铁路运营调度系统的组成部分,形成我国高速铁路新一代调度指挥综合业务平台。
[1] 赵春雷,刘志明 .高速铁路调度指挥体系的研究[J].中国铁路,2010(12):34-37.
[2] 刘春煌 .全路客运调度信息系统总体结构的研究[J].铁路计算机应用,1996(4):25-28.
[3] 孙远运,刘刚,马均培 .客运专线运营调度系统总体架构设计[J].计算机工程与应用,2009(45-32):215-221.
[4] 石雨,杨浩 .铁路客运专线旅客服务调度系统的研究[J].交通运输系统工程与信息,2007,28(3)
[5] Freling R,Lentink R M,Kroon L G,et al.Shunting of passenger train units in a railway station[J].Transportation Science,2005(39).261-272.
[6] Freling R,Lentink R M,Wagelmans A P M.A decision supportsystem for crew planning in passenger transportation using a flexiblebranch and pice algorithm[J].Annals of Operations Research,2004(127).203-222.