assignment 2 2065762 2

Nursingpapertutors.com stands out as a reputable writing company that delivers high-quality papers specifically designed for nursing students. With its specialization in the nursing field, commitment to quality, customization, and originality, timely delivery, dedicated customer support, and emphasis on confidentiality, Nursingpapertutors.com provides invaluable academic support to nursing students. As a reliable partner in their educational journey, Nursingpapertutors.com helps nursing students excel academically and prepares them to become competent and knowledgeable healthcare professionals.

 

Assignment 2 specification

 

The assignment must be submitted electronically via the online assignment submission link on the study desk. Instructions will be provided on the course study desk.

If you are unable to complete the whole assignment, submit what you have done rather than nothing.

You must use the official USQ data modelling and normalization methodology. This methodology is based on Clive Finkelsteins techniques (SR 2.1 and SR 2.2) and all the examples in the lectures, study book and the tutorials use this methodology.

If you do not use the USQ methodology, you will probably be awarded a mark of zero.

You might wish to use a word processor or a drawing tool. In either case, you must adapt the drawing to conform to the USQ methodology.

This assignment covers much of the same ground as the exam and will provide you with a strong indicator of your level of preparedness for the exam. Most of the questions are of examination standard.

 

 

 

 

 

 

SECTION A  (Data Modelling) (40 marks)           

 

A local pharmacy store in Wollongong wants to develop an online system to track their product inventory as well as prescription records of their products for regulatory requirements. As part of systems development, a data model is required to determine data entities and associated attributes and business rules. You are required to develop a data model which will allow the information and activities to be recorded.

 

The most important data entity for the system is the ITEM entity – this entity represents all the products in the pharmacy. Item code, shelf, location and quantity are the attributes for ITEM entity. Every time an item is ordered, some of the order details such as order date, order quantity and special instructions to the patient for each item in every order are stored. Patient information includes an id, patient name, date of birth, contact number and next of kin details. Each patient may have multiple orders of several items. While most orders are from patients this is not always the case. An order can be created without necessarily being associated with a patient, e.g. order from a casual customer buying items.

 

An item can be of two types: medical or non-medical. Understandably more than 95% of items in the pharmacy are medical items. For non-medical items, promotion period is an additional attribute to store since the pharmacy only sells non-medical items during promotions. Medical items are further classified into three types: doctor-prescription items, over-the-counter prescription items, and no-prescription items. Prescription records are required to be stored in the system. One doctor can prescribe multiple doctor-prescription items and vice versa. We store the prescription date and special instructions by the doctor prescribing a particular item. It is also important to store the doctor’s name, specialty and registration number from the Medical Board of Australia.

 

An over-the-counter prescription item must be given by one of the store’s pharmacists after consultation with the customer. Several over-the-counter items can be prescribed by different store pharmacists; therefore we also need to store the prescription date and special instructions by the pharmacist prescribing a particular item.  A pharmacist is one of two types of staff at the pharmacy store. The other type is general staff. For all staff, we store their name, date of birth. joined date and qualifications and level. For a pharmacist, we also need to store their registration number from the Pharmacy Board of Australia.

 

 

 

 

 


Prepare the following:

 

a)      An ER diagram for the system. Show all entities, relationships, cardinalities and optionalities. Also, include all intersection entities. You must use the Finkelstein methodology as per the study book and tutorials.                         (25 marks)

 

b)      A list of relations (equivalent to Finkelstein entity list). Produce complete relations for all entities and attributes. Show all primary and foreign keys. Include all attributes that are specifically mentioned and all key attributes. You may need to create primary and foreign keys that are not specifically mentioned. You must use the Finkelstein methodology as per the study book and tutorials.                                (10 marks)

 

c)      A SQL CREATE TABLE statement for the ITEM relation along with the creation of primary and foreign key constraints as required.                             (5 marks)

 

 

 

 

 

MARKING CRITERIA FOR SECTION A

 

1. Entities – no missing entities, appropriate names, no redundant entities, etc.

2. Cardinalities and optionalities all shown and correct.

3. Complete list of relations, showing all applicable attributes, primary keys and foreign keys.

4. Sophistication: well-presented solution; good layout; innovative approach; correct diagrams and notation; solution easy to read and understand; solution comprehensive

5. SQL CREATE TABLE uses an appropriate relation, is syntactically correct and meets the business rules.

6. USQ methodology used throughout.

 

 


SECTION B  (Normalisation) (20 marks) 

 

Produce a set of relations (equivalent to the Finkelstein entity list) in third normal form (3NF) from the following un-normalised relation for a flight reservation system. You must use the Finkelstein methodology as used in the study book and tutorials.

 

FLIGHT (departure airport code, departure airport name, departure time, departure date, arrival airport code, arrival airport name, arrival time, arrival date,  aircraft name, manufacture date, first class seats, business class seats, economy class seats, ((flight crew member, date joined, hours worked, crew member position, ((crew member role)) )), (( booking number, booking type, booking date, ((passenger surname, passenger first name, passenger dob, passenger contact number, seat number, special requests)), ticket price, booking fee)) )

 

Notes:

  1. Name of an aircraft can uniquely identify any aircraft.
  2. The number of seats in the economy, business and first class can be different for each aircraft.
  3. Each flight has a service of several crew members. Each crew member has one position but can have multiple roles such as cabin service and supervisor that must be recorded.
  4. The number of hours that each crew member worked in a particular flight regardless of their role is stored in the “hours worked” attribute.
  5. A departure airport for one flight can be an arrival airport for another flight and vice versa. Hence, it is important to uniquely identify an airport.
  6. A particular booking can be of two types: direct or through agent.
  7. Ticket price can be different for every flight under different bookings.
  8. Seat number and special requests by a passenger are associated with the corresponding flight and booking reference along with the passenger.

 

 

 

 

 

 

MARKING CRITERIA FOR SECTION B

 

1. Relations – no missing relations, appropriate names, no redundant relations.

2. All primary keys present and correctly notated.

3. All foreign keys present and correctly notated.

4. All attributes present.

5. All repeating groups resolved.

6. Derived attributes indicated in brackets.

7. All 2NF and transitive dependencies resolved.

8. All relations correctly notated using USQ methodology.

 

 


SECTION C (SQL) (40 marks)

For each question, four marks will be awarded for the query and one mark for the screen capture of the results obtained after executing the query. Please copy the screenshot and paste it in your assignment solution document for every question.

The following E-R diagram represents a Car Hire database.

                   
 
   
 
 
   
 
   
 
   
     
 
 
   
 
   

I_CarGroup

 

I_Model

 

I_Car

 

I_Booking

 

I_Customer

 

 

 

 

 

 

 

 

 

 

 

 

 

In this question, you will use the CAR HIRE database. The CAR HIRE database including appropriate data will be made available on the USQ Oracle server. You may query any of these tables but may not make changes.

 

 

The table descriptions appear below, including the column names and data types.

 

I_CAR

Column Name

Type and Size

Constraints

Description

Registration

VARCHAR2(7)

NOT NULL

Registration number of the car. This is the Primary key.

Model_name

VARCHAR2(8)

FK

Model for the car. Foreign key into the Models table.

Car_group_name

VARCHAR2(2)

FK

Group code defining type of car and rental cost. Foreign key into the CarGroups table.

Date_bought

DATE

 

Date the car was purchased.

Cost

NUMBER(8,2)

 

The original cost of the car.

Miles_to_date

NUMBER(6)

 

The current mileage of the car as read at the end of the most recent rental.

Miles_last_service

NUMBER(6)

 

The mileage of the car when it was last serviced.

Status

CHAR(1)

 

The current status of the car. ‘A’ for available, ‘H’ for on hire, ‘S’ for being serviced, ‘X’ for in need of service or repair.

 

 


I_CARGROUP

 

Column Name

Type and Size

Constraints

Description

Car_group_name

VARCHAR2(2)

NOT NULL

The car group code. This will be one of the following values: ‘A1’, ‘A2’, ‘A3’, ‘A4’, ‘B1’, ‘B2’, ‘B3’, or ‘B4’. This column is the primary key for this table.

Rate_per_mile

NUMBER(3)

 

The charge per mile for cars in this group in cents.

Rate_per_day

NUMBER(5,2)

 

The rental charge per day for cars in this group in dollars and cents.

 

 

 

I_MODEL

 

Column Name

Type and Size

Constraints

Description

Model_name

VARCHAR2(8)

NOT NULL

The model name, an abbreviation of the full model name. This is the primary key for this table.

Car_group_name

VARCHAR2(2)

FK

The group to which this model of car belongs.

Description

VARCHAR2(30)

 

Full description of the model.

Maint_int

NUMBER(5)

 

Number of miles between services for this model.

 

 

I_CUSTOMER

 

Column Name

Type and Size

Constraints

Description

Cust_no

NUMBER(5)

NOT NULL

The customer account number. This is the primary key for this table.

Cust_name

VARCHAR2(20)

NOT NULL

The name of the customer.

Address

VARCHAR2(20)

 

Street address of the customer.

Town

VARCHAR2(20)

 

Town the customer lives in.

County

VARCHAR2(20)

 

County the customer lives in. Default is Australia

Post_code

VARCHAR2(10)

 

Postcode for the town.

Contact

VARCHAR2(20)

 

Name of person to contact.

Pay_method

CHAR(1)

 

Code to indicate the usual payment method for this customer. ‘A’ indicates an account, ‘C’ indicates cash or credit card, NULL indicates unknown.

 

 

I_BOOKING

 

Column Name

Type and Size

Constraints

Description

Booking_no

NUMBER(5)

NOT NULL

A serial number used to uniquely identify the booking. This is the primary key for this table.

Cust_no

NUMBER(5)

FK

Customer number of the customer making the booking.

Date_reserved

DATE

 

Date on which the booking was made.

Reserved_by

VARCHAR2(12)

 

Name of the person who took the reservation.

Date_rent_start

DATE

 

Date on which the rental commences.

Rental_period

NUMBER(3)

 

Length of rental period in days.

Registration

VARCHAR2(7)

FK

Registration of the car actually rented.

Model_name

VARCHAR2(8)

 

Model of the car rented.

Miles_out

NUMBER(6)

 

Miles on the odometer at the start of the rental.

Miles_in

NUMBER(6)

 

Miles on the odometer at the end of the rental.

Amount_due

NUMBER(6,2)

 

Cost of the rental. Calculated when the car is returned.

Paid

CHAR(1)

 

Flag to indicate if this rental has been paid for. ‘Y’ if it has been paid and ‘N’ if not.

 

 

 

 

Write SQL queries to solve the following specifications. Provide the queries and the output.

1.      Display full details of all car bookings where (a) the odometer reading of cars is greater than 30,000 miles at the start of their rental and the reservation was done by a staff called REDMOND, OR (b) the car has not been returned and the car model name ends with ‘TR’. Order the output by the date on which the booking was made, showing the most recent date first.

 

2.      Using a set operator, find out all names of the customers that have not had any bookings.

 

3.      Display the booking number, rental rate per day, rental period and the current status of the car for all car bookings. Filter your results to show only the records where the car is on hire and the rental rate per day is greater than $35.

 

4.      Display the car registration number and the average miles travelled in all booking by each car where the average miles travelled is less than 1,000 miles and registration number begins with H.

 

5.      Display the total rental income to date from the least expensive car available for rental. Format the output as a currency value (i.e. formatted as $9,999.99).

 

6.      Display the car registration, rental cost, mileage of the car when it was last serviced and current mileage of the car for all completed bookings where the car is rented more than 30 months after it was bought.

 

7.      Display booking number, date on which the booking was made and the cost of the rental for all the bookings made in the year 2012 and the car is already returned. Also include the name and full description of the corresponding model of the car used in the rental.

 

8.     

Nursingpapertutors.com places a premium on meeting deadlines. The company understands the significance of timely paper submissions for nursing students. To uphold their commitment to punctuality, Nursingpapertutors.com employs a well-organized workflow and efficient team coordination. This ensures that students receive their papers promptly, affording them ample time for review and making any necessary adjustments. Providing exceptional customer support is central to Nursingpapertutors.com’s mission. The company recognizes that nursing students may have queries or require assistance at any time of the day. As such, Nursingpapertutors.com offers 24/7 customer support to promptly address any concerns, clarify instructions, and offer updates on the paper’s progress. Their responsive support team ensures a seamless and positive experience for every student.

 

 
Do you need a similar assignment done for you from scratch? We have qualified writers to help you. We assure you an A+ quality paper that is free from plagiarism. Order now for an Amazing Discount!
Use Discount Code "Newclient" for a 15% Discount!

NB: We do not resell papers. Upon ordering, we do an original paper exclusively for you.