Current postgraduate taught students
COMP70300: Databases and Data Modelling (2007-2008)
The unit begins with an introduction to the main rationale for the use of database systems, takes the student through a complete entity-relational (ER) modeling exercise, and then presents both the theoretical and practical aspects of the well-known relational data model. The gap between the models is bridged by introducing practical translation techniques, from ER to relational, along with a theory of relational schema normalization.
Following an exposition of relational algebra concepts, the SQL query language is then presented; this is complemented by additional modules on the use of SQL from within a host programming language, and on the concepts of database transactions.
The main example, a movies database, runs through the entire course; the reference DBMS for the unit is MySQL, which is used to implement the data model and to test the queries.
The unit aims to introduce students to the fundamental concepts in databases, and is focused primarily on the database designer and application developer perspective, rather than on the implementation and technology aspects of database management systems.
Students should expect to acquire both practical skills in database modelling, development, and query, along with an understanding of their theoretical underpinnings.
Knowledge and understanding
Understand the fundamental concepts in data modeling, both at the conceptual and logical level, with specific reference to the ER and relational models, respectively;
Understand the design of database queries, starting from application-level data-intensive problems;
Understand the theoretical foundations of the data and query models, and use them to validate the soundness of a design solution;
Understand the concept of database transaction
? Design a conceptual and a corresponding relational database schema from high level data requirements;
? Verify the accuracy and completeness of a conceptual schema relative to user requirements, and the soundness of a relational schema;
Design database queries that solve specific application-level problems, and write them in SQL.
? Implement a database schema using a relational DBMS that supports standard SQL/DDL;
? Implement and test SQL queries of various complexity on a relational DBMS, and embed them in a host application program;
Port the implementation to a different DBMS, by leveraging the independence of the logical schema from its implementation.
Learning and Teaching Processes :
The unit is a 100% distance learning course, with the core material provided as a CBT package.The course is delivered using a virtual learning environment (VLE). The material is supplied as a Computer Based training Package (CBT) and the students are guided through their study using a series of work packages presented by the VLE.
A series of assessments associated with the course must be periodically submitted to the Course Assessor or Tutors who will respond with relevant feedback.
The VLE provides a bulletin board facility that the students are encouraged to use to communicate with one another, this board is moderated by the tutors and course assessor. Students also have weekly online tutorials. Discussion of the assessments is encouraged, but the actual exercise and project work is done individually.