第一章 绪论... 3
1.1引言... 3
1.2课题研究的背景与意义... 4
1.3国内外研究现状... 5
1.3.1过程描述与规划的研究... 5
1.3.2基于Petri网的过程建模研究... 6
1.3.3工作流过程管理研究... 6
1.4 本文的研究工作... 7
1.5论文结构安排... 8
第二章 基于设计结构矩阵的设计过程规划... 9
2.1产品设计过程模型及特点... 9
2.2设计结构矩阵的基本理论... 10
2.2.1 设计结构矩阵的定义... 10
2.2.2几种类型的设计结构矩阵... 11
2.2.3数值设计结构矩阵(nDSM)和设计结构矩阵族... 12
2.3设计结构矩阵中耦合任务的识别及层次确定... 12
2.3.1 基于有向图的耦合任务识别... 13
2.3.2 设计结构矩阵规划的实现... 15
2.3.3基于耦合任务集的任务执行顺序的确定... 17
2.3.4 任务规划工具... 19
2.4 减速器设计过程的任务规划... 20
2.5 总结... 22
第三章 基于着色petri网的设计过程仿真与分析... 23
3.1 petri网的基本理论... 23
3.1.1 petri网的基本概念... 24
3.1.2 Petri网的基本性质... 26
3.1.3 Petri网的分析方法... 26
3.2 高级Petri网... 27
3.3 基于CPN Tools的设计过程分析与仿真... 29
3.3.1 CPN Tools简介... 29
3.3.2设计过程的变量及参数设置... 29
3.3.3 基于CPN的仿真... 31
3.3.4仿真结果分析... 32
3.4本章小节... 34
第四章 基于JBPM的产品设计工作流... 35
4.1 工作流基础... 35
4.1.1工作流基本概念和定义... 35
4.1.2 工作流管理系统的体系结构... 36
4.1.3 主要工作流产品... 37
4.2 JBPM工作流... 38
4.2.1 jboss jbpm结构与配置... 38
4.2.2 流程定义语言JPDL. 39
4.2.3 jbpm的调度... 43
4.3任务分配与流程执行... 44
4.3.1任务分配:... 44
4.3.2 流程实例的发布与执行... 44
4.4 总结... 46
第五章 产品设计过程工作流系统的设计... 47
5.1 需求分析... 47
5.2数据库设计... 47
5.3 程序结构及运行环境... 48
5.4设计过程工作流... 50
5.4.1 相互依赖的设计流... 50
5.4.2分布式网络设计体系结构... 51
5.4.3 基于AJAX技术的程序框架... 52
5.4.4逻辑层和表现层设计... 54
5.4.4 JBPM中流程的数据保存... 57
5.5小结:... 58
第六章 系统实现及运行实例... 59
6.1系统设计原则... 59
6.2 页面结构... 59
6.3 产品设计过程原型系统实现... 60
6.3.1 系统登录... 60
6.3.2 布置设计任务... 61
6.3.3 参与者进行网络协同设计... 62
6.3.4 查看设计结果及流程图... 64
6.3.5 最终结果处理... 65
第七章 总结与展望... 67
7.1总结... 67
7.2 展望... 67
参考文献:... 68
致 谢... 70
第一章 绪论
1.1引言
随着科学技术和经济的飞速发展,企业面临着前所未有的机遇和挑战。一方面市场竞争的激烈给企业带来了考验(如产品的复杂性增加、生命周期和交货期缩短等);另一方面,近年来信息技术的日益成熟和广泛应用,使得与计算机技术紧密关联的产品设计与制造的新思想、新概念、新方法和新工具不断涌现,为企业新产品的研发提供了前所未有的机遇和挑战[1]。同时也促成了新的产品开发组织形式的诞生,这些新的开发组织形式给组织管理带来了一系列问题。为了面对这一变化,企业有必要对其产品开发项目进行规划,并对产品开发过程进行建模与仿真。同时,传统的管理方式已经起来越不能满足企业发展的需要,这就迫切要求企业改善自身的管理模式,对企业的业务过程进行计算机化管理。
1.2课题研究的背景与意义
先进的电脑技术已经彻底改变了产品的设计和制造,产品的三维模型可以直接呈现在虚拟的计算机环境中,新型的制造技术如CNC(计算机数字化控制技术)和机器人技术的进步,可以更加灵活的设计和制造出一系列高性能、高质量的产品。另外,网络技术的进步可以更加方便的联系和组织处于世界各地的人和企业[2]。然而虽然个人的计算机配置越来越高,网络的速度越来越快。但现在的做法是设计师丢掉了图板,取而代之的是各种专业软件,网络协同设计配合的做法也只是停留在用共享来代替软盘的层次,所有人的设计内容都在指向自己的任务,而不是让整个设计团队以最快的速度完成设计任务。
产品开发过程建模与仿真就是在产品开发之前对产品开发过程进行描述,加以规划、优化、仿真、分析,模拟出产品开发过程中的信息流动,找出产品开发过程中的瓶颈,加强产品开发之间的协调,从而最终提高产品质量和开发效率,降低产品开发成本。
设计结构矩阵(DSM)是一种用矩阵来反应任务之间关系(信息流)的方阵,通过行和列可以清晰地描述项目所有任务之间信息流的关系[3]。并且可以利用DSM来描述产品设计的复杂过程,对这种复杂的过程进行管理和规划,从而提高对项目信息流的管理程度,更加合理安排任务执行顺序,优化项目进度计划,缩短项目周期。
Petri网是一种面向图形的建模语言,Petri 网模型对建模对象系统可以有详细的描述,也具有很强的动态分析能力。通过Petri 网方法对产品设计系统进行仔细深入分析,可以避免由于建模错误而需要花费很高的代价去更正的危险。Petri 网模型可以借助计算机模拟,也可以借助于更严密的数学推导方法。
WfMC(工作流管理联盟)给出的工作流管理系统的定义是:工作流管理系统是一个软件系统,它完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行。前面提到的DSM和Petri网都只是建模与分析仿真方法。而只有通过工作流管理软件,才能使信息流动起来,才能使流程部署到网络,真正实现工作流的执行 。
1.3国内外研究现状
1.3.1过程描述与规划的研究
目前关于产品设计过程管理的研究范围比较广,也没有统一的方法。特别是过程建模方法,更有各有特色。甘特图(Gantt Chart)方法、关键路径法(CPN,Critical Path Method)和计划评审技术(PERT,Programe Evaluation And Review Technology)都是比较传统的进行科学过程管理的计划模型,这些方法用来对过程进行静态的分析与规划。关键路径法(CPM)和计划评审法(PERT)不允许设计过程出现循环情况(或将循环活动视为一个新的活动),因而不支持设计过程的迭代性[4]。Shin和Leem采用IDEF方法进行跨企业的商业过程建模,Kima[5]等考虑到IDEF系列方法和统一建模语言方法和UML(Unified Modeling anguage,UML)的相似性,结合IDEF和UML方法对信息企业进行了广泛的建模研究。但是UML方法和IDEF0方法一样都是一种描述方法,并不是一个好的定量分析方法。这些方法主要是基于信息的表示和描述,是一种静态的定性过程模型,缺乏数学的严密性和较好的分析手段,使得使用IDEF0方法并不能分析产品开发所关心的产品开发周期、成本,资源使用情况等问题。设计结构矩阵能有效的表示设计过程中的反馈与迭代,为理解和分析产品开发过程提供了一种简洁并可视化的方法。虽然目前对于产品开发过程的重用改进尚无通用的理论或方法,但是普遍认为对用设计结构矩阵任务进行分析和重组能有效减少设计过程中任务的复杂程度[6]。
很多学者基于DSM从不同角度对产品开发过程进行了研究。王爱民等提出了基于DSM的产品族设计中核心平台的确定和模块化设计方法,基于任务执行顺序权重分析的产品族开发顺序规划[7];Chen等基于数学DSM讨论了并行工程过程中相关任务组的分解情况[8];Krishnan等对如何简化协同设计过程之间的迭代问题进行了讨论,并提出了一种基于模型的产品重叠开发过程管理方法,对耦合的活动进行重叠开发的条件进行了分析[9]。[10]提出一种称为Design Roadmap的建模方法,并用它建立了协同过程的依赖关系模型框架;[11]运用有向图[Directed Diagram ,DD]和设计结构矩阵描述设计活动间的依赖关系,提出了设计过程重组的方法;周雄辉等在模糊排序算法基础上依据协同的并行度和耦合性测定提出了优化的产品协同设计任务算法[12]。
从上述文献可知,对过程描述和规划的方法采用DSM比较直观,并且能很好的进行设计过程规划,进行耦合任务识别,最终可以方便的进行重组及排序。所以本文采用DSM的方法进行设计任务建模与规划。
1.3.2基于Petri网的过程建模研究
1962年联邦德国的Carl Adam Petri 在他的博士论文《用自动机通信》中首次使用网状结构模拟通信系统,此后这种模型以Petri网为名流传。基于Petri网的过程建模与应用研究的比较广泛。因为Petri网已经发展的比较成熟,对传统的Petri网已经有了相当改进,其中有Petri网的颜色扩展、时间扩展和层次扩展多种形式,所以可以实现对产品开发过程任务间关系的确切表示。并且Petri网是图形化的,容易理解和使用。同时,它也基于坚实的数学基础,支持定量化分析和层次化分解,且有很多有效的分析技术。基于Petri网的工作流分析方面,主要存在两种类型的工作流分析方法:定性分析和定量分析。前者主要关心所定义过程在逻辑上的正确性,以消除异常结构,比如:“死锁”(安全被锁住,不能继续执行)和“活锁”(案例被粘住,进入死循环)。定量分析主要考察所定义过程的性能,其重点在于建立一些性能指标,比如平均完成时间、服务水平和能力利用率等[13]。
Petri网方法最初在工程领域的应用是研究机械制造过程建模[14]。Aalst等人将Petri网方法引入到工作流过程建模中,并对基于Petri网的工作流建模方法、工作流性能分析技术与过程改进方法、工作流管理系统功能与体系结构进行了综合的阐述[13]。Zhao和Jin[15]用有色Petri网对协同设计过程模型进行了研究。Li和Jin[16]用简单Petri网建立协同设计过程模型,考虑了协同设计过程中的多个特性和因素。由于受Petri网本身特点的局限性,模型不能描述复杂的协同设计过程,黄洪钟等[17]提出用CPN建立协同设计过程模型的思路和方法。以上这些研究工作主要从协同设计过程模型的建立上展开,然而在过程的性能分析上,尤其是定量的或过程动态的性能分析上做的很少。
1.3.3工作流过程管理研究
当前分布式工作流技术的研究日益受到人们的重视,许多国外大学和研究机构都开展了很多这方面的研究项目。其中比较著名的佐治亚大学计算机系研究开发的具有自适应能力的工作流管理系统-Meteor(managing end-to-end operation)、IBM公司的Almaden研究中心研制的基于持久信息队列(MQ Series)的分布式工作流管理系统-Exotica/FMQM(FlowMarkon message queue manager)等等[18]。国内主要有国家CIMC(计算机集成制造系统)工程研究中心研制的CIMC应用集成平台的CIMFlow工作流管理系统[19]和国防科技大学研制的工作流集成管理系统-YH-WIMS[20]。
工作流系统能实现业务过程管理自动化,近年来在银行、商业、保险等领域得到广泛应用。目前形成以Jboss JBPM, Shark和Osworkflow为代表的三大主流工作流系统[21]。Jboss JBPM是一个灵活可扩展的工作流管理系统,JBPM基于UML的状态图和活动图来定义流程,已经加入JBOSS组织。Shark是完全基于WFMC规划规范的,使用XPDL作为流程定义语言。Osworkflow最大特点是灵活,具有相当大的韧性。虽说产品开发过程模型与商业工作流模型有很大区别,但是产品开发过程建模也可以借鉴相对成熟的工作流技术的一些方法。本文就是通过开源的工作流Jboss JBPM构建自己的工作流管理系统,将它应用到产品协同设计中。
1.4 本文的研究工作
尽管很多研究者对产品协同设计过程进行了一系列的研究,并且在产品设计中进行规划、协调、优化中也起了一定作用。但它们都为了解决特定问题而提出来的,比如CPM/PERT方法、IDEF系列方法、DSM方法以及经典的Petri网方法等等都有各自的优点,并不能确切完全地表达现代产品设计过程。并且这些工具与方法,只是用在过程建模方面,只能对过程进行描述、分析、验证和仿真,想要把过程部署到网络,想要通过这个过程模型使处于任何地方的协作者都能参与到这个过程中,还需要另外的实现工具。
本文首先通过设计结构矩阵的方法,对设计过程进行规划。由于产品设计表现为设计过程的参数化,即对各个设计模块进行零件参数化表达,那么设计过程的信息流即是参数流的过程,由于设计过程中参数较多,参数依赖也相对比较复杂,很容易出现耦合情况。本文通过设计结构矩阵(DSM)对这种复杂的过程进行耦合任务识别、使得把耦合的任务集与独立的任务集分开,以及确定执行执行顺序。方便对这种复杂的过程进行管理和规划,实现设计过程的优化。
在工作流技术的应用中,工作流建模是一个既复杂又易出错的过程。如果工作流模型在投入运行后被发现存在错误,则修复错误的代价会更高。所以在工作流创建阶段对工作流模型进行分析与仿真是必要的。由于Petri网有坚实的数学基础,很强的动态分析能力。至今发展了多种形式的高级Petri网形式,如时间Petri网,层次Petri网,着色Petri网,还有面向对象的Petri网等等,其表达能力越来越强。并且Petri网拥有多种分析技术,可以分析模型的各种特征,如可达性、死锁等 [1]。从计算机分析方法角度出发,Petri网拥有很多成熟的软件支持工具,可以直接用这些工具进行仿真分析,检测死锁冲突,还可以进行时间分析。本文即通过设计结构矩阵对设计过程进行规划,然后用Petri网的方法进行仿真分析。主要用到Petri网的软件支持工具CPN tools对过程模型进行自动化仿真。
工作流技术是计算机支持的工作(CSCW)的一部分,现在工作流技术已经被广泛用于电子商务、电子政务、工业制造等领域,极大地加快了业务过程的处理速度,提高了生产组织水平和工作效率。由设计结构矩阵和Petri网理论可以对设计过程进行规划、分析与仿真,本文就由这些规划并分析好的设计过程,利用工作流建模工具,把这一设计过程用工作流来实现,将实际运行过程转化为可处理的工作流模型,并进行工作流任务分配和流程调度,完成工作流的自动执行。用户与应用之间通过工作流任务管理器完成与工作流用户和应用软件的人机交互和数据传递[22]。
1.5论文结构安排 本文主要通过设计结构矩阵对设计流程进行规划和解耦,然后用Petri网的方法进行仿真分析,最后把整个设计流程部署到网络。 |