  Cloud-based software systems are increasingly becoming complex and operating
in highly dynamic environments. Self-adaptivity and self-awareness have
recently emerged to cope with such level of dynamicity and scalability.
Meanwhile, designing and testing such systems have poven to be a challenging
task, as well as research benchmarking. Despite the influx of research in both
self-adaptivity and cloud computing, as well as the various simulations
environments proposed so far, there is a general lack of modelling and
simulation environments of self-adaptive and self-aware cloud architectures. To
aid researchers and practioners in overcoming such challenges, this paper
presents a novel modelling and simulation environment for self-adaptive and
self-aware cloud architectures. The environment provides significant benefits
for designing self-adaptive and self-aware cloud architectures, as well as
testing adaptation and awareness mechanisms. The toolkit is also beneficial as
a symbiotic simulator during runtime to support adaptation decisions. We
experimentally validated and evaluated the implementation using benchmarks and
evaluation use cases.
