15.04.2013 Views

A Model-Driven Software Reuse Approach (in portuguese)

A Model-Driven Software Reuse Approach (in portuguese)

A Model-Driven Software Reuse Approach (in portuguese)

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!