reDesign with Refactoring

refactoring process

Project Lead: Peter Rosso

CAD models often need to be modified and/or reused. Thus, it is essential to create easily editable CAD models that designers can quickly make sense of and require the least amount of editing and/or rework. The cost of editing and rework can be significant for companies that rely on legacy CAD models/past designs that must be modified in response to changes in the design, changed or altered manufacturing process(es) and the newer versions of the CAD environment. In addition to these factors, there are many different ways to construct a CAD model within a single environment. Such variability presents a significant obstacle to creating quickly or the most easily editable CAD models.

Refactoring aims to increase the editability of CAD models and manage the growing technical debt of engineering projects. “Refactoring is a change in the internal structure to make it easier to understand and cheaper to modify without changing its observable behaviour” – Fowler (2018)

To be able to apply to refactor, it is essential to recognise violations of design principles. This project will refer to such violations as CAD smells, using terminology similar to computer science where smells violate design principles, leading to growth in technical debt. After outlining a list of possible CAD smells, the aims of this project are:

  • to use graph databases to change the construction tree of a CAD model without changing its “observable behaviour” (i.e. representing the same object) 
  • to identify and characterise CAD smells in various CAD models
  • to refactor CAD smells, reducing their impact on the overall design ecosystem.
fusion360 files
See all our news