1O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, O que Martinho da.

Slides:



Advertisements
Apresentações semelhantes
Lógica de Programação APRESENTAÇÃO DA DISCIPLINA Prof.° Paulo Tong Prof.° Paulo Universidade Estácio.
Advertisements

Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Engenharia de Software
Análise de Casos de Uso.
Prof.: Bruno Rafael de Oliveira Rodrigues
Prof.: Bruno Rafael de Oliveira Rodrigues
Introdução a Banco de Dados
Introdução a Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
TEORIA DA COMPUTAÇÃO Parte III  Máquina de Turing
MODELAGEM DE SISTEMAS DE INFORMAÇÃO
Maurício Edgar Stivanello
Sistema Gerenciador de Banco de Dados SGBD
Gerência de Banco de Dados 1 Apresentação da Disciplina Profa. Sandra de Amo Bacharelado em Ciência Computação 2009 – 2.
Professora: Aline Vasconcelos
Prof. Carlos H. Marcondes
INSTITUTO FEDERAL FARROUPILHA
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
Sistemas de Informação
Sistema de Banco de Dados
Linguagem de Banco de Dados - SQL
Grupo 5: Fernando Lourenço Pinho Costa Rafael de Souza Santos
Bancos de Dados – SQL – parte 1
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Classes e objetos Modelagem
Análise de Casos de Uso Alexandre Motnteiro.
As Etapas para Conseguir Aprovação de um Projeto de Software
Administração de Sistemas de Informação Banco de Dados
Monitoria GDI Aula Prática
DIAGRAMA DE COMPONENTES
GERENCIAMENTO DE AQUISIÇÕES PMBOK
SQL Server 2012 Introdução a Modelagem de Dados
A área de banco de dados Cristina Paludo Santos –
Sejam bem vindos! Arquitetura de Sistemas Operacionais.
Tecnologias de Linguagens para Banco de Dados
Análise e Projeto de Sistemas para a Internet
Cap 2 – Processo de Software
Universidade São Marcos Curso: Gestão de Negócios Internacionais
Banco de Dados II Prof. Antônio Cordeiro.
Salas de Matemática.
IB 1 Introdução à Computação Apresentação do curso Fonte: Prof: Joseana Macedo Fachine na01.ppt.
BD.
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
TECNOLOGIA EM SISTEMAS PARA INTERNET Banco de dados em aplicativos WEB Aula /08/2011 Professor Leomir J. Borba- –
Prof. Alessandro Gonçalves
Fevereiro/ Resultado dos Projetos de Software Pesquisa Motivação.
Arquitetura do Software
Prof. Alexandre Vasconcelos
Análise e Projeto de Sistemas
Projeto de Banco de Dados
Apresentação do Curso de Ciência da Computação
Gerenciamento de Projetos
Por que estudar sistemas de informação?
Exercícios SGBD - CESPE
Análise e Projeto de Sistemas de Informação 2o. Semestre de 2014
Software engineering, the software process and their support M.M. Lehman Apresentadora: Tarciana Dias da Silva.
BANCOS DE DADOS ATIVOS Weyler M Lopes © Especialização em Banco de Dados.
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Banco de dados.
Divisão da Qualidade Assegurada Departamento da Qualidade
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
3a. OFICINA DE EDUCAÇÃO CORPORATIVA Desenvolvimento de Atividades de Educação Corporativa e Sistemas de Informação Profa. ELEONORA JORGE RICARDO Universidade.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Bancos de Dados Estrutura e Funcionamento de um SGBD
Banco de dados 1 Modelagem de Dados Utilizando MER
Banco de Dados e Internet
Projeto de Banco de Dados
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
Banco de Dados Parte 1 Profa. Ana Karina Barbosa Fevereiro/2008.
Transcrição da apresentação:

1O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) Vinícius Medina Kern De olho na tecnologia 12 a 14 de Julho/2004 Ciclo de palestras do Curso de Ciência da Computação – UNIVALI – São José

2O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Sumário da palestra O que Martinho entende Abstrações, abstrações… Como é que eles fazem isso? Abstrações são traduções de informação sobre um negócio para um modelo de BD de modelos de BD para um modelo genérico (interno) Fazendo sentido: como fazer o mundo bailar sem música Aplicações: arquitetura de SGBD, BDs com modelagem on-the-fly, modelos flexíveis Finalmentes

3O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, O que Martinho entende Sonhei que estava sonhando um sonho sonhado O sonho de um sonho magnetizado Martinho da Vila, Rodolfo e Graúna Enredo da Vila Isabel, 1980 (?) (Não é só ele...) Sonhei ter sonhado que havia sonhado. Em sonhos lembrei-me de um sonho passado, o de ter sonhado que estava sonhando. Manuel Bandeira

4O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstrações, abstrações... Como é que eles fazem isso? (1) projetar um sistema de banco de dados que aceita a entrada de dados relativos aos processos considerados no projeto, sem saber que dados são esses; (2) projetar um sistema de gerência de banco de dados (SGBD) que aceita a inclusão de qualquer projeto de banco de dados, sem saber que projeto é esse.

5O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Ponto 1: projetando um BD Abstração de dados ou modelagem de dados: é o que se faz para projetar um BD sem saber exatamente quais dados se vai manipular. Com o modelo ER, faz- se a abstração de entidades (tipos de objetos que existem no ambiente)

6O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Ponto 1: projetando um BD (cont.) Abstração de dados: Abstração de relacionamentos (associações relevantes/significativas entre as entidades)

7O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Ponto 1: projetando um BD (cont.) Abstração de dados projeto de BD: Desenho das estruturas de informação

8O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Concretizando as abstrações CREATE TABLE Filial ( idFil INTEGER NOT NULL, nomeFil VARCHAR(20), PRIMARY KEY (idFil) ); CREATE TABLE Departamento ( idFil INTEGER NOT NULL, numDepto INTEGER NOT NULL, nomeDepto VARCHAR(20), PRIMARY KEY (idFil, numDepto) ) FOREIGN KEY (idFil) REFERENCES Filial ); CREATE TABLE Setor ( idFil INTEGER NOT NULL, numDepto INTEGER NOT NULL, numSetor INTEGER NOT NULL, nomeSetor VARCHAR(20), PRIMARY KEY (idFil, numDepto, numSetor), FOREIGN KEY (idFil, numDepto) REFERENCES Departamento ); CREATE TABLE Produto ( idProd INTEGER NOT NULL, nomeProd VARCHAR(20), unProd CHAR(2), precoProd DECIMAL(10,2) PRIMARY KEY (idProd) ); CREATE TABLE Composicao-prod ( idComponente INTEGER NOT NULL, idComposto INTEGER NOT NULL, qtde_componente DECIMAL (10,3), PRIMARY KEY (idComponente, idComposto), FOREIGN KEY (idComponente) REFERENCES Produto, FOREIGN KEY (idComposto) REFERENCES Produto );

9O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstrações são traduções De um jeito semelhante ao engenheiro que muda uma matriz de base vetorial (porque é cartesiana, mas a cilíndrica seria mais conveniente para resolver seu problema), projetistas de bancos de dados mudam de base a informação sobre um domínio (negócio). Abstrações de dados, então, são traduções, mudanças de base. Domínio (ambiente de negócios)

10O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstrações são traduções (II) E o ponto 2? Como é que eles fazem??? (traduzir qualquer projeto de banco de dados, sem saber que projeto é esse, em um BD com manipulação de dados, indexação, controle de concorrência e recuperação de falhas etc. etc...)

11O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, É permitido pensar... Se, para projetar um BD, o projetista… …abstrai um modelo ou esquema da informação de um domínio… … que é capaz de representar quaisquer dados que combinem com o esquema projetado, Então, para projetar um SGBD que permita implementar BDs, o desenvolvedor… …deve abstrair um meta-esquema de BD… … que seja capaz de representar qualquer BD que combine com o meta-esquema projetado.

12O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstraindo abstrações Uma tentativa para aquele caso… 3 entidades que representam estruturas administrativas onde cada estrutura tem uma outra superior (ou não...)... dependendo do tipo de estrutura administra- tiva em questão que regula o vínculo que a estrutura tem com sua superior.

13O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstraindo abstrações (caso geral) O prefixo m (meta) serve para diferenciar objetos de negócios e objetos do metamodelo Esquema Org Esquema Prod

14O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Abstraindo de um outro jeito... CREATE TABLE Produto ( idProd INTEGER NOT NULL, nomeProd VARCHAR(20), unProd CHAR(2), precoProd DECIMAL(10,2) PRIMARY KEY (idProd) ); CREATE TABLE Montagem ( idComponente INTEGER NOT NULL, idComposto INTEGER NOT NULL, qtde_componente DECIMAL (10,3), PRIMARY KEY (idComponente, idComposto), FOREIGN KEY (idComponente) REFERENCES Produto, FOREIGN KEY (idComposto) REFERENCES Produto ); ___________________________________________________________________________ … CREATE TABLE Setor ( … FOREIGN KEY (idFil, numDepto) REFERENCES Departamento ); mEsquema (nmEsq,mEsquema (nmEsq, (nmEnt, (nmAtrib, dom, tam, isnull), mEsquema (nmEsq, (nmEnt, (nmAtrib, dom, tam, isnull), (nmAtribPK), (nmEntPai, (nmAtribFK)))) _______________________________________________________________________________ mEsquema (nmEsq, (nmEnt, (nmAtrib, dom, tam, isnull), (nmAtribPK), mEsquema (nmEsq, (nmEnt, (nmAtrib, dom, tam, isnull), (nmAtribPK), (nmEntPai, mEsquema (nmEsq, (nmEnt, (nmAtrib, dom, tam, isnull), (nmAtribPK), (nmEntPai, (nmAtribFK) mEsquema (nmEsq, (nmEnt, mEsquema (nmEsq) mEntidade (nmEsq, nmEnt) mAtributo (nmEsq, nmEnt, nmAtrib, dom, tam, isnull) mChave (nmEsq, nmEnt, nmAtribPK) mRelacionamento (nmEsq, nmEnt, nmEntPai) mChaveEstrangeira (nmEsq, nmEnt, nmEntPai, nmAtribFK)

15O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Usando o modelo Exemplo:

16O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Fazendo sentido (e o mundo bailar sem música nem guitarras) Para que eu possa comprar um SGBD que implementa meus BDs (cujos dados eu abstraio na forma de esquema), foi preciso que o fornecedor do SGBD abstraísse meus esquemas (e os de todo mundo) Para botar ordem na bagunça (como cada um projeta seu BD, como cada fornecedor constrói seu SGBD), a ANSI encomendou um estudo ao SPARC… …que produziu um documento, um framework para SGBDs – que podemos estudar para entender o que aconteceu com o mundo nos últimos 26 anos.

17O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Arquitetura ANSI-SPARC de 3 níveis (1978) Nível externoEsquemas externos Visões de usuário Nível conceitualEsquema conceitual Visão da comunidade Nível internoEsquema interno Visão física Projetistas de BDAnalistas, Programadores Desenvolvedores de SGBD

18O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Aplicações (para que serve isso?) Arquitetura de SGBD: para quem precisa construir um sistema de gerência de banco de dados. BDs modeláveis on-the-fly: quem pode querer isso? Talvez alguém que queira construir BDs de forma incremental. Modelos flexíveis: para suportar websites, portais, formulários configuráveis etc. Aprendizagem: para experimentar o mapeamento conceitual- interno. (Pois um bacharel tem responsabilidades diferentes da de um técnico…)

19O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Responsabilidade profissional Um curso técnico deve formar profissionais capacitados a usar as técnicas da profissão. Um curso superior deve formar profissionais com mais do que capacidade técnica (Currículo IFIP/Unesco-12 temas): 1.Representação da informação 2.Formalismo no proc. da informação 3.Modelagem da informação 4.Algoritmos 5.Projeto de sistemas 6.Desenvolvimento de software Potenciais e limitações Arquiteturas e sistemas de computador Comunicação baseada em computador Implicações sociais e éticas Habilidades pessoais e interpessoais Contexto e perspectivas mais amplas

20O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Finalmentes Projeto de iniciação científica Art. 170: Gerência de dados e metadados segundo um modelo interno de dados. Trata, entre outras coisas, da tradução da… … definição e manipulação de dados de negócios em SQL para… … manipulação de dados em SQL no modelo interno. E o que o Martinho da Vila entende de BD, mesmo?

21O que Martinho da Vila entende de BD? (sobre abstrações de abstrações e modelos internos de BD) © Vinícius Kern, Contato URL: CV Lattes: Governo do Estado de Santa Catarina (bolsa de pesquisa de iniciação científica, Art. 170 da Constituição Estadual. Profa. Fernanda Cunha, coordenadora, e colegiado do Curso de Ciência da Computação/SJ – pelo convite e organização do evento. Obrigado! Reconhecimento