Service Discovery Middleware: Finding Needed Services - Mobile Computing