You are on page 1of 11

Advanced Database Systems

Group Assignment

Page 1 of 11

In this assignment you are required to:

Form yourselves into groups of 3.

Design, implement and tune a solution to a business problem.

Implement the solution in either MS SQL Server or Oracle.

Document the solution as set out in the assignment requirements.

Include a workload matrix, providing details on the distribution of work


amongst group members. The workload matrix has to be agreed and signed
off by ALL group members.

Submit a CD containing the softcopy of both your documentation and


application.

Demonstrate your application in week 13. All group members must attend the
demonstration. Demonstration schedules will be published at a later date.

Level 3

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 2 of 11

Case Study
BEACONSIDE SCHOOL TOURS LTD (BST) is a rapidly developing tour company
which specialises in organising school tours for secondary school students. The
company now wishes to expand and provide tours abroad. The tours will be organised
to destinations in France, Germany and Switzerland. You are required to design a
database which will support the company operations. You are not required to deal
with any of the companys other operations and you can assume there is no need to
consider legacy or network issues.
All tours will be escorted by a courier who will speak both English and any other
appropriate language(s). The database must include information about the countries
to be visited, including information about currency, passport regulations, and the main
language spoken. If more than one language is spoken in a country (e.g. in
Switzerland, the most commonly used languages are German, French and Italian), you
are required to record the 3 main languages spoken.
There is no minimum or maximum group number. You should assume that there will
be different numbers of students on different tours and design your test data
accordingly. All students are charged accommodation at the student rate. It is not
necessary to record next of kin details for the students, as the school is assumed to
have this information, but the company wishes to record date of birth and home
address. Due to problems in the past, the company creates a complete new record for
every student who takes part in a tour. You can assume that you do not need to track
whether a student has previously been on a tour with the company.
The tours minimum duration never less than 3 days and never longer than 18 days.
Students will be accompanied by teachers from their school. Tours are organised on a
school basis and there will never be students or teachers from more than one school
on the same tour. The number of teachers on a tour varies, depending on the number
of students and the policy of the school. Your system must allow for different
numbers of teachers on different tours. On each tour, one teacher is designated as the
tour leader; other teachers on the tour will be allocated other roles such as deputy
leader, teacher responsible for tours, etc. Every teacher on a tour will have a
designated role which must be recorded. Teachers will have different roles on
different tours. A teacher will typically lead more than one tour and the company
wishes to track this. The company also wishes to store additional information about
teachers. For every teacher, the system will record contact details, mobile phone
number and whether or not they have a first aid qualification. Some teachers will have
extra skills, such as languages, swimming or skiing qualifications and these details
must be recorded. Some teachers will not have any extra qualifications. The company
has decided as a matter of policy, that a teacher can be associated with only 1 school.
If a teacher moves to a new school, a new record would be created.

Level 3

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 3 of 11

BST will be responsible for hiring coaches to take the parties to their destination and
for arranging accommodation. For each tour BST records the coach number, details
of the driver and the coach company supplying the coach. You can assume that there
is only 1 coach and 1 driver per tour. The coach company quotes a coach price for
each tour which covers all travelling expenses, including driver accommodation, and
the fee for the driver. You are not required to record details of ferry crossings, road
tolls etc this is all dealt with by the coach company. Tour coaches are linked to a
specific company, and a specific driver is allocated to a specific coach for each tour.
Drivers are freelance and are not linked to a specific company. The tour company will
be responsible for paying the coach company and for paying for accommodation but
other expenses is the responsibility of the teachers and is not part of your system.
The company wishes to record appropriate information about destinations such as
location. Some tours may be multi-centre for example, tours to Germany typically
visit Cologne and Berlin or Hanover and Berlin. Multi-centre tours will stay in a
different hotel/hostel at each location. A tour never stays in more than one
hotel/hostel at any given location. The hotel/hostel will quote a price per night which
includes breakfast and evening meal. The price per night charged to students, and the
price per night charged to teachers differs.
BST will be responsible for arranging group insurance but will require confirmation
from the school that each student and each teacher on the tour has a valid passport.
The company has informed schools that if this confirmation is not provided 7 days
before the date of departure, the tour will not proceed. Due to problems in the past,
BST requires passport confirmation from teachers for each tour.
The company does not maintain a list of approved accommodation but will build this
up over time. In the meantime, the accommodation is booked as and when required.
All accommodation must confirm to the following minimum requirements:

Fire Safety Certificate


Lift and disabled access
Coach Parking Space

The details recorded must include number of beds, the charge per night, address and
contact details and courier rating (this field will record the comments of the courier
and will be used to decide whether a venue is suited for a particular group).
Accommodation may be in a hotel, in which case BST wish to record star rating,
information about catering facilities, and whether or not there is a swimming pool.
Alternatively, accommodation may be in hostel in which case BST wish to record the
type of hostel and whether any discount is available for membership (e.g. as with the
International Youth Hostel Association).
For each tour, the company needs to record the start and end dates, details of all those
taking part, details of coach, accommodation, courier, pick up and drop off points,
whether multi-centre or not, and destination .

Level 3

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 4 of 11

Requirements:
1
(a)

DESIGN
Develop an ERD to support BSTs activities. The ERD must shows entities
and attributes. Include a list of the relevant domains. Identify primary and
foreign keys, and show cardinality and optionality. Data must be in 3NF or
higher unless it has been denormalised for performance reasons in which case
an explanation must be given.
Your model should support the business requirements and you will be
expected to use advanced modelling techniques
(30 marks)

(b)

Document and provide a written description and justification of your


optimisation strategy (each group member must provide one optimization
strategy).
(10 marks)

(c)

Document all the constraints included in your system and justify and explain
the constraints used and the ways in which they support the business rules.
Provide a functional description of triggers (each group member must provide
at least one trigger).
(10 marks)

2
(a)

IMPLEMENTATION
Implement your design and the optimisation strategy. You will be expected to
demonstrate tables, referential integrity, appropriate test data, appropriate
constraints and appropriate optimisation techniques. You will be expected to
justify any mapping or denormalisation issues.
(10 marks)

(b)

Implement the triggers for which you developed functional descriptions. You
must be able to explain and justify the triggers during the presentation.
Triggers which function but which the group cannot explain will receive zero
marks. Some marks may be awarded for non-functioning triggers where the
group member can identify the issues.
(10 marks)

(c)

Level 3

Create and use T-SQL equivalent feature (choose from: procedure; or


function) to support a business requirement or enhance usability. Features

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 5 of 11

which function but which the group member cannot explain will receive zero
marks. Some marks may be awarded for feature which do not function fully
but where the group member can explain the issues. (each group member must
provide one feature)
(10 marks)

(e)

Create the following queries this section is worth 20 marks in total. Group
members must be able to explain the queries and justify the approach taken.
Marks will be reduced where group members cannot explain how they have
arrived at their solutions.

Member 1

Create a query which shows which teachers have led more than one
tour.
(2 marks)

ii

Design your test data so that some of your couriers speak languages
which are not listed as language for any of the countries in your
system. Create a query which shows which languages spoken by the
couriers are not spoken in any of the countries in your system.
(2 marks)

iii

Create a query which shows, for each tour, which destinations are
included and the arrival date for each destination. At least 1 tour must
be multi-centre.
(2 marks)

iv

Create a query which gives the name of the coach company that has
charged the lowest fee for providing a tour coach.
(2 marks)

Create a query which provides, for each tour, the following


information:
The total cost of 7 nights accommodation at each of the tour
destinations, for all the students on the tour.

Level 3

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 6 of 11

Hint: there are different ways of doing this but you may wish to use
break and compute statements with a query. Some marks will be
awarded for the query structure, even if you cannot generate the totals.
(7 marks)
vi

Create a query which shows which teachers have accompanied which


tours, which schools the teachers teach at, what the teachers roles are
on the tour and whether or not the teachers have any additional skills.
(2 marks)

vii

Develop one additional query of your own which provides information


that would be useful for the business. Marks will be awarded
depending on the technical skills shown and the relevance of the query.
(3 marks)

Member 2

Level 3

viii.

Create a query which shows list of coach available for given dates,
source & destination.
(2 marks)

ix.

Create a query which shows details of coach, along with the revenue for
a given tour.
(2 marks)

x.

Create a query which shows all students unique ID numbers with their
corresponding descriptions with coach code and name of teacher
available on the tour.
(2 marks)

xi.

Create a query which shows information about the countries to be


visited, including information about currency, passport regulations, and
the main language spoken.
(2 marks)

xii.

Create a query which provides, for each class standard category of


students, the following information:

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 7 of 11

The total number of students travelling to a specific country in a multi


city trip operated by a specified coach in given date. Result should
contain both detailed breakup & summary for above mentioned
categories along with overall summary.
Hint: you may wish to use rollup or cube statements with a query.
Some marks will be awarded for the query structure, even if you
cannot generate the totals.
(7 marks)
xiii.

Create a query which shows the age and home address of students
within any time range.
(2 marks)

xiv.

Develop one additional query of your own which provides information


that would be useful for the business. Marks will be awarded
depending on the technical skills shown and the relevance of the query.
(3 marks)

Member 3
xv.

Create a query which shows the minimum, maximum, and average


journey hours for coach to given city name. Display column headings
as, Minimum duration, Maximum duration, and Average duration
respectively.
(2 marks)

xvi.

Create a query which shows the journey date with time, number of
students for each coach, and destination address.
(2 marks)

xvii.

Create a query which shows the hotel minimum student price rate for a
multi-city tour in a given country.
(2 marks)

xviii. Create a query which shows the details of number of beds, the charge
per night, address and contact details and courier rating.
(2 marks)

Level 3

Asia Pacific University

2016

Advanced Database Systems

xix.

Group Assignment

Page 8 of 11

Create a query which provides, for each coach, the following


information:
The total number of students travelling in a given date. Result should
contain both detailed breakup & summary for student for each coach
along with overall summary.
Hint: you may wish to use rollup or cube statements with a query.
Some marks will be awarded for the query structure, even if you
cannot generate the totals.
(7 marks)

Level 3

xx.

Create a query which shows country name, city name, maximum,


minimum, and average number of students in a tour on monthly basis.
Ordered by maximum number of students in descending order.
(2 marks)

xxi.

Develop one additional query of your own which provides information


that would be useful for the business. Marks will be awarded
depending on the technical skills shown and the relevance of the query.
(3 marks)

Asia Pacific University

2016

Advanced Database Systems

Group Assignment

Page 9 of 11

Marking Scheme
The breakdown of marks for this assignment is as defined below:
Group marks (70%)
The marks allocated for the various sections (design and implementation)
mentioned above will be factored down to 70% and assigned as group marks.
(Note: Individual contribution from the group effort would be measured from
enclosed Evaluation Form)

Individual marks (30%)

Level 3

20%

Problem analysis and understanding of database development

10%

Personal Reflection Report

Asia Pacific University

2016

Advanced Database Systems


11

Group Assignment

Page 10 of

Assessment Criteria:
Note: A single table design will receive zero marks for all elements of the
assignment even if there is some functionality.
The following guidelines indicate the standard that will be expected for each grade.
Each demonstration will be assessed individually and weaknesses in some areas
maybe compensated by strengths in other areas.
All members of the group must participate in the demonstration. Group members may
be awarded different marks depending on the quality of the contribution to the
demonstration. Marks will also be adjusted to reflect peer assessment.
Grade A+
An almost professional solution with all issues addressed in full. Excellent design and
implementation and explanations demonstrated through understanding of the problem
and the features used.
Grade A
Demonstrates an excellent understanding of the problem. The ERM model will be
implementable and any errors and/or omissions will be minor. The database will be
implemented to a high standard of functionality and will be appropriately normalised.
Advanced data modelling features will be used and there will be some use of PL/SQL.
Queries will have been attempted and all or most queries will function. Other
elements to a high standard. Documentation will be to a high standard. The group
will be able to discuss their implementation at demonstration and will be able to
explain to describe the way in which they have attempted the project.
Grade B
Demonstrates a good understanding of the problem. The ERM model will be
implementable and errors and/or omissions will be minor. The database will function
and will be appropriately normalised although with some errors and/or omissions.
Advanced data modelling features will be used. T-SQL will be used but with some
errors or omissions. Queries will have been attempted and most queries will function.
Other elements attempted and generally satisfactory. Documentation will be
satisfactory. The group will be able to discuss their implementation at demonstration
and will be able to explain to describe the way in which they have attempted the
project.
Grade C
Demonstrates an adequate understanding of the problem. The ERM model will be
implementable although with some errors and/or omissions. The database will
function and will be appropriately normalised although with some errors and/or
omissions. Queries will have been attempted and the majority of queries will function.
Most other elements attempted although with errors and/or omissions are satisfactory.
Documentation will be adequate. The group will be able to discuss their
implementation at demonstration and will be able to explain to describe the way in
which they have attempted the project.

Level 3

Asia Pacific University

2016

Advanced Database Systems


11

Group Assignment

Page 11 of

Grade D
Demonstrates some understanding of the problem. The ERM model will be
implementable although with errors and/or omissions. The database will function
although with some errors and/or omissions. Most data will be in 3NF but there may
be some normalisation issues. Queries will have been attempted and some queries will
function. Most other elements attempted although with errors and/or omissions.
Documentation will be adequate but explanations may be limited.
Grade E (fail)
Demonstrates limited understanding of the problem. The ERM model will be not be
implementable or will not cover major aspects of the scenario. The database will
function but will have major errors and/or omissions. Queries may not have been
attempted or very limited queries have been produced. Other elements limited or not
satisfactory. Documentation may be limited or not to an acceptable standard.
Explanations will be limited but sufficient to demonstrate that the group understands
the work that has been submitted.
Grade F (fail)
Demonstrates poor understanding of the problem. The ERM model will be not be
implementable or will not cover major aspects of the scenario. The database may
have limited functionality and major errors and/or omissions are likely. Queries may
not have been attempted or very limited queries. Other elements not attempted or not
satisfactory. Documentation very limited or not to an acceptable standard.
Explanations will be limited but sufficient to demonstrate that the group understands
the work that has been submitted.
Zero marks will be awarded for non submission, single table implementation or
insufficient explanations to demonstrate that the group understands the work that has
been submitted.

Level 3

Asia Pacific University

2016

You might also like