论文部分内容阅读
工作流技术是当前非常活跃的研究领域之一,无论是企业内部应用的集成还是外部B2B集成,工作流技术都是最主要的方法。工作流是业务流程的计算模型,即将相应的业务逻辑和业务规则在计算机中以恰当的模型进行表示并对其实施计算。业务流程是若干业务活动的集合,这些业务活动按照一定的规则前后链接在一起,相互协作,以便达到一个共同的目标。业务活动则是能够完成特定功能的一个实际环节,它在信息系统中通常针对具体的应用逻辑。 Web是为了程序到用户的交互,而Web服务是为程序到程序的交互做准备。Web服务使公司可以降低进行电子商务的成本、更快的部署解决方案以及开拓新机遇。Web服务使应用程序的集成比以前更快、更容易而且更便宜。集成在协议栈中较高层发生,它基于更注重服务语义而不那么注重网络协议语义的消息,从而实现了业务功能的松散集成。这些特性对于在企业之间和企业内部通过Web连接业务功能是非常理想的。 ISFLOW是中科院软件所软件工程技术研究与开发中心所开发的具有自主产权的工作流管理系统。它将所有的外部应用(包括Web服务)都定义为服务,从而达到了灵活集成已有应用的目的。并且,最后的流程可以被包装成Web服务向外发布,以利于被其它的应用所集成调用。 本文围绕ISFLOW系统,介绍了作者主要从事的工作。 ISFLOW是一个面向服务的工作流管理系统,它将所有待集成的应用都统一为服务的形式加以使用。论文的第四章对ISFLOW的系统结构进行了介绍,同时描述了工作流的模型和运行时的主要算法——死路径消除算法和流程实例运行算法。 为了保证投入运行的流程模型不存在结构性的错误,论文的第五章介绍了我们在工作流结构可靠性方面所做的研究——基于流程表达式的结构正确性验证算法。与已有的众多研究不同,我们从流程表达式之间的关系着手,分析了表达式之间可能存在的关系,以及不同关系可能导致的流程结构的冲突。最后,我们提供了基于流程表达式的流程模型结构验证算法,在流程部署到流程服务器之前能够进行全面的结构验证。 结构正确的流程并不能完全保证在运行过程中不出现异常情况。一个成熟的工作流管理系统需要具有异常处理的能力。在论文的第六章中,介绍我们设计的一个灵活而强大的异常处理模块,此模块已在ISFLOW系统中得到应用。通过将异常定义与流程定义相分离,我们可以在不需要重新部署流程的基础上,改变异常的处理策略。 最后对本文进行了总结,并指出了今后将进一步完成的工作。