支持业务流程变化的软件系统构建方法研究
【摘要】:
业务流程是企业运营的核心和本质,其重要性毋庸置疑。随着经济全球化、信息网络化、需求多样化,市场和客户需求都在快速变化之中,这必然导致业务流程呈现变化、动态的新特点。由于传统软件系统所面向的是稳定不变的业务流程,因此面对业务流程的新特点,软件系统存在着如下的困难:
首先,流程逻辑很难从应用逻辑中分离出来。支持业务流程变化的关键在于将流程逻辑从应用逻辑中分离出来,只有这样,才能在业务流程发生变化时,快速调整流程逻辑,而不需改变应用逻辑的实现。但在当前的软件系统中,流程逻辑均被固化隐含在应用实现中,无法抽取出独立的流程逻辑,当流程需求发生变化时,就必须重新分析、设计、实现业务软件,这不仅不能应对快速变化的市场环境,而且大大增加了企业的成本。
其次,很难在业务需求和系统实现之间建立流程可跟踪性。只有在需求和实现之间有清晰明确的流程关联性,软件系统才能快速准确的应对业务流程需求的变化。但目前的软件系统构建模式,从分析到设计和实现,所关注的是数据、功能、行为,而没有明确的业务流程建模,因此无法在需求和实现之间建立业务流程的关联性。
第三,缺乏对业务流程变化需求模型的描述。目前的软件需求分析模型中,只描述了业务流程的静态需求,而忽略了对业务流程的变化特征的定义和分析。因而构建的软件系统很难支持业务流程的变化要求。
基于以上的应用背景和需求,本文对多种相关技术进行了深入的研究,认为应从改进信息系统的软件体系结构入手,将流程相关性语义从业务逻辑中抽取出来,作为软件结构中的一个重要元素加以描述和建模,并从需求分析到系统设计一直保持业务流程的独立性,才能解决业务流程所面临的问题。
本文重点讨论了支持业务流程变化的软件系统的体系结构及其构建方法,主要的研究目的是为企业实施业务流程管理提供一个技术框架,并为基于此框架的软件系统构建提供一系列指导原则,从而实现更高程度的业务流程自动化,并提高企业信息系统的灵活性、适应性和可扩展性,提升企业竞争力。围绕这个目标,本文对相关的关键技术问题进行了研究,主要的研究内容和创新工作包括:
第一,基于SOA,提出了一种面向业务流程的软件体系结构(BusinessProcess-Oriented Software Architecture,简称BPOSA)。
BPOSA是一个基于服务的层次型结构,在传统三层体系结构基础上,将业务逻辑和应用逻辑进行了分离,并进一步将流程逻辑从业务逻辑中抽取出来,形成一个独立的业务流程层。同时在各层次的软件实体具有显式的流程相关性语义描述。因此该结构具有业务逻辑与实现逻辑的分离、流程逻辑和业务逻辑的分离的特点。
第二,从业务逻辑中抽取出隐式流程相关性语义,实现了流程逻辑的显式化定义。
除了将流程控制逻辑从业务逻辑中分离出来、并予以明确的描述之外,BPOSA还将流程功能部分中隐含的与流程关联的特性抽取出来,建模为可配置的流程属性。流程语义的显式化定义,不仅能让使用者清晰的了解系统支持的业务流程,而且在流程变化时只需修改流程定义并重新配置各项流程属性即可,从而快速应对流程的动态调整。
第三,提出了一种面向组合的业务流程建模方法,并给出了基于π演算的形式化模型定义。
该模型以流程代数π演算为形式化基础,并借助于π演算所提供的一种自底至上通过组合子系统构造系统的方法,通过组合简单的结构化流程控制模块,建立复杂的流程模型。而且该模型降低了流程建模的复杂性,非常符合业务流程复杂、变化、分布的新特点。
第四,提出了一种基于服务、面向流程的软件系统构建方法,给出了面向流程的需求分析和系统设计的一系列相关原则和步骤。
该方法以系统支持的业务流程及流程变化性需求为中心,在需求分析阶段,通过对十一种流程变化特征的分析,首先得到与流程变化相关的业务服务动态流程可变前置条件;在系统设计阶段,根据业务服务的流程可变性需求抽取出服务实现逻辑中的隐式流程相关性语义。基于该构建方法而实现的软件系统,遵循BPOSA结构,达到了流程逻辑和应用逻辑分离的目标。
第五,对业务流程的变化特征进行了抽取和分类,提出了十一种业务流程变化特征,包括执行路径的变化特征、执行顺序的变化特征和增加删除活动、业务活动前置后置变化和活动拆分与合并等。面向流程变化特征的系统分析和设计是本文工作的一大特点和创新。
第六,提出了一个基于配置的业务流程变化管理服务模型。
该服务模型以配置为中心,支持业务流程的导入、流程属性的配置和业务流程的自动执行以及流程变化管理。当业务流程需求发生变化时,该服务能自动为业务流程的各活动寻找合适的业务服务,并根据服务执行的上下文环境匹配正确的服务实现,因此非常适用于动态业务流程的管理。
最后,基于一个通讯设备供应公司的供应链管业务案例,实践了本文提出的面向业务流程的软件系统构建过程,结果显示本文的方法能够较好的满足业务流程变化的需求,在需求改变的情况下,无需改动系统实现即可支持新的业务流程。这对改善企业管理水平、提高业务运作效率、降低企业经营成本,具有非常广阔和潜在的应用前景。另外,本文提出的基于π演算面向组合的业务流程建模方法、业务流程变化特征等概念和理论的研究和实现方法,对其它流程相关领域的研究也有一定的借鉴意义。