Flexibility in electric power consumption can be leveraged by Demand Response (DR) programs. The goal of this paper is to systematically capture the inherent aggregate flexibility of a population of appliances. We do so by clustering individual loads based on their characteristics and service constraints. We highlight the challenges associated with learning the customer response to economic incentives while applying demand side management to heterogeneous appliances. We also develop a framework to quantify customer privacy in direct load scheduling programs.