(计算机软件与理论专业论文)多流程系统中流程交互模型(fcm)的研究与应用.pdf_第1页
(计算机软件与理论专业论文)多流程系统中流程交互模型(fcm)的研究与应用.pdf_第2页
(计算机软件与理论专业论文)多流程系统中流程交互模型(fcm)的研究与应用.pdf_第3页
(计算机软件与理论专业论文)多流程系统中流程交互模型(fcm)的研究与应用.pdf_第4页
(计算机软件与理论专业论文)多流程系统中流程交互模型(fcm)的研究与应用.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 摘要 目前软件系统日益庞大,每个具有完整功能的软件系统往往被划分为若干个 具有相对独立功能的模块,这些功能模块通过相互协作共同实现系统功能。当前 在软件设计时往往采用业务处理功能和交互处理功能混合在一起的方法,这造成 了系统的灵活性和开放性差,且不易于维护。 针对以上问题,本文对多流程系统中流程间交互的问题进行了研究,使用扩 展的情景演算理论对交互过程建模,以达到交互过程与业务过程分离的目的。并 在此基础上设计了一个可复用的多流程系统交互模型。在多流程系统中使用本文 设计的交互模型( f c m ) ,交互的过程被交给一个“仲裁机构”一交互中间件处 理,实现了交互和业务处理在逻辑结构上的分离。通过交互中间件的应用,使各 流程从繁杂的交互负担中解脱出来,更专注于自身业务的处理过程。各流程只专 注于自身的业务处理,减轻了其推理的负担,提高了系统的效率,可更好地适应 系统不断增加新服务和功能的需求。 本文的创造性在于在把人工智能中的逻辑表示方法和处理的相关理论用于 软件系统结构的设计中,对流程的交互过程进行形式化的建模,从而为系统的进 一步自动化处理提供了基础和支持。 关键词:多流程系统、交互中间件、交互模型 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 a b s t r a c t n o w a d a y s ,m es o f t w a r es y s t e m sa r eb e c o i i l i n gm o r ea i l dm o r ec o m p l e x t h e y a r ea l w a y sd i v i d e di n t os e v e r a lm o d u l e sw h i c hw o r kt o g e t h e rt oa c c o m p l i s ha n i n t e g r a t e df u n c t i o n t l en o 唧a lw a y o fd e s i g n i n gi i l i xt l l ef u n c t i o n so fi n t e r a c t i o na n d o t h e r s ,w 血i c hm a k e si td i f f i c u l tt om a i n t a i nt l l es o f t w a r es y s t e l n s t bs e t t l ct h i sp r o b l e m ,m ym e s i sf o c u s e so ni s o l a t i i 培t t l ei n t c r a c t i o nf u n c t i o n b a s e do n 山ek n o w l e d g e ( e s p a c i a l l ys i t u a t i o nc a l c u l s ) a n dm e o r yo fr e a s o n i n gi na i a r e a ,as v s t e ma r c h i t e c t u r ec a l l e dt | l ec o m m u n i c a t i o nm o d a li nm u l t i f l o ws y s t e m ( f c m )w h i c hf o m l a l i z et h ep r o c e s so fi n t e m c t i o nw i t h1 0 9 i c a lm e t l l o d sa n d i s 0 1 a t e 山ei n t e r a c t i o nf u n c t i o ni sd r e s e n t e di nt 1 1 i st h e s i s t h ec o r eo ft l l i sa r c h i t e c t u r e i st h ei n t e r a c t i o nm i d d l e w a r c n sj o bi si n t e r a c t i n gw i t l lo t h e rn o w si np l a c eo fi t s o w n e ls i n c et l l ec o m m u n i c a t i o nm o d a li nm u l t i f 1 0 ws y s t e mp r o v i d e saf a c i l i t i e sf o r f e p r e s e n t i n gt 1 1 ei n t e r a c t i o n p r o c e s s i nl o g i c a lw a y s ,i tc a ns e r v ea sau n i f o r n l p l a t f o mf o rm u l t i n o ws y s t e r n s k e y w o r d s :m u l t i f i o ws y s t e m s i t u a t i o nc a l c u l sc o m m u n i c a t i o nm o d a l 3 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 1 1 、问题描述 第1 章引言 随着计算机应用领域的不断扩大,越来越多的行业为使各类资源( 人、财、 物等) 更好的正常运转并产生更大的效益,往往设置各种不同而相互协作的业务 过程,即常说的业务流程,并将这些业务流程全部或部分交由计算机操作的软件 系统来实现。根据美国的一项统计,在整个8 0 年代,美国企业在信息技术 ( h f 0 咖a t i o nt e c h n 0 1 0 9 y 即i t ) 应用上投资了1 万亿美金。随着信息化影响的 不断扩大,企业对i t 技术的依赖性也越来越大。1 1 r 技术的应用为企业业务流程 的改进、优化和重建提供了有力的工具,以e r p 、c r m 和s c m 为代表的企业 管理软件集成了优秀的企业管理实践和业务流程,由此可见计算机已经开始深入 影响各行业企业的生产活动。 每个具有完整功能的软件系统通常包括较多的业务对象,实际业务需求的复 杂性往往造成业务对象具体处理流程的复杂多样和变更性,因此在进行系统设计 时,经常采用模块化的指导思想,把系统划分为若干个具有相对独立功能的模块。 每个模块按照预定的逻辑动作序列,实现一个相对完整的业务对象功能,我们把 这样的一个以业务处理过程为中心的功能模块称为流程“1 。若干个流程通过协 作组成具有完整业务处理功能的软件系统。 在这种多流程系统中,单个流程只负责处理某一特定方面的操作并同时被赋 予一定的交互能力,从而使多流程系统作为一个整体具有处理复杂操作的能力。 流程之间通过传递具有特定语义的消息序列,经过若干推理,做出相应的决策。 在当前的大多数多流程系统中,决定何时发出交互请求、传递什么消息以及推理 决策等问题都留给了系统的设计者,因此在实现的方法上往往采用在各流程中直 接编码的方式,这必然要对系统中出现的所有交互情况进行事先预料和设计。很 显然,这种方法的灵活性和开放性差,在系统需要处理的业务对象较多且交互繁 杂的情况下,要想在系统设计时确定完备的交互方案是非常困难的。在实际应用 中,软件系统经常会随着业务处理过程的变更而增加新的流程或者添加新的服务 和功能,这些都会改变原有的交互模式,造成代码的大面积改动,从而给多流程 系统的设计和实现带来了很大的困难。因此有必要寻求多流程系统新的交互方 式。 6 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 1 2 、本文研究的思路及意义 分析以往的研究工作,主要分为以下两种: 1 、交互研究的对象处于同一环境下,这些对象具有共同的特性。在这 种情况下,研究的重点在于如何建立交互代理,把交互过程独立出 来。如多a g e n t 系统,工作流( w b r k f l o w 管理系统) 。 2 、 交互研究的对象具有较大的差异,交互研究的重点在于如何建立交 互协议,使参与交互的对象达到通信的目的。如网络设备的交互。 而在当前软件系统的开发过程中,组成软件系统的对象种类多样,可能是一 个a g e n t ,也可能只是一个软件功能模块,因此,有必要研究在这样环境下的软 件开发中,如何把交互过程形式化并独立处理的问题。 本文的研究重点是构建一个领域专用的多流程交互模型,基于该模型建立的 交互中间件专职负责处理各流程相互间的交互协作问题,通过交互中间件的应 用,使各流程从繁杂的交互负担中解脱出来,更专注于自身业务的处理过程。根 据这个目的,本文对以下几个问题进行了研究: 1 、多流程交互过程的形式化表示方法。 2 、交互中间件的结构设计。 3 、情景演算中对动作逻辑的扩充。 本文的研究成果是提供了对流程交互协作过程建模的方法,并在此基础上设 计了一个可复用的多流程交互系统模型。在多流程系统中使用本文设计的交互模 型,交互的过程被交给一个“仲裁机构”一交互中间件处理,实现了交互和业务 处理在逻辑结构上的分离。各流程只专注于自身的业务处理,减轻了其推理的负 担,提高了系统的效率,可更好地适应系统不断增加新服务和功能的需求。 本文的创造性在于在把人工智能中的逻辑表示方法和处理的相关理论用于 软件系统结构的设计中,将流程的交互过程进行形式化的建模,从而为系统的进 一步自动化处理提供了基础和支持。 1 3 、相关工作 当前在计算机许多领域的研究中,如c s 系统、工作流管理系统、多代理 系统都涉及到了组成系统的若干个个体之间的交互问题。 文献阁研究了c l i e n “s e r v e r 模型下客户端和服务器端的交互情况,通过建立 一个协作管理器代理( a g e n t ) 来处理交互信息。文献4 1 主要研究一些特殊的交 互过程,如进程交互、网络环境下分布式系统的交互等。以上这些研究都使用了 7 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 非形式化方法提出交互协作过程模型,并且在研究中没有分析交互过程对原主体 产生的影响。 文献【2 l 给出了一种逻辑程序语言f a l 用来对信息系统中多a g e n t 交互过程建模。 事实上这种语言和情景演算非常相似,其主要特点是突出了时间在交互过程建模 中的重要性,因此适用范围具有一定的局限。另外f a l 的语法结构也比较复杂。 文献【4 】【5 】用不同的形式化的方法研究了多a g e n t 系统中的交互与协作过程。其中 文献h 1 使用了情景演算,但重点是a g e t 之间的协作求解过程;文献【5 1 侧重于消 除与信念和目标有关的副作用,致力于刻画主体的有限自治特性。这些研究与本 研究的侧重点不同。 在多代理系统( m u l t i a g e n t s y s t e m s ) 中,i n t e m c t i o n ( 交互) 是最重要的特 性。在这个领域的研究方面,相当一部分的研究人员致力于a g e n t 沟通语言的开 发。目前最受到瞩目的a g e n t 沟通语言是k n o w l e d g eq u e r ya n dm a n i p u l a t i o n l a l l g u a g e ( k q m l ) 。【7 1 k q m l 为a g e n t 之间的交互提供了一套消息格式以及通 讯协议以支持运行时的知识共享。文献【6 】以k q m l 为基础建立了多a g e n t 交互 模型。但是在这个模型下,所有参与交互的个体都必须具有a g e n t 的特性,即自 治性、协作性以及适应性,这使得该模型的广泛应用具有一定的局限性。 文献8 l _ 【”j 【3 8 1 从若干不同的角度对多主体团队中主体间协作的过程进行了研 究,包括主体服务匹配的问题,主体交互协议的表示和实现,多主体服务的优化 策略。这一系列文献的研究侧重于对特定的多主体团队交互过程的研究,对交互 协议的定义较为细化和深入,而本文力图从软件工程的角度对交互问题进行研 究,因而文献嘲一【13 研究的侧重点与本文不同。 中山太学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 第2 章文章结构 本文共分为七个章节,其中: 第1 章为引言,介绍了本文所研究问题的由来、研究包括的内容以及创新性 所在。 第2 章为文章结构,介绍本文的组织结构。 第3 章为多流程系统设计过程中问题的陈述。主要介绍了目前广泛使用的一 些多流程系统,对流程这个概念进行了较为具体的陈述。同时详细描述了目前在 多流程系统设计中存在的问题。 第4 章为多流程交互过程的形式化表示。介绍了本文对交互过程建模的理论 基础,包括情景演算,动作理论等。描述了对情景演算扩充后的理论体系及归结 算法,及基于此理论体系的多流程交互推理方法。 第5 章为多流程交互模型。在这一章中首先介绍了几个可能的交互系统模 型。接着结合本文所研究的问题提出了所采用的模型框架,并说明了采用这种模 型的优点。最后介绍了交互传递中消息的格式。 第6 章为多流程交互模型在c r m 系统中的应用。举例说明了多流程交互系 统模型在一个c r m 系统中的实现方法。 第7 章为小结,对本文所阐述的内容进行了总结,并对进一步的研究工作进 行了展望。 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 第3 章多流程系统设计过程中问题的陈述 3 1 、关于流程 3 1 1 、流程的概念 流程是一个很宽泛的概念。毕业生推迟答辩有其申请审批的流程,一个企业 的产品有其生产流程,一个软件的开发过程有其开发流程。为了说明本文所述流 程的概念,我们先来看一个例子。在中大软件所开发的电星商贸系统中,存在这 样几个功能模块:c r m 模块( 计算机电话语音管理模块) 、c r m ,c s m 模块( 客 户关系管理模块) 。电星商贸系统的组成结构以及c t m 、c i t m 各模块之间的关 系如图一所示。 客户端 蘼 c r m c s m 模块 1 f 粼糍黼糍黼麟黼峨糍戮黥斛燃黼辫糕瓣糕黪黼燃黝戮黼戮 | | 縻 数据库访问部件 c t m 模块 j 1 f c s d bc t md b 服务器端 图1c t m 系统结构 图示中,蓝色边框表示体系结构在物理上的划分,红色边框表示了其在逻辑 上的划分。在电星商贸系统中,c t m 模块负责管理电话部分,c r m ,c s m 模块 专门处理与客户服务。两个模块都可以独立执行,并能实现各自的功能,另外, 每个模块都有自己相对固定的执行步骤。 以上所述的功能模块,由于其具有逻辑上的独立性、功能上的完整性以及执 行步骤的明确性,因此可以被称为一个流程。 本文所述的流程,是组成软件系统的一个功能模块,我们把这样的一个以业 务处理过程为中心的功能模块称为流程“1 。它应具有以下特征: 1 0 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 流程是逻辑上的执行实体; 流程可以独立运行; 流程实现系统中的一个完备的子功能: 流程之间可以进行交互操作,实现单个流程无法实现的功能。 首先,流程不是程序执行过程的物理划分结果。例如在c t m 系统中,独立 运行的客户端程序不能称作一个流程。整个执行中的模块还必须包括服务器端的 数据库访问部件和相关的数据库。单独运行的客户端程序,因为缺乏数据库的支 持而无法实现第三个特征。实现完备的客户服务功能。 第二,各流程应能够独立运行。在系统的某些流程没有运行或运行失败时, 应不会影响到其它流程的正常运作。例如在c 1 m 系统中,c t m 流程和c s m 流 程都可以独立运行,实现企业总机和客户服务功能。 第三,流程实现系统中的一个完备的子功能,必须具有实际应用上的意义, 这是因为流程是模块的执行过程。 由以上定义我们可以看出,流程的概念与功能模块的概念是有明显的区别 的。功能模块是静态的概念,而流程是一个动态的概念。一个系统中的不可能有 两个完全相同的功能模块,但一个运行中的系统,却可能有两个流程在同时运行 同一个功能模块。一个系统的功能模块的组成是不变的,但系统运行过程中流程 的数目和状态是可以时刻发生变化的。 3 1 2 、流程与进程、线程的区别 根据操作系统中的定义,进程是一个程序的执行序列,在多任务的操作系统 中,由操作系统调度。线程是比进程更小的独立运行的基本单位,它具有许多传 统进程所具有的特征,故又称为轻型进程或进程元,是一个进程中的个子序列, 线程由程序负责管理。线程和进程一样都是实现并发性的一个基本单位。 线程和进程区别是: 1 同样作为基本的执行单位,线程的划分比进程小。 2 进程把内存空间作为自己的资源之一,每个进程均有自己的内存单元。 线程却共享内存单元,通过共享的内存空间来交换信息,从而有利于提高执行效 率。 一个进程可以有一个或多个线程,线程是调度的基本单位。提供多线程机制 的好处是,当一个应用是由若干个相对独立的任务构成时特别有用,便于这些任 务同时、并行运行,便于用户开发应用程序。同时,一个进程的多个线程是在相 同的地址空间运行( 即该进程的地址空间) ,而不同进程的地址空间则是不同的。 所以在进程之间开关,要付出转换地址空间的开销,而在线程之间开关,则开销 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 很小。 本文所述流程的概念跟进程和线程有着很大的差别。进程和线程是操作系统 中从资源分配角度的概念。而流程是从软件系统结构的角度进行定义的。在一个 流程中,可以包括若干进程和线程,这些进程和线程通过相互交流协作共同实现 流程的业务逻辑功能。 3 2 、关于多流程系统 随着信息技术的发展和网络化经济的快速进步,传统的商业模式发生了根本 性的变化。在很多行业,所提供的产品和服务日益商品化,产品的同质化倾向越 来越强,独特的竞争优势越来越难以获得,企业间的竞争日益激烈,企业产品生 命周期更短,客户的需求更加个性化。网络使社会经济模式的核心流程从批量生 产( m a s sp r o d u c t i o n ) 转变为批量定制( m a s sc u s t o l i z a t i o n ) ,信息技术的发展使电 子商务成为可能。在这种情况下,生产、销售、客户服务等企业运作各个方面的 信息化在企业面对激烈的市场竞争中越来越占据举足轻重的地位。信息化已经融 入了各行各业的各个运作流程。 企业信息化不仅提高企业的生产以及服务的效率,同时还促进企业流程再工 程( b p r ) ,引起企业管理思想方面的革命,已受到管理界和企业界的广泛重视。 b 豫强调以企业流程为中心,充分利用现代信息技术的使能作用,对企业现有 流程进行根本性的反思,以求得流程业绩的巨大飞跃。 目前企业中广泛应用的信息化系统包括客户关系管理c r m 、企业资源计划 e r p 和供应链管理s c m ( s u p p l e c h a i nm a n a g e m e n t ) ,它们一起构成电子商务企 业提高竞争力的三大法宝。其中,s c m 关注的是企业与供应商的关系和供应链 的流程,e r p 关注的是企业资源及其利用效率,而删则是企业面向客户的平 台。如果把e r p 比做企业练好内功,s c m 比做管道,那么c r m 就是企业从以 产品为中心逐步转向以客户为中心的外功了。这三种系统一定程度上是企业某一 方面的多种操作流程的集中整合,通过这些流程间的相互协作实现了自动化运 营。因此这三种系统都可被称为多流程系统。 1 ) c 瑚讧系统: c r m 是一种以客户为中心的信息系统,它可为企业提供全方位的管理视角, 赋予企业完善的客户交流能力,最大化客户收益率f 1 4 1c r m 利用日新月异的现代 通信技术,通过对业务过程的重新组合b r p ( b u s i n e s sp r o c e s sr e e n g i n e e r i n g ) , 从而增强企业的客户保持能力和客户认知能力,最终达到客户收益最大化的目 的。它包括一个企业判断、选择、争取、发展和保持其客户所要实施的全部过程 u ”。c r m 通过先进的数据仓库技术,分析现有客户和潜在客户相关的需求、模 1 2 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 式、机会、风险和成本,从而最大限度地赢得企业整体经济效益【l “。c r m 内容界 定首先应从“客户关系”这个理解出发,即c r m 的内容应是企业中与客户有关的 所有管理,其大致可以呼叫中心、信息管理、操作层次的c 跚、客户关系分析等 几个方面。每个方面都具有相对独立的运作流程。以呼叫中心和信息管理为例: 呼叫中心将传统的电话呼叫中心与网站、电子邮件、传真,信件、移动通信、 直接接触和客户喜欢使用的其它方式有机整合,形成可以处理各种通讯媒介的客 户服务中心,客户可以采用任何一种自己喜欢的方式与企业进行有效的信息沟通 和互动,是一个独立的呼叫处理流程。 信息管理包括客户的基本信息、潜在客户的信息、产品信息、市场信息、市 场销售人员信息等,是一个基本的信息分析采集流程。 c r m 不仅是一个计算机系统,它更反映了一种新的思想和理念,而这种理 念在以前是被忽略的,那就是在激烈市场竞争中,对企业来说,客户占主导地位。 c i u 订利用先进的管理思想及技术手段,将人力资源、业务流程与专业技术进行 有效的整合,最终为企业涉及到客户或消费者的各个领域提供完美的集成,使企 业可以更低成本、更高效率地满足客户的需求,并与客户建立起基于学习型关系 基础上的一对一营销模式,从而让企业可以最大程度地提高客户满意度及忠诚 度,挽回失去的客户,保留现有的客户。不断发展新的客户,发掘并牢牢地把握 住能给企业带来最大价值的客户群。c r m 的核心内容主要是通过不断的改善与 管理企业销售、营销、客户服务和支持等与客户关系有关的业务流程,并提高各 个环节的自动化程度,从而缩短销售周期,降低销售成本,扩大销售量,增加收 入与盈利,抢占更多市场份额,寻求新的市场机会和销售渠道,最终从根本上提 升企业的核心竞争力。 2 ) e r p 系统4 “: e r p 是e n t e r p r i s er e s o u r c ep 1 a n n i n g ( 企业资源计划) 的缩写,这一观念 最初是由美国g a r t n e rg r o u p 公司在9 0 年代初期提出的,并就其功能标准给出 了定界,作为企业管理思想,它是一种新型的管理模式;而作为一种管理工具, 它同时又是一套先进的计算机管理系统。 从8 0 年代起,世界经济格局发生了重大的变化,制造业企业所面临的共同 问题是更加激烈的市场竞争,在竞争中技术因素变得越来越重要。如果企业丧失 了技术优势,就必定会丧失其竞争优势。因此,谋求技术优势是现代制造业生存 的需要,也不断地在其广度和深度上加以完善和更新,从m r p 、m r p i i 发展到 e r p ,不断为企业提供了竞争致胜的有利武器。 最初,g a r t n e rg r o u p 公司是通过一系列的功能标准对e r p 进行界定的,包 括如下四个方面: ( 1 ) 超越了m r p i i 范围和集成功能; 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 ( 2 ) 支持混合方式的制造环境; ( 3 ) 支持动态的监控能力,提高业务绩效: ( 4 ) 支持开放的客户机服务器计算环境。 但这些只是从管理系统的功能范围、集成程度、应用环境、支持技术等方面 给出了评价和界定,而并未像m r p i i 的创始人0 1 i v e rw r i g h t 及美国生产与库 存管理协会a p i c s 等规范m r p i i 那样,给出明确的定义。e r p 是一种基于“供 应链”的管理思想,它扩展了原有的管理思想,给出了新的结构,把客户需求和 企业内部的制造活动、以及供应商的制造资源整合在一起,体现了完全按用户需 求制造的思想。 e r p 的基本思想是将制造企业的制造流程看作是一个紧密连接的供应链,其 中包括供应商、制造工厂、分销网络和客户等;将企业内部划分成几个相互协同 作业的支持子系统,如财务、市场营销、生产制造、质量控制、服务维护、工程 技术等,还包括对竞争对手的监视管理。e r p 是一种面向企业供应链上的所有环 节进行有效地管理,如订单、采购、库存、服务与维护、财务管理、人事管理、 实验室管理、项目管理、配方管理等。 e r p 在计算机软件方面的发展包括客户机服务器体系结构、关系数据库技 术、具有图形用户界面( g u i ) 、面向对象技术、开放和可移植性、第四代语言( 4 g l ) 和用户开发工具等。 在全球范围内比较著名的e r p 软件有德国s a p 公司的产品。它在管理功能上, 共有1 2 个系统模块,覆盖了企业供应链上的所有环节,能帮助企业实现整体业 务经营运作的管理和控制。 3 ) s c m 系统 近年来,国际上越来越多的著名公司开始在公司内部设立了一个供应链总经 理的职位,由这位经理来负责公司的供应链管理s c m 。这项措施显示了供应链 管理s c m 在公司的重要地位。 由于现代企业的经营方式走向集团化,而跨国集团的出现,又使企业的各个 部分在地理位置上相互分隔的现象更多,这样就使得企业活动变得更为复杂,而 对于那些小公司来说,为了改善对客户得服务、降低成本、提高质量,企业活动 也就变得复杂起来。这中间需要对不同客户使用不同的发货、付款以及销售方式: 有多个销售代理商;多级分销中心;多级仓库:多个生产工厂;多个供应商提供 不同的产品和价格。这样,就使企业从采购、库存、计划、制造、销售得内部管 理有必要扩展至物料供应、协作加工、陪送服务以及商业流通等外部管理。经营 活动也就形成了一个由“供”至“需”的一环紧扣一环的一条供应链。它包含了 商品和信息从供应商到最终客户的所有流动过程。 在供应链上的供应商、制造商、批发商、零售商和消费者之间,伴随着物流 1 4 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 的发生而形成了大量复杂的信息流及必要的资金流,而这些企业相互之间同时又 建立了利益共享的伙伴关系,它们各自所建立的计划将纳入整个供应链的计划之 中。供应链形成了一个个包含制造企业在内的更高层的大系统。无论是供应商还 是制造商、批发商和消费者,从个别来看,它们都是个个的孤岛。但从整体来 看,它们又都是供应链这个大系统中某一个子系统。这些子系统之间关系密切, 利益相连,优势互补,形成了增值的供应链,将众多复杂的企业及其部门简单地 通过电子商务系统连接起来,形成企业内部、企业和供应商、企业和客户之间通 过三层体系结构而紧密的集合。以提供快速的信息交流、快速的响应企业内部运 作变化和客户需求变化,加强资源和成本控制。 s c m 管理软件主要分供应和需求管理、物料管理和财务管理三个功能模块。 供应和需求管理是对不同地点的供应商、客户及内部供求信息的管理。例如对销 售订单、发票、采购订单、进货进度表等的管理。无论是集中销售集中采购方式 还是集中销售分散采购方式,它们的信息都可以通过电子数据交换e d i 实时的 进行传送。物料管理是对制定物料计划、经营计划、库存管理和制造过程中的物 料清单、加工单、制造订单、主生产计划、物料需求计划、能力需求计划的信息 进行管理,并能协调多地点的生产计划。财务管理是对成本控制、现金流量预测, 合并及保证供应链中不同点之间的通讯的标准化软件。 3 3 、关于本文的研究 多流程系统就是由多个流程组成的系统。但在多流程系统中,流程不是简单 的叠加。系统中的流程不应该是完全独立的,而应该存在流程间的交互动作,并 通过这些交互实现功能增值。例如在前文所示的电星商贸系统中,单独运行c s m 流程可以实现客户服务登记处理等功能,而单独运行c r m 流程可以实现企业总 机功能。当两个流程同时运行时,可以通过两个流程之间的交互实现对客户身份 的自动识别,在客户服务过程中直接呼叫客户等。这些功能都不是一个流程可以 直接实现的,而必须通过多流程的合作来实现。 以本文前面所示的电星商贸系统为例,其中c r m 模块和c s m 模块的整合 主要解决了以下问题: l 、呼叫中心的硬件繁多,能否屏蔽底层通道控制,与业务应用分离,这样既 利于业务系统的集成,又利于系统规模的扩展; 2 、除了传统的电话渠道,怎样把用户其他渠道的请求整合到呼叫中心; 3 、用户的请求多种多样,怎样根据用户的请求找到最合适的服务人员,尽量 减少呼叫中心内部流转的次数; 4 、管理人员怎样去监控呼叫中心工作人员的工作状态,实时了解整个呼叫中 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 心的运营情况: 5 、怎样对于呼叫中心的历史数据进行分析,包括话务的繁忙程度、座席的业 绩等等; 6 、作为一个联系中心,不仅被动处理用户的请求,怎样使呼叫中心变成更加 主动的联系中心,以便做一些营销、满意度调查的活动; 7 、提高整个呼叫中心的工作效率,可以实现屏幕弹出和语音,数据的同步传 输。 而在以上所列的这些功能中,很多都需要c r m 模块和c s m 模块相互协调 合作才能够完成。 当前在不断发展的全球化趋势下,要求不同的组织之间更加紧密地合作,要 求不同组织的作业流程跨越原有组织的界限相互协作。这都涉及到了各个组织模 块间交互协调的问题。 在传统的软件开发过程中,很少注意到把交互过程独立出来的重要性。通常 的做法是各个功能模块的交互部分整合在功能模块的内部流程中。在一个规模庞 大、功能复杂繁多的软件系统中,可能要划分许多的功能模块。我们设计划分这 些功能模块的依据是其在业务逻辑上的完整性,划分这些功能模块的目的是使其 具有独立的运转执行过程。但是在这样的系统中,要实现整个系统完备的业务功 能,各个功能模块之间不可避免的会存在交互的需求。在这种情况下,交互对一 个功能模块来说就属于额外的负担,如果在设计时和其原本的处理过程集成在一 起,会造成以下缺点: l 、系统结构不清晰。交互过程和流程的业务逻辑处理功能混杂在一起,很 难区分。 2 、增加业务处理的负担。流程不能专注于业务逻辑功能的处理,还要参与 繁重的交互过程处理。 3 、软件系统可维护性、重用性差。采用传统的设计方法,由于结构上的不 清晰,一旦系统各个功能模块的交互过程发生变化,可能要造成系统流 程功能的重新设计,就必须对程序的逻辑结构进行修改,在修改的过程 中很容易为系统引入新的错误,从而引起代码大面积的更改。使程序的 可维护性大大降低。 因此,系统中流程的交互行为进行深入研究是具有实际意义的。本文主要致 力于以下几方面的研究: 1 、交互行为的形式化描述。在软件系统设计中,设计者通常采用线性程序 设计方法,例如i f m e n e l s ei f t h e n 的结构,或者s w i t c h ( 条件) : c a s e :;c a s e 结构。这种方法把流程的一些相对独立的交互信息 隐式地编写在程序代码中,这使得其控制的代码分散到整个程序中,不 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 和于对交互过程进行监控管理。本文引入人工智能的逻辑表示方法对交 互的行为过程进行形式化的描述,有利于克服系统设计过程中出现的以 上问题。 2 、采用交互中间件的软件系统架构。中间件的概念和产品起源于在二十世 纪九十年代初期,九十年代中期开始风行起来。那时候的中间件顾名思 义被定义为“介于应用和操作系统之问的系统软件”。现在中间件的概念 已远远超出了其最初的范围,各种中间件的诞生满足了企业应用软件系 统的跨平台、安全性、稳定性、完整性和信息可靠传递的需要。本文在 软件系统设计架构中,引入交互处理中间件,最大化的使系统的交互行 为与功能的逻辑处理过程相分离。 3 、交互行为与流程接口的处理方法。本文在交互中间件与流程接口的处理 问题上,引入了s t r i p s 算子,通过a d d l i s t 和d e l e t e l i s t ,使各流程自动 感知下一步的行为动作,从而简化了接口的设计。 中山大学硕士学位论文多流程系统中漉程交互模型( f c m ) 的研究与应用 第4 章多流程系统交互的表示方法 4 1 、多流程系统交互的一般过程 在一个软件系统的实际操作中。各流程间的交互过程及交互形式多种多样, 分类的标准也有许多种。 以图4 1 所示流程f 1 和f 2 为例,按照参与交互流程被影响的程度可以把交 互过程分类如下: 图4 1 、流程结构图 1 、仅限于数据流上的交互 如图4 一l 所示,交互之前流程f 1 按照s l s 2 一s 3 一s 1 的顺序运行。假如流 程f 2 运行到s 2 时,需要从f 1 获得变量x 的取值才可以继续运行下去。此时 f 2 向f l 发出给x 赋值的交互请求。f 1 传递回x 的值,同时继续其s 卜- s 2 一s 3 一s l 的运转过程。在这样的一个交互过程中,被请求交互的一方在交互前后其 原有的运行状态没有发生改变,交互的双方只是在某些变量参数上进行了值的传 递,这样的交互过程属于仅限于数据流上的交互。 2 、改变原有流程的运行状态 如图4 1 所示,交互之前流程f l 按照s l s 2 一s 3 一s 1 的顺序运行。假如流 程f 2 运行到s 2 时,检测到需要流程f 1 执行某一功能,于是发出交互信息给 中山大学硕士学位论文多流程系统中流程交互模型( f c m ) 的研究与应用 f 1 ,而f 2 可能等待f l 返回的执行结果或者继续其s 1 一s 2 一s 3 一s 1 的运行流 程。f 1 接收到来自f 2 的交互请求后,当其运行到s 1 的时刻,改变原有的运行 状态,开始执行s 1 一s 4 一s 5 一s l 的运行过程,并将运行成功或者失败的情况通 知f 2 。这样的一个交互过程中,流程f 2 只是要求f 1 执行某一功能,而f l 因为 f 2 的交互请求而改变了其原有的运行过程。 3 、以上两者的综合 这种交互情况是以上两种交互情况的综合。假如在2 中,流程f 2 除了要求 f 1 执行s 1 一s 4 一s 5 一s 1 这一新的功能之外,还要求把这一执行过程中产生的变 量y 的值返回,f 2 得到返回赋值后,可继续进行其s l s 2 一s 3 一s 1 的运行过 程。这种交互就是综合性的交互。 总结以上几种多流程系统的交互形式,可以把流程之间的交互过程一般化为 个三元组:( s o u r c e ,0 p l i s t ,t a r g e t ) 。 其中s o u r c e 是发起交互过程的流程的集合,它可以只包括一个流程,也可 以包含若干流程。t a 昭e t 是为完成s o u r c e 所请求的交互任务所涉及参与除s o u r c e 所含流程之外的所有流程的集合。o p l i s t 是设计交互过程的一系列推理过程的集 合。其中涉及到交互请求、交互参数对流程现在运行状态产生的影响以及这种影 响的实现方式。 由交互过程的一般化模型可看出,若要对流程间的交互过程进行形式化描 述,首先要解决的是o p l i s t 的形式化问题。这其中包括了交互过程对s o i r c e 以 及t a 曜e t 流程的影响,影响的形式,参数的传递方式,流程的描述方法等一系 列建模过程。 4 2 、交互过程形式化表示的逻辑基础 现代逻辑创始于1 9 世纪末叶和2 0 世纪早期,其发展动力主要来自于数学中 的公理化运动。尽管存在着许多争议,但是事实上几十年来,逻辑方法一直是计 算机科学,尤其是人工智能研究中的主要形式工具f l9 1 。著名的计算机软件设计 大师戴克斯特拉( e w d u k s t m ) 曾经这样说:“我现在年纪大了,搞了这么多年 软件,错误不知犯了多少,现在觉悟了。我想,假如我早年在逻辑上好好下点功 夫的话,我就不会犯这么多错误。不少东西逻辑学家早就说了,可我不知道。要 是我再年轻2 0 岁的话,就要回去学逻辑。,【2 0 1 我国著名的数理逻辑学家莫绍揆 教授甚至说得更加直截了当:“事实上,它们( 程序设计) 或者就是数理逻辑, 或者是计算机语言书写得数理逻辑,或者是数理逻辑在计算机上的应用。确实, 中山大学硕士学位论文 多流程系统中流程交互模型( f c m ) 的研究与应用 从语义学、程序设计语言、程序规范理论到程序验证理论,从数据库理论、知识 库理论到智能系统,直到机器人的研究,所有的领域或多或少都与逻辑学有着若 干联系。从本质上来说,计算机科学就是要用计算机来模拟人脑的行为和功能, 使计算机成为人脑的延伸。而对于人脑的行为和功能的模拟,实质上就是模拟人 的思维过程。正是计算机科学所追求的这个目标,逻辑学这个以研究人的思维规 律和法则的学科,它的研究方法和研究成果自然而然地成为计算机科学研究所选 用的工具。 所谓形式化( f o f 强a l j z a t i o n ) 就是彻头彻尾的“符号+ 抽象公理化”【2 。形 式化是现代逻辑学的基本特征。形式系统( f o m a ls y s t e m ) 是现代逻辑学的重要 工具。计算机科学模拟人的思维同样是从语言开始的。与语言相关的论题是贯穿 计算机科学领域的重要问题,许多的领域与语言相关,例如,软件领域的程序设 计语言和形式语义学,人工智能领域中数据和知识的表示和推理,自然语言处理 中的计算语言学等等。总的来说,形式化和基于形式系统的推理是计算机科学和 人工智能领域的基本问题。大多数智能行为的高级形态需要对于知识进行直接的 表示,而形式逻辑就是对知识进行形式化表示的重要方式。 4 2 1 、情景演算及其逻辑化描述 在计算机科学的许多领域,“动作”( 或称为行为、操作等等) 是一个基本 的概念。例如在数据库理论中,对数据记录的“删除”、“插入”以及“修改”等 等就是人们对数据库经常采取的一些操作( 动作) ,这些操作对数据库来说无疑 是最基本的而且也是最重要的。与“动作”的概念相伴随的是所谓“进化”的概 念。对于诸如数据库中的数据的某种操作以及多主体系统中某个主体的一个行为 这样的动作,对于数据库和主体的信念都产生一定的效用,其结果就是数据库的 更新和主体知识和信念的修改,也就是所谓数据库的进化和主体知识和信念的进 化。 情景演算及其相关理论田m 2 们矧2 6 3 是目前广为采用的行动推理形式框架 。在计算机科学的许多领域,“动作”( 或称为行为、操作等等) 是一个基本的 概念。蚓“”。情景演算是分析和研究动作概念的最常用的工具之一。”。”。它是 一种状态、动作和动作作用于状态的结果的谓词演算的形式化。 下面通过经典的积木世界的例子引入情景演算9 ”。假如把图4 1 所示的状 态标识为s o 。用一阶谓词演算,可以用下面的公式描述s 0 : 0 n ( b ,a ) 八0 n ( a ,c ) 八o n ( c ,f 1 ) 八c l e a r ( b ) 八 2 0 中山大学硕士学位论文 多流程系统中流程交互模型( f ( m ) 的研究与应用 图4 2 :积木世界的例子 在情景演算中,往往用常量符号( 如s 0 ,s l ,) 、变量或者函数表达式表 达客观世界的状态。由一些原子合式公式指称现在状态间的关系,这些原子合式 公式被称为流( f l u e n t ) 。例如用公式可以构造一个在状态s 0 中为真的句子: 0 n ( b ,a ,s 0 ) o n ( a ,c ,s o ) 0 n ( c ,f 1 ,s o ) c l e a r ( b ,s 0 ) 为了表示动作及其结果,可以采取下面的步骤: 1 、把动作具体化。即用常量、变量或者函数表达式表示。在情景演算 中,一个动作被看作为动作涉及的实体的函数。例如,在积木世界 的例子中,考虑把积木b 从a 移到地板的动作,可用m o v e ( b 。a , f 1 ) 表示。 2 、用常量函数d o 把动作和状态映射到状态。例如:d o ( a ,6 ) ( a 表示一个动作,6 表示一个状态) 表示通过执行a 把状态6 映射 到结果状态。 3 、用合式公式表示动作的结果。例如对 o n ,m o v e ) ,合式公式是: 【o n ( x ,y ,s ) 人c 1 e a r ( x ,s ) c l e a r ( z ,s ) ( x z ) o n ( x ,z ,d o ( 1 n o v e ( x ,y ,z ) ,s ) 【0 n ( x ,y ,s ) c l e 盯( x ,s ) c l e a r ( z s ) ( x z ) _ o n ( x ,y ,d o ( m o v e ( x ,y ,z ) ,s ) ) 】 在上面所述步骤3 的两个公式中,第一个描述了一个动作怎么使一个流为 真,称作正效应公理。第二个描述一个动作怎么使一个流为假,因而被称为负效 应公理。在这个例子中,一个效应公理的先行条件描述了某一动作执行必须满足 的前提条件( p r e c o n d i t i o n ) ,结果描述了该动作被执行之后,流是如何被改变 的。 在积木世界的例子中,并不是所有关于状态d o ( m o v e ( b ,a ,f 1 ) ,s o ) 为 真的语句都能从效应公理中推导出来。这是因为动作只有“局部”影响,故留下 很多流没有改变。为了对这些恒定不变的状态做推理,我们为可以每个动作和每 个流提供一对框架公理( f r a m ea x i o m ) ,它在动作前后保持不变。 例如,( m o v e ,o n ) 的框架公理如下: o n ( x ,y ,s ) c l e a r ( x ,s ) c l e a r ( z ,s ) ( x z ) ( y z ) c l e a r ( y d o ( m o v e ( x ,y z ) ,s ) ) 2 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论