A Model-Driven Software Reuse Approach (in portuguese)
A Model-Driven Software Reuse Approach (in portuguese)
A Model-Driven Software Reuse Approach (in portuguese)
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
232<br />
que envolvem a participação de múltiplos membros de uma equipe, tais como a análise de<br />
features e a def<strong>in</strong>ição de múltiplas DSLs para diferentes domínios. Também pode-se citar<br />
a existência de equipes dist<strong>in</strong>tas para trabalhar com a implementação de referência, com<br />
as tecnologias de modelagem e os geradores de código. Porém, a determ<strong>in</strong>ação exata de<br />
onde a colaboração no MDD ocorre de maneira mais <strong>in</strong>tensa, visando esclarecer os pontos<br />
de flexibilização na comunicação e atividades da equipe que podem ser alcançados, a<strong>in</strong>da<br />
se mostram <strong>in</strong>cipientes, como <strong>in</strong>dicado por Steffen et al. (2007). Assim, trabalhos futuros<br />
podem <strong>in</strong>vestigar a natureza desta colaboração, <strong>in</strong>clu<strong>in</strong>do possivelmente a consideração<br />
sobre desenvolvimento distribuído, ou até mesmo os aspectos ferramentais envolvidos<br />
na colaboração. Este poderia ser o tema de um trabalho de mestrado e/ou doutorado,<br />
dependendo da sua abrangência; e<br />
• Migração automática de código: o uso da implementação de referência como ponto<br />
de partida para o desenvolvimento de geradores traz uma série de benefícios. Porém,<br />
o processo de migração de código, necessário neste mapeamento para os geradores,<br />
apresenta dois problemas (MUSZYNSKI, 2005): (i) trata-se de um processo que consome<br />
cerca de 20-25% do tempo de desenvolvimento da implementação de referência; e<br />
(ii) causa duplicação de código, pois apesar de após a primeira migração ser possível<br />
descartar completamente a implementação de referência, na prática isto não ocorre devido<br />
às dificuldades de se trabalhar no nível do gerador. Como resultado, são mantidas tanto<br />
a implementação de referência como o gerador, e cont<strong>in</strong>ua-se trabalhando com os dois<br />
artefatos. Apesar de não-trivial, a automação, mesmo que parcial, seria a solução para<br />
estes problemas. A<strong>in</strong>da não existe uma solução automática para migração de código nas<br />
pr<strong>in</strong>cipais ferramentas do mercado, e este é um <strong>in</strong>teressante tema para trabalhos futuros,<br />
podendo ser realizados como um pós-doutoramento na área.<br />
10.4 Considerações f<strong>in</strong>ais<br />
Nesta dissertação apresentou-se a tese de que o MDD pode aumentar e/ou melhorar a<br />
reutilização de software em projetos de engenharia de domínio, descrevendo uma abordagem<br />
para esta f<strong>in</strong>alidade e sua avaliação através de estudos empíricos. A abordagem comb<strong>in</strong>a<br />
elementos de processo, como atividades, tarefas, entradas e saídas, com diretrizes e técnicas<br />
auxiliares que guiam o desenvolvedor durante a engenharia de domínio orientada a modelos.<br />
A pr<strong>in</strong>cipal contribuição está em reconhecer a existência de múltiplos subdomínios, cada um<br />
com seu potencial de automação, e em oferecer um método concreto para que o engenheiro de<br />
software possa lidar com eles.