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.

(PÉREZ-MARTÍNEZ; SIERRA-ALONSO, 2006).<br />

A exemplo dos geradores baseados em templates utilizados nesta tese, o mapeamento<br />

proposto por Pérez-Martínez e Sierra-Alonso (2006) utiliza regras imperativas, mais simples<br />

de implementar, mas mais complicadas quando se deseja promover rastreamento e realizar a<br />

transformação ida-e-volta.<br />

Os modelos de dest<strong>in</strong>o são descritos utilizando um perfil UML2 desenvolvido<br />

exclusivamente para o C2, uma vez que a UML soz<strong>in</strong>ha não é capaz de representar todos os<br />

elementos deste estilo, como por exemplo conectores, portas, mensagens, etc.<br />

Diferentemente desta tese, porém, o trabalho de Pérez-Martínez e Sierra-Alonso (2006)<br />

assume que os modelos de análise são ricos o suficiente para serem automaticamente<br />

transformados em uma arquitetura. A abordagem desta tese defende a idéia de que é necessário<br />

trabalho manual e criativo considerável entre análise e projeto arquitetural, de forma a <strong>in</strong>cluir as<br />

preocupações de todos os stakeholders. Assum<strong>in</strong>do-se um único e pré-def<strong>in</strong>ido mapeamento,<br />

corre-se o risco de se projetar uma arquitetura <strong>in</strong>capaz de atender a todos os requisitos de forma<br />

adequada. Além disso, um único estilo arquitetural (C2) é suportado.<br />

F<strong>in</strong>almente, a abordagem de Pérez-Martínez e Sierra-Alonso (2006) é focada no<br />

desenvolvimento de produtos únicos, não cobr<strong>in</strong>do aspectos relativos à reutilização, como<br />

suporte à variabilidade e derivação de produtos, como é o caso desta tese.<br />

Völter e Groher (2007) descrevem um conjunto de técnicas para comb<strong>in</strong>ar MDD e l<strong>in</strong>has<br />

de produtos de software. Suas idéias sobre a comb<strong>in</strong>ação de técnicas estão de acordo com a<br />

filosofia da abordagem desta tese, tais como o suporte aos dois tipos pr<strong>in</strong>cipais de variabilidade:<br />

baseada em features (configuração) e DSLs (construção criativa). Adicionalmente, os autores<br />

utilizam técnicas orientadas a aspectos para facilitar a modelagem e implementação das<br />

variabilidades ortogonais, o que não é tratado nesta tese. A pr<strong>in</strong>cipal diferença desta tese em<br />

relação ao trabalho de Völter e Groher é que aqui é proposta uma abordagem sistemática, com<br />

atividades e diretrizes concretas para desenvolver a <strong>in</strong>fraestrutura de reutilização orientada a<br />

modelos para o domínio. Além disto, a abordagem desta tese também identifica a necessidade<br />

do suporte simultâneo a múltiplos subdomínios, o que não é mencionado por Völter e Groher.<br />

Robbes e Lanza (2008) descrevem um sistema de suporte à transformação de programas<br />

baseada em exemplos. Neste sistema, o programador realiza um exemplo de mudança<br />

manualmente, que é então submetido ao sistema e posteriormente generalizado para outros<br />

contextos, tornando-se uma transformação reutilizável. O sistema baseia-se no monitoramento<br />

do ambiente de programação para detectar automaticamente as modificações feitas pelo<br />

desenvolvedor em algum artefato de código. Estas são então registradas como operações de<br />

219

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

Saved successfully!

Ooh no, something went wrong!