The efficient utilization of computing resources, consisting of multi-core CPUs, GPUs and FPGAs, has become an interesting research problem for achieving high performance on heterogeneous Cloud computing platforms. In particular, FPGA accelerators can provide significant business value in Cloud environments due to its great computing capacity with predictable latency and low power consumption.In this paper, a Software as a Service (SaaS) model is enhanced with Quality of Service (QoS) support, harnessing such heterogeneous hardware architecture (composed of conventional CPUs plus FPGAs as accelerator). More precisely, the proposal takes into account timing user requirements to manage virtual resources. Hence, novel heterogeneous-aware resource allocation and scheduling algorithms are presented, which can be used both on-demand and in-advance. A lineal regression model that predicts the cost of the requested service is combined with a simple heuristic algorithm in order to allocate different types of Virtual Machines (VMs). Moreover, the framework provides the service efficiently by using an adapted scheduling algorithm that combines CPUs and accelerator resources.