SIESTA encapsulates functionality in a unified way by means of modules. A module imports new capabilities into an application in a comfortable, and structured way. SIESTA's module mechanism automatically resolves loading of module code in a way that minimizes the programming effort in the event that a module needs to be imported into an application. Furthermore, bootstrapping, initialization, and termination are performed in a unified manner which results in a stable and highly comfortable environment, for both, the users of TCAD applications and their programmers.