Duration
Databases: design and implementation : 15h Th, 15h Pr
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts : 10h Th, 10h Pr
Number of credits
Lecturer
Databases: design and implementation : Christophe Debruyne
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts : Adrien Deliège, Maria Giulia Dondero, Nicolas Mazziotta, Stéphane Polis
Coordinator
Language(s) of instruction
French language
Organisation and examination
Teaching in the second semester
Schedule
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
Databases: design and implementation
This part of the course is a subset of INFO0009-2. The chapter numbers mentioned below correspond with those of INFO0009-2. Students interested in more technical aspects of (relational) databases (storage on file systems, indexing techniques, query optimization, ...) can request access to the other chapters.
The course content is divided into 6 chapters organized into 3 parts.
Part 1: Introduction to Databases and Database Design
Chapter 01: Introduction and Entity-Relationship Model.
- Definition of a database and introduction to jargon.
- The entity-relationship model for representing a UoD.
Chapter 02: The Relational Model and Relational Algebra
- The relational model as the theoretical basis of relational databases.
- A translation of the entity-relationship model into a relational model.
- Relational algebra as the query language of the relational model
- Definitions of update anomalies, functional dependencies and normal forms.
- Normalization process to avoid update anomalies.
Chapter 04: Relational Databases in Practice: Query and Update Languages
- Relational model and relational algebra in practice
- SQL Data Query Language (DQL) for querying data
- SQL Data Manipulation Language (DML) to manipulate data
- SQL Data Definition Language (DDL) to create the schemas.
- Defining transactions and concurrent access to databases
- SQL Transaction Control Language (TCL) to declare and manage transactions.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
This course aims to raise students' awareness of the practical uses of databases in the humanities, particularly philology, linguistics, art history, and semiotics. Through three sessions taught by experts from various fields, students will discover examples of scientific projects based on the exploitation of databases in specific contexts.
Learning outcomes of the learning unit
Databases: design and implementation
The objective of the course is to acquire the knowledge and technical mastery necessary for the realization of computer systems centered on a database. At the end of the course, you will:
- Master the terminology and jargon related to (relational) databases,
- Be able to create a database on a small or medium scale,
- Be able to create an application using a database.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
Upon completion of this course, students will be able to:
- Identify relevant uses of databases in several disciplines, particularly philology, linguistics, art history, and semiotics. The humanities, particularly philosophy, philology, and related disciplines.
- Analyze the specific issues related to the structuring and exploitation of data in a particular disciplinary context.
- Understand the methodological principles underlying the use of databases in research projects, particularly in philology, linguistics, art history, and semiotics.
- Establish connections between the fundamental and technical concepts covered in the first part of the course (modeling, queries, data integrity, etc.) and their practical applications in interdisciplinary scientific projects.
- Compare the relational model with other logical data representation models (XML, graphs, document-oriented models, etc.) based on the presented use cases, and justify the technical choices based on the specific needs of the disciplines concerned.
- Develop a critical reflection on the potential and limitations of using databases in the field of digital humanities.
Prerequisite knowledge and skills
Databases: design and implementation
Databases rely on many areas of computer science: formal logic, data structures, operating systems, programming languages, etc. To take this database course, it is imperative that you:
- Are proficient in Boolean algebra;
- Are proficient in using operating systems (e.g., using a terminal);
- Know about operating systems; and
- Are proficient in (procedural) programming.
The prerequisite or corequired learning units are presented within each program.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
Proficiency in programming and notions of algorithmic concepts, including the use of a computer environment (file management, navigation, word processing) and understanding of basic algorithmic logic.
Planned learning activities and teaching methods
Databases: design and implementation
The database course organizes four key learning events, three of which are linked to theory, practice, and project hours.
Theory: For the theory, knowledge will be transmitted based on a lecture supported by slides. You also have access to alternatives based on the same principle of transmission: a reference book and video recordings of the lessons. Small debates or discussions are sporadically organized during the presentations to deepen the understanding of certain aspects. These debates can also be used to introduce a new topic in a chapter.
Practical work: Each session begins with a simple exercise entirely developed by the teaching team. We expect you to follow each of these steps and ask us questions if necessary. Then you will perform training exercises. These exercises are intended to train you in the use of the techniques seen in class. Some practice sessions give you an environment in which to test your solutions. The solutions to these exercises are made available to you after the session.
Project: The goal of this project is to design and implement a database and develop an application that communicates with this database. The assistant and I are here to guide and support you. Unlike the exercises, where solutions are given, you will only be guided. Projects are realized in teams of three students. The project is divided into two parts.
- The first part begins in early March and ends about 3 weeks later, and consists of the realization of an entity-relationship model, the conversion to the relational model, and possibly normalization. This part will be done in a team of 3 students. Not only is the project more challenging (i.e., larger in size) than the exercises covered in class, but you will also gain hands-on experience in collaborative modeling. One of the biggest challenges in the field is making sure everyone agrees on a model and the meaning of the labels you choose for entities, relationships, and attributes.
- The second part begins after the deadline for the first part and ends in early May. Building on the work completed in the first part, the project involves implementing the database and an application using it. An entity-relationship model and a dataset will be provided. This part will be completed in teams of three students. While you will receive code examples that interact with another database, you will have to copy and adapt this code to the needs of the project and the database you need to implement. Some of these needs are straightforward, but others require integrating the knowledge and skills acquired during the theoretical and practical sessions. The tasks can be easily divided between you. You will work in a team because it allows you to understand and evaluate the work of others. The process of understanding and evaluating the work of others, and therefore collaborating towards a coherent whole, is a vital skill in the industry.
- The first type of activity is the overall feedback on the projects (common errors, observations, etc.). The global feedback also includes statistics about the grades and the session invites you to ask questions or open the discussion.
- The second type of activity is training tests, which are auto-evaluated (i.e., by you). These tests (not mandatory) prepare you for the exam. After this question, I share sample solutions, and we discuss the errors you want to share. You are invited to discuss and correct any errors made. I explain how the solutions are evaluated and scored during the exam.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
In the second part of the course, students participate in three thematic sessions dedicated to the concrete applications of databases in different disciplines of the humanities (in particular philology, linguistics, art history, and semiotics). These sessions, led by experts from these fields, present real projects implementing various data models (relational, XML, graph, document-oriented). The objective is to allow students to understand how data structuring adapts to the specific needs of each discipline, both for organization and analysis. These presentations are followed by critical discussions and guided reflections, where students are invited to establish links between the technical concepts studied in the first part and the disciplinary practices observed. The approach aims to foster interdisciplinary openness and cultivate critical thinking on methodological and epistemological issues related to database use.
Mode of delivery (face to face, distance learning, hybrid learning)
Databases: design and implementation
Face-to-face course
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
Face-to-face course
Course materials and recommended or required readings
Databases: design and implementation
Platform(s) used for course materials:
- eCampus
Further information:
The syllabus is compulsory. Information about course organization, course content, course objectives and course assessment can be found on this resource.
Slides are a required resource. Each chapter is accompanied by a detailed and complete slideshow. It is possible to study this course using only the slides, but you are encouraged to combine this with class attendance or the lecture recordings. Face-to-face lessons or recordings explain again, or illustrate certain points from different angles.
Exercise materials are highly recommended. The theoretical sessions introduce examples and these examples correspond to the (types of) exercises that we will approach during the practical work. However, the exercises can introduce new elements. These may include new operators, more elaborate or difficult examples, technical details, or special cases. Solutions will be available after the exercises, but you are strongly encouraged to attend and review those in preparation for the exam. This exercise also prepares you for the realization of your project.
Past exam questions, sample exam questions and project rubrics are highly recommended. All of these resources are made available, in due course, on eCampus. Although these are discussed in class, you will need to consult them to get a concrete idea of the expectations.
The reference book is optional. "Silberschatz, Abraham, Henry F. Korth, and Shashank Sudarshan. Database system concepts. Ed. 7. New York: McGraw-Hill, 2019." or the previous edition, as we only cover database basics. While the course material developed for this course is primarily based on this book, the course material has introduced the topics in a different order and presented them differently. For example, the book uses schematic notation, which is uncommon in the industry. However, this book may be useful for students who wish to learn the material at their own pace, in English, or who wish to revisit chapters differently. Copies of this book are available at the library. The authors have also kindly provided learning materials based on this book on a dedicated webpage (https://www.db-book.com/).
Video recordings are optional. The individual chapters are divided into logical parts. For each part, a video recording is available on YouTube. Links to YouTube videos are available on eCampus under each chapter. These videos are an alternative to live lessons.
Additional references shared on eCampus are optional. For some chapters, there are links to resources and articles. These are intended to provide additional guidance or (historical) context for those interested.
MySQL documentation is highly recommended for the project. Although we cover many functions in the course, having the MySQL documentation handy can be useful for the project. You can complete the project without additional documentation, but the documentation describes a set of functions that may be useful. If an exam question were to rely on a function not covered in class, that function would be described in the statement.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
Platform(s) used for course materials:
- eCampus
Further information:
Required course materials include the presentations used during the sessions, available on eCampus. Each speaker will suggest specific readings related to their discipline and the projects presented. These readings, which may be required or recommended depending on the case, will be communicated in advance and will form the basis for discussion during the thematic sessions. All documents will be made available to students as the course progresses.
Databases: design and implementation
Exam(s) in session
Any session
- In-person
written exam ( multiple-choice questionnaire, open-ended questions )
Written work / report
Further information:
Project grade (50%), written exam (50%).
Amongst the 50% for the project, the first part is worth 40% and the second part 60%.
This project is mandatory. A student who would not have submitted anything for either part will automatically obtain an absence grade (A) for the totality of the course.
Students who fail the first part of the project will receive a new assignment. Students who failed the second part of the project may submit a revised version.
The final grade will be determined using a weighted average of all evaluations. However, to be eligible for the weighted average calculation, students must attain a minimum grade of 8/20 on each assessment. Otherwise, the student's lowest assessment grade will be used as their final grade for the course.
Databases: applications to different disciplines in the Faculty of Philosophy and the Arts
Written work / report
Continuous assessment
Out-of-session test(s)
Further information:
Assessment for this unit is based on active participation and personal reflection by students around the thematic sessions.
- Mandatory attendance at all three sessions: Participation in the sessions is essential and constitutes a condition of validation. Any unexcused absence will fail the unit.
- Reflective report or (exclusive) multiple-choice questions after each session: At the end of each session, students will be required to write a personal report (2 pages) or answer a multiple-choice question. The expert giving the session chooses the assessment method. In a reflective report, students summarize the main ideas discussed and develop a critical reflection on a specific theme of the session. These reports will be submitted to the expert speaker and will be subject to a qualitative assessment (clarity, ability to summarize, relevance of the reflection). The objective of a multiple-choice question administered after a lesson is to assess the students' understanding of the material taught.
- Participation in a final roundtable: At the end of the three sessions, a roundtable will be organized, bringing together all participants. Students are invited to discuss the content covered, identify cross-disciplinary issues, and lead the discussion on convergences, tensions, and perspectives related to the use of databases in philology, linguistics, art history, and semiotics.
Work placement(s)
Organisational remarks and main changes to the course
Databases: design and implementation
More information about this course can be found at eCampus.
Contacts
Databases: design and implementation
Lecturer: Christophe Debruyne (c.debruyne@uliege.be)
Association of one or more MOOCs
Databases: design and implementation
There is no MOOC associated with this course.