Bases de Dados

Unidade Curricular / Curricular Unit
BASES DE DADOS/DATA BASES

Ciclo de Estudos / Study Cycle
Engenharia Informática

Nome do Docente Responsável
António José Moreira Gonçalves

Nome do Docente Adicional
José Aser/Luís Alexandre Gomes

Objectivos de aprendizagem (conhecimentos, aptidões e competências a desenvolver pelos estudantes)
No fim do curso o aluno deve ser capaz de:
– desenvolver modelos semânticos (lógicos) relativos a sistemas descritos em texto; compreender a conversão de modelos lógicos em modelos físicos de Bases de Dados Relacionais (BD-R’s);
– criar e alterar a estrutura duma BD-R por recurso à sintaxe da linguagem SQL/DDL;
– manipular dados constantes de BD-R’s por recurso à sintaxe da linguagem SQL/DML;
– compreender a desnornalização duma BD-R existente com base em argumentos de desempenho;
– desenvolver e implementar uma política de segurança com base no SQL/DCL;
– utilizar, a nível elementar, as ferramentas de administração associadas ao SGBD.
Para além destas competências técnicas o aluno deverá ter apreendido a:
– interpretar texto e código alheio de modo a poder fazer reutilização do mesmo;
– usar, a nível elementar, as ferramentas de administração do SGBD.

Learning outcomes of the curricular unit
At the end of the course students should be able to:
– develop logical semantic models for systems described in text;
– understand the conversion of logical models into physical models of Relational Databases (R-DB);
– create and change the structure of a R-DB using the syntax of SQL/DDL;
– manipulate data from BD-R’s using the syntax of SQL/DML;
– understand the unnormalization, in terms of performance, of an normalized R-DB;
– define and implement a security policy using the syntax of SQL/DCL. In addition to these technical skills students should have seized on:
– interpreting text and code of others in order to be able to reuse it;
– using, at the elementary level, the administration tools associated with the DBMS.

Conteúdos programáticos
Noção empírica de Base de Dados Relacional (BD-R). Sistemas de Gestão de Bases de Dados (SGBD) e independência do desenho da BD. Critérios de desenho.
Teoria Relacional. Relações e Atributos. Dependências funcionais e multivaloradas. Chaves da Relação.
Esquema da relação. Redundância e inconsistência de dados. Eliminação da redundância e Formas Normais.
Modelação semântica de dados. Diagramas Entidade-Associação. Cardinalidade e Participação.
Associações de 1:N: Entidades atributivas e Dependentes. Associações de M:N: Entidades Associativas.
Associações de 1:1: Entidades Derivadas.
Conversão do Modelo Lógico em Modelo Físico. Implementação da BD: o SQL/DDL. A Integridade de domínio, de tabela e referencial.
Manipulação do conteúdo da BD: SQL/DML. Declaração de vistas, constrangimentos e asserções.
Privilégios de acesso: SQL/DCL.
Optimização do desenho físico. Desnormalização controlada. Sincronização da informação derivada: Triggers.
Transacções: Componente transaccional do SQL.

Syllabus
Empirical perception of a Relational Database (R-DB). The Database Management Systems (DBMS) and the independence of R-DB design. Design criteria.
Relational Theory. Relations and Attributes. Functional and multivalued dependencies. Keys. Scheme of the relation. Redundancy and inconsistency. Elimination of redundancy and Normal Forms.
Semantic data modelling. Entity-Relationship Diagrams. Cardinality and Participation. 1:N associations: Attributive and Dependent Entities. M:N Associations: Associative Entities. 1:1 associations: Derived Entities
(sub and super types).
Converting the Logic Model in a Physical Model. Implementation of database: SQL/DDL. Constraint definitions: implementation of Integrity rules of domains, tables and references.
Manipulation of DB contents: SQL/DML. Views, Constraints and Assertions.
Access Privileges: SQL/DCL.
Optimization of physical design. Controlled denormalization. Synchronization of derived data: Triggers.
Transactional component of SQL.

Demonstração da coerência dos conteúdos programáticos com os objectivos da unidade curricular
O conhecimento da Teoria Relacional e da modelação semântica de Dados permitirá ao aluno desenvolver modelos de dados lógicos;
O conhecimento SQL/DDL permitirá ao aluno converter modelos lógicos em modelos físicos, criar e alterar a estrutura duma BD/SQL;
O conhecimento do SQL/DML (incluíndo o conceito de transacção) permitirá ao aluno manipular o conteúdo duma BD/SQL;
A avaliação do desempenho das instruções DML permitirá ao aluno determinar as necessidades de desnormalização e de aplicação de Triggers para sincronização de informação derivada;
O conhecimento do SQL/DCL permitirá ao aluno desenvolver e implementar uma política de acesso à estrutura e ao conteúdo duma BD/SQL;
A necessidade de executar alguns dos exercícios resolvidos e o desenvolvimento de exercícios propostos, utilizando um SGBD pessoal, obrigará o aluno a dominar as ferramentas elementares de
administração;
A utilização de problemas resolvidos permitirá ao aluno ler código alheio e reutilizá-lo em novos exercícios.

Demonstration of the syllabus coherence with the Curricular Unit’s objectives
Learning the fundamentals of semantic data modeling will enable the student to develop logical data models;
Knowledge of Relational Theory and the SQL/DDL will allow students to convert logical models into physical models as well as create and modify the structure of a SQL-Compliant DB;
Knowledge of Relational Theory and the SQL/DML (including transactional features) will allow students to manipulate the contents of a SQL-DB;
Performance evaluation of queryes will allow students to understand the need to denormalize and apply Triggers to synchronize derived information;
Knowledge of the SQL/DCL, will allow students to develop and to implement a policy for access to the structure and the contents of a SQL-DB;
The need to run the solved and the proposed exercices require the student to master the basic tools of DBMS administration;
Understanding the code used in solved exercices, will allow the student to read code from other sources and reuse it in new exercices.

Metodologias de ensino (avaliação incluída)
Avaliação contínua: Realizar-se-ão nas aulas práticas 2 testes e 1 projecto de desenho e implementação de BD. A média destas provas contribui com um peso de 50% para a nota final. No final do semestre realizar-se-á um teste global com um peso de 50%. O aluno obterá aprovação se a média global fôr igual ou superior a 10 valores e as notas das duas componentes da avaliação não forem inferior a 8. Avaliação final: Os alunos realizarão um exame final composto de duas provas: um teste escrito e uma prova prática – projecto de desenho e de exploração de base de dados – com um tempo máximo de execução de 72 horas, discutida individual e presencialmente. Ambas as provas têm um peso de 50%. O aluno obterá aprovação se a nota final fôr igual ou superior a 10 valores e as notas das duas provas da avaliação não forem inferior a 8.
Notas em Avaliação Contínua, se positivas, dispensam a realização da prova correspondente da Avaliação Final e contribuem do mesmo modo para a formação da nota final.

Planned learning outcomes, teaching methods and assessment methods and criteria
Continuous evaluation: During the semester, students will answer 2 tests and participate in a small project. The average of these will contribute for half of the final grade. At the end of the semester will
be submited to a test, on all topics learned, also with a weight of 50%. Students will get approval if the overall average is equal to or higher than 10, and cumulatively, has not get less than 8 in either of the two
components of the evaluation.
Final Evaluation: Students without approval will hold a final exam composed of two components: a test and a small project, including design and contents management of the database, with a maximum
execution time of 3 days, discussed individually and in person. Both parts of the examination have a weight of 50%. Students will get approval if the final grade is equal to or higher than 10, and cumulatively,
has not get less than 8 in either components.

Demonstração da coerência das metodologias de ensino com os objectivos de aprendizagem da unidade curricular
Os exercícios resolvidos para execução em aulas laboratoriais e os propostos para resolução não assistida cobrem a totalidade dos objectivos propostos.
Os testes e o projecto realizado em aula prática permitem avaliar o grau de aprendizagem realizado ao longo do semestre.
A realização de provas finais globais permitem avaliar a coerência entre os diversos objectivos de aprendizagem propostos.

Demonstration of the teaching methodologies coherence with the curricular unit’s objectives
Exercises solved and exercises proposed to run in laboratory classes and for unattended resolution, cover all the course objectives.
The tests and the project, conducted in classroom practice, allow the evaluation of the learning achieved throughout the semester.
The completion of final examinations allow assessment of overall coherence between different learning goals proposed.

Bibliografia Principal / Main Bibliography
Formal concepts and Theory
Churcher, Clare, 2012, “Beginning Database Design: From Novice to Professional”, 2nd Edition , Apress
Elmasri, Ramez and Navathe, Shamkant B., 2010, “Fundamentals of Database Systems”, 6th Edition,
Addison-Wesley.
Date, C.J., 2005, “Database In Depth: Relational Theory for Practitioners”, O’Reilly.
Ullman, Jeffrey D., 1990, “Principles of Database and Knowledge-Base systems. Volume I: Classical
Database Systems”, Computer Science Press.
SQL Code
Date, C.J., 2009, “SQL and Relational Theory: How to Write Accurate Code”, O’Reilly.
Date, C.J. and Darwen, Hugh, 1996, “A Guide to The SQL Standard”, 4th Edition, Addison-Wesley
Professional

Universidade Lusófona
ECATI Escola de Comunicação, Arquitetura, Artes e Tecnologias da Informação

Departamento de Engenharia Informática e Sistemas de Informação
Edifício F, sala F.1.3
Direção — 217 515 500 (ext: 683)
Serviço de Apoio Tecnico-Admistrativo (SATA) — 17 515 500 (ext: 764)


Lisboa
Avenida do Campo Grande,
376 1749-024 Lisboa, Portugal
Tel.: 217 515 500 | email: info@ulusofona.pt
Porto
Rua Augusto Rosa,
Nº 24, 4000-098 Porto - Portugal
Tel.: 222 073 230 | email: info@ulusofona.pt

Gestão de conteúdos por Lucio Studer Ferreira © 2022 COFAC.