Skip to navigation | Skip to main content | Skip to footer
Menu
Menu

COMP20312: Fundamentals of Databases (2008-2009)

This is an archived syllabus from 2008-2009

Fundamentals of Databases
Level: 2
Credit rating: 10
Pre-requisites: COMP20341 desirable
Co-requisites: No Co-requisites
Duration: 11 weeks
Lectures: 13 in total, 1 per week + Introductory Lecture
Lecturers: Simon Harper
Course lecturer: Simon Harper

Additional staff: view all staff
Timetable
SemesterEventLocationDayTimeGroup
Sem 2 w19-26,30-33 Lecture 1.1 Fri 12:00 - 13:00 -
Sem 2 w19-26,30-33 Lecture 1.1 Mon 12:00 - 13:00 -
Sem 2 w20,22,24,26,31,33 Examples LF15 Fri 10:00 - 11:00 G
Sem 2 w20,22,24,26,31,33 Examples LF15 Wed 10:00 - 11:00 F
Sem 2 w21,23,25,30,32 Lab UNIX Fri 09:00 - 11:00 G
Sem 2 w21,23,25,30,32 Lab UNIX Wed 09:00 - 11:00 F
Sem 2 w21,23,25,30,32 Lab UNIX Tue 09:00 - 11:00 H
Assessment Breakdown
Exam: 70%
Coursework: 0%
Lab: 30%
Degrees for which this unit is core
  • Artificial Intelligence BSc (Hons)

Aims

The aim of the course is to provide students with an overview of database management system architectures and environments, an understanding of basic database design and implementation techniques, and practical experience of designing and building a relational database.

Learning Outcomes

A student completing this course unit should:

Be able to discuss/explain the importance of data, and the difference between file management and databases. (A)
Be able to discuss/explain the design of database management system architectures and environments (in particular the Ansi-Sparc model). (A)
Be able to discuss/explain the principals of database design. (A)
Be able to discuss, explain and apply conceptual design methodologies, in particular conceptual design using Extended Entity Relationship modelling. (A, B, C, D)
Be able to discuss, explain and apply the relational model and mappings from conceptual designs, in particular normalisation. (A, B, C, D)
Be able to discuss/explain physical and performance related design considerations. (A)
Be able to discuss/explain transaction processing. (A)
Be able to discuss, explain and apply SQL and the Oracle DBMS. (A, C, D)

Assessment of Learning outcomes

Examination (70%) and laboratory (30%)

Contribution to Programme Learning Outcomes

A5, B1, B3, C1, C2, D1, D3, D5

Syllabus

General Introduction


Importance of data to an organisation, file management vs databases, what is a database, requirements of a database and database management system. (1)

Architectures


Ansi-Sparc model of databases, components of a database management system, schemas, levels of abstraction and mappings, role of the data dictionary, client-server systems, PC based systems, database servers; distributed systems. (2)

General Database Design


Design framework, mappings between abstractions, integrity, compromises, data vs functional design, non-functional considerations e.g. performance, volumes, user interface etc, security. (4)

Conceptual design


Requirement for conceptual design, Extended Entity Relationship model, object-oriented design, UML (6)

Logical design


The relational model, normalisation, relational algebra, SQL, the Oracle DBMS, mapping conceptual design to relational, integrity, views, embedded SQL, PL/SQL, triggers. (5)

Physical design


Clustering, indexes, performance considerations. (3)

Transactions


Concurrency techniques (locking, 2-phase locking, serialisability), recovery (rollback and commit, 2-phase commit), Transaction Processing Management Systems. (3)