In this paper we propose CAStlE, a MDE approach to enhance Collective Adaptive System (CAS) specification. In particular, we introduce a domain-specific language (DSL) made-up of three main views: one devoted to adaptive systems design; one addressing ensembles definition; and one tackling the collective adaptation. These three separate aspects are woven seamlessly by the DSL to constitute a complete CAS design. Moreover, each of the defined views conveys the creation of a corresponding model editor, which allows for the three aspects of a CAS to be independently designed by CAStlE.