Applicability management
Introduction
At its simplest, a product structure represents an explicit structure of a product. e.g. the assembly of parts that make up the product. However, it is a common requirement that a product structure represents multiple configurations or variations of a product. This is sometimes referred to as a 150% BOM. These product structures then need to be filtered in order to deduce the product structure relevant to a particular product configuration.
For example the product structure might represent a particular class of car. Within that class of car there might be a set of different configurations such as a three door or five door car. The complete class of car can be represented in the product structure, and the structure then filtered to show the structure of the three door or five door car.
The ShareAspace PLM model enables this by a relationship that indicates that something is relevant, pertinent or appropriate in the context of something else. The relevance may be determined by a set of Conditions
. This relationship is referred to as Applicability
.
For example
- a maintenance task is relevant to a class of car.
- a maintenance task is only relevant to a class of car if the car has air conditioning fitted.
In some industrial domains, this is sometimes referred to as Effectivity. However, since the PLM model of ShareAspace already has a concept of DatedEffectivity
the term Applicability
is used to avoid confusion.
Note
In the ASD/AIA S3000L specification (International procedure specification for Logistic Support Analysis - LSA) this refers to several concepts:
- Applicability statement
- Design Configuration
- Serial Number Applicability
An overview of the information is given in the following figure (details have been intentionally hidden):
The object that holds applicability is referred to as the subject, i.e. the subject that is applicable to the context.
The object to which the subject is applicable to is referred to as the target.
Applicability and applicability context
The Applicability
object is a composition assignment which has a role that defines its semantics.
It is identifiable, nameable and describable.
The ApplicabilityContext
represents the target of the applicability. For efficient implementation, the ApplicabilityContext
is a unique 'tag' that acts as a proxy for the actual target object in the ShareAspace Nova PLM model.
For example if a possible target for applicability is a "SportsCar", represented in ShareAspace by a ProductConfiguration
, then an ApplicabilityContext
identified as "SportsCar" would be created and related to the corresponding ProductConfiguration
.
The ApplicabilityContext
is nameable and describable.
Applicability
has the following specific attributes:
condition
: an optional reference to the condition under which theApplicability
is valid.applicable to
: a mandatory reference to the objectApplicabilityContext
that defines the scope of pertinence of the object that is holding the applicability.includes
andexcludes
: references to other information that are enabled (i.e. includes) or disabled (i.e. excludes) by the applicability.validFrom
,validTo
: optional dates indicating when the applicability is valid.
ApplicabilityContext
has the following properties:
idString
: a mandatory alphanumeric string uniquely identifying the applicability context in the ShareAspace space.context
: an optional associated object used as the actual target of the applicability.parentContext
: an optional reference to the Applicability Context's parent. This enables a hierarchy of Applicability Contexts be represented.
Filtering data by applicability
In ShareAspace, the ApplicabilityContext
can be used as a filter when navigating relationships between objects. If a relationship is "applicable", it is valid and can be navigated.
The following rules are used to determine if a relationship is "applicable":
- if no applicability is set on an object, then the object is always applicable
- given a target
ApplicabilityContext
, the object is applicable if:- the object has no applicability with the same role
- the object has an explicit applicability equal to the target
ApplicabilityContext
- the object has an explicit applicability to an
ApplicabilityContext
that is child (at any depth) of the targetApplicabilityContext
- given a target
ApplicabilityContext
, the object is NOT applicable if:- the object has an explicit applicability to any other
ApplicabilityContext
that is not the targetApplicabilityContext
or a child or descendant of the target.
- the object has an explicit applicability to any other
The following sample diagram shows a part assembly filtered by applicability:
Filtering on target ApplicabilityContext
"Aircraft 1" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Bracket Assembly - Bracket BB | Yes | Explicit applicability for context "Aircraft 1" |
Bracket Assembly - Bolt AB | No | Explicit applicability for a different context than "Aircraft 1" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
Filtering on target ApplicabilityContext
"Aircraft 2" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Bracket Assembly - Bracket BB | Yes | Explicit applicability for context "Aircraft 2" |
Bracket Assembly - Bolt AB | Yes | Explicit applicability for context "Aircraft 2" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
Filtering on target ApplicabilityContext
"Aircraft 3" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Bracket Assembly - Bracket BB | No | Explicit applicability for a different context than "Aircraft 3" |
Bracket Assembly - Bolt AB | No | Explicit applicability for a different context than "Aircraft 3" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
The following diagram shows an example of a product family tree. The family tree is represented by a hierarchical structure of ApplicabilityContexts
.
Each ApplicabilityContext
node in the product family hierarchy has a corresponding ProductConfiguration
object.
The ProductConfiguration
objects are not shown in order to simplify the diagram.
Filtering on target ApplicabilityContext
"Aircraft Model X" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Spar - Bracket Assembly | Yes | Explicit applicability for context "Aircraft Model X" |
Bracket Assembly - Bracket BB | Yes | Explicit applicability for a context child of "Aircraft Model X" |
Bracket Assembly - Bolt AB | Yes | Explicit applicability for a context child of "Aircraft Model X" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
Filtering on target ApplicabilityContext
"Aircraft Model X.1" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Spar - Bracket Assembly | Yes | Explicit applicability for the parent context of "Aircraft Model X.1" |
Bracket Assembly - Bracket BB | Yes | Explicit applicability for context "Aircraft Model X.1" |
Bracket Assembly - Bolt AB | No | Explicit applicability for a different context that is neither a child or the parent of "Aircraft Model X.1" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
Filtering on target ApplicabilityContext
"Aircraft Model X.2" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Spar - Bracket Assembly | Yes | Explicit applicability for the parent context of "Aircraft Model X.2" |
Bracket Assembly - Bracket BB | No | Explicit applicability for a different context that is neither a child or the parent of "Aircraft Model X.2" |
Bracket Assembly - Bolt AB | Yes | Explicit applicability for a child context of "Aircraft Model X.2" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |
Filtering on target ApplicabilityContext
"Aircraft Model X.2-1" will result in the following:
Relationship (Parent - Child) |
Applicable? | Reason |
---|---|---|
Spar - Bracket Assembly | Yes | Explicit applicability for the parent context of "Aircraft Model X.2-1" |
Bracket Assembly - Bracket BB | No | Explicit applicability for a different context that is neither a child or the parent of "Aircraft Model X.2-1" |
Bracket Assembly - Bolt AB | Yes | Explicit applicability for context "Aircraft Model X.2-1" |
Bracket Assembly - Nut XY | Yes | No Explicit applicability defined so implicitly applicable |