Skip to main content

Unit information: Databases in 2018/19

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Databases
Unit code COMSM0016
Credit points 10
Level of study M/7
Teaching block(s) Teaching Block 2 (weeks 13 - 24)
Unit director Dr. Bernhard
Open unit status Not open
Pre-requisites

COMSM1201 Programming in C

Co-requisites

COMSM0103 Object-Oriented Programming with Java

COMSM0104 Web Technologies

School/department Department of Computer Science
Faculty Faculty of Engineering

Description including Unit Aims

This unit provides students with some theoretical and practical fundamentals of databases. The taught material is mainly practice-oriented and aims to put students in a position where they can successfully work with real-world databases as a software developer.

Intended Learning Outcomes

On completing this unit, you will have practical experience using a real-world database system. You will in particular be able to:

  1. Distinguish the main types of databases (relational/SQL, NoSQL/KV, document, graph …) and their strengths and weaknesses, and be able to select a suitable type for a given application.
  2. Design and implement a schema for a database for a given use case, including evaluating the benefits of (de-)normalising certain parts of the data.
  3. Create, access and modify data in a database both directly from a SQL-based interface and indirectly from an application.
  4. Use SQL queries to answer relevant questions for a given data model.
  5. Explain how the data access layer works in an application and how it interacts with the application's interface and the database and implement the data access layer in a data-driven application.

Analyse basic problems related to performance and scalability of databases and propose suitable solutions such as normalisation, indexing, replication/load balancing or sharding.

Teaching Information

The unit will be taught in two phases. Phase 1 comprises 2 lectures/week and lab sessions where students practice working with databases, from schema design to query construction and execution.

Phase 2 comprises the final group project in which lectures and labs will be used as contact hours to support the groups on their projects as well as answering individual students' questions on the material of the entire unit.

Assessment Information

Two coursework assessments, one 60%, one 40%

Reading and References

The main source of material for this unit will be the slides and notes provided by the unit director. Students may also wish to consult the following literature (available in the Queens' library). Purchasing textbooks is not required for completing this unit.

T. Connolly & C. Begg. Database Systems: A Practical Approach to design, Implementation, and Management Addison Wesley 4th Edition 2004 ISBN: 0321210255 Price: £60.00

J.D. Ullman & J. Widom. A First Course in Database Systems Prentice Hall 3rd Edition 2007 ISBN: 013600637X Price: £58.99

B. Karwin. SQL Antipatterns: avoiding the pitfalls of database programming. ISBN: 978-1-93435-655-5

Feedback