V Workshop Anual do MPS - WAMPS 2009
Estudo de Viabilidade de Domínio para Avaliar o
Potencial da Organização Quanto à Implementação do
Processo Desenvolvimento para Reutilização
do MR-MPS
Mylene Lisbôa Cabral
Thiago Moreira da Costa
Cláudia Maria Lima Werner
COPPE/UFRJ
{mylene, thiagom, werner}@cos.ufrj.br
Roteiro
Introdução
Processo Desenvolvimento para Reutilização (DRU)
Abordagens para estudos de viabilidade de domínio
Considerações finais
Introdução
de software é o uso de
software existente para construir um novo
software
Reutilização
◦ Melhoria da qualidade do software
◦ Aumento da produtividade
◦ Redução do time-to-market
◦ Redução de custos
Introdução (cont.)
Desenvolvimento com reutilização
◦ Faz uso de técnicas de engenharia de aplicação para a
incorporar ativos reutilizáveis em novas aplicações (SOFTEX,
2009b)
Desenvolvimento para reutilização
◦ Faz uso de técnicas de engenharia de domínio para criar
ativos reutilizáveis relacionados à um domínio específico
(SOFTEX, 2009b)
Introdução (cont.)
MR-MPS
◦ Processo Gerência de Reutilização - GRU (Nível E)
◦ Processo Desenvolvimento para Reutilização –
DRU (Nível C)
Processo Desenvolvimento
para Reutilização - DRU
DRU1 - Domínios de aplicação em que serão investigadas oportunidades de
reutilização de ativos ou nos quais se pretende praticar reutilização são
identificados, detectando os respectivos potenciais de reutilização
DRU2 - A capacidade de reutilização sistemática da organização é avaliada e
ações corretivas são tomadas, caso necessário
DRU3 - Um programa de reutilização, envolvendo propósitos, escopo, metas e objetivos, é planejado com a
finalidade de atender às necessidades de reutilização de domínios
DRU4 - O programa de reutilização é implantado, monitorado e avaliado
DRU5 - Propostas de reutilização são avaliadas de forma a garantir que o resultado da reutilização seja
apropriado para a aplicação alvo
DRU6 - Formas de representação para modelos de domínio e arquiteturas de domínio são selecionadas
DRU7 - Um modelo de domínio que capture características, capacidades, conceitos e funções comuns, variantes,
opcionais e obrigatórios é desenvolvido e seus limites e relações com outros domínios são estabelecidos e
mantidos
DRU8 - Uma arquitetura de domínio descrevendo uma família de aplicações para o domínio é desenvolvida e
mantida por todo o seu ciclo de vida
DRU9 - Ativos do domínio são especificados; adquiridos ou desenvolvidos, e mantidos por todo o seu ciclo de vida
Processo Desenvolvimento
para Reutilização - DRU
Oportunidades
(DRU1)
Capacidade
(DRU2)
Sim
Sim
- Os demais resultados do DRU são obrigatórios
Sim
Não
- Deve executar ações corretivas para gerar
capacidade
- Deve comprovar que essas ações corretivas estão
em andamento
- Os demais resultados podem ser excluídos dessa
avaliação
- Para a próxima avaliação, dentro de 3 anos, deve
obrigatoriamente ter construído a capacidade
Não
Excluído
- Deve mostrar, via processo formal de tomada
de decisão, que não existem oportunidades de
reutilização
- Os demais resultados podem ser excluídos
enquanto houver ausência de oportunidades de
reutilização (nessa e em próximas avaliações)
(SOFTEX, 2009b)
Solução
Proposta
Utilização de abordagens para o estudo de
viabilidade de domínio como mecanismo formal
de tomada de decisão para avaliar o potencial
da organização com relação à adoção do
processo Desenvolvimento para Reutilização
(DRU)
Abordagens para Estudo de
Viabilidade de Domínio
Estudo de Viabilidade no ODM (Organization
Domain Modeling) (Simos et al., 1996)
Estudo de Viabilidade no Odyssey-DE (Braga, 2000)
PuLSE-Eco V2.0 (Schmid, 2001)
Avaliação de Linha de Produto Orientada a
Objetivos (Geppert e Weiss, 2003)
Estudo de Viabilidade no
ODM
ODM (Organization Domain Modeling) é um modelo de
processo de engenharia de domínio
Fases do ODM
◦ Planejamento do Domínio
◦ Modelagem do Domínio
◦ Construção da Base de Ativos
Planejamento do Domínio
◦ Definir objetivos
◦ Definir escopo do domínio
◦ Definir domínio
Estudo de Viabilidade no
ODM (cont.)
Matriz domínio/critério
Critérios de seleção de domínio
Domínios candidatos
Pesos
Critério 1
Critério 2
Critério 3
Critério 4
1
1
2
1
-1
+1
+2
Total
+1
Domínio 1
-
+
+
+
+3
Domínio 2
-
-
+
0
0
Domínio 3
+
+
+
+
+5
Domínio 4
-
-
+
+
+1
Domínios com pontuação 0 são considerados sem potencial para
reutilização
Estudo de Viabilidade no
Odyssey-DE
Odyssey-DE é um processo de engenharia de domínio
Fases do Odyssey-DE
◦ Planejamento
◦ Análise de risco
◦ Análise de domínio
◦ Projeto do domínio
◦ Implementação do domínio
Planejamento
◦ Estudo de viabilidade de domínio
◦ Estimativa dos recursos requeridos
◦ Estimativa dos custos do projeto
Estudo de Viabilidade no
Odyssey-DE (cont.)
Critérios para seleção de domínios
Técnicos
1.Número de sistemas
existentes
2.Futuros sistemas a serem
desenvolvidos
3.Melhoramentos nos sistemas
existentes
4.Recursos técnicos disponíveis
para a ED
Organizacionais
1.Potencial para reutilização
2.Conhecimento em reutilização
na organização e experiência
prática na aplicação da
reutilização
3.Compromisso em nível
gerencial
4.Conhecimento do domínio
Sociais
1.Necessidade de se ter
informações do domínio para o
treinamento de novatos
2.Participação dos especialistas
no domínio
3.Consistência dos especialistas
do domínio
Estudo de Viabilidade no
Odyssey-DE (cont.)
Critérios
Faixa de Valores
Valores
Pesos
Pontos
1. Número de sistemas
existentes
0-1=0
1-2=1
3-5=2
6-n=3
3
5
15
2. Futuros sistemas a serem
desenvolvidos
0=0
1-2=1
3-4=2
5-n=3
3
7
21
…
…
…
…
…
Total de Pontos
101
Mínimo de pontos para que o domínio seja viável
70
Domínios com pontuação abaixo da potuação mínima
estabelecida são considerados sem potencial para reutilização
PulSE-Eco V2.0
PuLSE™ é uma metodologia para
desenvolvimento de linhas de produto de
software
PuLSE-Eco V2.0
◦ Mapeamento da linha de produto
◦ Avaliação de potencial de domínio
◦ Escopo da infraestrutura de reúso
PulSE-Eco V2.0 (cont.)
Matriz inicial de característica/produto
Existente
Planejado
Potencial
P1
P2
P3
P4
Característica 1.1.1
X
X
X
X
Característica 1.1.2
-
X
X
X
Característica 1.1.3
X
X
-
X
…
…
…
…
…
Característica 1.n.1
X
-
X
X
…
…
…
…
…
Sub-domínio 2.1
Característica 2.1.1
-
X
X
-
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
Característica m.1.1
-
X
-
X
Sub-domínio 1.1
Domínio 1
…
Sub-domínio 1.n
Domínio 2
PulSE-Eco V2.0 (cont.)
Dimensões de avaliação
Dimensões de Viabilidade
Maturidade
Estabilidade
Restrições de recursos
Restrições organizacionais
Dimensões de Benefícios
Potencial de mercado – externo
Potencial de mercado – interno
Similaridade e variabilidade
Acoplamento e coesão
Ativos existentes
PulSE-Eco V2.0 (cont.)
Dimensões de avaliação
Estabilidade
A. Padronização
1. Existem padrões para interfaces?
2. Existem padrões para subsistemas?
3. …
B. …
Respostas: Totalmente, Largamente, Parcialmente, Nenhum
Domínios são julgados sem pontencial para reutilização com base
nas entrevistas
Avaliação de Linha de Produto
Orientada a Objetivos
Etapas:
Objetivos para seleção dos domínios
Critérios
◦ Seleção dos domínios candidatos ao processo de reutilização
◦ Pontuação dos critérios e totalização dos objetivos
◦ Seleção do domínio mais adequado à reutilização
◦ Impacto corporativo do domínio
◦ Probabilidade de sucesso
◦
◦
◦
◦
Rentabilidade
Atividade
Independência
Viabilidade
Avaliação de Linha de Produto
Orientada a Objetivos (cont.)
Impacto Corporativo
Domínio Rentável
Domínio Ativo
RP. Qual é o potencial de
rentabilidade?
NP. Qual é o número de
produtos na sua linha de
produtos?
CR. Quão crítico/importante
é o domínio para o
mercado?
Probabilidade de Sucesso
Domínio Independente
AD. Quão ativo o domínio
será?
AC. Quão ativa é a base de
código?
ID. Quão independente é o
domínio?
Act = (2*AD + 1*AC)/3
Ind = ID
Rev = (3*RP + 1*NP +
2*CR)/6
Domínio Viável
C. Quão complexo é o
domínio?
M. Quão maduro é o
domínio?
DTC. Qual o tempo e o
custo de desenvolvimento?
RC. Quais são as restrições
de recursos?
EA. Temos ativos
existentes?
Via = (1*C + 1*M + 2*DTC +
2*RC + 2*EA)/8
Impacto Corporativo = (2*Act + 3*Rev) / 5
Probabilidade de Sucesso = (1*Act + 3*Ind + 4*Via) / 8
Avaliação de Linha de Produto
Orientada a Objetivos (cont.)
Alto
Baixo
Impacto corporativo
Domínios
Selecionados
Baixo
Alto
Probabilidade de sucesso
Domínios localizados no quadrante esquedo inferior podem
ser considerados com baixo potencial para reutilização
Comparação Entre as
Abordagens
Características
Abordagens
2**
3***
1*
4****
Critérios/questões pré- Não
definidos
Valor esperado para
1. Satisfaz (+)
critério/questão
2. Conflita (-)
3. Neutro (0)
Sim
Sim
Sim
Depende do
critério
Entre 0 e 1
Sim
Definição de pesos
para critérios/questões
Forma de totalização Fórmula
dos pontos
Sim
1. Totalmente
2. Largamente
3. Parcialmente
4. Nenhum
Não
Julgamento de
especialistas
Fórmula
Fórmula
* Estudo de Viabilidade no ODM.
** Estudo de Viabilidade no Odyssey-DE
*** PuLSE-Eco V2.0
**** Avaliação de Linha de Produto Orientada a Objetivos
Sim
Comparação Entre as
Abordagens (cont.)
Características
1*
Abordagens
2**
3***
Definição dos
domínios com algum
potencial para
reutilização
Domínios com Domínios com Julgamento de
maior
pontuação
especialistas
pontuação
acima da
mínima
estabelecida
Definição dos
domínios sem
potencial para
reutilização
Domínios com Domínios com Julgamento de
pontuação 0
pontuação
especialistas
(zero)
abaixo da
mínima
estabelecida
* Estudo de Viabilidade no ODM.
** Estudo de Viabilidade no Odyssey-DE
*** PuLSE-Eco V2.0
**** Avaliação de Linha de Produto Orientada a Objetivos
4****
Domínios
NÃO
localizados no
quadrante
inferior
esquerdo do
diagrama
Domínios
localizados no
quadrante
inferior
esquerdo do
diagrama
Comparação Entre as
Abordagens (cont.)
Características
Apresenta
subjetividade na
valoração de
critérios/questões
Mecanismo para
minimizar a
subjetividade
Abordagens
2**
3***
1*
Sim
Sim
Opções préFaixa de
estabelecidas: valores
+, - e 0
4****
Sim
Sim
Opções préestabelecidas:
T, L, P e N
Não
apresenta
* Estudo de Viabilidade no ODM.
** Estudo de Viabilidade no Odyssey-DE
*** PuLSE-Eco V2.0
**** Avaliação de Linha de Produto Orientada a Objetivos
Considerações Finais e
próximos passos
As abordagens permitem a identificação dos domínios
com maior pontencial de reutilização
Subjetividade das abordagens minimiza a precisão do
estudo de viabilidade
Próximos passos
◦ Realizar uma revisão sistemática (em andamento)
◦ Tentar definir um método de medição objetivo para cada um dos
critérios
V Workshop Anual do MPS - WAMPS 2009
Estudo de Viabilidade de Domínio para Avaliar o
Potencial da Organização Quanto à Implementação do
Processo Desenvolvimento para Reutilização
do MR-MPS
Mylene Lisbôa Cabral
Thiago Moreira da Costa
Cláudia Maria Lima Werner
COPPE/UFRJ
{mylene, thiagom, werner}@cos.ufrj.br
Download

15-Estudo-de-Viabilidade-de-Domínio-para-Avaliar-o