Increasingly, software needs to dynamically adapt its behavior at runtime in response to changing conditions in the supporting computing, communication infrastructure, and in the surrounding physical environment . Self-adaptive software systems are able to reconfigure at run-time to adapt to changes. The implementation of ad-hoc solutions to cover all possible system configurations and reconfigurations is not feasible. Dynamic Software Product Lines (DSPLs) provide a systematic basis for the engineering of selfadaptive systems . A key characteristic in DSPLs is the intensive use of variability at run-time in order to adapt the system configuration caused by an environment change. Following this approach, a self-adaptive system can be seen as a family of feasible system configurations with a mechanism to move from one configuration to another. The development of self-adaptive systems involves great complexity and becomes a tedious task. We propose Moskitt4SPL (M4SPL) an open-source tool to ease the development of self-adaptive systems. In this tool, we combine model-driven and DSPLs to better cope with the complexities during the construction of self-adaptive systems. M4SPL can be used for modeling systems which make use of variability at run-time in order to adapt the system configuration caused by an environment change. M4SPL provides edition capabilities for Feature Models, Configuration Models and Resolution Models which are part of a self-adaptive system specification. Furthermore, M4SPL incorporates a series of refinements to automatically ensure interesting behavior issues in adaptation specifications. Dealing with those issues before execution is essential for reliable selfadaptive systems that fulfill many of the user’s needs. M4SPL can be used standalone as an Eclipse plug-in or integrated in the MDE MOSKitt environment.