Evolving Software Systems for Self-Adaptation. - Mehdi Amoui Kalareh (2012)