1 UNIVERSIDADE DO ESTADO DE SANTA CATARINA – UDESC CENTRO DE EDUCAÇÃO SUPERIOR DO ALTO VALE DO ITAJAÍ – CEAVI PLANO DE ENSINO DEPARTAMENTO: DSI – Departamento de Engenharia de Software DISCIPLINA: Modelagem Banco de Dados SIGLA: 35BAD PROFESSOR: Osmar de Oliveira Braz Junior E-MAIL: [email protected] CARGA HORÁRIA TOTAL: 72 PRÁTICA: 18 TEORIA: 54 CURSO(S): Engenharia de Software SEMESTRE/ANO: 1/2015 PRÉ-REQUISITOS: - PROGRAMAÇÃO I OBJETIVO GERAL DO CURSO: O Curso de Bacharelado em Engenharia de Software do CEAVI objetiva formar profissionais aptos a produzir sistemas de software de alta qualidade. Por alta qualidade, compreende-se softwares produzidos aplicando-se técnicas, métodos e ferramentas que permitam produzi-los como propriedades ergonômicas, funcionais, manuteníveis, seguros e de alto desempenho para as diversas áreas de negócio. Espera-se alcançar este objetivo por meio de uma formação que permita ao egresso desempenhar com plenitude suas atribuições profissionais com base em quatro pilares: competência técnica, multidisciplinaridade, postura ética e comportamento empreendedor. Objetiva-se então que o perfil adquirido pelo egresso ao longo do Curso o capacite para o atendimento de uma demanda nacional e principalmente regional, de modo que este possa se integrar ao mercado de forma plena e atuando nas diversas áreas do mercado de software. Os princípios que norteiam a formação profissional determinam as finalidades do Curso como sendo as seguintes: ● Formação técnica e profissionalizante sólidas, gerando competência em área de computação e engenharia de produção; ● Formação multidisciplinar abrangente, qualificando o acadêmico a interagir com as diversas áreas de negócio onde a tecnologia de software se insere, fortalecendo o seu espírito empreendedor; ● Formação humanística consistente, estimulando a ética profissional, a gerência de equipes e a liderança; ● Corpo docente movido pelo objetivo de obter-se excelência no ensino das práticas da Engenharia de Software. EMENTA: Conceitos básicos. Componentes de sistemas de bancos de dados. Modelagem conceitual. Modelo relacional. Álgebra e cálculo relacional. Mapeamento de esquema conceitual para esquema relacional. Restrições de integridade. Dependências funcionais e formas normais. Projeto físico: mapeamento do esquema relacional, índices, sintonização (otimização e redundâncias) e linguagem de definição de dados (DDL). SQL: comandos para inserção, alteração e exclusão de dados, e consultas simples. 2 OBJETIVO GERAL DA DISCIPLINA: Modelar um esquema relacional com base na especificação de requisitos apoiando as próximas fases do desenvolvimento de software e implementar o projeto físico de banco de dados objetivando a otimização. OBJETIVOS ESPECÍFICOS DA DISCIPLINA: - Adquirir os conceitos fundamentais da teoria de banco de dados; - Avaliar as vantagens e desvantagens de um SGBD na implantação de um sistema; - Identificar o melhor mecanismo de armazenamento de dados; - Construir modelos lógicos de dados consistentes e normalizados; - Construir e interpretar modelos lógicos de dados segundo a notação do modelo entidade e relacionamento; - Construir e interpretar modelos lógicos de dados usando a notação do modelo entidade e relacionamento estendido; - Construir ou converter modelos lógicos de dados para notações alternativas; - Dominar a UML para converter modelos lógicos de dados para diagramas de classes; - Escrever instruções em SQL DDL para criar tabelas de acordo com os modelos lógicos de dados; - Escrever instruções em SQL DML para manipulação e consulta em banco de dados. CRONOGRAMA DAS ATIVIDADES: Aula Data Horário Conteúdo 19/02 20:40 Apresentação do Plano de Ensino, Metodologia de Ensino e Métodos 01 de Avaliação. 1. Introdução 1.1. Abordagem Banco de Dados X Abordagem Processamento Tradicional de Arquivos1.2. Usuários 1.3. Vantagens e desvantagens do uso de um SGBD 1.4. Quando não utilizar Banco de Dados 1.5. História dos Bancos de Dados. 20/02 18:50 2 Conceitos de SGBD 2.1. Visão de Dados 2.2. Abstração de Dados. 02 2.3. Instâncias e Esquema 2.4. Independência de Dados 2.5. Modelo de Dados 2.6. Linguagem de Banco de Dados 2.7. Os Módulos Componentes de um SGBD 2.8. Classificação dos SGBDs 2.9. Arquiteturas de Banco de Dados 26/02 20:40 3.Modelagem de Dados Utilizando o Modelo Entidade 03 Relacionamento (ER) 3.1. Modelo de Dados Conceitual de Alto Nível 3.2. Entidades e Atributos 3.3. Tipos de Entidade, Conjunto de Entidade, Atributo Chave, e Conjunto de Valores. 3.4. Tipos, Conjuntos e Instâncias de Relacionamento, 3.5. Grau de um Relacionamento 3.6. Outras Características de um Relacionamento. 3.7. Diagrama Entidade e Relacionamento. 27/02 18:50 Exercícios de Modelagem usando ER com resolução e debate em sala 04 de aula Casos básicos. 05/03 20:40 Exercícios de Modelagem usando ER com resolução e debate em sala 05 de aula Casos básicos e atributos compostos. 06/03 18:50 Exercícios de Modelagem usando ER com resolução e debate em sala 06 de aula. Casos básicos. Atributos Multivalorados e Derivados. 07/04 08:00 Atividade a Distância – Exercícios de Teoria de Banco de Dados 07 12/03 20:40 08 Definição do Trabalho Semestral Exercícios de Modelagem usando ER com resolução e debate em sala de aula Casos Médios. Entidade Fraca. 13/03 18:50 Apresentação de Ferramenta Case para Modelagem de Dados usando 09 ER. 3 10 19/03 20:40 11 20/03 18:50 12 26/03 20:40 13 27/03 18:50 14 02/04 03/04 09/04 20:40 15 10/04 18:50 16 17 11/04 16/04 08:00 20:40 18 19 17/04 23/04 18:50 20:40 20 24/04 18:50 21 20:40 22 30/04 01/05 07/05 23 08/05 18:50 24 25 09/05 14/05 08:00 20:40 26 27 28 15/05 21/05 22/05 18:50 20:40 18:50 29 30 28/05 29/05 20:40 18:50 31 32 04/06 05/06 11/06 12/06 20:40 18:50 20:40 3.8. Modelo Entidade Relacionamento Estendido. ERE Exercícios de Modelagem usando ERE com resolução e debate em sala de aula. Casos avançados. Entrega da Proposta do Trabalho Semestral e Apresentação dos Temas. 3.8.5. Notações Diagramáticas Alternativas para Diagramas Entidade e Relacionamento, 3.8.6. Modelagem Conceitual de Objetos Utilizando Diagramas de Classes da UML. 1ª Prova (P1): Prova individual. Teoria de Banco de Dados e Modelagem do Projeto Lógico de um Banco de Dados usando ER . Feriado - Páscoa Feriado - Páscoa Apresentação de Ferramenta Case para Modelagem de Dados usando Notação Alternativa e Estudo de Caso Estudo de Caso utilizando UML. 4. O Modelo Relacional 4.1. Domínios, Tuplas, Atributos e Relações 4.2. Atributo Chave de uma Relação 4.3. Mapeamento do Modelo Entidade Relacionamento para o Modelo Relacional. Atividade a Distância – Exercícios de Modelagem ER Estudo de caso de mapeamento do Modelo Entidade Relacionamento e Estendido para o Modelo Relacional 4.4 Dicionários de Dados. Apresentação de ferramenta case para construção do dicionário de dados. Exercícios 4.5. Dependência Funcional, Normalização, Formas Normais, Outras Formas Normais. Exercícios aplicando Formas Normais. Feriado – Dia do Trabalho 5. Álgebra Relacional, Seleção, Projeção e Sequencialidade, Operações Matemáticas. Exercícios de Álgebra Relacional. 5. A Álgebra Relacional, Produto Cartesiano, Renomear, Junção Natural e Externa. Exercícios de Álgebra Relacional. Atividade a Distância – Normalização do Trabalho Semestral 2ª Prova (P2): Prova individual. Modelagem do Projeto Lógico de um Banco de Dados usando ERE, Modelo Relacional, Dicionário de Dados, Dependência Funcional e Formas Normais. Avaliação prévia do Trabalho Semestral Atividade a Distância – Exercícios de Modelagem ERE 6. SQL 7. SQL DDL. Regras de Integridade, Definição, Restrições, Chave Primária, Chave Estrangeira, Checagem, Valores default. Desenvolvimento do Trabalho Semestral 8. SQL DML, 8.1 Linguagem de Manipulação de Dados, 8.2 Esquema Base, 8.3. Estruturas Básicas(Select, From, Where, Rename, Order By, Like). Feriado – Corpus Christi Recesso Escolar Desenvolvimento do Trabalho Semestral 8.4. Composição de Relações (Tipos de Junções e Condições, Junção 4 33 18/06 20:40 34 19/06 18:50 35 36 25/06 26/06 20:40 18:50 37 02/07 20:40 Interna e Externa). 3ª Prova (P3): Prova individual. SQL - DDL e DML Select, Junção. 8.5. Modificações no Banco de Dados (Insert, Update, Delete). 8.6. Transação. TI - Entrega e Apresentação do Trabalho Semestral. TI - Entrega e Apresentação do Trabalho Semestral. Encerramento da Disciplina, Exercícios, Correção da Avaliação e Comentários e Devolução Trabalhos. Exame Final da Disciplina METODOLOGIA PROPOSTA: Aula expositiva e dialogada para apresentação do conteúdo utilizando retroprojetor ou datashow. Resolução de listas de exercícios individualmente e em grupo. Resolução e análise de casos com debate em sala de aula. Os casos são de áreas distintas e de grau de complexidade variado. Complementado com atividades em laboratório utilizando ferramentas case e um banco de dados relacional para implementar os casos. Trabalho de implementação para validar e testar os modelos criados. AVALIAÇÃO: No transcorrer do semestre teremos cinco avaliações. Serão três provas escritas e individuais referentes ao conteúdo lecionado e modelagem de casos, resolução de listas de exercícios e um trabalho semestral. As listas de exercícios envolvem a apresentação da resolução de 4 casos com debate em sala de aula. O trabalho semestral será a modelagem e desenvolvimento de um sistema. O tema e as atividades do trabalho semestral serão apresentados e discutidos no decorrer das aulas. As avaliações escritas serão avaliadas a clareza e objetividade, demonstração de conhecimento suficiente, capacidade de sistematização das idéias, ausência de dispersão ou de redundância das informações, observância das regras da norma culta. Nos exercícios, trabalho semestral será avaliado os seguintes critérios: - Apresentação Escrita: fundamentação teórica, clareza de idéias e correção gramatical. - Apresentação Oral: fundamentação teórica, clareza de idéias e argumentação. A média é feita através do calculo: Média = (P1*20 + P2*20 + P3*20 + LE*10 + TS*30) / 100 Onde P1, P2 e P3 são as provas, LE lista de exercícios e TS um Trabalho Semestral. O exame final será escrito e individual, referente ao conteúdo apresentado durante todo o semestre. Observações: As avaliações escritas após a sua correção serão entregues aos alunos para conferência e depois devolvidos ao professor. O aluno (a) que não realizar as provas na data estabelecida deverá preencher requerimento junto à secretaria para realização de avaliação em nova data. BIBLIOGRAFIA BÁSICA: ELMASRI, R.; NAVATHE, S. Sistemas de banco de dados. 4. ed. São Paulo: Pearson, 2005. HEUSER, C. A. Projeto de banco de dados. 6. ed. Porto Alegre: Bookman, 2008. RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de gerenciamento de banco de dados. São Paulo: McGraw-Hill, 2008. BIBLIOGRAFIA COMPLEMENTAR: COUGO, P. Modelagem conceitual. Rio de Janeiro: Campus, 1997. DATE, C. J. Introdução aos sistemas de banco de dados. Rio de Janeiro: Campus, 2004. GARCIA-MOLINA, H.; ULLMAN, J. D.; WIDOM, J. Implementação de sistemas de banco de dados. Rio de Janeiro: Campus, 2001.