I'm not sure that this is the right place to go to as I don't actually need any coding done, this project is more concerned with design. I have to design a database for a university project, it looks like it should be a really easy job but as always I've left everything to the last minute and simply don't have the time to pull one out of the bag. Most of the details are listed [url removed, login to view] wasn't enough space for some of the additional information however so I'll email the rest to you once you take on the job.
**Description of the problem area**
Contemplation Campus offers a range of rooms and facilities for hire by people wishing to meet or socialise in relaxing surroundings. For a specific eventan organisation can book one or more rooms for one or more sessions (the day is split into three sessions: morning, afternoon, and evening). Room layouts and equipment provision is arranged per session, and beverages can be booked for any session. Lunch and dinner may also be booked in one of the eating areas if required.
The conference facilities consist of three types of room??"lecture rooms, meeting rooms and seminar rooms. The two lecture rooms are the largest rooms, holding up to 50 people for presentations. There are four meeting rooms which can be set up for round table discussions, or for presentations, or for working in groups; these rooms generally cater for about 20 people. Three seminar rooms will take up to 12 people in either a formal or informal discussion layout. The IT suite will accommodate up to 15 people for hands-on computer courses or presentations. The rooms all come with whiteboards and a telephone. Equipment such as overhead projectors, video projectors and laptop computers can be booked in advance at no extra cost.
New facilities have also been built to provide food and drink for people attending the events: a restaurant, cafe, bar and party room. When not being used by a conference, these rooms are available for hire independently for weddings or other social occasions. (A dance floor is available in the restaurant and the party room.)
Difficulty in maintaining records of room bookings, organising equipment and room layouts on time, and getting beverages to the right group in the right session has generated much ill will throughout the enterprise. Even Basil's smooth talking has not been enough to soothe customers' dissatisfaction in several cases. The only hope seems to be a computer system to keep records of room bookings and to produce accurate daily lists for catering requests.
Produce a _logical design_ for the database:
a) Generate a set of 5NF relations. You should *discuss* each of the stages of the normalisation (1NF, 2NF, 3NF, BCNF, 4NF, 5NF) that the model passes through to get to the final version, even when at any stage you are proposing no change. During the process of normalisation, do not introduce new attributes. Rather use the composite keys that are generated by normalisation. At each stage clearly show *all* the relations, their attributes, primary keys and foreign keys (but no data values!).
State any assumptions that you make.*(20 marks)
*b) Using Connolly’s notation, draw an Entity-Relationship Diagram that corresponds to your set of 5NF relations. Show entities and relationships, but not attributes.* (6 marks)*
c) Give *one* example where the introduction of subclasses might be suitable in your model **and** discuss (in no more than half a page) how the concepts of Enhanced Entity Relationship Modelling apply to your example. *(4 marks)*
Produce a _physical design_ for the database:
d) Introduce relevant lookup tables. *(4 marks)*
e) Using DDL, give *two* examples of suitable indexes for your tables and justify why you have chosen these.*(2 marks)
*f0 Processing speed is considered of great importance. Using *one* relevant example, discuss how the introduction of ‘controlled redundancy’ can improve system performance.
Its just the design so all I want is the information on paper. i'll propbably need to change stuff around anyway, to make it look like my own.