Complex industrial toolchains employ multi-paradigm modeling techniques, as well as multiple domain-specific modeling languages in the design of large critical systems, such as critical cyber-physical systems and systems-of-systems. Stochastic analysis is used to rigorously approximate metrics related to the reliability, dependability, performability and other quantitative non-functional requirements of these systems by solving formal stochastic models. The construction of the models for stochastic analysis is often manual and requires specialized expertise.
As the need arises to consider multiple design candidates, design-space exploration and search-based software engineering techniques are employed to propose and evaluate automatically generated alternatives according to selected constraints and goal functions. The optimization of quantitative non-functional requirements necessitates either working with low-level formal models or the automatic derivation of stochastic analysis models from the engineering models.
We propose a model transformation approach which was specifically designed for use in design-space exploration toolchains, as well as a formalism for expressing stochastic model fragments based on modular Petri nets. Our approach is demonstrated with a case study and its scalability is empirically evaluated.