CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  1.

Slides:



Advertisements
Apresentações semelhantes
Análise e Projeto Orientado a Objetos
Advertisements

Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
(Unified Modeling Language)
Implementação de um Sistema de Informações Georeferenciado (Geoufes) Utilizando Bibliotecas de Software Livres em Java Aluno: Geraldo Angelo Vassoler Orientador:
Maurício Edgar Stivanello
Projeto de Sistemas de Software
Um Processo Baseado em MDA para a Especialização de Mecanismos de Persistência Fabio Seixas Marques Seminário LES – 7 de abril de.
Mapeamento Objeto Relacional
Neide dos Santos Oscar Luiz Monteiro de Farias
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
Ferramentas CASE ERwin
Introdução a diagrama de classes e UML
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Seminário de Andamento UNILASALLE André Sandri Maio 2006 PROFILE EM UML PARA MODELAGEM SIMPLIFICADA DE INTERFACES GRÁFICAS EM APLICATIVOS.
Análise e Projeto de Sistemas
Roteiro Para o Trabalho do Módulo
Mapeamento de Objetos para Tabelas Relacionais
Administração de Sistemas de Informação Banco de Dados
TÉCNICAS DE PROGRAMAÇÃO II
Viabilidade de Construção de Software com MDD e MDA
Engenharia de Software e Sistemas de Informação e Gestão
Prof. Alfredo Parteli Gomes
Arquitetura e Linguagens
A área de banco de dados Cristina Paludo Santos –
Aula 1 Minicurso: Astah Ministrantes: André Martins; Camila Brondani;
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Validação experimental de uma abordagem baseada em busca para projeto de arquitetura de linha de produto de software Thelma Elita Colanzi Adaptação do.
Universidade Federal de Lavras - UFLA
Projeto de Sistemas de Software
Laboratório de Programação I Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
IF696 - Integração de Dados e DW
Franklin Ramalho DSC – UFCG CIn - UFPE
1.
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Modelagem de Dados Espaciais
Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006
1 Professor Claudio Benossi Aula 03 Engenharia de Software II.
Validação de Diagrama de
CSP-Z Disciplina: Especificação de Sistemas Distribuídos Mestrado em Ciências da Computação Aleciano Jr. Leonilson Barbosa
Banco de Dados Aplicado ao Desenvolvimento de Software
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
SPEM / EPF Composer Audrey Bezerra de Vasconcelos Qualidade de Software Prof. Alexandre Vasconcelos.
MPS – Aula prática Diagrama de Pacotes / Esteriótipos Web
1.
Modelando aspectos de Implementação
1.
Ferramentas de Suporte a MDD: Um Quadro Comparativo
Desenvolvimento de Software Dirigido a Modelos
Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML Natanael Maia Ana Paula Blois Cláudia Werner Grupo de Reutilização de Software Outubro/2005.
UML e a Ferramenta Astah
MDA – Model Driven Architecture Jean Elder – RARCS (2013-1)
Unified Modeling Language
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Banco de Dados Universidade do Estado de Santa Catarina
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
Daniel Paulo Banco de dados: é uma coleção/conjunto de registros relacionados.  Exemplo: O banco de dados de uma Universidade.
Projeto de Banco de Dados
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
IN1008 – Projeto Conceitual de BD
MDA na Prática Flávia Durans Pitta Marinho
CIn/UFPE – in1008 – Projeto Conceitual de Banco de Dados - Rafael J. Carício da Fonsêca  1.
OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE.
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
Projeto de Arquitetura de Software
/ de Abril de UFPE - Universidade Federal de Pernambuco Centro de Informática Pós-Graduação em Ciência da Computação Dissertação de Mestrado.
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  1

2 IN1008 – Projeto Conceitual de BD Model Driven Architecture – MDA Exemplos de aplicações de Perfis Por: Cláudia Carolina N. Souza

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  3 Roteiro Motivação Objetivo Principais Conceitos Envolvidos Estado da Arte Abordagem Prática Referências

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  4 Motivação:  A heterogeneidade é uma característica inerente dos sistemas computacionais atuais. Logo, não existe uma plataforma específica que seja utilizada para todos os propósitos;[7]  A abordagem MDA é utilizada para dar ênfase no desenvolvimento orientada a modelos em relação a tecnologia;  Nesse sentido, a UML é utilizada para especificar a notação e a semântica dos modelos;  Entretanto, a especificação UML não engloba todos os as aspectos de modelagem para cada plataforma ou domínio de modelagem específico;  Logo, para satisfazer a essas necessidades, a UML apresenta uma arquitetura extensível, para montar perfis; MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  5 Roteiro Motivação Objetivo Principais Conceitos Envolvidos Estado da Arte Abordagem Prática Referências

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  6 Objetivo:  Apresentar principais conceitos e exemplos de Perfis;  Apresentar a biblioteca da Infra-estrutura da UML;  Abordar as formas de definição de metamodelos: Estender UML e Metamodelo MOF;  Discutir a utilização de Profile UML versus Metamodelo MOF;  Abordar, suncitamente, OCL (Object Constraint Language) e XMI(XML Metadata Interchange);  Apresentar ferramentas de modelagem que suportam a criação e a utilização de perfis. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  7 Roteiro Motivação Objetivo Principais Conceitos Envolvidos Estado da Arte Abordagem Prática Referências

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  8 Principais Conceitos  Perfil É uma forma de prover extensões na UML através da utilização dos mecanismos de extensibilidade, tais quais: estereótipos, tagged values e restrições. [1] MDA - Exemplos de aplicações de Perfis Perfis foram introduzidos no UML 1.3 como uma maneira de estender a linguagem de modelagem. Na UML 2.0, foi inserido um novo mecanismo de extensão, o meta-modelo. Logo, o meta-modelo da UML é um modelo utilizado para definir o UML, sendo possível adicionar novas regras ao meta-modelo de forma a estender a UML. [8] Mecanismo que define uma linguagem para expressar um modelo

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  9 Principais Conceitos  Estereótipos Corresponde a um valor de propriedade aplicado a um elemento UML para estender suas propriedade e alterar ligeiramente sua semântica. A notação do estereótipo é feita por entre dois “guillemots”. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  10 Principais Conceitos  Tagged Values São propriedades extras que podem ser atribuídas aos estereótipos criados previamente, permitindo a inserção de informações adicionais. [8] Exemplo:  Autor de uma classe,ou data em que a classe foi criada. MDA - Exemplos de aplicações de Perfis Tagged Values são expressos na da seguinte forma: nome=valor : autor=“Cláudia” Delimitados com chaves: {autor=“Tom”, data_criação=“22/05/07”}

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  11 Principais Conceitos  Restrições Permitem especificar regras e restrições sobre elementos do modelo UML. Uma restrição é delimitada por chaves { }. Exemplo: MDA - Exemplos de aplicações de Perfis As restrições são expressas mais formalmente por meio da OCL

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  12 MDA - Exemplos de aplicações de Perfis Principais Conceitos  Object Constraint Language (OCL) Provê um conjunto de elementos para definir expressões; As expressões OCL não modificam o estado dos objetos, mas definem restrições sobre os mesmos; É utilizada para representar a semântica dos modelos que não podem ser representadas pelos diagramas UML. [7]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  13 Principais Conceitos:  XMI (XML Metadata Interchange) Especificação desenvolvida pela OMG; Baseada na XML; Permite que as ferramentas de modelagem de diferentes fornecedores possam exportar os modelos UML para XMI; Permite, também, trocar informações com base em qualquer metamodelo baseado na MOF; Possibilita que os fornecedores manipulem a saída de dados XMI das ferramentas de modelagem, transformando-a em outras formas, como código. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  14 Definindo um Perfil MDA - Exemplos de aplicações de Perfis Infra-estrutura da UML [1] Define os conceitos básicos para a modelagem da própria UML Estender o metamodelo UML e MOF

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  15 Profile UML versus Metamodelo MOF A vantagem de estender a UML através de perfis:  Possui ferramentas de modelagem UML que possuem suporte ao uso de perfis; Criar um novo metamodelo MOF:  Permite mecanismos de herança, classes, pacotes para criar metamodelos;  Entretanto, o único tipo de extensão entendido pelas ferramentas UML são através de profiles  As ferramentas, atuais, de modelagem suportam apenas o metamodelo UML. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  16 Roteiro Motivação Objetivo Principais Conceitos Envolvidos Estado da Arte Abordagem Prática Referências

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  17 Estado da arte  Há um número ilimitado de perfis; [1]  A proliferação de perfis é contrária ao objetivo da UML;  Nesse sentido, a OMG estabeleceu um processo de adoção para perfis, para que os especialistas no setor possam se juntar e formar perfis padrão para diversos domínios de modelagem; MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  18 Estado da Arte  Perfis Adotados pela OMG UML Testing Profile  Estende a UML para modelar informações no teste dos sistemas;  Permitir especificar testes em vários níveis, como: casos de teste no nível de integração de sistemas. UML Profile for Software Development Process  Usado com o Rational Unified Process (RUP), e tem suas origens no trabalho de Ivar Jacobson;  É definido somente através de estereótipos e restrições;  É responsável por introduzir os estereótipos de classe >, > e >. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  19 Estado da Arte  Web Application Extensions Propostos por Jim Conallen; Auxiliar na modelagem de aplicações web; Identifica os elementos específicos para a construção de aplicações web. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  20 Estado da Arte  UML Profile para Banco de Dados Desenvolvido pela Rational Software Corporation; O conceito de tabelas e relacionamentos usados em bases de dados são mapeados para os conceitos de classes e associações em UML. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  21 MDA - Exemplos de aplicações de Perfis  Tabelas: Modelada como uma classe, com o estereótipo >.

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  22 MDA - Exemplos de aplicações de Perfis  Views: Modelada como uma classe, com o estereótipo >. O estereótipo > : quando uma view modelada com dependência de duas ou mais tabelas.

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  23 MDA - Exemplos de aplicações de Perfis  Keys: Primary Key: única e identifica uma coluna na tabela. Representada pelo estereótipo >; Foreign Key: derivada do relacionamento com outras tabelas. Representada pelo estereótipo >; Em caso de uma Foreign Key ser usada como Primary Key, a combinação das chaves são representadas pelo estereótipo >.

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  24 MDA - Exemplos de aplicações de Perfis  Index: Estrutura física de rápido acesso aos dados. Representada pelo estereótipo >;

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  25 MDA - Exemplos de aplicações de Perfis  Relacionamentos: Classificados em: Non-Identifying : representa o relacionamento entre duas tabelas diferentes.

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  26 MDA - Exemplos de aplicações de Perfis  Relacionamentos: Classificados em: Identifying : representa o relacionamento entre duas tabelas dependentes.

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  27 Roteiro Motivação Objetivo Principais Conceitos Envolvidos Estado da Arte Abordagem Prática Referências

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  28 MDA - Exemplos de aplicações de Perfis ArgoCASEGEO e TerraLib ArgoCASEGEO – ferramenta CASE utilizada no projeto de banco de dados geogr á ficos;  Baseada no modelo conceitual de dados UML-GeoFrame; TerraLib – biblioteca de classes implementadas em C++. Adequada para o desenvolvimento de SIG.  Projeto open-source desenvolvido pelo Instituto Nacional de Pesquisas Espaciais (INPE).

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  29 O Modelo TerraLib  Tabelas de metadados: guardam os conceitos da biblioteca TerraLib, tais quais: projeção, layers, etc.  Tabelas de dados: armazenam a componente descritiva do dado. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  30 MDA - Exemplos de aplicações de Perfis O Modelo TerraLib  Tabelas de metadados Te_layer: armezena os layers, que são agregados de informações espaciais relacionadas a uma mesma região geográfica; Te_theme: armazena os temas, os quais representam subconjuntos de um layer; Te_view: armazena as vistas, as quais definem os temas que serão vistos conjuntamente; Te_projection: armazena a projeção geográfica utiliza; Te_representation: armazena a representação geométrica dos objetos geográficos; Te_layer_table: realiza a ligação entre um layer e sua tabela de atributos descritivos; [3]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  31 Módulo de Geração Automática – MGA Implementado utilizando as linguagens Java e C++; Recebe como entrada a identifica ç ão do dicion á rio de dados que cont é m o esquema conceitual a ser transformado (.xmi); Uma regra de transforma ç ão é aplicada para cada elemento do esquema conceitual de dados; MDA - Exemplos de aplicações de Perfis Descrição do Mapeamento aplicadas pelo MGA- TerraLib

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  32 Módulo de Geração Automática – MGA Regra 1 – Pacote  Conjunto de classes inter-relacionadas;  Cada pacote definido no esquema conceitual, uma te_view é gerada; MDA - Exemplos de aplicações de Perfis [11]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  33 Módulo de Geração Automática – MGA Regra 2 – Classes do Tipo Objeto Geográfico  Cada classe modelada como gera um te_layer;  Os atributos definidos na classe é transformado em uma tabela de dados descritivos te_layer_table MDA - Exemplos de aplicações de Perfis [11]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  34 Módulo de Geração Automática – MGA Regra 3 – Classes do Campo Geográfico  TerraLib, ainda, não trata de campos geográficos;  As representações são: pontos, linhas e polígonos;  Mapeado para um te_layer. MDA - Exemplos de aplicações de Perfis [11]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  35 Módulo de Geração Automática – MGA Regra 4 – Classes do Tipo Objeto Não Geográfico  Cada classe modelada como objeto não-geográfico gera apenas uma única tabela no banco de dados. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  36 Módulo de Geração Automática – MGA Regra 5 – Associação, Agregação e Composição  O mapeamento é baseado nas regras de transformação de relacionamentos especificadas de um SGBD relacional; MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  37 Módulo de Geração Automática – MGA Regra 6 – Generalização e Especialização  O mapeamento é baseado nas regras de transformação de relacionamentos especificadas de um SGBD relacional; MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  38 Arquitetura do MGA-TerraLib MDA - Exemplos de aplicações de Perfis DLL possibilita a comunicação entre o Parser JAVA e a biblioteca C++;

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  39 MDA - Exemplos de aplicações de Perfis Extensão UML (Profiles) MGA-TerraLib Esquema lógico-espacial no modelo TerraLib

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  40 Ferramentas de Modelagem  Together Architect Versão Trial de 15 dias MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  41 Ferramentas de Modelagem  Together Architect Versão Trial de 15 dias; Apresenta suporte de especificação visual de perfil de forma semelhante à proposta pela OMG; Suporta a especificação de restrições em OCL com o auxílio de um editor específico para esta linguagem. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  42 Ferramentas de Modelagem  AndroMDA Ferramenta open-source distribuída pela licença Berkeley Software Distribution (BSD); A geração de código das aplicações é realizada a partir de modelos estereotipados; O mapeamento para uma tecnologia específica é feito através do conceito de cartuchos (cartridge); Os estereótipos dos modelos UML são utilizados como guias para a geração de código MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  43 Ferramentas de Modelagem  AndroMDA MDA - Exemplos de aplicações de Perfis [7] Perfil UML

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  44 Ferramentas de Modelagem  Papyrus UML Baseada na UML 2.0; Ferramenta open source baseada no ambiente Eclipse; Armazena os próprios modelos no padrão XMI; MDA - Exemplos de aplicações de Perfis [12]

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  45 [1] - Pender,T., UML a Bíblia. Rio de Janeiro: Elsevier, [2] – Gazola, A., Sampaio, G. B., Filho, J.L., ArgoCASEGEO + TerraLib = banco de dados geográficos para aplicações Small GIS. [3] - Gazola, A., Filho, J.L., Projeto Automatizado de Banco de Dados Geográficos para Aplicações Small GIS. [4] – Kleppe, A., Warmer, J., Bast, W., MDA Explained. The Model Driven Architecture: Practice and Promise. [5] – TerraLib. Acessado em 15 de maio de MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  46 [6] – Pastor, O., Molina, J.C. Model-Driven Architecture in Practice – A Software Production Environment Based on Conceptual Modeling. [7] – Santos, H. L., PIMOBILE: Uma Abordagem de Desenvolvimento Dirigida por Modelos para Aplicações Móveis. Tese de Doutorado. Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco. [8] – Sandri, A., Betemps, C. M., Profile em UML para Modelagem Simplificada de Interfaces Gráficas em Aplicativos. UNILASALLE. MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  47 [9] – IBM- Rational Software. UML Data Modeling Profile. [10] – Borland.. Acessado em 22 de maio de2008. [11] – Daltio, J., Júnior, M. F. R., Filho, J. L., ArgoCaSEGEO – Uma Ferramenta de Código-Aberto para o Modelo UML- GeoFrame. [12] – Papyrus UML - MDA - Exemplos de aplicações de Perfis

CIn/UFPE – IN1008 – Projeto Conceitual de Banco de Dados - Prof. Robson Fidalgo  48