某航空公司的主要业务系统(如订票系统、航班调度系统等)始建于二十世纪七八十年代,之后随着信息化的进展,陆续积累了许多异构的遗产信息系统。这些系统部分采用了J2EE、.NET等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。近年来,该公司在企业集成方面也是煞费苦心,已经在几个主要的核心系统之间构建了用于信息集成的信息Hub (Information Hub),其他业务应用之间也有不少点到点的集成。尽管这些企业集成技术在一定程度上增进了系统问的信息共享,但是面对历史异构的遗产信息系统,企业的业务整合、功能整合仍是困难重重,主要表现如下。
(1)由于大部分核心应用构建在主机之上,因此Information Hub是基于主机技术开发,很难被开放系统使用。
(2)Information Hub对事件支持不强,被集成的系统问的事件以点到点流转为主,被集成系统间耦合性强。
(3)牵扯到多个系统间的业务协作以硬编码为主,将业务活动自动化的成本高,周期长,被开发的业务活动模块重用性差。
某软件开发公司承接了该航空公司应用系统的集成任务,项目组经过多方讨论和论证之后,决定采用以面向服务为中心的企业集成技术,一步步解决该公司所面临的企业集成问题。
将彼此关联的业务活动组成自动化流程可以进一步提高该航空公司业务活动的效率。以服务为中心的企业集成通过流程服务来完成业务流程集成。结合你的系统架构设计经验,请用300字以内的文字列举出3种SOA架构中的流程服务内容,并给出简要说明。
参考答案:(1)编排服务:通过预定义的流程逻辑控制流程中业务活动的执行,并帮助业务流程从错误中恢复。
(2)事务服务:用于保证流程执行中的事务特性(ACID)。对于短流程,通常采用传统的两阶段提交技术;对于长流程,一般采用补偿的方法。
(3)人工服务:用于将人工的活动集成到流程中,即通过关联的交互服务使得人工可以参与到流程执行中,并且管理由于人工参与而带来的管理任务(如任务分派、授权和监管等)。
解析:企业部门内部的IT系统通过将业务活动自动化来提高业务活动的效率。但是这些部门的业务活动并不是独立的,而是和其他部门的活动彼此关联的。将彼此关联的业务活动组成自动化流程可以进一步提高业务活动的效率。以服务为中心的企业集成通过流程服务来完成业务流程集成。在业务流程集成中,粒度的业务逻辑被组合成业务流程,流程服务提供自动执行这些业务流程的能力。在参考架构中,流程服务包括以下内容。
(1)编排服务(Choreograplly Service):通过预定义的流程逻辑控制流程中业务活动的执行,并帮助业务流程从错误中恢复。
(2)事务服务(Transaction Service):用于保证流程执行中的事务特性(ACID)。对于短流程,通常采用传统的两阶段提交技术;对于长流程,一般采用补偿的方法。
(3)人工服务(stafrservice):用于将人工的活动集成到流程中。一方面,它通过关联的交互服务使得人工可以参与到流程执行中;另一方面,它需要管理由于人工参与带来的管理任务,如任务分派、授权和监管等。