M358

Relational Databases.

First Course Materials

The first delivery of course materials was in mid-December. This includes the first two blocks of the course (there are five in all), plus the software and other bits and pieces. There is an e-Desktop for M358 but no online course materials available. The e-Desktop is there to supplement other materials and provide additional support.

Course Blocks

There are five in all:
  • Information Systems.

    Introduces basic ideas about data, databases and information. Introduces the Hospital Information system, the University Information system and the Bird Information system. These are ready-made databases used for teaching course concepts. Information system architectures are described, as are database management systems. The three-schema architecture is introduced. The block finishes with database development, describing the stages of database system development, then goes on to define Entity Types, Attributes, Relationships, Constraints and Assumptions concerning data. If you have previously taken M206 this will be a big advantage as you will already be familiar with some of the concepts and the University and Hospital models, although not identical, are similar.
    The first two Blocks of M358
    [m358 Blocks 1 and 2]

    Personal feelings about this Block: I enjoyed the part about Entity Types, etc. and drawing Entity-Relationship (ER) Diagrams. Other sections were a bit dry in parts and I found some concepts were rather difficult, requiring further clarification. I used Fundamentals of Database Systems (4th Ed) by Elmasri and Navathe, 2003. ISBN: 0321204484, which is an excellent book, to fill in some of the gaps, but it does go into far more detail than the course materials. However, don't rush in and buy a book at the beginning as you may find the course materials sufficient.

  • Relational Theory.

    Introduces and explains the nature and components of relational theory: the structure of relations, their properties, domains, developing a relational model, primary, alternate and candidate keys, representing relationships, the E-R diagram. Manipulating relations using relational algebra is described, and relational calculus is also mentioned briefly. RAS is introduced (Relational Algebra System software) and the sorts of queries one can use are described.

    For me, this block was more interesting as it has more hands-on activities, using the databases provided. The software provided was Infomaker 5.0 which uses SQL Anywhere.
  • Using SQL.

    This block gets down to the nitty-gritty of SQL and you'll work your way through the most commonly used statements that make up queries. What does SQL look like, you ask? Here's a simple example:

    SELECT country, COUNT(product), SUM(quantity)
    FROM production
    GROUP BY country
    HAVING SUM(quantity) > 15000 AND classification <> 'Chemicals'

    Of course, queries can be simpler or more complicated than this.

    Contents of this Block include:

    • Basic queries - SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY
    • Using joins, the UNION operator.
    • Subqueries.
    • Updating tables - DELETE, INSERT, UPDATE.
    • Database management and administration.
    • Programming within SQL - routines, triggers, transaction management.
    • Implementation issues.

    Block 3 is really the only Block with significant practical work, i.e. hands on experience using the course databases. Otherwise most of the rest of the course is theoretical.

    There is actually a lot to take in and although I wouldn't describe this as a high workload 30-pointer, it is still not an easy course, in my opinion.
  • Development of Database Systems.

    Normalisation rears its ugly head in this Block. I found it rather hard going and struggled a bit with it. Fortunately it is only in one section of this Block and so not overwhelming. Other topics are Entity-Relationship modelling, and Database design and implementation, both of which are reasonably OK.

    This block is entirely theoretical, with no practical work involved.

  • Database Issues.

    This Block is divided into five stand-alone chapters, covering the areas of:

    • Physical database organisation. Covers storage structures and models.
    • Distributed data. Covers client-multiserver systems.
    • Data warehouses.
    • Data mining.
    • Complex data.

    These chapters can be read in any order, and again this is an entirely theoretical Block. Some of it is rather dull, unless you really like this sort of stuff. But having said that, it is do-able.

TMAs

Not too bad if you work through the questions as you finish the appropriate parts of the course work. TMA 02 is supposed to be the "hard one".

TMA 01 tests your knowledge of some of the database theory taught in Block 1, namely information systems and their architecture. Also tested is database development which means Entity-Relationship diagrams, and conceptual schemas.

TMA 02 assesses your ability to represent the relationships of a conceptual data model in a relational model. A relational model is given and you need to produce the E-R diagram and give the entity types. Relational algebra is also tested. Finally and E-R diagram is given with entity types, and you need to write down the relational model that represents the diagram. This final part involves quite a lot of thought.

TMA 03 is all SQL queries, based on the databases provided in Infomaker. Most of these are not too difficult, but some can be annoyingly hard to solve, so beware, more time may be needed than you anticipate.

TMA 04 has 4 questions each equally weighted, one on normalisation (yuck!) but not too bad. The final question is on one chapter of Block 5, hence it is possible to finish off the last TMA before finishing reading the course material. The last question involves writing 700 words, so be sure to allow yourself enough time, as it could take you by surprise. This is the only question in the course requiring an essay-type answer. Since receiving back this TMA I have heard that it was a "particularly hard" one, and that allowances will be made when calculating end of course results. Interesting!

Revision and the Exam.

Am currently revising, all topics are examinable, there are no bits you can safely leave out. I have been doing lots of practice of past papers, and the Revision conference has also been going through past papers so that students can compare their solutions.

The exam consists of two parts. The first part has twelve short answer questions, each worth 5 marks. They are usually broken into parts, so you may gain some of the 5 marks even if you don't get the full five points. The second part of the exam consists of four longer questions, worth twenty marks each, of which you must do two. There will be one or two that involve E-R Diagrams and relational models. There's one that is based around one of the five chapters in Block 5.

The Exam

Exam is on Wednesday 13th October this year (2004). I nearly didn't get there at all! My lift taking me from Worcester to Hereford broke down and I had to get a second person to come out and take me the remainder of the journey! I stumbled into my seat at the exam centre at 2.29 p.m. exactly! However, once I had caught my breath, I was pleased at the content of this year's paper and felt I did reasonably OK. Got the result in mid-December and it was a Grade 2 Pass - I'm very happy!

TOP