某位哲学家曾说:世界上唯一不变的,就是变化本身。这句话适用于很多事物,而对于产品数据管理,这句话也切中要害。
产品数据管理的基本任务之一是对构成产品的硬件和软件的数据进行有效的组织和管理,以保障在任何需要的时候都能够获得正确和有效的产品信息。即“在正确的时间能够获得正确的信息”。这些数据包括产品规格,计算数据,验证/试验数据,分析报告,2D图纸,3D数模,工艺数据,FEMA,作业指导书,维修手册,等等。其中“物料清单”(即
BOM,下文物料清单均以
BOM指代)是最重要的一项数据。
BOM的主要作用是描述构成产品的物料组成及其结构, 通过BOM可清楚的展示产品或总成包含哪些零部件,以及这些零部件的使用和被使用关系。虽看起来简单,但这却是产品信息的基础和核心,很多工作都依赖这一基本信息展开。
一、BOM是动态变化的特性
从管理的角度讲,产品的构成信息(BOM)越稳定越好,最好一经发放便永不更改,这样可以减少很多因设计变更带来的复杂分析和替换工作。每位工程师都希望自己的设计完美无误,一次就做对;制造部门则希望上游设计永远不要变化(或很少变化),他们可以按照设计的定义顺利完成工艺设计,生产准备,然后顺利进行生产;销售部门希望客户不要有个性化需求,全部购买我们的已经开发的标准产品,...如果是这样,产品信息的管理将变得非常简单,每一部门只需要将自己的BOM数据传给下一部门,然后进入下一轮。但是这种情形在实际工作中基本是不可能的。对于BOM而言,唯一不变的就是变化。并且这种变化往往是不可避免的:
在产品设计阶段,工程师很难做到“一次设计,完全正确”。虽然大家都在提“零缺陷”质量管理,努力“一次就把事情做正确”,但这只是一个目标。汽车设计是一个复杂的系统工程,不仅涉及到单个零件或总成的技术问题,还涉及到系统之间的协调集成问题。很多问题往往在后续试制或生产中才暴露,因此很难做到BOM数据一经发放便不再更改;
另一方面,设计的改进也是促成变更的重要原因。技术的进步,零部件的设计优化,产品的更新换代,都会引发零部件的设计变更,这些变更则会传递到产品,引起产品BOM的变化;
制造阶段也存在同样的问题,工艺的设计也很难保证不发生错误;制造技术的进步,新工艺的产生也可能引起制造BOM的变更。
因此,变化是永恒的。管理该做的事情则是制定行之有效的方法适应这些变化,而非抱怨变化。
现在假设一种场景,一个车型完成工程设计,工艺设计和生产准备后正式投产了,车型的BOM数据也分别经过了设计阶段,工艺阶段最后正式发布的生产阶段。后来,因设计改进,该车型上用到的一块小塑料片尺寸发生了微小变化,但零件号没有变,并且以后生产中将统一使用新尺寸的塑料片。塑料片本身进行了工程变更,并发布了一个新版本。那么,该车型的BOM数据是否需要变化?
如果需要变化,那我们实际上是每变更一次该车型下的零部件(哪怕是小小的一个塑料片),就需要变更一次车型BOM。并且按照这种逻辑,不仅车型需要变化,凡是用到了该零部件的所有总成,上级总成,上上级总成,....都需要变更BOM。车型只不过是变更的最后层级罢了。这种变更工作量是相当大的,可谓牵一发而动全身。这显然是不可取的。
那如果不变,如何在后续的生产中,该车型如何获取到新版本的塑料片信息?毕竟,该车型BOM发布时,记录的是旧版本的塑料片。这实际上就涉及到BOM的有效性问题。
因为BOM的下级会因不断发生变化,产生新的版本,为了能够在正确的时候获取正确版本的下级数据,必须使BOM处于动态变化之中。在需要的时间,通过特定的规则筛选出有效版本的下级数据,形成有效的产品BOM(当然与包括总成BOM),便是BOM的有效性管理。
上文分析过,产品BOM(总成BOM)不能处于静态。若处于静止状态,则无法获得最新的设计和工艺更改成果,带来生产上的错误或产品的性能的落后。只有让BOM处于动态之中,才能随时获取变更的结果,得到正确有效的产品数据。
将BOM静态化的一种典型手段是基线。基线实际上是将BOM某一时点的构成固化下来,且不随时间变化。这种静态后的BOM应该主要用于存档和追溯,而不宜用于指导生产。
动态BOM则需要进行有效性管理,动态BOM记录下级零部件的版本更替,通过有效性规则筛选出有效版本的下级零部件,从而获得正确有效的BOM数据。
BOM有效性管理,涉及到一下三个过程:
(1)BOM的构成必须是动态的,随着下级零部件版本的更替,BOM必须能遍历到下级零部的相应版本;
(2)设置下级零部件不同版本的有效性的;
(3)建立有效性规则,根据有效性规则获取需要的BOM数据。
二、动态BOM的数据模型
动态BOM与静态BOM的主要差别在于,静态BOM仅记录BOM发放时的结构构成,BOM关系不随时间变化而变化,因此这种关系也是静态,下级零部件的新版本不会与BOM建立关系,因此BOM不会随时间的变化而增减。这就可以形成一种静态的关系模型。如下图
图2 静态BOM下级零部件的新版本不会与BOM建立关系
但是动态BOM必须能根据有效性规则遍历到到下级零部件的符合要求的版本,因此下级零部件的新版本需要与BOM建立关系,并设置有效性。因此可以说,动态BOM实际上是下级零部件所有版本的集合。
图3 动态BOM下级零部件的新版本会与BOM建立关系
实际上,某些商业化PDM采用以下的数据模型,在这种数据模型中,每个零部件对象(总成,零件)有两个对象描述:主对象(Master)和版本对象(Revision)。主对象记录基本信息,如名称,编号。这些信息一般不允许用户做变更;版本对象记录版本相关属性,这些属性允许用户做变更修改,因此这些属性的值可能每个版本都不相同。主对象只有一个,但版本对象却有很多个,主对象对应着多个版本对象。
图4 零部件对象分为主对象和版本对象
图5 BOM数据模型
这种模型一般将有效性表达式设置到零部件版本对象上,而不是BOM关系上。当然,零部件本身版本,状态,发布日期都是一种有效性表达式,只不过这是由系统自动生成,而不需要工程师手工设置。工程师可以在新版本对象发布时,设置该版本对象的生效日期,设置的生效日期成为一个有效性表达式。所以一个版本对象上有多个有效性表达式。
有了有效性表达式,便可以通过有效性规则筛选出有效的版本对象。
对于BOM,产品(总成)版本对象关联的是下级零部件的主对象而非版本对象。如上图5。因为零部件版本对象与零部件主对象关联,有效性表达式设置在版本对象上,这样当我们在顶层零部件(产品或总成)上设置筛选规则(有效性规则)后,系统将遍历顶层零部件的子级,首先找到子级的主对象,然后根据有效性规则筛选出符合条件的版本对象,所有的版本对象构成顶层零部件的精确BOM结构。
三、有效性及有效性规则
上文中,有效性表达式实际上就是零部件版本对象有效性的描述,它定义了零部件版本对象出现的条件。零部件有效性可分为以下三种类型:
(1)版本有效性:零部件的版本,状态和发布日期定义的有效性;
(2)日期有效性:通过设置零部件生效日期和失效日期定义的有效性;
(3)批次有效性:通过定义有效批次号设置的有效性。
零部件的有效性本质上是零部件版本出现的条件,这点类似于产品配置管理中零部件的配置表达式,只不过构成配置表达式的是市场,功能信息,而构成有效性表达式的是版本,日期,批次等信息。
有效性表达式定义了版本对象出现的条件,有效性规则则定义需要满足的有效性组合,通过这些组合遍历产品(总成)所有下级,筛选出满足有效性要求的子级零部件版本对象,从而得到精确的BOM结构。这个过程可称为“解析”。有效性规则描述起来感觉很复杂,实际应用中却往往很简单,常用的规则可能是:最新版本,最新发放,或一个具体的日期或日期段。下图沿用图5的例子描述了这个有效性规则的解析过程:
图6 有效性规则解析
四、几个相关问题的讨论
(1)升版与变号的问题
有效性一般用于关于管理零部件的版本对象。当然某些PLM系统中,有效性可以直接定义在BOM行上,这样有效性便可以设置任何出现在BOM行上的对象,而不仅仅是零部件版本对象。这种情况我们在此不做讨论。我们仍然讨论管理版本对象的情况。在这种情况下,有效性是设置在零部件版本对象上,因此当且仅当变更引发零部件版本发生变化时,有效性可以发挥作用。如果变更内容过大,导致零部件需要更改编号,而变更后的新零部件需要用到原产品(总成)上,这时便需要对产品(总成)进行修订变更,做零部件替换,而不能用有效管理来解决了。对于这一点,每个企业必须根据业务实际,制定出企业升版或换号的基本原则,并严格遵守。现实工作中,因为升版和换号原则模糊,该升版的时候换号,该换号的时候升版的,导致数据紊乱的情况经常发生。因此,企业必须重视这一课题。
(2)时间有效性设置的依据
工程师可以手工对变更后生产的新版本设置生效日期。零部件的发布日期与生效日期往往并不相同,这主要由出于生产方面的原因。典型的情况是,新版本零部件需要等老版本零部件库存消耗完后才能生效。因此对于零部件新版本生效日期的设置需要业务机制保障,以便设置出合理的生效期和有效期。一般情况下,零部件生效日期由制造部门或生产部门根据库存,采购或生产实际分析决定是常用的方式。
(3)BOM有效性管理的扩展
BOM有效性的原理并不仅限于对物料清单的管理,实际上,凡是子级存在变更和版本管理的产品数据,都存在有效性管理的问题。如产品配置管理中产品配置结构中的配置有效性的管理。在产品配置管理中,配置变量(variant)构成了产品的配置结构树,配置变量的变更也会产生新版本,也需要进行有效性管理,以便在正确的时间获得正确的配置变量。需求管理中,需求构成产品需求树,需求的变更会引起产品需求的变化,这时也需要引入需求有效性的管理。
实际上,有效性的管理与产品状态管理(CMII)的思想是一脉相承的。在CMII理念中,产品需求文档管理是核心,物理产品只不过是对需求文档的验证。因此,保证产品需求文档的清晰,简洁,有效是管理的核心任务之一。但是另一方面,变更是无法避免的,如何保证变更后产品需求数据仍然清晰,简洁,有效是管理的另一项核心任务。因此,CMII包含两大核心任务:需求管理,变更管理。而保证数据的有效性是根本目标。
从广义上将,产品需求文档包含了产品开发和生产中的所有定义数据,因此有效性管理原则看应用与产品开发和生产过程中的所有数据。
五、总结
归纳起来,有效性管理是一种管理手段。其产生的原因是BOM动态性质,因为市场需求的变化,设计的错误以及技术的进步引发的工程设计变更,导致BOM处于不断变化之中。而BOM作为一项最基本和最重要的产品数据,又需要随时保持其正确性和有效性。因此如何保证“在正确的时间能够获取正确有效的BOM数据”是产品数据管理中的一项重要课题,有效性管理正是解决这一课题的重要手段。有效性管理通过设置产品(或总成)下级零部件不同版本对象的有效性,限定了子级零部件版本对象的使用条件。在需要筛选精确BOM的时候,用户通过建立有效性规则输入筛选版本对象筛选条件,系统则根据设定的条件遍历产品(或总成)子级的正确版本,从而获得正确有效的BOM结构。使用这一管理手段的优势是,当变更产品(或总成)的子级零部件时,不需要对产品(或总成)本身进行修订升版,而仅需要修订子级本身,通过设定子件新版本的有效性,可以随时获得需要的BOM结构。这样可以大大减少变更的工作量,提高产品开发效率。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:BOM的动态变化和有效性管理浅析
本文网址:http://www.toberp.com/html/news/10515521003.html