Enterprise viewpoint
The value of a BoM transformation capability comes to the fore when engineers need to use a given design description for multiple purposes. For example, a BoM created by a designer may reflect a functional decomposition of the parts that form the product whereas a purchasing department may need a BoM can be used to make the procurement process more efficient, e.g., by grouping bought-out (B/O) parts by manufacturing process. In this scenario, an initial assembly BoM for the torch example used in the DCS project video is transformed into two other BoMs where all three BoMs are related through a shared underlying structure (see Mathematical concepts) that can be used, e.g., to highlight how changes in one BoM may impact the others.
Information viewpoint
The example used here is a test case that was developed for the DCS project. Its BoMs are introduced in the DCS project video. The STEP files for the torch case study used in or related to this scenario are available through the following links:
BoM transformation is the the process of modifying the assembly structure of a BoM through operations such as addition or removal of parts, grouping of parts into a sub-assembly, flattening (i.e. removing all sub-assemblies to produce a flat list). In this scenario, the BoM is first flattened, then sets of parts are grouped into new sub-assemblies.
Computer support viewpoints
The flowchart below summarises the operations performed by the user in the scenario. We begin with a torch BoM (the assembly BoM) with an existing indented structure. This structure is removed and reinstated in a different form, the final result being a BoM with parts grouped into sub-assemblies according to type (bought-out and manufactured).
During the design phase of a product’s lifecycle, the user wishes to produce a flat BoM for purchasing purposes, i.e. in unindented form. The user clicks the “File open” button and loads a BoM, then chooses to add it to the lattice, a common data structure for their project (see Mathematical concepts). They then right-click the root node of the BoM and select “Flatten” from the pop-up menu. (They can also click the “Flatten” icon in the assembly toolbar.)
The user then wishes to group parts in the BoM according to whether they’re bought-out (B/O) or manufactured. To do so, they select all B/O parts then select “Assemble” after right-clicking to bring up a pop-menu. They repeat the process for the remaining (i.e. manufactured) parts. The result is that two sub-assemblies are created, each containing all parts in each category.
There follows a video of the scenario being performed in StrEmbed in real time. It is possible to recreate the scenario in StrEmbed using the BoMs provided above.
The scenario uses StrEmbed, a software prototype that was developed as part of the DCS project, available from Github here: https://github.com/paddy-r/StrEmbed-6-1, with the following persistent DOI: 10.5281/zenodo.6806818.