Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

© W.

Pollaert, Eindhoven, juli 2019

Class diagram ProductType

* *

consistsOf partOf

number

Analytical BOM
(‘consists of’)

Synthetic BOM
(‘part of;
where-used’)

Class diagram for a product structure in UML notation, using an aggregation ( )


1
A business © W. Pollaert, Eindhoven, juli 2019
example,
physical Finished products
A B
representation (have no parents)
1 1

a p Subassemblies
1
1 1 1 (multiple levels;
Analytical BOM

Synthetic BOM

have both
b c q r parents and
1
1
children)
d
4
e 3

1
1 1 2 1 Raw materials
2 1 2

1 1 (have no
children)

α β δ ε θ λ π φ ω

A, B, a, b, c, d, e, p, q, r, α, β, δ, ε, θ, λ, π, φ and ω (the balls) are instances of productType, named by their productId’s.


The structures below A and B share productType θ. About the numbers: A consistsOf 4 α’s; 4 α’s are partOf 1 A. 2
© W. Pollaert, Eindhoven, juli 2019

Data models for the Class diagram

ProductType ProductType

consistsOf partOf consistsOf partOf

Composition Composition

Martin notation Bachman notation


ProductType will carry a number of attribute types, like productId, productName
etc; Composition carries the attribute type number.

Relational notation:
ProductType (productId, productName, …………)
Composition (productId1, productId2, number)

Where productId1 and productId2 are foreign keys, pointing to productId’s in ProductType for relationships
consistsOf and partOf. The foreign keys together make the primary key in Composition. 3
© W. Pollaert, Eindhoven, juli 2019

Table contents of Composition in the black (left) part of the Business example

productId1 productId2 number


A α 4
A a 1
a b 1
a c 1
b β 1
b δ 1
c d 1
c e 1
d δ 2
d ε 1
e ε 1
e θ 1
© W. Pollaert, Eindhoven, juli 2019
Analytical BOM:

1 A consists of 4 α’s and 1 a;


1 a consists of 1 b and 1 c, etc.

Or, in other words:


1 instance of productType A consists of 4 instances of productType α and 1
instance of productType a;
1 instance of productType a consists of 1 instance of productType b and 1
instance of productType c, etc.

Synthetic BOM (‘where-used’ structure) :

4 α’s are parts of 1 A;


1 β is part of 1 b;
1 δ is part of 1 b, and 2 δ’s are parts of 1 d, etc.

Or, in other words:


4 instances of productType α are parts of 1 instance of productType A;
1 instance of productType β is part of 1 instance of productType b;
1 instance of productType δ is part of 1 instance of productType b, and 2
instances of productType δ are parts of 1 instance of productType d, etc.
5
© W. Pollaert, Eindhoven, juli 2019

Calculation of raw material needs for a customer order of 5 instances of


productType A, using the analytical BOM in the business example and the
table contents of Composition.

To make 5 A’s (5 instances of productType A) we need:


5 x 4 = 20 α’s, and 5 x 1 = 5 a’s;
To make 5 a’s we need:
5 x 1 = 5 b’s, and 5 x 1 = 5 c’s;
To make 5 b’s we need:
5 x 1 = 5 β’s, and 5 x 1 = 5 δ’s;
To make 5 c’s we need:
5 x 1 = 5 d’s, and 5 x 1 = 5 e’s;
To make 5 d’s we need:
5 x 2 = 10 δ’s, and 5 x 1 = 5 ε’s;
To make 5 e’s we need:
5 x 1 = 5 ε’s, and 5 x 1 = 5 θ’s.

So the total needs are:


20 α’s; 5 β’s; 15 δ’s (5 + 10); 10 ε’s (5 + 5) and 5 θ’s.
6
© W. Pollaert, Eindhoven, juli 2019

In the previous part we saw the following statements:

Finished products: (have no parents)


Subassemblies: (multiple levels; have both parents and children)
Raw materials: (have no children).
Of course, it is business-specific what is applicable.
E.g.: subassemblies can be made from raw materials; they can also be
purchased as ' black boxes ‘: so, subassemblies can be the lowest level in
the BOM structure. Even (some) finished products can be the lowest level.

You might also like