Integration of Self-organization and Cooperation Mechanisms to Enhance Service Discovery