Um Protótipo Web do Módulo de Planejamento de Avaliações de Linha de Produto de Software Segundo o Método SystEM-PLA
1. UM PROTÓTIPO WEB DO MÓDULO DE
PLANEJAMENTO DE AVALIAÇÕES DE LINHA
DE PRODUTO DE SOFTWARE SEGUNDO O
MÉTODO SystEM-PLA
ORIENTADOR: PROF. DR. EDSON A. OLIVEIRA JUNIOR
ACADÊMICO: ALINE CRISTINA GONÇALVES DUMALAK
2. Linha de produto de software (LPS)
• É um grupo de sistemas de software que compartilham
características comuns.
• Produzir um conjunto de sistemas como uma linha de
produtos tem permitido as organizações a alcançar uma maior
qualidade e reduções significativas de custo e tempo de
mercado (SEI, 2010).
3. Atividades Essenciais de LPS
A figura foi adaptada de
(SEI, 2010)
• Desenvolvimento do núcleo de Artefatos que corresponde à
Engenharia de Domínio;
• Desenvolvimento do Produto que corresponde à Engenharia de
Aplicação;
• Gerenciamento de Linha de Produto.
4. Variabilidade
O gerenciamento de variabilidades está relacionado a todas as
atividades de desenvolvimento de LPS e deve conter, pelo menos, as
seguintes atividades (POHLl, 2007):
• Variabilidade
Funcionalidades (features) que distinguem as diferentes aplicações de
uma LPS.
• Ponto de variação (variation point)
Representação do sujeito da variabilidade em artefatos do domínio
enriquecidos com informação do contexto.
• Variante (variant)
Representação de um objeto da variabilidade em artefatos de
domínio.
Uma opção do ponto de variação.
5. SystEM-PLA
• O SystEM-PLA (Systematic Evaluation Method for UML-based
Software Product Line Architectures) é um Método de
Avaliação de Arquitetura de LP baseada em UML. Tal avaliação
considera as variabilidades, identificadas e representadas,
segundo a abordagem SMarty. (OLIVEIRA JUNIOR, 2010).
Figura acima mostras as fases do Método SystEM-PLA
6. SystEM-PLA
• A fase a qual o protótipo faz parte é a de planejamento.
• O objetivo da fase de planejamento é instanciar o MPA
(Atividades do Metaprocesso de Avaliação) que possui como
entrada os Modelos UML de LP, o Modelo de Características
de uma LP e realizar as suas atividades para estabelecer os
artefatos utilizados durante uma avaliação de ALP.
9. SMartyParser
O SMartyParser foi construído baseado no framework Open
Core (SDMETRICS, 2011) a linguagem utilizada foi Java, o
acadêmico responsável é o Leandro Lancelotti.
O parser possui um núcleo de artefatos para analisar
arquivos XMI e extrair os elementos de modelos UML.
O XMI é um padrão baseado em XML (Extensible Markup
Language) criado pela OMG (Object Management Group )
para facilitar o intercâmbio de metadados posicionamento,
ordem.
10. SMartyParser
O processamento do arquivo XMI é controlado através dos
arquivos:
• Metamodel Definition File (MDF)
Responsável por definir o metamodelo dos elementos
conhecidos da UML. Cada elemento tem seus atributos,
relacionamentos, tipo, meta – classe.
• XMI Transformation File (XTF)
É um padrão baseado em XML (Extensible Markup Language)
criado pela OMG (Object Management Group ) para facilitar
o intercâmbio de metadados.
14. Protótipo Web
O protótipo deverá exibir os dados em XMI de forma visual, por
meio do SMartyParser (LANCELOTI, 2012).
Permitindo que o usuário possa visualizar o modelo de
características de uma LPS, suas variabilidades, assim como o
relacionamento entre todos os artefatos envolvidos em uma
avaliação de LPS.
15. Protótipo Web
• Framework GWT
O GWT (Google Web Toolkit) é um framework para
desenvolvimento web que tem como objetivo facilitar a vida dos
desenvolvedores, pois a criação do código para geração da
interface é escrita usando Java e não JavaScript, os erros podem
ser descobertos em tempo de compilação.
• RPC
Programas (ou processos) podem chamar procedimentos
localizados em outras máquinas, sem declarar explicitamente as
funções send e receive.
Ideia simples e elegante, fazendo a chamada remota se par
ecer o máximo possível com a chamada local
16. Próximos passos
• Ajuste no método do retorno dos relacionamentos entre as
variabilidades no SMartyParser.
• Exibição dos dados em formato de árvore, possibilitando a
marcação de uma ou mais variantes do ponto de variação.