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.

138<br />

aquele módulo específico, considerando-se a divisão que foi realizada.<br />

Por exemplo, para satisfazer a um determ<strong>in</strong>ado cenário de variabilidade onde uma feature<br />

pode ou não estar presente (feature opcional), pode-se criar um módulo que aceita como<br />

parâmetro uma variável booleana que <strong>in</strong>dica se a feature está ou não presente. Assim,<br />

a def<strong>in</strong>ição da <strong>in</strong>terface deste módulo deve conter uma descrição desta variável, do seu<br />

funcionamento, e dos requisitos que levaram à sua criação.<br />

Todos os requisitos e funções associados com o módulo pai devem possuir um módulo<br />

correspondente que assuma a responsabilidade. Estas responsabilidades devem estar claramente<br />

descritas e <strong>in</strong>dicadas nas <strong>in</strong>terfaces.<br />

Atividade PD.5. Avaliação arquitetural<br />

Papéis: Projetista do domínio, especialista do domínio, demais stakeholders<br />

Entradas: PT.7. Diretrizes arquiteturais e PT.8.Inicial. Projeto do domínio<br />

Saídas: PT.9.Avaliado. Projeto do domínio<br />

Descrição: a abordagem segue o raciocínio do método PuLSE-DSSA (DEBAUD; FLEGE;<br />

KNAUBER, 1998), no sentido em que o projeto arquitetural pode produzir múltiplas arquiteturas,<br />

cada uma oferecendo uma alternativa para se atender às diferentes diretrizes. Uma atividade é<br />

então responsável por avaliar as alternativas e selecionar qual delas segue adiante no processo.<br />

A avaliação arquitetural deve ser <strong>in</strong>iciada quando a equipe de desenvolvimento começar<br />

a tomar decisões que dependem da arquitetura, e o custo de se desfazer tais decisões é<br />

maior do que o custo de se realizar a avaliação (CLEMENTS; KAZMAN; KLEIN, 2004). Nesta<br />

abordagem, estas decisões são referentes à automação dos subdomínios, utilizando ferramentas<br />

de modelagem e transformadores, que depende desta estrutura em comum para possibilitar a<br />

reutilização.<br />

Assim, esta atividade busca avaliar as alternativas de arquiteturas projetadas anteriormente.<br />

O objetivo é selecionar aquela que melhor atende aos requisitos para o domínio, com foco na<br />

variabilidade. Este pode parecer um passo desnecessário, uma vez que na atividade anterior o<br />

projeto arquitetural foi realizado com base em um conjunto de diretrizes que representam os<br />

mesmos requisitos. A diferença, no entanto, é que agora serão <strong>in</strong>cluídos os pontos de vista<br />

dos outros <strong>in</strong>teressados no domínio, para serem confrontados com os requisitos <strong>in</strong>iciais, o que<br />

potencialmente irá revelar alguns aspectos que foram ignorados pelo projetista.<br />

Este confronto irá não somente facilitar a seleção de uma arquitetura adequada por meio

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

Saved successfully!

Ooh no, something went wrong!