Modularization approaches in the context of monolithic simulations
|Termin||Fr 21. September 2018|
|Kurzfassung|| Quality characteristics of a software system such as performance or reliability can determine
its success or failure. In traditional software engineering, these characteristics can only be determined when parts of the system are already implemented and past the design process. Computer simulations allow to determine estimations of quality characteristics of software systems already during the design process. Simulations are build to analyse certain aspects of systems. The representation of the system is specialised for the specific analysis. This specialisation often results in a monolithic design of the simulation. Monolithic structures, however, can induce reduced maintainability of the simulation and decreased understandability and reusability of the representations of the system. The drawbacks of monolithic structures can be encountered by the concept of modularisation, where one problem is divided into several smaller sub-problems. This approach allows an easier understanding and handling of the sub-problems. In this thesis an approach is provided to describe the coupling of newly developed and already existing simulations to a modular simulation. This approach consists of a Domain-Specific Language (DSL) developed with model-driven technologies. The DSL is applied in a case-study to describe the coupling of two simulations. The coupling of these simulations with an existing coupling approach is implemented according to the created description. An evaluation of the DSL is conducted regarding its completeness to describe the coupling of several simulations to a modular simulation. Additionally, the modular simulation is examined regarding the accuracy of preserving the behaviour of the monolithic simulation. The results of the modular simulation and the monolithic version are compared for this purpose. The created modular simulation is additionally evaluated in regard to its scalability by analysis of the execution times when multiple simulations are coupled. Furthermore, the effect of the modularisation on the simulation execution times is evaluated. The obtained evaluation results show that the DSL can describe the coupling of the two simulations used in the case-study. Furthermore, the results of the accuracy evaluation suggest that problems in the interaction of the simulations with the coupling approach exist. However, the results also show that the overall behaviour of the monolithic simulation is preserved in its modular version. The analysis of the execution times suggest, that the modular simulation experiences an increase in execution time compared to the monolithic version. Also, the results regarding the scalability show that the execution time of the modular simulation does not increase exponentially with the number of coupled simulations.