The missing point so far in the Web service composition is a proper support for composing services without a complete and predefined composition plan. As in some cases such as the crisis management, the composition plan can only be partially defined or cannot be defined in advance. Composing web services with a partial composition plan raises a particular challenge. In this paper, we propose an ad-hoc Web service composition approach, called Service Farming, which aims at constructing an optimal composite service in a reasonable time without a predefined composition plan and satisfying various requirements. Our approach is ad-hoc in the sense that it composes services by simultaneously selecting atomic services and inferring the composition patterns between the selected services so as to ensure services are composed in the best way with regard to QoS aggregation. Experimentations examine the performance of the Service Farming in different cases and show promising results.