Description
This is to be done in groups of 5 (five). If you submit on your own instead, you will be penalized, as groupwork experience is important.
If you do not form a group yourself in time, you will be placed in a group: check the wiki.
-
NB Ensure all 5 member names are included on your submission and on the Vula wiki.
-
Enter the name of the group member who submitted your work on the Vula wiki.
-
Use the Vula Forum for queries, not email (email queries will not be answered); then everyone has the same information.
-
This specification is brief and the client is not available for interviews, so state any assumptions you make as necessary.
You are asked to design the database for a learning management system (LMS) identical to UCT’s Vula. You are restricted to what Vula shows; do not include your own ideas for a LMS. Consider only course sites, not project sites; cover assignments, gradebook, tests/quizzes, resources and forums, but not other tools such as sessions, announcements, calendar, wiki, chat room, course evaluations, external tools like lecture videos/Automarker, etc.
-
Draw an ER (entity-relationship) model of Vula, using the ER notation from lectures. If necessary, state any assumptions you have made and list any constraints that cannot be
shown on the diagram. |
[8] |
(B) Give the relation scheme derived from your ER model: give each relation name with the |
|
names of its attributes in brackets, underlining the attributes of the primary key. |
[3] |
(C) |
List the FDs (functional dependencies) that hold for the attributes in your ER model. NB FDs |
|
with the same left hand side can be combined e.g. replace A→B and A→C by A→BC |
[3] |
|
(D) |
Is your relation scheme in 3rd normal form (yes/no)? If yes, state briefly why. If not, either |
|
give a 3NF relation scheme for this data, or explain why it is better not to do so. |
[1] |
-
Create an application that allows users to perform some meaningful operations (of your
own choice) using the database from Database Assignment 1. You may alter its relation scheme and/or data content if necessary. You may use any programming language. Note there are NO marks for the interface, as the focus of this assignment is accessing the
database. A mark of 3 will be given for a straight forward app that works correctly. |
[4] |
(F) State the contribution of each person in the group. |
[1] |
If you do a hand-drawn ER diagram, submit this to Computer Science Reception by the due date, keep a copy of your own as backup, and sign the ER Diagram Submission Sheet at Reception.