Database Design and Implementation
Database Design and Implementation
Specification 2019/20
When completed you are required to submit your summative coursework to:
1. Blackboard shell via TurnitIn;
Late submission of coursework policy: Late submissions will be processed in accordance with
current University regulations which state:
“The time period during which a student may submit a piece of work late without authorisation and have the
work capped at 40% [50% at PG level] if passed is 14 calendar days. Work submitted unauthorised more than
14 calendar days after the original submission date will receive a mark of 0%. These regulations apply to a
student’s first attempt at coursework. Work submitted late without authorisation which constitutes reassessment
of a previously failed piece of coursework will always receive a mark of 0%.”
Academic Offences and Bad Academic Practices:
These include plagiarism, cheating, collusion, copying work and reuse of your own work, poor referencing or
the passing off of somebody else's ideas as your own. If you are in any doubt about what constitutes an
academic offence or bad academic practice you must check with your tutor. Further information and details of
how DSU can support you, if needed, is available at:
http://www.dmu.ac.uk/dmu-students/the-student-gateway/academic-support-office/academic-offences.aspx and
http://www.dmu.ac.uk/dmu-students/the-student-gateway/academic-support-office/bad-academic-practice.aspx
Tasks to be undertaken:
You are tasked to develop a database design (both conceptual and logical) for an appropriate
business situation of your choice, and then implement and subsequently query an ORACLE
database that is derived from your database design. You must work individually for this assignment.
There are two stages to the work you need to undertake: each stage is worth 50% of the assessment
mark. Perform Stage 1 first, then Stage 2!
1
Stage 1: Scenario and Conceptual Database Design
Task 1.1: Selection of the case upon which the database design and implementation is to be
based
First, you need to identify a suitable case study (your choice or a choice from the list provided
in the appendix) from which to derive your database requirements. This may be a situation based
on a company with which you are familiar or in which you are (or have been) employed, or may be
one (or based on one) that you have read about within the trade or academic literature or identified
from their web presence. You need to ensure that your business situation is suitably complex to
provide you with at least four strong entities, and at least one specialisation: generalisation
structure, yet suitably scoped so as to not require a huge quantity of resultant tables (i.e., normally
no more than 15) and subsequent input of sample data for querying purposes. It must not be based
on a library (video, book, CD or film) and not just solely about orders of products. It should not be
one that is based on any previous examination scenarios for this module, nor any exercises given to
you within your DS&D module lecture material and/or module pack. Once researched and identified,
a written scenario needs to be produced that (a) provides relevant background information on the
organisation (e.g., its purpose, its principal operations/structure, its products/services, its target
markets, etc.), and (b) provides an overview of what operations a database would need to support.
Your scenario will probably be no less than one side of A4, but no longer than three slides of A4.
Task 1.2: Provide a conceptual database design for your scenario & the list of enterprise rules
being modelled.
The second task is to develop an EER Diagram that captures the detailed requirements for the
database system that you identified within the scenario you wrote to satisfy Task 1.1. The EER
Diagram needs to show any weak and strong entities, the primary keys for strong entities, and any
relationships between entities (including any generalisation: specialisation structures). *:*
relationships must be decomposed, and any actual traps identified should be eliminated using
appropriate methods. For each entity, there should be an associated written list of all the attributes
that the entity possesses which are not written on the EER Diagram. Any assumptions made during
conceptual database design (i.e., anything that you assume that is not written in your Task 1.1
scenario) should be listed.
As well as the conceptual database design, you also need to provide the exact list of enterprise rules
that your EER Diagram is diagrammatically representing. (Every relationship will need at least one
enterprise rule, depending on its multiplicity and degree. Each binary relationship will typically have
two enterprise rules associated with it, for instance.)
You should aim to complete this task by the end of Week 11.
2
Stage 2: Logical Database Design and Oracle SQL Implementation/querying
From your conceptual database design, derive a corresponding set of well-normalised tables.
Remember to indicate all primary and foreign key fields for each of the tables using suitable and
consistent notation. All key and any non-key attributes should be listed within each table.
You need to create all the tables that you identified within your logical database design. Make sure
the appropriate fields are defined as key, and that other suitable data integrity rules are enforced.
Each of your tables should contain your PNumber as part of the table name. E.g. if your user name
is ‘mit10sf’, then if you needed a Car table then you would create a table ‘mit10sfCar’. (Hint: make
sure you create the tables in an appropriate order – for instance, those that have foreign keys cannot
be created first – why? Think about it!).
Task 2.3: Create the four most useful indexes on your tables
You need to create a total of FOUR appropriate indexes on the tables using the CREATE [UNIQUE]
INDEX statement. (Hint: it may be useful to consider what queries you wish to perform in Task 2.5
first, and don’t forget that primary keys don’t need any user-defined indexes as these are provided
automatically by Oracle). Write a short explanation as to why you decided to create each index.
Populate your Oracle tables with some fictitious yet appropriate test data (about FIVE records per
large table and TEN records per small table (or as many rows as is relevant) should be enough).
Define and run SIX queries of your choice (but appropriate to the scenario). Each query should
require TWO or more of the following querying facilities, (and all of these facilities should be used at
least once in your set of queries) and should be properly justified as to why the query would be useful
to your case study organisation:
o A sub-query
3
Deliverables to be submitted for assessment:
The results of the above Tasks 1.1 to 2.5 need to be submitted, i.e.:
• Your case scenario, the list of enterprise rules being represented within your EER Diagram, and the
whole conceptual database design.
• The logical database design that follows from your conceptual database design.
• A print out of each of the tables (i.e., the extension of each table) that you have created in ORACLE
and the SQL code required to create them (including the code for the integrity rules).
• A print out of the SQL code required in order to create the four indexes. You should provide a short
written section justifying your choice of indexes.
• A print out of each of the six queries you devised, showing both the SQL query statement and the
query result. You should provide a brief explanation of what you expect each query to achieve and
why you think this query is relevant to your case scenario.
ONE electronic copy containing all of the above aspects must be submitted for summative
assessment via Blackboard’s TurnitIn. ONE copy of each of the Stage 1 & 2 Mark sheets, completed
with your assessment self-evaluations on the criteria listed, should also be submitted with your
electronic copy work. You are permitted to attach a small amount of additional and appropriate
evidence to support one or more of your claims, should this be necessary.
Sometime after submission, you may be asked to attend a viva lasting for up to 15 minutes with one
or more tutors. You may be selected for a viva for a variety of reasons; for instance, to verify that the
work you have submitted is understood/written by you, to clarify aspects of the work to aid marking or
just because you were randomly selected. Your mark may go up or down as a result of a viva.
Failure to attend a viva, if you have been asked to do so, may result in you obtaining zero marks for
the entire assessment.
In order to achieve a 70%+ (Distinction) grade, the work must be excellent in almost all respects,
only very minor limitations.
In order to achieve a 60-69% (Merit) grade, the work should show strength in most respects. Whilst
there may have some limitations in one or two areas, it is still a very good piece of work.
In order to achieve a 50-59% (Pass) grade, the work should be of a satisfactory standard, showing
strength in some areas, but typically let down by some other aspects.
A 0-49% (Fail) grade will be given where the work contains serious errors/limitations. (0% is used
either when nothing is correct or no attempt is made.)
4
Please refer to the criteria marking grid for the details of the assessment of the work. Pay
attention that you are required to mark your own work in the submission as well.
5
Appendix A
Scenario – content
appropriate and
sufficient
Scenario – presentation
in terms of
layout/spelling/grammar
etc.
EERD – presentation,
including the use of
consistent and
appropriate notation
EERD – decompositions
appropriate and traps
eliminated
Enterprise rules
complete and correct
relative to EERD
Assumptions complete
and appropriate to
scenario
OVERALL GRADE
6
Note that you can attach a small amount of additional and appropriate evidence to support one or more your
claims, should this be absolutely necessary. If you do, then please make it clear to what exact criterion/criteria
the evidence refers; the tutor will discount anything that is not appropriately attributed!
7
Stage 2 Marksheet (50%) – Logical Database Design & Oracle SQL
implementation/querying
OVERALL GRADE
8
Appendix B
You can choose from one of the following projects or one of your choice, but your seminar tutor
must approve the topic.