Buscar

aula_10-11_bd_IESB_2013_1_sul_6

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)

Continue navegando