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.

de nível de confiança (Sub-atividade AD.3.4), onde são avaliadas a maturidade e o estado de<br />

cada subdomínio identificado até o momento. Por fim, os subdomínios são documentados<br />

(Sub-atividade AD.3.5).<br />

Sub-atividade AD.3.1. Seleção de candidatos a subdomínio<br />

O objetivo desta sub-atividade é identificar potenciais subdomínios dentro do domínio.<br />

O analista do domínio tenta identificar, com base nas <strong>in</strong>formações coletadas e com o auxílio<br />

das diretrizes descritas anteriormente, possíveis subdomínios. Apesar do conhecimento do<br />

especialista do domínio ser a pr<strong>in</strong>cipal fonte de <strong>in</strong>formação para execução desta tarefa, o<br />

modelo de features pode ser útil. Observando-se o modelo de features, o analista pode<br />

identificar palavras-chave que representam um subdomínio. Conforme destacado por (MAIDEN;<br />

SUTCLIFFE, 1996), a categorização natural do domínio é a melhor <strong>in</strong>dicação de onde encontrar<br />

um subdomínio.<br />

Lee & Kang apresentam a técnica de análise de agrupamento de features (LEE; KANG, 2003),<br />

que pode ser utilizada nesta atividade. A técnica se baseia na identificação das unidades de<br />

agrupamento de features (FBU - Feature B<strong>in</strong>d<strong>in</strong>g Units). Uma FBU é um conjunto de features<br />

relacionadas que juntas executam um serviço ou operação dentro do domínio, ou seja, devem<br />

coexistir para que este serviço esteja presente no produto f<strong>in</strong>al. Esta técnica tem o objetivo de<br />

auxiliar no processo de configuração dos produtos, determ<strong>in</strong>ando quais conjuntos de features<br />

estarão presentes dependendo da configuração desejada.<br />

O processo de análise das FBUs <strong>in</strong>icia-se com a identificação das features de capacitação<br />

que representam serviços <strong>in</strong>dependentemente configuráveis, ou seja, as macro funcionalidades<br />

pr<strong>in</strong>cipais do domínio que podem ser adicionadas ou removidas de um produto como unidades<br />

<strong>in</strong>dependentes. Normalmente, estas são as features localizadas no topo do diagrama. A partir<br />

destas features pr<strong>in</strong>cipais, percorre-se o modelo, <strong>in</strong>clu<strong>in</strong>do as demais features relacionadas que<br />

são necessárias para que esta macro função possa ser executada.<br />

Dentro de uma FBU identificada, podem existir features que são opcionais ou alternativas,<br />

podendo ser selecionadas de acordo com a necessidade do produto. Estes sub-conjuntos de<br />

features devem ser separados em FBUs diferentes, pois a exemplo das features de capacitação,<br />

também representam pontos de variação que podem ser <strong>in</strong>dependemente configuráveis.<br />

Cada FBU é potencialmente um candidato a subdomínio, porém esta não é necessariamente<br />

a melhor escolha. Pode-se, por exemplo, unir duas ou mais FBUs em um único subdomínio,<br />

<strong>in</strong>cluir ou remover features <strong>in</strong>dividualmente, ou mesmo sub-dividir uma FBU em mais de um<br />

subdomínio. Estas escolhas, porém, devem ser feitas somente mais adiante no processo, quando<br />

101

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

Saved successfully!

Ooh no, something went wrong!