《全国计算机软件新技术研讨会暨徐家福教授八十华诞庆贺活动》由会员分享,可在线阅读,更多相关《全国计算机软件新技术研讨会暨徐家福教授八十华诞庆贺活动(23页珍藏版)》请在金锄头文库上搜索。
1、全国计算机软件新技术研讨会暨徐家福教授八十华诞庆贺活动 郝克刚 西北大学计算机科学系(2003.12 南京)“过程” 新论1“过程”:计算机界早期的话题n谈及过程,人们都知道这是计算机界早期的话题。n早期的程序设计语言都是基于过程的。特别是E.W.Dijkstra指出goto语句有害而引起的结构化程序设计,把程序设计中的过程的研究推向了高潮。n形式语义中专门有过程语义,形成单独的一派。n关于过程的研究在计算机界曾风靡一时,研究热潮早已成为过去。基于过程的语言已逐渐被对象式语言所替代,指称语义和逻辑语义也进一步占了上风。很长时间已很少有人谈及过程。2西北大学计算机科学系软件工程研究所“过程” 新
2、论n但是,情况有变。n随着 Internet 的普及和社会信息化进程的加速,一种称之为新世纪软件杀手的软件BPM(业务过程管理系统)出现了。n该软件要求有一种过程描述语言。要求对业务过程进行详细地、严格地描述。利用 Internet 技术实现:在设定的时候,由设定的人员作设定的事。n业务过程不同于程序中的过程,它要求突破结构化的束缚。他的并行机制也超过了CCS和CSP的模式。nPetri Net 是一种很好的模型,但用于描述业务过程,还需作进一步的扩展。n总之, BPM的出现,引起了新一轮“过程”研究的热潮。呼唤 “过程”的新论。3西北大学计算机科学系软件工程研究所讲述大纲:n突破结构化的束缚
3、n引入 Petri Net 的思想和机制n分区解决方案n复杂的多流问题n研究所相关工作简单介绍4西北大学计算机科学系软件工程研究所突破结构化的束缚n所谓结构化,即过程是由几种结构形式,如顺序、分支、循环、并行等,由原始语句逐步构造而成。 n但是业务过程常要突破结构化的束缚。例如典型的审批公文的例子起草1起草2审查1审查2n这在结构化的循环结构中是不允许的,但是在业务过程的设计中却大量用到。5西北大学计算机科学系软件工程研究所Petri Net 是一种很好的模型n非结构化,并行,竞争,同步, Place Transition Token6西北大学计算机科学系软件工程研究所Petri Net 是一
4、种很好的模型n非结构化,并行,竞争,同步, Place Transition Token7西北大学计算机科学系软件工程研究所Petri Net 是一种很好的模型n非结构化,并行,竞争,同步, Place Transition Token8西北大学计算机科学系软件工程研究所Petri Net 是一种很好的模型n非结构化,并行,竞争,同步, Place Transition Token9西北大学计算机科学系软件工程研究所Petri Net 是一种很好的模型n非结构化,并行,竞争,同步, Place Transition Token10西北大学计算机科学系软件工程研究所Petri Net 是一种很好
5、的模型n非结构化,并行,竞争,同步, Place Transition Token11西北大学计算机科学系软件工程研究所Petri Net 是一种很好的模型n非结构化,并行,竞争,同步, Place Transition Token12西北大学计算机科学系软件工程研究所在过程定义语言中引入 Petri Net 的思想和机制是一重大进步。n工作流管理联盟 WfMC (Workflow Management Coalition) n工作流过程定义语言 WPDL (Workflow Process Definition Language)nWPDL起草者中并没有多少人了解Petri Net的理论。因
6、而,从WPDL中不难看出结构化模型的影响和引起的混乱。n在过程定义语言中引入 Petri Net 的思想和机制是一重大进步。 n联想:Turing Machine 理论对计算机诞生的影响。13西北大学计算机科学系软件工程研究所Petri Net 用于描述业务过程,还需作进一步的扩展。nPetri Net没有直接描写数据的机制。于是,在描写控制结构上就不能直接刻画分支结构。关于分支,它只有相应的竞争机制,是把分支条件的确定放在了系统的外面,系统不能直接描写。 n信牌驱动式工作流计算模型。信牌: 是中国古代官府执行任务的凭证。 计算机研究与发展2000, (37) 12n数据:变量,对象,文件,数
7、据库项。C1C2C3活动1信牌箱3信牌箱2信牌箱114西北大学计算机科学系软件工程研究所WPDL中的JOIN语义问题AND-JOINAND-SPLITAND-SPLITb2b1a2a1n WPDL中的 AND-SPLIT和 AND-JOIN 语义定义不够严格。15西北大学计算机科学系软件工程研究所WPDL中的JOIN语义问题nAND-JOIN 被定义为与进入此活动的转移相关的并行线程的合并,同步合并线程的个数依赖于前面的 AND-SPLIT转移条件的实际执行结果。n这里所说的“AND-JOIN 前面的 AND-SPLIT ”是否有固定的所指?如何求出这些 AND-SPLIT?此时,该AND-J
8、OIN 应该按什么规则计算输入转移的个数以表明它可进入执行状态?等等存在一系列问题。n 如果用限制 SPLIT 和 JOIN 的类型严格配对(在 WPDL 的说明中选 FULL-BLOCKED )的方法解决这个问题,自然很容易,但却大大地限制了它的实际应用。 16西北大学计算机科学系软件工程研究所真假信牌执行规则 条件为真时传真信牌,后面的活动真执行;条件为假时传假信牌,后面的活动假执行。a2a1b2b117西北大学计算机科学系软件工程研究所有些情况真假信牌执行规则不适用n问题的症结主要是真假信牌不能任意使用,如果不在一定的范围内,使用真假信牌就会产生不正确的结果。 零件2零件1合格不合格合格
9、不合格组装18西北大学计算机科学系软件工程研究所分区解决方案n为了保持模型的充分表达能力,我们选择了两种规则综合使用的方案。把整个过程分为同步区和非同步区。真假信牌规则在同步区中使用,而真信牌在非同步区中使用。n同步区的定义。与 AND-JOIN 节点配对的聚焦点。由 AND-JOIN 节点与其对应的聚焦点所围成的区域被称为同步区。n计算聚焦点的算法,求相应的同步区的算法。n为使真假信牌规则在同步区中的正确使用,对同步区所作的必要限制。n“ WPDL中的JOIN 语义问题和分区解决方案” 计算机科学2003. 7(30)。 19西北大学计算机科学系软件工程研究所复杂的多流n多流是过程的实例在执
10、行中出现的一种现象:1.有两个或两个以上的活动同时(并行)执行,2.这种活动出现在过程执行的前后,多次执行(前后并行) 。n流水线是典型的多流策划评审起草20西北大学计算机科学系软件工程研究所多流引起的问题n建立“流数据”n多流的倒序 多流的同步 解决方案:设立流的 ID; 局部禁止多流。21西北大学计算机科学系软件工程研究所软件工程研究所相关工作 n信牌驱动式业务过程模型的研究。n非确定 Petri 网。小型微型计算机系统2003. 3(24)n过程管理系统异常处理和动态修改研究。 n业务过程管理系统中对事务处理的支持。n多服务器支持的分布式过程管理系统。n产业化。西安协同数码股份有限公司开发的SynchroFLOW中国电信市场,行业应用提供商22西北大学计算机科学系软件工程研究所西北大学计算机科学系软件工程研究所欢迎各位专家指教,谢谢!http:/210.27.37.253/kghao/23西北大学计算机科学系软件工程研究所