Change Modeler Description & Customization

Technical Article

This article presents the Change modeler, and explains how to customize it.

Description

This section first presents the objects representing the Change modeler. Then it describes how this object model view has been translated towards PLM objects based on PLM Core Modeler objects. You will see the description of each PLM package defining these PLM objects.

Conceptual Model

Purpose of Change topic is to authorize, track and validate modifications on all kind of PLM objects. Change modeler object captures change intent and implementation mostly by referencing PLM objects.

This is summarized in the following UML schema:

Fig.1 Change, Model

ECA:  stands for Engineering Change Action. It is the main object of the Change modeler. It represents a change. An ECA can be break down into "child" ECA (to dispatch implementation to several user for instance).

All PLM objects needed to perform the change are referenced by the ECA. Each referencing has its own semantic:

Implementation Model

The Change model is implemented with PLM Core Object as follows:

Fig.1 PLM Core Objects

Out of the box, several type of ECA are provided (Design, Documentation, Maintenance, Manufacturing and SignOff). Above schema is the same for each type (just replace xxx by one of the 5 value).

The following array shows the links between the conceptual and PLM Core objects:

Model Object PLM Modeler  Type PLM Core Type Modeler PLM Package
ECA PLMDesignAction PLMDocumentationAction PLMMaintenanceAction PLMManufacturingAction PLMSignoffAction PLMCoreReference PLM Design ECA PLM Documentation ECA PLM Maintenance ECA PLM Manufacturing ECA PLM Signoff ECA
"Child" ECA PLMDesignChildAction PLMDocChildAction PLMMaintChildAction PLMMfgChildAction PLMSignoffChildAction PLMCoreInstance PLM Design ECA PLM Documentation ECA PLM Maintenance ECA PLM Manufacturing ECA PLM Signoff ECA
PLMDesignAction PLMDocumentationAction PLMMaintenanceAction PLMManufacturingAction PLMSignoffAction PLMCoreReference PLM Design ECA PLM Documentation ECA PLM Maintenance ECA PLM Manufacturing ECA PLM Signoff ECA

Business Logic

This section lists and describes the PLM Opening ID implemented by the following PLM classes of the Change modeler.

PLMDesignAction, Implemented Business Logic

PLM Opening ID Script Contents
PLMAttributesValuationCheck BL to perform validity checks on attributes' values
PLMIdentificationInitialization BL used for PLM New to pre-valuate the Identifier of the object
CheckActionOutputObjsOnTransition BL to determine if and on what transition we need to check if the Implemented Items are in SHARED state
CheckActionChildrenOnTransition BL to determine if and on what transition we need to check if the Child ECAs are in SHARED state 
CheckActionNEOnTransition BL to determine if and on what transition we need to check if the Named Effectivity is validated 

PLMDocumentationAction, Implemented Business Logic

PLM Opening ID Script Contents
PLMAttributesValuationCheck BL to perform validity checks on attributes' values
PLMIdentificationInitialization BL used for PLM New to pre-valuate the Identifier of the object
CheckActionOutputObjsOnTransition BL to determine if and on what transition we need to check if the Implemented Items are in SHARED state
CheckActionChildrenOnTransition BL to determine if and on what transition we need to check if the Child ECAs are in SHARED state 
CheckActionNEOnTransition BL to determine if and on what transition we need to check if the Named Effectivity is validated 

PLMMaintenanceAction, Implemented Business Logic

PLM Opening ID Script Contents
PLMAttributesValuationCheck BL to perform validity checks on attributes' values
PLMIdentificationInitialization BL used for PLM New to pre-valuate the Identifier of the object
CheckActionOutputObjsOnTransition BL to determine if and on what transition we need to check if the Implemented Items are in SHARED state
CheckActionChildrenOnTransition BL to determine if and on what transition we need to check if the Child ECAs are in SHARED state 
CheckActionNEOnTransition BL to determine if and on what transition we need to check if the Named Effectivity is validated 

PLMManufacturingAction, Implemented Business Logic

PLM Opening ID Script Contents
PLMAttributesValuationCheck BL to perform validity checks on attributes' values
PLMIdentificationInitialization BL used for PLM New to pre-valuate the Identifier of the object
CheckActionOutputObjsOnTransition BL to determine if and on what transition we need to check if the Implemented Items are in SHARED state
CheckActionChildrenOnTransition BL to determine if and on what transition we need to check if the Child ECAs are in SHARED state 
CheckActionNEOnTransition BL to determine if and on what transition we need to check if the Named Effectivity is validated 

PLMSignoffAction, Implemented Business Logic

PLM Opening ID Script Contents
PLMAttributesValuationCheck BL to perform validity checks on attributes' values
PLMIdentificationInitialization BL used for PLM New to pre-valuate the Identifier of the object
CheckActionOutputObjsOnTransition BL to determine if and on what transition we need to check if the Implemented Items are in SHARED state
CheckActionChildrenOnTransition BL to determine if and on what transition we need to check if the Child ECAs are in SHARED state 
CheckActionNEOnTransition BL to determine if and on what transition we need to check if the Named Effectivity is validated 

Customization

Customization first deals with the modeler PLM package customization [2]. It consists in to create a new package containing new PLM classes for each  "Customizable"  PLM class of  the modeler PLM package. Then, you should take into account the UI masks creation to create either a new security mask file, or to update the default one [3]. Finally, you can integrate your own business logic on each new PLM classes by implementing provided PLM opening ID [4].

PLM Package Customization

This part consist in to create a new package when the modeler PLM package must be customized.

Warning: For all References to customize, do not insert the PLM_ExternalID attribute in the identifier set since it will be automatically added.

PLM Design ECA

PLM Design ECA must be fully customized.

PLM Class Name To Be Customized Remarks
PLM Design ECA Yes Do not support multi-valuated attributes
PLM Design Child ECA Yes Do not support any additional attribute

PLM Documentation ECA

PLM Documentation ECA must be fully customized.

PLM Class Name To Be Customized Remarks
PLM Documentation ECA Yes Do not support multi-valuated attributes
PLM Documentation Child ECA Yes Do not support any additional attribute

PLM Maintenance ECA

PLM Maintenance ECA must be fully customized.

PLM Class Name To Be Customized Remarks
PLM Maintenance ECA Yes Do not support multi-valuated attributes
PLM Maintenance Child ECA Yes Do not support any additional attribute

PLM Manufacturing ECA

PLM Manufacturing ECA must be fully customized.

PLM Class Name To Be Customized Remarks
PLM Manufacturing ECA Yes Do not support multi-valuated attributes
PLM Manufacturing Child ECA Yes Do not support any additional attribute

PLM Signoff ECA

PLM Signoff ECA must be fully customized.

PLM Class Name To Be Customized Remarks
PLM Signoff ECA Yes Do not support multi-valuated attributes
PLM Signoff Child ECA Yes Do not support any additional attribute

UI Mask Customization

When a PLM attribute is defined (inside modeler PLM package) some features like its editability criteria, mandatory /optonal option, can be overwriten by UI  mask. You can say this PLM attribute is not writable in Query context, this PLM attribute is mandatory in Create context, this user PLM attribute is not never visible and so one. A set of UI masks form a security mask file. We say security mask because it is associated with these files security information. For a people, and a given context can be associated a security mask.

For each customized Modeler PLM package, at least one UI mask file must be created (for the default security mask ), since it must contain the new PLM Attributes. When you use the tool to create a customization, a default UI mask file is provided taken into account the added PLM attributes. You can modify  the default file to introduce your change .>

If you want create a new security mask file, you should provide a UI mask for all the "AsIs" modeler PLM packages and for each customization of the "Customizable"  modeler PLM package. 

Rules to respect for a new UI mask creation

No specific rule to customize UI mask file.

Business Logic Customization

You can yourself integrate your business logic for each customization of:

PLM Opening ID
PLMAttributesValuationCheck
PLMIdentificationInitialization
CheckActionOutputObjsOnTransition
CheckActionChildrenOnTransition
CheckActionNEOnTransition
PLM Opening ID
PLMAttributesValuationCheck
PLMIdentificationInitialization
CheckActionOutputObjsOnTransition
CheckActionChildrenOnTransition
CheckActionNEOnTransition
PLM Opening ID
PLMAttributesValuationCheck
PLMIdentificationInitialization
CheckActionOutputObjsOnTransition
CheckActionChildrenOnTransition
CheckActionNEOnTransition
PLM Opening ID
PLMAttributesValuationCheck
PLMIdentificationInitialization
CheckActionOutputObjsOnTransition
CheckActionChildrenOnTransition
CheckActionNEOnTransition
PLM Opening ID
PLMAttributesValuationCheck
PLMIdentificationInitialization
CheckActionOutputObjsOnTransition
CheckActionChildrenOnTransition
CheckActionNEOnTransition

References

History

Version: 1 [Oct 2008] Document created
Version: 2 [Oct 2009] Business Logic added