The development of a distributed simulator requires knowledge and skills that might be unavailable or difficult to acquire. Bringing model-driven approaches to the development of distributed simulators contributes to reduce both the need for specific skills and the development effort. To support this innovative development methodology, we introduce a layered simulation architecture named SimArch that allows to define simulation models that can be transparently transformed into simulation programs ready to be executed in a distributed (or local) mode. SimArch defines layers of services at increasing levels of abstraction on top of the execution environment, thus allowing developers to build distributed simulators without explicit knowledge a...