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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

24<br />

quando comparado com um processo não orientado a modelos. Para isso, a preocupação com<br />

o MDD deve estar presente em todas as etapas do processo, <strong>in</strong>clu<strong>in</strong>do a análise, o projeto e a<br />

implementação.<br />

Neste contexto, o foco desta tese está na identificação de como aplicar o MDD durante<br />

a engenharia de domínio, considerando-se que não é possível automatizá-lo completamente.<br />

A pergunta a ser respondida é: durante o ciclo de vida da engenharia de domínio,<br />

como identificar e gerenciar os subdomínios automatizáveis e produzir uma arquitetura<br />

e implementação f<strong>in</strong>ais onde o potencial de automação destes subdomínios possa ser<br />

explorado e <strong>in</strong>tegrado com os demais subdomínios?<br />

A abordagem está centrada no conceito de subdomínios, e envolve a exploração dos<br />

segu<strong>in</strong>tes pontos referentes à união entre MDD e reutilização de software:<br />

• Como identificar, em um domínio, subdomínios que possam ser automatizados por meio<br />

de técnicas do MDD?<br />

• Como lidar com o fato de que, para a identificação do potencial de automação de um<br />

subdomínio, pode ser necessário um esforço <strong>in</strong>vestigativo que envolve tempo e custos<br />

para uma organização?<br />

• Como gerenciar os diferentes subdomínios e diferentes níveis de automação,<br />

considerando-se que a arquitetura e os componentes produzidos para o domínio devem<br />

ser capazes de promover a <strong>in</strong>tegração entre eles?<br />

• Como gerenciar a variabilidade no domínio, considerando-se que o resultado da<br />

engenharia de domínio <strong>in</strong>clui não somente uma arquitetura e componentes reutilizáveis,<br />

mas também artefatos específicos do MDD, <strong>in</strong>clu<strong>in</strong>do l<strong>in</strong>guagens, transformações e<br />

geradores de código?<br />

• Como gerenciar a existência de código gerado com código não-gerado, nos diferentes<br />

níveis de abstração em que são realizadas as atividades de análise, projeto e<br />

implementação?<br />

• Em quais aspectos o MDD pode <strong>in</strong>fluenciar na reutilização de software? O MDD<br />

promove aumento e/ou melhoria na reutilização? Quais são os custos/benefícios de<br />

utilização do MDD, em um processo de engenharia de domínio?<br />

Para validar esta tese, foi def<strong>in</strong>ida uma abordagem sistemática para reutilização<br />

de software, utilizando técnicas do desenvolvimento orientado a modelos, e que cobre

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

Saved successfully!

Ooh no, something went wrong!