Service reconfiguration in dynamic environments: a service-oriented multi-agent system approach