Fault prediction as a service in the smart factory: addressing common challenges for an effective implementation