Software developers thrive to reduce accidental complexity in design and construction, while coping with change and fast deployment. We introduced the first model-driven development (MDD) approach for Early Aspects, new model transformation tools, and consistency checking and validation techniques. Our work on Requirements Engineering with MDD to evaluate model quality resulted in best paper awards (CAiSE) and prototype tools. Additionally, we developed new principles for MDD, including model transformations tools and languages, and have shown how MDD can help supporting portability of applications for the Cloud, with results published in major forums, including IEEE TSE. More recently we have been exploring experimental software engineering techniques to evaluate Software Product Lines approaches, to build catalogues of techniques, operationalization approaches, and algorithms for reuse, with results published in major events and journals, including the top-ten more cited paper on traceability published in SoSyM.