Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 11 Disciplina Banco de Dados (BD)Disciplina Banco de Dados (BD) 1010ªª -- 1111ªª Aulas Aulas -- Construindo Modelos ERConstruindo Modelos ER2013/1 2013/1 -- CCON4A CCON4A -- ENGN6CENGN6C IESB SulIESB Sul 2 Planejamento - BD I - 2013/1 - (previsão) D S T Q Q S S D S T Q Q S S 1 2 1 3 4 5 6 7 8 9 2 3 4 5 6 7 8 10 11 12 13 14 15 16 9 10 11 12 13 14 15 17 18 19 20 21 22 23 16 17 18 19 20 21 22 24 25 26 27 28 23 24 25 26 27 28 29 30 D S T Q Q S S D S T Q Q S S 1 2 1 2 3 4 5 6 3 4 5 6 7 8 9 7 8 9 10 11 12 13 10 11 12 13 14 15 16 14 15 16 17 18 19 20 17 18 19 20 21 22 23 21 22 23 24 25 26 27 24 25 26 27 28 29 30 28 29 30 31 31 D S T Q Q S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 D S T Q Q S S 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 FEVEREIRO MARÇO ABRIL MAIO JUNHO JULHO LEGENDA Feriado / Recesso Aula Lançamento (P1, P2 e Subst) Início / Término Aulas Avaliação (P1, P2 e Subst) Edad 3 Banco de Dados (BD) Para assistir a aula: Para assistir a aula: éé necessnecessáário estar que o aluno esteja rio estar que o aluno esteja matriculado na disciplina matriculado na disciplina (deve estar na lista de chamada)(deve estar na lista de chamada) procurar a Coordenaprocurar a Coordenaçção do Curso ão do Curso para a solupara a soluçção de problemasão de problemas 4 LeiamLeiam CCóódigo de digo de ÉÉticatica ResoluResoluçção Conselho Superior não Conselho Superior nºº 02/201002/2010 de 12 de agosto de 2010de 12 de agosto de 2010 (dispon(disponíível na plataforma "vel na plataforma "BlackboardBlackboard")") Banco de Dados 5 BD Banco de Dados EE--mail para receber o material enquanto não mail para receber o material enquanto não estestáá dispondisponíível o site da disciplinavel o site da disciplina wpereira@cpovo.net BD - Enviar material 6 �� BIBLIOGRAFIABIBLIOGRAFIA �� Bibliografia bBibliografia báásica (ordem alfabsica (ordem alfabéética):tica): �� DATE, CHRISTOPHER JDATE, CHRISTOPHER J. . IntroduIntroduçção a Sistemas de Bancos ão a Sistemas de Bancos de Dadosde Dados. Rio de Janeiro: Campus, 2000. . Rio de Janeiro: Campus, 2000. �� HEUSER, Carlos AlbertoHEUSER, Carlos Alberto. . Projeto de banco de DadosProjeto de banco de Dados. 6.ed. . 6.ed. Porto Alegre: Porto Alegre: BookmanBookman, 2010, 2010 .. �� SILBERSCHATZ, Korth; SUDARSHANSILBERSCHATZ, Korth; SUDARSHAN. . Sistema de Banco Sistema de Banco de Dadosde Dados. 3. ed. São Paulo: Makron Books, 2005.. 3. ed. São Paulo: Makron Books, 2005. Banco de Dados (BD) 2 7 �� BIBLIOGRAFIABIBLIOGRAFIA �� Bibliografia complementar (ordem alfabBibliografia complementar (ordem alfabéética):tica): �� ELMASRI, R.; NAVATHE, S. BELMASRI, R.; NAVATHE, S. B. . Sistemas de Banco de DadosSistemas de Banco de Dados. 4. ed. São . 4. ed. São Paulo: Pearson Education do Brasil, 2005.Paulo: Pearson Education do Brasil, 2005. �� KROENKE, David MKROENKE, David M. . Banco de Dados: fundamentos, projeto e Banco de Dados: fundamentos, projeto e implementaimplementaççãoão. 6. ed. Rio de Janeiro: LTC, 1999.. 6. ed. Rio de Janeiro: LTC, 1999. �� MACHADO, Felipe Nery; ABREU, MauricioMACHADO, Felipe Nery; ABREU, Mauricio. . Projeto de Banco de Dados: Projeto de Banco de Dados: uma visão pruma visão prááticatica. 16. ed. São Paulo: . 16. ed. São Paulo: ÉÉrica, 2009.rica, 2009. �� MELO, Rubens NMELO, Rubens N. . Banco de Dados em AplicaBanco de Dados em Aplicaçções Clienteões Cliente--ServidorServidor. Rio . Rio de Janeiro: Infobook, 1997.de Janeiro: Infobook, 1997. �� SETZER, Valdemar W; SILVA, FlSETZER, Valdemar W; SILVA, Fláávio Soares Correavio Soares Correa. . Bancos de Dados: Bancos de Dados: aprenda o que são, melhore seu conhecimento, construa o seuaprenda o que são, melhore seu conhecimento, construa o seu. São Paulo: . São Paulo: Edgard BlEdgard Blüücher Ltda, 2005.cher Ltda, 2005. Banco de Dados (BD) 8 �� SITES PARA APROFUNDAMENTO E FERRAMENTAS:SITES PARA APROFUNDAMENTO E FERRAMENTAS: �� brModelo 2.0brModelo 2.0. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012. �� DBDesigner 4DBDesigner 4. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. �� MySQLMySQL. . Sistema Gerenciador de Banco de Dados MySQLSistema Gerenciador de Banco de Dados MySQL. Dispon. Disponíível vel em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. �� OracleOracle. . Sistema Gerenciador de Banco de Dados OracleSistema Gerenciador de Banco de Dados Oracle. Dispon. Disponíível em: vel em: <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. �� Power DesignerPower Designer. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. dispon. disponíível vel em: em: <http://www.sybase.com/products/modelingdevelopment/powerdesigne<http://www.sybase.com/products/modelingdevelopment/powerdesigner>. r>. Acesso em Acesso em 29 jul. 2012.Acesso em Acesso em 29 jul. 2012. Banco de Dados (BD) 9 FIES 10 Plano de Ensino 11 Plano de Ensino 12 Banco de Dados Formem as equipes para o 1Formem as equipes para o 1°° TrabalhoTrabalho Equipes de Equipes de 0303 ou ou 0404 integrantesintegrantes 11°° Trabalho publicado diaTrabalho publicado dia 12 Mar 13 (ter12 Mar 13 (terççaa--feira)feira) Data de entrega do 1Data de entrega do 1ºº Trabalho:Trabalho: 10 Abr 13 10 Abr 13 -- antes de iniciar a P1antes de iniciar a P1 3 13 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 14 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 15 Modelo Conceitual Modelo Conceitual Modelo Lógico Modelo Lógico Modelo Físico Modelo Físico Modelo de Banco de Dados Níveis de Abstração Analista organiza idéias (abstração da realidade) Mini-mundoMini-mundo Projeto de Banco de Dados Projeto de Banco de Dados Define Descreve BDBD Mundo real: Empresa 16 � Fases: Projeto de Banco de Dados Modelo conceitualModelo conceitual Modelo lógicoModelo lógico Esquema relacional Tipo_Produto (Codigo, Descricao) Produto (Codigo, Nome, Preco, Cod_Tipo) Cod_Tipo referencia Tipo_Produto) Esquema relacional Tipo_Produto (Codigo, Descricao) Produto (Codigo, Nome, Preco, Cod_Tipo) Cod_Tipo referencia Tipo_Produto) Modelo físicoModelo físico CODIGO DESCRICAO 1 COMPUTADOR 2 IMPRESSORA TIPO_PRODUTO CODIGO DESCRICAO PRECO COD_TIPO 1 DESKTOP DELL MODELO P III 2500 1 2 NOTEBOOK TOSHIBA L 1.7 3500 1 3 HP 692 C JATO DE TINTA 600 2 4 EPSON 1500 L LASER 1200 2 PRODUTO Banco de Dados BDBD 17 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 18 Variações de abordagens E-R � Variedade de abordagens E-R: � Notação tipo “Chen” � Notação da Engenharia de Informações � Notação MERISE4 19 Notação tipo “Chen” � Peter Chen - primeiro artigo sobre E-R � mais freqüente na literatura � estudado até o momento com algumas extensões 20 Notação da Engenharia de Informações � Início da década de 80 (Martin e Finkelstein) � Notação “James Martin” ou da Engenharia de Informações Notação para cardinalidade mínima e máxima Cardinalidade mínima: 0 Cardinalidade mínima e/ou máxima: 1 Cardinalidade máxima: n 21 Notação da Engenharia de Informações � Início da década de 80 (Martin e Finkelstein) � Notação “James Martin” ou da Engenharia de Informações Notação para cardinalidade mínima e máxima Cardinalidade mínima: 0 Cardinalidade mínima e/ou máxima: 1 Cardinalidade máxima: n 22 Notação da Engenharia de Informações � Admite apenas relacionamentos binários (uma linha conecta apenas 2 entidades). � Relacionamentos ternários ou maior: a entidade se conecta de forma binária as demais entidades � Atributos aparecem exclusivamente em Entidades � A notação para cardinalidade mínima e máxima é gráfica. O mais próximo do retângulo é máxima e o mais afastado é mínima � A cardinalidade se refere a entidade oposta (igual a notação de Chen) (máxima, mínima) (mínima, máxima) 23 Notação da Engenharia de Informações � Relacionamentos ternários ou maior: a entidade se conecta de forma binária as demais entidades � Generalização/especialização: subconjunto (subtipo) - aninhamento Generalização/ Especialização 24 Notação da Engenharia de Informações X “Chen” Engenharia de Informações “Chen” 5 25 Notação MERISE � Metodologia utilizada na França e bastante difundida na Europa � Semântica “participativa” 01 empregado está vinculado a: � no mínimo 01 e no máximo 01 departamento 26 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 27 Ferramentas de modelagem �� Na prNa práática devetica deve--se utilizar ferramentas de modelagemse utilizar ferramentas de modelagem: facilita : facilita modificamodificaçções e revisõesões e revisões �� Uso de Ferramentas CaseUso de Ferramentas Case:: �� Capacidade de ediCapacidade de ediçção diagramão diagramáática grtica grááficafica �� DicionDicionáário de Dados: pequeno BD onde todas as definirio de Dados: pequeno BD onde todas as definiçções ões descritivas do BD fica armazenadasdescritivas do BD fica armazenadas �� Exemplo: Exemplo: Oracle CaseOracle Case, , ErWinErWin, , DB DB MainMain,, etc.etc. �� Power DesignerPower Designer: http://www.sybase.com/: http://www.sybase.com/ �� DB DB MainMain: http://www.db: http://www.db--main.be/main.be/ �� BD DesignerBD Designer: http://fabforce.net/: http://fabforce.net/ 28 Ferramentas de modelagem � Uso de Programas de propósito geral: � Edição do DER: programa de desenho geral (Paint Brush, Word, Star Office, etc.) � Dicionário de Dados: processador de texto, planilha eletrônica, banco de dados, etc. 29 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 30 Propriedades de Modelos ER Problema ??? Analista: conhece a técnica Usuário: conhece o “negócio” Exata compreensão Modelo Conceitual Modelo Conceitual Modelo Lógico Modelo Lógico Modelo Físico Modelo Físico Modelo de Banco de Dados Modelo Conceitual Modelo Conceitual Modelo Lógico Modelo Lógico Modelo Físico Modelo Físico Modelo Conceitual Modelo Conceitual Modelo Lógico Modelo Lógico Modelo Físico Modelo Físico Modelo Conceitual Modelo Conceitual Modelo Lógico Modelo Lógico Modelo Físico Modelo Físico Modelo de Banco de Dados AnalistaAnalista organiza idéias (abstração da realidade) Mini-mundoMini-mundo organiza idéias (abstração da realidade) Mini-mundoMini-mundo Projeto de Banco de Dados Projeto de Banco de Dados Define Descreve Projeto de Banco de Dados Projeto de Banco de Dados Define Descreve BDBDBDBD Mundo real: EmpresaMundo real: EmpresaMundo real: Empresa Treinamento em modelagem 6 31 Propriedades de Modelos ER � Modelo formal não ambíguo: mesma visão diversos observadores � Utilização de ferramenta CASE (Computer Aided Software Engineering – Engenharia de Computador Suportada por Computador): modelo ER como entrada para geração do BD 32 Propriedades de Modelos ER � Abordagem ER: poder de expressão limitado p4, p7 marido esposa marido esposa p1,p3 p5 p2 p6p3 p7 p4 p1 p4, p7p4, p7p4, p7 marido esposa marido esposa marido esposa marido esposa p1,p3p1,p3p1,p3 p5 p2 p6p3 p7 p4 p1 p5p5 p2p2 p6p6p3p3 p7p7 p4p4 p1p1 p4, p7p1,p3 p5 p2 p3 p7p4 p1 p6 p3,p6 esposa marido marido esposa p4, p7p4, p7p4, p7p1,p3 p5p5 p2p2 p3p3 p7p4p4 p1p1 p6 p3,p6p3,p6 esposa marido marido esposa 33 Propriedades de Modelos ER � Abordagem ER � poder de expressão limitado: � Restrição de integridade através do modelo E-R � Restrição de integridade a parte do DER 34 Propriedades de Modelos ER � Equivalência de modelos: � Ambos geram o mesmo esquema do BD � Nomes (atributos, etc.) diferentes mas a mesma estrutura 35 Código Número do chassi AUTOMÓVEL Cor Propriedades de Modelos ER � Atributos X Relacionamento : � Uma única cor � Caracteriza a Entidade � Valor é fixo durante a vida do sistema (domínio) � Objeto vinculado a outros (atrib, rel, etc.) � Objeto necessita conter atributos � Objeto se relaciona a outra(s) entidade(s) � Transações sobre o objeto (criação/eliminação) 36 Propriedades de Modelos ER � Atributos X generalização / especialização : � Classes especializadas possuem propriedades (atributos, relacionamentos, etc.) aonde modelar ?? 7 37 Propriedades de Modelos ER � Atributos opcionais: � Podem indicar subconjuntos de entidades modelados mais corretamente através de especializações 38 Propriedades de Modelos ER � Atributos multivalorados: � Não há implementação direta em SGBD relacional � Pode induzir a erro de modelagem por ocultar entidades e relacionamentos Nome CPF Código Dependente (0,n) Telefone (0,n) EMPREGADO 39 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 40 Verificação do Modelo ER � Modelo deve ser correto: � Evitar erros: � Sintático: não se respeita as regras de construção. Ex: associação atributo-atributo, atributo-relacionamento, relacionamento-relacionamento, etc. � Semântico: apesar de tecnicamente correto, o DER não reflete a realidade � Modelo deve ser completo: � verificar se todos os dados que devem ser obtidos do BD estão presentes no modelo de dados � Verificar se todas as transações que modificam o BD podem ser executadas sobre o modelo de dados 41 Verificação do Modelo ER � Modelo deve ser livre de redundância: � O modelo deve ser mínimo (não conter repetição) � Um relacionamento é redundante quanto é possível eliminá- lo sem haver perda de informação 42 Verificação do Modelo ER � Modelo deve ser livre de redundância: � Evitar atributos redundantes 8 43 Verificação do Modelo ER � Modelo pode representar aspecto temporal: � Atributos cujos valores se modificam ao longo do tempoCódigo Nome EMPREGADO (1, 1) (0, n) Data Valor SALÁRIO � BD armazena apenas salário atual � BD contém a história dos salários 44 EMPREGADO ALOCAÇÃO 1 MESA 1 EMPREGADO ALOCAÇÃO n MESA n Data Verificação do Modelo ER � Modelo pode representar aspecto temporal: � Relacionamentos que se modificam ao longo do tempo � Relacionamentos (1:1) ou (1:n) são transformados (n:n) � BD contém histórico das alocações� BD contém apenas a alocação atual ??? Identificador 45 Verificação do Modelo ER � Modelo pode representar aspecto temporal: � Relacionamentos que se modificam ao longo do tempo � Relacionamentos (1:1) ou (1:n) são transformados (n:n) � BD contém apenas a lotação atual � BD contém o histórico das lotações ??? Identificador 46 Verificação do Modelo ER � Modelo pode representar aspecto temporal: � Relacionamentos que se modificam ao longo do tempo � BD contém apenas a inscrição atual � BD contém o histórico das inscrições 47 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Ferramentas de modelagem � Estratégias de modelagem 48 Planejamento do Modelo ER � É conveniente que se implemente o Modelo E-R pensando em possibilidades futuras e não somente o presente � Consulta a dados referente ao passado: � Planejar o arquivamento de informações antigas � Planejar informações estatísticas Salário Código Nome EMPREGADO Código Nome EMPREGADO (1, 1) (0, n) Data Valor SALÁRIO 9 49 Roteiro da Apresentação � Introdução � Variações de abordagens do Modelo E-R � Ferramentas de modelagem � Propriedades de Modelos E-R � Verificação do Modelo E-R � Planejamento do Modelo E-R � Estratégias de modelagem 50 Estratégias de modelagem � (1) Partindo de descrições de dados existentes: � Engenharia reversa: obtem-se o modelo a partir de um produto existente (sistema de computador) � Quando são utilizadas descrições de documentos existentes: pastas, fichas, documentos, relatórios, etc. � Estratégia “bottom-up” (de baixo para cima): parte-se de conhecimento mais detalhado e abstrai-se para um modelo gradativamente. � Identifica-se inicialmente os atributos � Atributos são agregados em entidades � Entidades são relacionadas e generalizadas/especializadas 51 Estratégias de modelagem � (2) Partindo do conhecimento das pessoas: usa-se quando do desenvolvimento de novos sistemas e não se tem a descrição dos dados correspondente � Estratégias: “top-down” e “inside-out” � “top-down” (“de cima” para “baixo”): parte-se de conceitos mais abstratos e gradativamente vai-se refinando até se chegar aos conceitos mais detalhados. � “inside-out” (“de dentro para fora”): parte-se dos conceitos abstratos mais importantes (centrais, ou seja “de dentro”) e gradativamente adiciona-se conceitos periféricos relacionados (ir “para fora”) 52 Estratégias de modelagem - “top-down” � Estratégia “top-down” (resumo): � Identificação de entidades genéricas � Identificação dos atributos das entidades � Identificação dos relacionamentos e seus atributos � Especialização/generalização de entidades � Seqüência detalhada de passos: � Modelagem superficial � Modelagem detalhada � Validação do modelo 53 Estratégias de modelagem - “top-down” � Seqüência detalhada de passos: � (1) Modelagem superficial: � Enumeração das entidades � Identificação dos relacionamentos e hierarquias de generalização/especialização entre as entidades � Determinação dos atributos das entidades e relacionamentos � Determinação de identificadores de entidades e relacionamentos � Verificação do aspecto temporal 54 Estratégias de modelagem - “top-down” � Seqüência detalhada de passos: � (2) Modelagem detalhada: � Adição os domínios dos atributos � Define-se as cardinalidades mínimas dos relacionamentos � Define-se demais restrições de integridade que não podem ser representadas pelo DER � (3) Validação do modelo � Procura-se construções redundantes � Valida-se o modelo com o usuário 10 55 Estratégias de modelagem - “inside-out” � Estratégia “inside-out” (resumo): � Identificação de uma entidade importante do modelo preferencialmente central, a qual relaciona-se com várias outras � Identificação de atributos, entidades relacionadas, generalizações/especializações da entidade em foco � Continuação do processo recursivamente até sua conclusão 56 Estratégias de modelagem - “inside-out” � Estratégia “inside-out”: DOMÍNIO PROCESSADOR DE TEXTO PARTIPAÇÃO PROJETO GERÊNCIA (1, n) (0, 1) (0, n) (0, n)(0, n) (1, n)
Compartilhar