2019-2020 / INFO0009-2

Database (general organisation)

Duration

26h Th, 26h Pr, 25h Proj.

Number of credits

 Bachelor of Science (BSc) in Engineering5 crédits 
 Bachelor of Science (BSc) in Computer Science5 crédits 
 Master of Science (MSc) in Biomedical Engineering5 crédits 
 Master in business engineering (120 ECTS)5 crédits 
 Master in bio-informatics and modelling (120 ECTS)5 crédits 
 Master in geography: geomatics (120 ECTS)5 crédits 
 Master in mathematics (120 ECTS)6 crédits 
 Master in geography : geomatics and surveying (120 ECTS)5 crédits 
 Master in mathematics (60 ECTS)6 crédits 

Lecturer

Samuel Hiard

Language(s) of instruction

French language

Organisation and examination

Teaching in the second semester

Schedule

Schedule online

Units courses prerequisite and corequisite

Prerequisite or corequisite units are presented within each program

Learning unit contents

Introduction to databases and to information modelling. Entity-Relationship model. Relational databases and query languages. Dependency theory and relational database schema design. Physical data organisation and implementation of the relational model. Transaction management. Deductive and object-oriented databases, data warehouses, XML, Block-chain.

Learning outcomes of the learning unit

The objective of this course is to acquire the knowledge necessary to implement information systems build around a database. At the end of the course, the student will be able to build an application exploiting a database and will have a good knowledge of the properties of database management systems.

Prerequisite knowledge and skills

Familiarity with programming.

Planned learning activities and teaching methods

Theoretical lessons followed by problems on the lecture material.
Project involving setting up a database and accessing it through a web interface.
This project will be split into two parts.
The first part starts at the beginning of March and ends about 3 weeks later, and consists in the making of an entity-relationship diagram, the conversion into the relational model, and possibly normalizing.
The second part starts after the first part's deadline and ends at the beginning of May. You will, based on the work done in the first part, design and develop the database and its web interface. An entity-relationship model as well as some data will be provided. This part will have to be done in teams of students.

Mode of delivery (face-to-face ; distance-learning)

2nd semester- face-to-face

Recommended or required readings

Slides available on the course web site.
Updated slides will be available on the exercices' webpage. These are to be used preferably with respect to the slides that are available on Prof. Wolper's webpage.

Assessment methods and criteria

project grade (30%), written exam (70%), no oral exam.
Amongst the 30% for the project, the first part is worth 10% and the second part 20%.
This project is mandatory. A student who would not have submitted anything for both parts will automatically obtain an absence grade (A) for the totality of the course.

Work placement(s)

Organizational remarks

More informlation about this course can be found at http://www.montefiore.ulg.ac.be/~pw/cours/bd.html but use preferably the web page located at http://www.montefiore.ulg.ac.be/services/verif/cours/bd/exercices.html

Contacts

Teacher : Samuel Hiard and P. Wolper Tel.: 04 366 26 97 (SH)  e-mail: S.Hiard@uliege.be et Pierre.Wolper@ulg.ac.be Assistants: Samuel Hiard and another assistant (to be confirmed)

Adaptation of teaching commitments following the COVID-19 pandemic for the May-June 2020 session

Teaching methods implemented : distance-learning

Remote teaching continues via the UniCast system. As announced via this media, there are 3 lessons left : 
- April, 20th on oriented-object databases
- April, 27th on data warehouses
- May, 4th on NoSQL and blockchain
The practical lessons are also given via UniCast
The website is still available for any additional piece of information or for slides.

Assessment subjects

Skills
Be able to

  • Design an entity-relationship model from a text description
  • Convert an entity-relationship model to a relational model
  • Write a request in extended relational algrebra
  • Decompose a relation without loss or check if a decomposition is lossless and/or keeps the dependencies
  • Compute the closing of a set of attributes and the closing of a set of dependencies
  • Write a SQL request (CREATE TABLE or SELECT)
  • Use phpMyAdmin and MySQL
  • Write PHP and HTML code
  • Write an intentional predicate (potentially recursive), possibly by writing additional simpler intentional predicates in the first place.
  • Evaluate the extension of a predicated using the fixpoint method
  • Define a complex object type for an oriented-object database
  • Write an XML document and a DTD.
Knowledge
  • The knowledge required to master the above skills
  • Notion of key and superkey
  • Normal forms
  • Lossless decomposition algorithm
  • Definition and properties of functional dependencies and multiple values dependencies
  • Notion of set and multiset
  • Notion of primary key and foreign key
  • Design of a HDD and notion of RAID 0 and RAID 1
  • ISAM files (B-tree and Hash). Complexity of a joint (with or without index).
  • General principles of optimization
  • Principle of transaction, explicit locks (LOCK/UNLOCK) and isolation levels
  • Two phase rule
  • Safety condition on intentional predicates
  • Data warehouses. OLTP, OLAP, ROLAP, MOLAP
  • General principles of NoSQL, and differences w.r.t. classical relational models
  • Principle of an blockchain DB and its use in crypt-currencies.

Assessment methods

The written exam will occur on eCampus

Contacts

For your questions, use the "Discussion" section on eCampus.
You may also send me an email for more privacy.

Adaptation of teaching commitments following the COVID-19 pandemic for the Aug-Sept 2020 session

Assessment subjects

Identical to the content of the session in june

Assessment methods

Identical to the content of the session in june

Contacts

Identical to the content of the session in june