DDD Assignment Mark Scheme Autumn 2018
DDD Assignment Mark Scheme Autumn 2018
Marking Scheme
Markers are advised that, unless a task specifies that an answer be provided in a
particular form, then an answer that is correct (factually or in practical terms) must be
given the available marks. If there is doubt as to the correctness of an answer, the relevant
NCC Education materials should be the first authority.
This marking scheme has been prepared as a guide only to markers and there will
frequently be many alternative responses which will provide a valid answer.
Each candidate’s script must be fully annotated with the marker’s comments (where
applicable) and the marks allocated for each part of the tasks.
Where markers award half marks in any part of a task, they should ensure that the
total mark recorded for the task is rounded up to a whole mark.
Marker's comments:
Moderator's comments:
From 1 to 3 marks
There is little correct beyond a few of the entities.
From 4 to 8 marks
If choice of entities is correct (alternative names are acceptable) but
most relationships are wrong then give 1 mark for each correct
entity. Give additional marks for any correct relationships.
From 9 to 15 marks
If largely correct but still with some mistakes give 1 mark for each
correct entity and relationship.
From 16 to 20 marks
Excellent solution that is correct in all but a few details such as
cardinality of an otherwise correct relationship).
1 mark
There is very little beyond rudimentary understanding of process of
normalisation
From 2 to 3 marks
The discussion shows an understanding of identification of each of
the stages of normalisation up to 3rd normal form and how this has
applied to scenario.
From 4 to 5 marks
There is full discussion with only trivial mistakes. There should be
a clear indication of how the normalisation has identified the
important relations in the system along the lines of that shown in
appendix.
The data dictionary should match the ER. It should clearly indicate
Primary Keys and Foreign Keys.
Page 2 of 13
Database Design and Development © NCC Education Limited 2018
Task Guide Maximum
Marks
Please Note: Marks should only be awarded here for entities
that are correct. A data dictionary entry for an entity that is not
correct (even if it matches the ER diagram) should NOT be
awarded marks.
Award 1 mark for each correct entity with attibutes, PKs and FKs
defined up to 10 marks.
35
2 a) Create the tables in SQL and show the CREATE scripts as
running in the programming environment. (4 marks)
b) Data on all the courses and teachers. Give a listing of this.
(1 mark)
c) Data for modules and indicate who teachers them. Give a
listing of this. (1 mark)
d) Data on all laboratories. Give a listing of this. (1 mark)
e) Data on the equipment found in the laboratories. Give a
listing of this. (1 mark)
f) Write a query that selects all the teachers for chemistry
courses. (3 marks)
Page 3 of 13
Database Design and Development © NCC Education Limited 2018
Task Guide Maximum
Marks
4 rows
Page 4 of 13
Database Design and Development © NCC Education Limited 2018
Task Guide Maximum
Marks
Each query should be shown as an SQL statement running in a
database environment. The full results set should also be shown.
The query should use the given criteria: e.g. in query l) the key 32
search term ‘Chemistry Experiment’ should be part of the query.
For full marks the results should produce detail that are user-
friendly and readable.
Model answer:
Firstly costs of cleaning will be discussed. In order to track income then the
amount charged for cleaning laboratories will need to be included on the
database. This could be added as a column to the laboratory table, using the
alter table add column commands in SQL. This is assuming that each laboratory
will be charged at a standard rate. If the staff who conduct the cleaning are to
be recorded then one or more additional tables will need to be added
depending on how these staff are modelled.
For maintenance a similar approach will need to be taken and again the
approach of an additional column on the laboratory table could deal with this.
If a record of different maintenance over a period of time were needed then a
separate table will be needed with details of maintenance and dates with links
to a maintenance type table. This could also be linked to a staff table.
Page 5 of 13
Database Design and Development © NCC Education Limited 2018
Task Guide Maximum
Marks
4 General Points: Organisations of any success tend to get bigger
and diversify (1 mark) It often happens that they will develop new
sites both within the boundaries of one country and sometimes to
other countries (globalisation). (1 mark for this or similar) This
trend has been enhanced in the last century and even more so in
recent decades by the use of technology that makes it easier to
operate at a distance (from the telephone to the World Wide Web).
(1 mark) Firms might also be involved in takeovers where they
inherit databases from those firms they have taken over or merged
with. (1 mark). With the increasing importance of database to any
organisation they the need for distributed databases has grown
alongside the trend in organisations being distributed. (1 mark)
A good format for this answer would be a table, with columns for
identifying original requirements, one for design aspect and one for
which aspects of the finished assignment have met these
requirements, with assessment of this.
Model answers:
Original requirements
Page 7 of 13
Database Design and Development © NCC Education Limited 2018
Task Guide Maximum
Marks
Query i) ) Write a
query that shows all
equipment in the
chemistry laboratories
Page 8 of 13
Database Design and Development © NCC Education Limited 2018
Appendix 1
Suggested ER Solution
Page 9 of 13
Database Design and Development © NCC Education Limited 2018
Appendix 2
To gain full marks for this there should be overview of normalisation in general and
discussion of how this has applied to the scenario. The answer does not need to show
normalisation for all the example documents but could discuss aspects of any of them, or
show one as an example for further detail. The suggested answer below is thus indicative.
The normalisation process has identified some of the most important relations in the
system. These are the courses, modules, teachers, laboratories and equipment. It
indicates how these relate to one another and so shows how these should be modelled
and implemented in the database. It has helped identify the primary keys of these core
tables and the foreign keys.
For example document one can be normalised into course/ course staff/ course. In 1NF
the repeating group information for staff is separated from the course. In 2NF attributes
that are functionally dependent on only part of a compound key are separated, in this case
the staff information is separated from the attributes that link staff to the course. The
attributes are already in 3NF for there are no non-key functional dependencies.
Page 10 of 13
Database Design and Development © NCC Education Limited 2018
Appendix 3. Suggested Data Dictionary for Task 1 c)
Course Module
Module Code (PK) Char / 10 PK / FK
(FK) Varchar
Course Code (PK) Char/Varchar 10 PK / FK
(FK)
Module
Module Code (PK) Char/Varchar 10 PK
Module Type Code Char/Varchar 10 FK
(FK)
Module Name Char / 30
Varchar
Module Type
Module Type Char/Varchar 10 PK
Code(PK)
Module Type Char/Varchar 30
Description
Module Staff
Module Code (PK) Char / 10 PK / FK
(FK) Varchar
Staff Code (PK) (FK) Char / 10 PK / FK
Varchar
Course Staff
Course Code (PK) Char / 10 PK / FK
Varchar
Staff Code (PK) (FK) Char / 10 PK / FK
Varchar
Staff
Staff Code (PK) Char / 10 PK
Varchar
Staff Name Char/Varchar 30
Staff Type
Staff Type Code(PK) Char/Varchar 10 PK
Page 11 of 13
Database Design and Development © NCC Education Limited 2018
Staff Type 30
Description
Laboratory
Laboratory Code (PK) Char/Varchar 10 PK
Laboratory Name Char/Varchar 30
Laboratory
Equipment
Laboratory Code (PK) Char/Varchar 10 PK
(FK)
Equipment Code (PK) Char/Varchar 10 PK
(FK)
Equipment
Equipment Code (PK) Char/Varchar 10 PK
Equipment Name Char/Varchar 30
Equipment Type Code Char/Varchar 10 FK
(FK)
Equipment Type
Equipment Type Code Char/Varchar 10 PK/FK
(PK)
Equipment Type Char/Varchar 30
Name
Note: codes and descriptions have been supplied for ‘Type’ entities. Other ways of implementing
this are acceptable.
Note: Datatypes and lengths can vary from those shown here.
Page 12 of 13
Database Design and Development © NCC Education Limited 2018
Learning Outcomes matrix
Grade descriptors
Page 13 of 13
Database Design and Development © NCC Education Limited 2018