object oriented programming; modular scissors
Finite Element Method (FEM) is often perceived as a unique and compact programming subject. Despite the fact that many FEM implementations mention the Object Oriented Approach (OOA), this approach is used completely, only in minority of cases in most real-life situations. For example, one of building stones of OOA, the interface-based polymorphism, is used only rarely.
This article is focusing on the design reuse and at the same time it gives a complex view on FEM. The article defines basic principles OOA and their use in FEM implementation. Using OOA FEM project is split in many smaller sub-projects which are interlinked together. Links between sub-projects are one way only and non circular. Such a setting gives opportunity to use the modular scissors.
In addition, these individual sub-projects can be used directly, without additional adjustments, in similar projects.