A three-phase decision making approach for self-adaptive systems using web services (Complex Adaptive Systems Modeling, 2018)