A proposal for the evolution of model-driven software engineering

In the Model-Driven Software Engineering (MDSE) context, software production can be performed by defining models. Despite the advantages of this methodology, different domains require specific support tools and modeling languages, which, in turn, must be developed along with the final software. Beca...

ver descrição completa

Detalhes bibliográficos
Autor: Gottardi, Thiago
Formato: tesis doctoral
Estado:Versión publicada
Fecha de publicación:2018
País:Brasil
Recursos:Universidade de São Paulo (USP)
Repositorio:Biblioteca Digital de Teses e Dissertações da USP
Idioma:inglés
OAI Identifier:oai:teses.usp.br:tde-09112018-102226
Acesso em linha:http://www.teses.usp.br/teses/disponiveis/55/55134/tde-09112018-102226/
Access Level:acceso abierto
Palavra-chave:Engenharia de software
Engenharia de software dirigida por modelos
Engenharia de software experimental
Experimental software engineering
Model driven software engineering
Paradigma de programação
Processo de software
Programming paradigm
Software engineering
Software process
Descrição
Resumo:In the Model-Driven Software Engineering (MDSE) context, software production can be performed by defining models. Despite the advantages of this methodology, different domains require specific support tools and modeling languages, which, in turn, must be developed along with the final software. Because of this, developers face problems when applying the method. The objective of this work is twofold: 1) to identify the most critical problems when developing with this method; 2) discuss and provide possible solutions to those problems. The critical problems were identified by performing a systematic mapping, empirical studies, collaborations and interviews with specialists. It has been identified that MDSE, according to basic literature, has an excessively high abstraction level which leads to a lack of adequate processes and developer training, besides the need for modeling tools. A new method is necessary to allow developers to treat models and source-code differently. Therefore, in this thesis, the need for evolving MDSE processes is discussed. In this manner, this work introduces a new development method described as a possible concrete evolution of MDSE that defines a paradigm for software development. This method is defined along with domain specific languages, a tool-chain and sample software systems. After conducting analytic and experimental studies, it has been concluded that these applications also represent a valuable contribution for implementing service-oriented systems which can be employed in real world applications.