APP下载

基于有效性的动态版本管理研究

2010-04-11周晓烨沈建国

制造业自动化 2010年11期
关键词:文档动态有效性

周晓烨,赵 犁,沈建国,姜 斌

ZHOU Xiao-ye1,ZHAO Li2,SHEN Jian-guo1,JIANG Bin1

(1. 浙江香港科技大学 先进制造研究所,杭州 311100;2. 香港科技大学,香港 999077)

基于有效性的动态版本管理研究

A study on dynamic version management based on effectiveness

周晓烨1,赵 犁2,沈建国1,姜 斌1

ZHOU Xiao-ye1,ZHAO Li2,SHEN Jian-guo1,JIANG Bin1

(1. 浙江香港科技大学 先进制造研究所,杭州 311100;2. 香港科技大学,香港 999077)

版本管理是产品数据管理系统(PDM)实现产品全生命周期管理的重要内容。首先分析目前常用的静态版本管理的优势与不足,然后提出了PDM动态版本管理的系统框架,重点研究了版本变迁过程与基于结构有效性和版本有效性的动态产品结构模型,包括以时间和序列号为参数的有效性设计与计算方法,并通过相关实际案例进行验证。

版本管理;版本有效性;结构有效性;PDM

0 引言

PDM是用来管理所有与产品相关信息和所有与产品相关过程的技术[1]。发展至今,产品全生命周期管理(Product Life-cycle Management/PLM)已成为第三代的企业间PDM的代表思想和特征。产品全生命周期管理(PLM)管理的范围包括产品销售、产品规划、产品开发、产品设计、制定工艺过程规划、制定生产计划、生产制造、售后服务等阶段的数据和过程,覆盖了产品从创建到设计、制造、维护、作废整个生命历程。因此,PDM要管理产品信息的全部完整过程和数据,使企业各个部门——计划、开发设计、采购、生产、销售、服务维修——所有人员都能得到他们需要的数据和信息。而作为企业的统一数据源,PDM系统中的数据是具有高度动态性和复杂性的,随产品开发过程不断变化和完善。比如设计过程中,经常有多个设计工程师共同参与产品设计,复杂产品的设计可能涉及多个版本(数量级可达104~106)。任何信息的细微改动都可能对产品结构产生影响,导致产品设计版本的产生,这些信息变化包括零件、CAD模型、需求定义、制造工艺、工装等等。复杂的内部关系需要准确的版本控制,因此,版本管理是PDM中的基本模块及重要组成部分,对PDM的成功运作起着关键作用。

1 版本管理研究现状

目前与PDM相关的版本管理研究中,常见的版本管理模型为线性模型、树状结构模型和有向无环图模型[2]。这些模型根据不同的版本产生顺序和继承关系,对单一版本进行系统编号,并组织其结构以描述繁衍变迁的过程[3]。对应于版本在PDM系统工作流程中的工作、提交、发放和冻结状态,将版本区分为工作版本、提交版本、发放版本和冻结版本,通过版本状态的改变来反映管理对象的变化过程[4]。

PDM系统中,零部件与文档是版本管理的对象,其相互间的版本引用关系分为动态与静态两种。目前PDM系统较多采用的是静态方法。静态引用关系是指向确定的对象版本的,即上级部件的版本关联着的是下级零部件的某一具体版本,以及相关文档的某一具体版本[2]。静态引用关系适用于比较固定,变化较少的关联结构,其优点是结构关系和关联清晰明确,不存在可变性和二义性,并且逻辑简单,不需要大量判断和计算。而对于产品结构关联比较复杂且变动频繁的情况,静态引用关系则无法提供较好的解决方案。这是因为在静态引用关系中,一旦要对产品结构中的某一零部件进行修改,其所有相关的、或引用了该零部件的上层部件或装配集都要进行修改。修改自下而上,一直影响到所有使用的最顶层结构,产生骨牌效应(Revision Ripple)。这意味着大量的结构关系数据的产生,这些数据重复性大,冗余严重,查找过程大大影响系统效率。

为解决这类问题,动态引用关系被引入PDM版本管理。动态引用关系不指定关联的文档或下级零部件的详细版本,而是将文档或者零部件整体作为结构关联对象,使用时再根据规则计算出所需条件下的关联文档或下级零部件的具体版本。也就是在使用时再将动态版本关系转化为静态版本关系。动态版本的优势在于能够以单一的“通用”产品结构模型来描述整个产品系列,而改动也可以在被修改的文档或零部件本身内部解决而不影响引用关系。缺点则是使用前需要进行计算以获取准确详细的引用关系。

本文将建立贯穿于整个PDM全生命周期管理的动态引用关系版本管理框架,并重点分析版本变迁模型和基于有效性规则的动态产品结构模型。

2 版本管理系统框架

图1 产品的结构和描述

实现了PLM的新一代PDM以产品为中心和管理对象,可作为对产品全生命周期数据和过程进行有效管理的方法和技术的总称[5]。作为管理对象的数据信息包括产品结构、零部件信息、结构配置、文件、CAD文档、扫描图像、审批信息等。过程则包括对过程(生命周期、工作流程、审批/发放、工程更改等)的定义与监控。其中与版本相关的信息都可以体现在对产品结构的描述以及产品结构数据的处理过程中。产品结构的描述如图1所示,包括零部件结构、版本关系以及关联文档等重要信息。

产品结构数据的使用和处理贯穿于产品生命周期的各个阶段,因此版本管理需要与PDM系统的其它各个功能模块紧密结合,保证版本信息在流通过程中的一致性和正确性。版本的管理涉及多个功能模块的共同操作。详细关系如图2所示。

图2 版本管理与PDM其它功能模块的关联

文档管理和产品结构管理模块操作的是版本管理的对象——产品信息。文档管理和产品结构管理中创建的新的文档和零部件对象作为初始版本开始版本变迁过程。而设计过程中的检入、检出操作也是文档管理和产品结构管理模块中生命周期管理操作的重要组成部分。产品对象设计成熟稳定后,由工作流管理模块执行发布审核流程,判断版本发布的合法性。而发布后的可用版本在变更之前,需要变更管理模块执行工程变更过程,确定变更的可行性后,通过分配修订任务指导设计人员修订原发布版本,进行重新设计。发布后的产品零部件对象由零件族管理模块根据事物特性表分类集中,进行统一管理。项目管理模块则通过流程文件的状态与版本管理相结合。项目的关键文档作为流程文件进入版本管理后,必须经历完整的变迁过程。直至流程文件发布为可用,项目才能正式完结。此外,系统和权限管理通过系统参数设定和权限设定控制版本变迁过程的执行程度细节和执行人员范围。以上所有功能模块紧密结合共同作用,实现PDM系统中对产品对象数据和过程的全面管理。

3 版本变迁过程与基于有效性的动态产品结构模型

记录产品对象历程,维护其稳定性并作为进一步改进的基础,这些是版本管理的意义所在。产品在完整的生命周期中要经历不同阶段,包括设计、生产、销售、更改、维护等。每个阶段的各个具体时期,都需要一个(或多个)详细确定的产品结构来支持企业活动。设计和变更阶段的产品对象的每一个修改都可以作为一个小版本记录下来。当一个或一批相关对象经过各自多次修改,达到一个稳定状态时,可以发布为一个可用版本(大版本)。可用版本将产品的稳定状态固定保留下来,作为生产制造及后续企业活动的依据。需要对产品进行改进时,也可以从作为大版本的稳定状态出发,避免错误和重复劳动。要实现这样完整全生命周期中的版本的有效动态管理,合理的版本变迁过程和有效性规则是关键。产品信息经过变迁过程前期的一系列操作,随着版本的升迁和有效性的设定,逐渐搭建起完整的动态结构。之后以这一动态结构模型作为数据来源和信息基础,通过有效性规则的实时计算来获取准确产品信息,继续版本变迁过程的后续步骤,同时为企业活动各阶段提供相应数据和信息。本文这一部分将详细分析版本变迁过程和基于有效性的动态产品结构模型。

3.1 版本变迁过程

对应于生命周期各阶段,产品(包括文档和零部件)的版本的变迁要经历创建、提交审核、发布、变更修订等一系列过程,这一过程是非线性的,带有循环和反馈。图3描述了版本随产品对象操作的变迁过程。(用A、B、C……等英文字母表示发布版本编号R(大版本编号),用1、2、3……等阿拉伯数字表示小版本编号v。如B.3表示第二个发布版本在设计或变更阶段中的第三个小版本;C表示稳定可用的已发布的第三个发布版本。)用户创建的新对象进入公共电子仓库后,成为初始版本A.0 (R = A;v = 0)。设计人员将对象从公共电子仓库检出到个人工作区间进行修改设计,然后通过检入操作使修改好的新版本进入公共电子仓库。该新版本的大版本号R不变,小版本号自增v += 1。若干次检出修改后,对象设计完成,提交审核流程,等待发布审核。如果审核不通过,对象回到设计阶段,继续设计修改过程。如果审核通过,产品对象已经处于稳定状态,则执行发布操作,产生可用的发布版本R。发布版本进入后期的生产制造等阶段后,若有客户更改需求或产品改进要求,可以对该发布版本提出变更申请。通过变更审核流程的产品对象发布版本通过修订操作产生新的设计版本,该设计版本在原发布版本的基础上大版本号自增R += 1,小版本号v重设为1。修订版本重新进入设计——发布——变更的过程循环。此外,针对发布的可用版本还有冻结和废止两个状态。冻结可以保护固定的版本状态不被改动;而废止标示该版本有效期完结不能再被使用。

图3 版本变迁过程

以上是产品对象经历的完整版本变迁过程。该过程可以与第3部分中版本管理与PDM系统多个功能模块的操作关联相对应。通过这一过程,产品结构模型得以建立成型。

3.2 基于有效性的动态产品结构模型

产品结构中零部件之间的关系复杂多变,使用动态引用关系建立“通用”结构模型可以大大较少结构数据量。本文实现的动态产品模型是以有效性为基础的动态引用关系。有效性是一组范围参数,决定结构关系或版本在什么条件范围下参与构成产品结构。有效性分为结构有效性和版本有效性两种。上下级零部件之间在建立结构关系时设定结构有效性,用于判定该结构关系在什么情况范围下有效。下级零部件的每个可用版本在发布时设定版本有效性,用于判定什么情况下使用该零部件的哪个具体版本。通过结构有效性和版本有效性的选择和过滤,一个“通用”的产品结构模型可以在不同时间条件下衍生出变化多样的产品结构树,以适用于不同条件状态下的生产制造等后期企业活动。

有效性可以参考的规则条件有很多种,比如生命周期阶段(设计、样机、投产等)、时期、数量、批次有效性(如系列号)。本文将以时间和序列号这两个常用的参数为例介绍基于有效性的动态版本管理模型的搭建和使用。

3.2.1 以时间为有效性参数的动态产品结构版本管理

时间是最常用的有效性判定参数。在版本变迁过程前期搭建产品结构的操作中,将版本有效性和结构有效性作为零部件的固有属性,设定时间范围参数。产品零部件每发布一个新的可用版本,都要设置该版本使用的有效时间,即版本有效性。

系统默认的版本起始有效时间为创建时的系统日期,有效终止时间为无穷,即版本一直有效。有效时间可由系统用户自由设定,但后一版本的有效性设置可能会影响到前一版本的有效性范围。为避免有效时间冲突,系统设定了以下版本有效期设置规则:(Ds为有效期起始时间;De为有效期终止时间;Dn为当前系统日期。)

1) Ds和De均不得提前于Dn;

2) De不得提前与Ds;

3) 后一版本的Ds比前一版本的De提前时,前一版本的De由系统自动改为后一版本的Ds同一天。

在创建零部件关联,即在上级部件具体版本下添加下级零部件时,要对该关联的结构有效性的时间范围进行设置。结构有效性的设置遵循版本有效性设置规则的1)和2)。

图4 基于有效性的动态产品结构

设定完成的动态产品结构模型如图4所示,这一模型描述了上下级零部件的完整结构关系和每个零部件的所有可用版本。而结构关系是否有效、零部件应使用哪个具体版本,则根据结构有效性和版本有效性来选择和计算。

当后续工作需要使用具体的产品结构信息时,根据指定的时间条件对动态产品结构进行遍历计算,以获取准确的产品结构树。指定确定日期Du,要获取该日期下使用的具体产品结构,从装配集顶级部件开始,判断日期Du所符合的有效期范围,选择有效的结构关系和对应的部件版本。例如,指定的Du符合零件002的结构有效性,选定零件002。Du符合部件001的结构有效期及其B版本的版本有效期。选定部件001的B版本,继续判断下级零部件,Du不在部件004的结构有效期之内,该结构关系无效。Du符合零件003的结构有效期,则继续选择零件003的有效版本。依次类推,遍历产品结构的有效性设置后,可以整理获得指定日期Du的准确产品结构及版本关系如图5所示。

这样的产品结构树在指定条件下是明确固定且唯一的,可以作为企业活动的指导和参考数据。

图5 指定日期Du的产品结构及版本关系

3.2.2 以序列号为有效性参数的动态产品结构版本管理

序列号是另一个常用的有效性设定参数。构建产品结构时为零部件结构关系及版本设定有效的序列号范围,而使用产品信息时则根据指定的产品序列号来选择在有效范围内的下级零部件结构和版本。

序列号参数的设定与计算与时间参数的设定与计算相似。同一零部件的不同版本的有效序列号范围不能有重叠,避免遍历计算时出现版本冲突。随着设计与生产过程的进行,伴随序列号的变化,产品结构不断更新,产生一系列产品快像视图,如图6所示。

图6 动态产品结构视图变化

通过动态版本引用规则和有效性参数的计算,就可以以系统记录的“通用”产品结构模型来表现一系列的产品结构变化形态,为不同时间企业各部门的不同需求提供对应的数据信息,确保信息正确完整,实现版本管理对产品对象信息的记录、保护功能,同时减少数据冗余。

4 案例研究

本文将通过一个自行车产品结构的实际案例详细说明以时间为参数的有效性的组织和计算。通过版本变迁过程构建起来的自行车部分产品结构及各零部件对应的有效性如表1所示:(Es为结构有效性;Er为版本有效性。)

表1 自行车部分产品结构及各零部件对应的有效性

根据指定日期Du进行计算获取该日期下使用的具体产品结构,从装配集顶级部件开始,判断Du所符合的有效期范围,选择对应的部件版本。

情况一:Du设为2007-11-15,符合凤凰牌自行车男26寸B版本的版本有效期。选定B版本,继续判断下级零部件,2007-11-15在普通挡泥板的结构有效期之内,该结构关系有效,继续选择普通挡泥板的有效版本B。2007-11-15不符合强化挡泥板的结构有效期,该结构关系无效。依次类推,遍历产品结构的有效性设置后,可以整理获得Du(2007-11-15)时间下的准确产品结构及版本关系如表2所示:

表2 2007-11-15产品结构及版本关系

情况二:Du设为2008-04-15,符合凤凰牌自行车男26寸B版本的版本有效期。选定B版本,继续判断下级零部件,2008-04-15不在普通挡泥板的结构有效期之内,该结构关系无效。2008-04-15符合强化挡泥板的结构有效期,则继续选择强化挡泥板的有效版本。依次类推,遍历产品结构的有效性设置后,可以整理获得Du(2008-04-15)时间下的准确产品结构及版本关系如表3所示。

对同一个动态产品结构模型,指定不同的日期进行计算,就可以根据版本有效性过滤无效的结构关系,根据版本有效性选定每个零部件使用的具体版本,从而获得该日期下确定且唯一的产品结构,以此数据服务企业活动。

表3 2008-04-15产品结构及版本关系

5 结论

本文介绍了PDM产品全生命周期管理中版本管理的重要作用和管理系统框架,并详细解说了版本变迁过程和基于结构有效性和版本有效性的动态版本管理的计算和实现。通过系统实例展示动态版本引用关系在产品结构关系上的使用。

随着设计的协同化发展与企业产品多样化发展,版本管理的复杂程度越来越高。早期的静态、线性模型已经不能满足企业需求。而动态的、标准化的版本管理不仅要实现通用产品结构模型和版本规则计算,还要考虑版本的共存、分支等问题。此外,版本间的增量计算也是关注热点之一。版本管理的进一步发展将协助PDM系统为企业信息管理提供更有效的支持。

[1] 刘树森,等.现代制造企业信息化[M].科学出版社,2005.

[2] 张劲松,刘清华,钟毅芳,等.基于PDM的版本研究管理[J].华中科技大学学报,2001,29(12):33-36.

[3] 郑传现.PDM系统中文档版本管理的研究[J].安徽水利水电职业技术学院学报,2004,4(1):47-49.

[4] 钟诗胜,李涛,汤新民,等.PDM中基于工作流的电子仓库和文档管理[J].计算机集成制造系统——CIMS.2004.10(3).

[5] 祁国宁,J.萧塔纳,韩永生,等.图解产品数据管理[M].机械工业出版社,2005.

TH166

A

1009-0134(2010)10(下)-0046-06

10.3969/j.issn.1009-0134.2010.10(下).15

2010-01-26

周晓烨(1984 -),女,工程师,研究方向为软件工程、大规模定制。

猜你喜欢

文档动态有效性
国内动态
浅谈Matlab与Word文档的应用接口
国内动态
国内动态
有人一声不吭向你扔了个文档
如何提高英语教学的有效性
制造业内部控制有效性的实现
提高家庭作业有效性的理论思考
动态
Word文档 高效分合有高招