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.
é consultado, além das documentações existentes, tais como manuais e documentação das<br />
aplicações existentes, caso disponível.<br />
A existência de uma l<strong>in</strong>guagem específica de domínio é um dos <strong>in</strong>dicativos de que<br />
este domínio está consideravelmente maduro e, portanto, os benefícios do desenvolvimento<br />
orientado a modelos serão maiores (TOLVANEN; KELLY, 2005).<br />
Caso exista código-fonte disponível, há a possibilidade de existirem exemplos de modelos<br />
ou l<strong>in</strong>guagens específicas para o domínio ou algum subdomínio.<br />
É importante ressaltar que modelos nem sempre possuem uma representação gráfica que<br />
segue alguma l<strong>in</strong>guagem conhecida, como a UML, por exemplo. Outras l<strong>in</strong>guagens, <strong>in</strong>clu<strong>in</strong>do<br />
arquivos de configuração e modelos textuais, devem também ser consideradas.<br />
O modelo de features também pode oferecer dicas sobre o que procurar. Palavras-chave<br />
presentes no modelo de features, tais como nomes de features, podem ocorrer dentro da<br />
documentação ou código-fonte.<br />
Após esta análise, é criada uma lista com as l<strong>in</strong>guagens identificadas, associando-as com os<br />
subdomínios correspondentes.<br />
Sub-atividade AD.3.3. Identificação de ferramentas<br />
A exemplo das l<strong>in</strong>guagens específicas de domínio, a existência de uma ferramenta de<br />
configuração ou modelagem é um <strong>in</strong>dicativo de que o subdomínio em questão apresenta alto<br />
grau de maturidade, e portanto as chances da reutilização de software orientada a modelos ter<br />
sucesso são maiores. Em domínios extremamente maduros, podem existir até geradores de<br />
código que podem ser reaproveitados.<br />
Novamente, o conhecimento do especialista do domínio é essencial, mas manuais e<br />
documentação também devem ser consultados, uma vez que eles podem referenciar ferramentas<br />
usadas para criar modelos ou gerar partes da aplicação. O código-fonte também deve ser<br />
<strong>in</strong>specionado, pois é comum a existência, no código gerado, de dados sobre a ferramenta que o<br />
gerou, data da geração, entre outras <strong>in</strong>formações úteis.<br />
As ferramentas identificadas são então listadas e descritas, <strong>in</strong>clu<strong>in</strong>do toda <strong>in</strong>formação<br />
possível, uma descrição de suas funcionalidades, os artefatos que podem ser gerados por ela<br />
e referências para fontes externas. Novamente, caso seja encontrada uma ferramenta referente a<br />
um subdomínio a<strong>in</strong>da não identificado, acrescenta-se uma observação para posterior re-análise.<br />
103