节点文献
工作流管理系统的事务建模研究
【作者】 董云卫;
【导师】 郝克刚;
【作者基本信息】 西北大学 , 计算机软件与理论, 2004, 博士
【摘要】 以Internet为代表的信息技术的快速发展和成熟应用改变着企业的商业环境,使商业运行节奏越来越快,企业的价值链更加紧密和多样,这种改变引导软件技术和软件产品的发展方向:异构性、事务能力和分布性。事务工作流管理系统是一个实现企业应用集成的技术手段和工具平台,它不但能够把不同的应用流程、不同的应用功能集成起来,在工作流运行平台的支持下,有效地自动执行和管理这些应用。而且利用事务工作流的事务管理功能,保证这些被集成的应用中的每一次计算的正确性,进而保证全系统的正确性。研究工作流事务管理模型就是为了满足现代企业应用的新需求而开展的。 本文在总结了面向数据的数据库事务管理模型的基础上,对目前采用的面向过程的事务模型进行了全面的分析,提出了乐观嵌套事务模型。该模型基于多数据版本、并发控制理论,借用时间戳的概念,通过对不同事务中活动类型的分类,较好地解决了长执行事务和协同事务的可靠性和正确性问题,提高了工作流运行的效率。乐观嵌套事务模型把嵌套事务、工作流模型和并发控制协议有机地结合在一起,定义了较为完整的事务操作原语及其语义,对事务调度进行了形式化描述,从理论上证明了该模型的正确性:可串行化、无联级回退和无死锁。乐观嵌套事务模型克服基于补偿或代理机制的高级事务模型的致命缺点:假设所有的补偿事务的执行一定能够成功提交,开辟了一条研究工作流事务管理的新思路。 本文对乐观事务模型的原语语义和工作流操作的语义进行研究、对比,给出了乐观事务模型到工作流模型的映射,并提出了三种从工作流程定义转换成事务工作流过程定义的表示方法:前序表示法、后序表示法和混合表示法。这种转换使得事务工作流执行过程中,其操作原语和乐观事务模型的操作原语是一致的,工作流活动的转移控制与乐观嵌套事务模型的子嵌套事务的生成过程及其表示方式也是一致的。 本文采用了一种面向方面的软件体系结构实现工作流事务管理,并给出了基于面向方面软件体系结构的事务工作流管理系统的软件体系结构和实现方法,为事务工作流产品的开发和应用提供了一条新思路。 本文依据以上的理论基础给出了支持事务管理的事务工作流管理系统synchroFLOW-T的实现方法:采用面向方面的软件体系结构,把工作流应用的系统需求分离成:流程关注、事务关注、参与者关注和工作流活动等四方面需求关注,分别对这四个关注进行实现,并对这些实现进行编织,系统的设计和实现在相应的工具支持下简单、易行,软件的复用性大大增强,系统地维护和演化能力大大提高。
【Abstract】 Rapidly developing and maturing information technologies such as the Internet have changed the business environment, leading to business operating more quickly, with more close-knit and complex value chains. This in turn, has led to some new trends in software technologies such as heterogeneous, transactional and distributed technologies. The transactional workflow management system is a platform and tool to implement Enterprise Application Integration (EAI). It not only integrates different business workflow and application functions into a system that can be run automatically and managed effectively through the platform, but also assures every computing application is integrated correctly by means of a workflow transaction. The system meets new requirements of modern enterprise in transaction modeling of workflow management systems.In this article, an optimistic nested transaction model is presented based on a database transaction model that is data-oriented and a workflow transaction model that is process-oriented. The system can solve problems such as correctness and reliability in long time transactions and collaborative transactions by sorting workflow activities to improve efficiency. The optimistic model is composed of a well-formed nested transaction, workflow model with a concurrent control protocol. It defines full semantic transaction primitives and presents a formal transaction schedule, which has been proven to be serializable, cascadeless and non-deadlocking. The optimistic nested transaction model overcomes the shortcomings of the Advance Transaction Model (ATM) that is based on compensating or agency, using the assumption that all compensating transactions can always be committed successfully. The model is a new way to research workflow transaction management.In this article, primitives with semantic of optimistic nested transaction model are compared with ones in workflow model. A mapping between two models is presented also, and three transform methods are introduced: forward order, backward order and hybrid order. We can transform a workflow definition into a transactional workflow definition by one of them, and keep primitives of transactional workflow model consistent with ones of optimistic nested transaction model, and the transportation of workflow activities is consistent with creating of children nested transaction. In this article, a software architecture based on aspect-oriented software development is presentedto implement transactional workflow management system. It is a new ideal to develop transactional workflow management system or transactional workflow application system. In this article, an implementation of transactional workflow management system, named SynchroFLOW-T, is introduced according to above theory. Its software architecture is based on aspect-oriented software development; all requirements of workflow are identified into four concerns: process, transaction, activity and participant. We can implement each concern independently, and then we can weave these implementations of concerns into a workflow application. It has some advantages, such as simplicity, feasibility, and a higher level of reusability, maintenance and evolution.