proposta de uma abordagem formal para o gerenciamento de variabilidades em modelos uml com object...

49
PROPOSTA DE UMA ABORDAGEM FORMAL PARA O GERENCIAMENTO DE VARIABILIDADES EM MODELOS UML COM OBJECT CONSTRAINT LANGUAGE Mestrando: Anderson da Silva Marcolino Orientador: Prof. Dr. Edson A. Oliveira Junior

Upload: edson-oliveira-junior

Post on 25-Jun-2015

470 views

Category:

Education


1 download

DESCRIPTION

Seminário sobre andamento de pesquisa do mestrando Anderson Marcolino - 27.09.2012 - "Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language"

TRANSCRIPT

Page 1: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

PROPOSTA DE UMA ABORDAGEM FORMAL PARA O GERENCIAMENTO DE VARIABILIDADES EM MODELOS UML COM OBJECT CONSTRAINT LANGUAGE

Mestrando: Anderson da Silva MarcolinoOrientador: Prof. Dr. Edson A. Oliveira Junior

Page 2: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Agenda

• Motivação

• Linha de Produto de Software

• Abordagem SMarty

• OCL

• Objetivos do Trabalho

• Plano de Atividades

• Revisão Sistemática

• Dificuldades Encontradas

• Conclusões Parciais

Page 3: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Motivação

• Ausência de abordagens completas para o gerenciamento de variabilidade com o uso de UML, com nível de formalismo e consistência, propostas pela OCL;

• Facilitação no uso de LPS ao propor a utilização de conceitos conhecidos amplamente como a UML.

Page 4: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Linha de Produto de Software

• Abordagem que objetiva promover a geração de

produtos específicos com base na reutilização de

uma infraestrutura central - núcleo de artefatos -

formada por uma arquitetura de software e seus

componentes.

Page 5: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Linha de Produto de Software

• Vantagens:

• Maior reutilização de artefatos;

• Maximização de lucros;

• Diminuição do time to market;

• Diminuição de riscos;

• Produtos com maior qualidade;

• Contribuição para o aprimoramento.

Page 6: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Linha de Produto de Software

Figura 1 – Custo e Esforço no Desenvolvimento

Page 7: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Linha de Produto de Software

Figura 2 – Redução do Time to Market

Page 8: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Linha de Produto de Software

• Atividades Essenciais:

1. Desenvolvimento do Núcleo de Artefatos;

2. Desenvolvimento do Produto;

3. Gerenciamento de Linha de Produto.

• O Elemento principal no gerenciamento de uma LP é o

gerenciamento de variabilidade.

Page 9: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Gerenciamento de Variabilidade

Page 10: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Abordagem SMarty

Page 11: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Abordagem SMarty

Figura 2 – Rastreabilidade do SMartyProfile para o Meta-modelo da UML2

Page 12: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL

• OCL – Object Constraint Language(Linguagem

para Especificação de Restrições em Objetos).

• Linguagem formal usada para descrever

expressões em modelos da UML. • Estas expressões especificam condições invariáveis, que

devem ser asseguradas para o sistema que esta sendo

modelado ou permitem efetuar consultas sobre os objetos

que estão descritos no modelo(com auxilio de ferramenta).

Page 13: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL

• Onde usar OCL?• Como uma linguagem de consultas;

• Para especificar invariantes nas classes e em tipos no modelo de classes;

• Para especificar tipos invariantes para estereótipos;

• Para descrever pré e pós condições nas operações e métodos;

• Para especificar objetivos(conjuntos) para as mensagens e ações;

• Para especificar restrições em operações; e

• Para especificar regras de derivações para os atributos, para qualquer expressão em um modelo UML.

Page 14: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL

• Exemplo básico do uso de OCL:

context TypeName inv: 'this is an OCL expression with stereotype <<invariant>> in the context of TypeName' = 'another string‘

Fonte: OMG - Documents Associated With Object Constraint Language, Version 2.3.1

Disponível em <http://www.omg.org/spec/OCL/2.3.1/PDF>. Acessado em 19 de Set. 2012.

Page 15: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Na revisão sistemática adiante apresentada, notamos o a

utilização do OLC para gerar a verificação de

consistência(consistency checking), nosso principal interesse

no uso da OCL.

• Segue assim, as propostas dos estudos recuperados, e

conclusões sobre as mesmas, que servirão de base para o

trabalho futuro.

Page 16: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Streitferdt et al em seu trabalho Details of Formalized

Relations in Feature Models Using OCL propõem a utilização

de OCL para a verificação de consistência para o modelo de

características(feature model), estendendo-a, e apelidando-a

de A-OCL.

• Esta foi aplicada ao feature model definido na abordagem

denominada Feature Oriented Domain Analysis – FODA.

• Na proposta utilizou-se de parte da OCL para restringir e

identificar as variabilidades e escolhas das variantes para sua

solução, utilizando contextos matemáticos, contextos para

features com dependências(requires) e restrições(excludes).

Page 17: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

Figura 3 – Exemplo uso de OCL para Feature Model

Page 18: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Em sintese Streitferdt et al conclui que sua extensão permite

um fácil entendimento e visualização do modelo de

características, que, se demasiado grande pode dificultar o

entendimento, e levar a resolução de variabilidades errôneas.

Page 19: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Marinho apresente em seu trabalho A Proposal for Consistency Checking

in Dynamic Software Product Line Models Using OCL, aplicado a linhas de

produto de software dinâmicas, a aplicação de OCL para verificar se as

configurações dos produtos preservam suas restrições especificas.

• Este propõe a criação, utilizando o perfil UML de um profile UML para a LP

e um para modelo de contexto, indicando que, se utilizar os dois conceitos

em um diagrama, as relações mantidas no modelo podem dificultar,

principalmente em LP de larga escala.

Page 20: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Gomaa e Shin, em seu trabalho Multiple-view modelling and meta-

modelling of software product lines, apresenta regras de verificação de

consistência baseados no relacionamento entre meta-classes nos meta-

modelos. Tais regras, formalizadas utilizando OCL são utilizadas para

resolver inconsistências entre múltiplas visões em uma mesma fase ou em

diferentes fazes, e são utilizadas ainda para definir mapeamentos

permitidos entre múltiplas visões em diferentes fases.

• Gomaa e Shin deixam claro que sua proposta pode servir a qualquer LP

modelada em UML.

Page 21: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Na seção, trabalhos relacionados apresenta diversas abordagens, e ainda,

como tais efetuam o processo de checagem de consistência – nota-se ai o

apelo a uma validação manual, propensa a erros. E também, apresenta os

diversos mecanismos para efetuar a consistência, bem como para que tipo

de abordagem: desenvolvimento de sistemas únicos, ou com LP.

• Apresenta-se então todos os meta modelos da UML, e suas diferentes

visões, e a partir dai define-se a validação de consistência entre as

múltiplas visões, e em seguida, o PLUSEE(Product Line UML Based

Software Engineering Environment) e como utiliza-lo para a aplicação do

formalismo em tais visões.

Page 22: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Para a verificação de consistência utilizou-se ferramenta desenvolvida em

Java, para tal.

• Finalmente, em suas considerações, indica a necessidade de estender sua

abordagem aos demais modelos da UML, visto que apenas os inerentes a

LP foram utilizados, bem como aplica tal consistência a UML 2.0, uma vez

que a versão utilizada foi a UML 1.3, e ainda aplicar sua proposta em casos

de estudos maiores.

Page 23: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Apresentou-se aqui os trabalhos com maior destaque em

OCL, mas ainda há outros pontos a serem explorados nos

demais.

• Notadamente, há a necessidade de aplicar-se a

consistência em LP, visto que, com o aumento

significativo das variabialidades, e seus pontos de

variação, resolvê-las de forma incorreta pode acarretar

prejuízo ou gerar produtos inadequados ao domínio para

o qual foi projetado.

Page 24: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

OCL e Verificação de Consistência

• Não há trabalhos que apresentem a utilização de todos

os conceitos e notações que a OCL permite, e enriquecer

modelos UML para o gerenciamento de variabilidade, é

assim, garantir melhores produtos. Desenvolver uma

abordagem que atenda os mais diferentes nichos de

mercado se faz necessário, o que vem de encontro com o

trabalho aqui proposto.

Page 25: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Objetivos do Trabalho

• Realizar uma revisão sistemática sobre o uso de Diagramas de Interação, package merge e OCL, relacionados ao gerenciamento de variabilidade em linha de produto de software;

• Com o estudo dos resultados obtidos na Revisão, estender a abordagem SMarty para os diagramas da UML(sequência, colaboração e mecanismo de package merge) ;

• Apresentar um exemplo de aplicação da abordagem proposta;

• Executar um experimento com a nova extensão do SMarty;

Page 26: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Objetivos do Trabalho

• Compará-la com outras abordagens existentes: CVL (Common Variability Language) e PLUSEE(Product Line UML Based Software Engineering Environment);

• Identificar as abordagens e o modo como OCL está sendo aplicado aos modelos UML no gerenciamento de variabilidade, através dos resultados da Revisão Sistemática, e utilizá-la nos modelos presentes no SMarty;

• Comparar e avaliar os modelos UML do SMarty com OCL;

• Analisar os resultados obtidos.

Page 27: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

• Diagramas de Interação

• A interação é empregada para a modelagem do fluxo de controle de

uma operação, de uma classe, um componente, um caso de uso ou do

sistema como um todo.

• Existem dois diagramas que compões os diagramas de Interação:

Diagrama de Sequência e de Colaboração.

Page 28: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

• Diagrama de Sequência

• Diagrama de Sequência é uma das ferramentas UML usadas para

representar interações entre objetos de um cenário, realizadas através

de operações ou métodos (procedimentos ou funções);

• Construído a partir do Diagrama de Casos de Usos;

• O diagrama de sequência dá ênfase a ordenação temporal em que as

mensagens são trocadas entre os objetos de um sistema.

Page 29: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

Figura 4 – Exemplo Diagrama de Sequência

Page 30: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

• Diagrama de Colaboração

• Dá ênfase à ordenação estrutural em que as mensagens são trocadas

entre os objetos de um sistema.

Page 31: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

Fonte: OMG - UML Superstructure Specification, v2.0

Disponível em < http://www.omg.org/cgi-bin/doc?formal/05-07-04 >. Acessado em 20 de Set. 2012.

Figura 5 – Exemplo Diagrama de Colaboração

Page 32: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

• Package Merge

• Um package merge(mesclagem de pacotes) é um relacionamento direto entre dois pacotes, que indica que o conteúdo dos dois estão sendo combinados.

• Semelhante ao mecanismo de Generalização no sentido de que o elemento de origem conceitualmente adiciona as características do elemento de destino para as suas próprias características, resultando em um elemento que combina as características de ambos.

• Este mecanismo deve ser usado quando os elementos definidos em pacotes diferentes tem o mesmo nome e pretendem representar o mesmo conceito.

Page 33: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conceitos Relacionados

Fonte: OMG - UML Superstructure Specification, v2.0

Disponível em < http://www.omg.org/cgi-bin/doc?formal/05-07-04 >. Acessado em 20 de Set. 2012.

Figura 6 – Exemplo Package Merge

Page 34: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Plano de Atividades

Etapa Período Concluída

1-Cursar Disciplinas 02/2012 – 11/2012

2-Planejar e conduzir revisão sistemática 07/2012 – 09/2012

3-Realizar Exame de Proficiência 06/2012 Ok

4-Desenvolver um exemplo de aplicação e redigir um artigo

09/2012 – 12/2012

5-Elaborar projeto de mestrado 01/2013 – 03/2013

6-Defender projeto de mestrado 04/2013

7-Desenvolver projeto de mestrado 04/2013 – 11/2013

8-Escrita de dissertação e artigos 11/2012 – 12/2013

9-Defender Dissertação 02/2014

Page 35: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Atividades Complementares

• Desenvolvimento do site para abordagem SMarty e trabalhos

relacionados:

Figura 7 - Página Inicial site da Abordagem SMarty

Page 36: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Atividades Complementares

• Avaliação da JML(Java Modeling Language) para uso na dissertação:

• JML é uma linguagem de especificação de interface, de comportamento formal para Java, que contêm as notações essenciais usadas em DBC(Design by contract).

• Design by contract é um método de desenvolvimento de software. A ideia principal por trás do DBC é que a classe e seus clientes possuem um “contrato”. O cliente deve garantir certas condições antes de chamar um método definido pela classe e em troca, a classe garante certas propriedades que irá realizar após a chamada.

• Os contratos são definidos por código de programa, na linguagem de programação em si, e são traduzidos em código executável pelo compilador. Deste modo, qualquer violação do contrato, que ocorra enquanto o programa estiver em execução, pode ser detectada de imediato.

Fonte: The Java Modeling Language (JML)

Disponível em <http://www.eecs.ucf.edu/~leavens/JML/documentation.shtml> . Acessado em 19 de Set. 2012.

Page 37: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• BIOLCHINI et al.(2005) e KITCHENHAM et al. (2004)

• UMA REVISÃO SISTEMÁTICA SOBRE A UTILIZAÇÃO DE DIAGRAMAS DE INTERAÇÃO, PACKAGE MERGE E OBJECT CONSTRAINT LANGUAGE EM GERENCIAMENTO DE VARIABILIDADE

Page 38: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Objetivos da Pesquisa:

• Identificar as abordagens mais estudadas/utilizadas para estender o gerenciamento de variabilidade aos diagramas de interação da UML(Sequência e Colaboração) ;

• Identificar a utilização do conceito de package merge nos meta-modelos da UML e para modelos relacionados à Linha de Produto de Software, no que tange gerenciamento de variabilidade;

• Identificar o uso da Object Constraint Language para validação de meta-modelos em Linha de Produto de Software, mais precisamente em gerenciamento de variabilidade, formalizando-os;

Page 39: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Parâmetros de busca:

• Fontes: Base de dados eletrônicas indexadas ACM, Compendex, IEEE, Science Direct e Scopus, máquinas de busca eletrônica(Scirus - Elsevier e Google Scholar), conferências, workshops e consultas a especialistas.

• Idioma dos Trabalhos: Inglês,.

• Tipos de Documentos: artigos de conferências, anais de congressos, artigos de periódicos, livros/capítulos de livros, capítulos de teses e dissertação e relatórios técnicos, preferencialmente em formato PDF, ODT ou DOC/DOCX.

• Ano de Publicação: estudos que foram publicados a partir do ano de 2002;

Page 40: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Palavras-chave: “software”, “software product line”, “sequence diagram”, “collaboration diagram”, “package merge” e “object constraint language”.

• String de busca:

“software”

AND

(“product line” OR “product-line" OR "product-family" OR "product family" OR “family

of products" OR “variability”)

AND

(“sequence diagram” OR “collaboration diagram” “interaction diagram” OR OCL OR

“object constraint language” OR “consistency checking” OR “package merge” OR

“package merging”)

Page 41: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Processo de Seleção Preliminar

• Consulta, através da string pré-estabelecida, nas máquinas de busca e bases

indexadas;

• Leitura do título e resumo do trabalhos recuperados; e

• Utilização dos critérios de inclusão e exclusão, para seleção dos mais

relevantes.

• Processo de Seleção Final

• Leitura completa dos estudos pré-selecionados;

• Coleta de dados dos trabalhos selecionados, bem como a elaboração de um

resumo contemplando os pontos de destaque dos mesmos.

Page 42: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

IEEE; 32; 3.63%

ACM; 355; 40.25%

Compendex; 30; 3.40%Especialistas; 7; 0.79%

Google Scholar; 100;

11.34%

ScienceDirect; 279;

31.63%

Scirus; 26; 2.95%Scopus; 53; 6.01%

Estudos Obtidos por Fontes (Total: 882 Estudos)

IEEE ACM Compendex Especialistas Google Scholar ScienceDirect Scirus Scopus

Page 43: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Números Obtidos:• 882 estudos recuperados(100%);

• 33 estudos selecionados para leitura(3,74%);

• 9 estudos selecionados, porém repetidos.

• 12 trabalhos relevantes(1,36%).

Page 44: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

• Trabalhos Relevantes:ID Título Autor(es) Ano Fonte Busca Qualis /

Índice-H

Conferência, Periódico

ou Livro1 A Proposal for Consistency Checking in Dynamic Software

Product Line Models Using OCL

Marinho 2010 ACM A1 ICSE ACM/IEEE International Conference on Software Engineering

2 Details of Formalized Relations in Feature Models Using OCL Streitferdt et al 2003 IEEE B1 ECBS - IEEE International Conference and Workshop on the Engineering of Computer-Based Systems

3 Multiple-View Meta-Modeling of Software Product Lines Gomaa e Shin 2002 IEEE B1 ICECCS - International Conference on Engineering of Complex Computer Systems

4 Seamless Development of Software Product Lines Feature

Models to UML Traceability

Laguna et al 2007 ACM B1 GPCE - International conference on Generative programming and component engineering

5 A Software Product Line Approach for E-Commerce Systems Laguna e Hernández 2010 Compendex B2 ICEBE IEEE International Conference on e-Business Engineering

3 Multiple-view modelling and meta-modelling

of software product lines

Gomaa 2002 Compendex B2 ICECCS - International Conference on Engineering of Complex Computer Systems

9 Software Product Line Testing: a Feature Oriented Approach Lamancha et al 2012 Scopus B2 ICIT - IEEE International Conference on Industrial Technology

6 A Flexible Requirements Analysis Approach for Software

Product Lines

Guelfi e Perrouin 2007 Compendex B3 REFSQ-International working conference on Requirements engineering: foundation for software quality

5 A Verification Mechanism of Feature Models for

Mobile and Context-Aware Software Product Lines

Marinho et al 2011 Compendex C Brazilian Symposium on Software Components, Architectures and Reuse

11 Product Line Derivation with UML Ziadi et al 2003 Google

Scholar

C Software Variability Management Workshop - European Science Foundation - ESB

10 UML Support for Designing Software Product Lines:

The Package Merge Mechanism

Laguna e Marqués 2010 Scopus - Journal of Universal Computer Science, vol. 16, no. 17 (2010) J.UCS

12 Software Product Line Engineering with the UML:

Deriving Products

Ziadi e Jézéquel 2006 Google

Scholar

- Livro - Software Product Lines Springer Verlag (Ed.) (2006)

Page 45: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Revisão Sistemática

• Extração de informações dos trabalhos relevantes:• Título, Autores, Origem, Ano da Publicação, Publicação, Classificação

no Qualis, Fonte, Quantidade de Páginas, Palavras-chave e Visão geral

do trabalho.

Page 46: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Dificuldades Encontradas

• Muitos estudos, porém poucos relacionados

aos temas buscados – e ainda, mesmo alguns

dos selecionados são mesclados com outros

conceitos irrelevantes para a proposta.

Page 47: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conclusões Parciais

• Raros resultados da aplicação dos diagramas de

Colaboração da UML, bem como o mecanismo de

Package Merge;

• Poucos artigos abordam a aplicação de formalismo

com OCL aos modelos da UML no gerenciamento de

variabilidade;

Page 48: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Conclusões Parciais

• Desta forma há a necessidade de aprofundamento e

aplicação destes modelos e mecanismos, bem como

a aplicação do formalismo proposto pela OCL nos

modelos UML utilizados pela abordagem SMarty, e

finalmente a sua comparação com outras propostas

existentes.

Page 49: Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Modelos UML com Object Constraint Language

Perguntas?

PROPOSTA DE UMA ABORDAGEM FORMAL PARA O GERENCIAMENTO DE VARIABILIDADES EM MODELOS UML COM OBJECT CONSTRAINT

LANGUAGE

Anderson da Silva Marcolino – [email protected]