Ask Question, Ask an Expert

+1-415-315-9853

info@mywordsolution.com

Ask Statistics and Probability Expert

Background

Solent Cinemas is an independent company who runs one cinema located in a large town in the south of England. The company wishes to create a new dynamic website to replace its existing static, HTML-only website. The existing website has the problem that it must be edited by hand, for ex, when the film schedule changes.

There is also no way for customers to reserve tickets for films online, an often-requested feature. The cinema would ideally like to extend this feature so that a user can sign up for an account, to allow them to view and cancel their own bookings.
The new website aims to use database-driven server-side scripts to provide a more interactive experience for both the user and the company website administrator.

You need to design and implement a simple, prototype system which allows users to book films and administrators to add new films to the schedule.

Database design

Database tables will be created for you on the Technology web server. The schema will be as follows. Please note that this is a simplified database structure, designed to make it straightforward to implement the assignment on a basic level; you can modify this or add additional tables if you wish. Only the first two tables are absolutely essential to implement a bare pass solution.

sc_users table

Records users in the system, and whether they are an administrator or a regular user.

ID INT PRIMARY KEY
isadmin TINYINT
name VARCHAR(255)
username VARCHAR(255)
password VARCHAR (255)
dayofbirth INT
monthofbirth INT
yearofbirth INT

filmshowings

Records the current film showings.

ID INT PRIMARY KEY
film VARCHAR(255)
date VARCHAR(255)
time VARCHAR(255)
screen INT
maxtickets INT
certificate VARCHAR(5)
mybookings

A table which can be used if you wish to implement code to allow users to view, change and cancel their bookings. Not required for a bare pass answer but useful for more advanced answers.

username varchar(255)
showingID INT
ntickets INT

Deliverables

The tasks you need to complete are presented below. For each task, you must produce:

- an analysis and design (see "Analysis and Design report", below the tasks, for details);

- an implementation in PHP.

For a pass, it is essential to complete tasks a), b) and c). Please see the marking scheme for details on what mark you are likely to receive for completing a given number of the tasks.

Please complete the tasks in the order in which they are presented, or you will not receive the full credit. For ex, you will not receive the credit for task f) if you do not complete tasks a) to e) successfully.

Note that you also need a login facility, but you can use, more or less unchanged, the HitTastic! code that we developed in class for this. Consequently, your login script will not be counted towards your grade.

Analysis and design report

You are required to produce a report describing the process of analysing the specification and designing your scripts, in addition to the coding itself. For each task from a) to i) that you propose to complete, identify the PHP scripts (or, in the case of AJAX, JavaScript functions) necessary to implement that task, and for each script or JavaScript function, do the following:

i) In one or two paragraphs, describe the general role of the script, and discuss what the script needs to do in terms of database queries, gathering input from the user (e.g. from a form, or from a query string), linking to other scripts or performing calculations. If appropriate, details of techniques to maintain state (sessions, query strings, cookies), and of which security measures are to be implemented and why must be included.

ii) Design each script using pseudocode.
   
Implementation

For a Grade D, it is necessary to…

a) Allow an administrator to add a new showing. An administrator should provide the film name, screen, date, time and certificate. The certificate should be one of: "U" (can be seen by anyone), "12" (can only be seen if you are at least 12 years old), "15" (at least 15 years old) or "18" (at least 18 years old) - note that this is slightly different to the current UK certification system.

This should add a record to the showings table, containing the information the administrator entered. For a basic pass it is not necessary to check that the user is an administrator.

b) Allow a user to search for a film showing by film name. A user should be able to enter a film name (e.g. "Avatar"); once they have entered the film name, all showings of that film should appear. Each search result should contain a hyperlink, allowing the user to book that film showing.

c) Allow a user to book a film showing once they've chosen one from the search results. For a basic pass, you do not have to implement the facility to allow a user to book more than one ticket: you can assume that they are only booking one ticket. However, the site must reduce the number of available tickets for that showing and record the showing ID and current user's username in the mybookings table.
For a Grade C, it is necessary in addition to…

d) Allow a user to book more than one ticket.

e) Add appropriate error checking to tasks a) to d). It should not be possible to book tickets for a showing which is sold out;  only logged-in users should be able to book a showing; and only administrators should be able to add new showings. You will need to modify your login system to check that the user logging in is an administrator.
For a Grade B, it is necessary in addition to…

f) Allow a user to view and cancel their own bookings. The "view bookings" page should list the film name and time of each film showing that they have booked; beside each event there must be a "Cancel" link allowing the user to cancel that booking. Cancelling the booking should behave in a realistic manner.

For a Grade A4 it is necessary in addition to…

g) Prevent users from being able to book a film which they are not old enough to see.
For a Grade A3 it is necessary in addition to…

h) Implement an AJAX interface. Users should be able to search for and book films using AJAX (it is not possible to get an A3 with just a basic AJAX search, and no AJAX should be attempted unless you have completed tasks a) to g) ). In other words, a user should enter a film name, all the showings should be displayed (using AJAX) and then a user should be able to book a particular showing by clicking on a button (the communication with the booking script must again be done using AJAX).
For a Grade A1 or A2, it is necessary in addition to…

i) Develop a seating plan, which should show unbooked seats in green, and booked seats in red (or a similar scheme). You will need an additional table for this to record booked seats. This will need three columns:

id INT - the primary key
showingid INT - the showing that this booked seat relates to
seatnum INT - the seat number of this booked seat

Assume that all showings have 100 seats. For a very advanced (A1) answer, allow users to book a free seat by clicking on it; for an A2, it will be sufficient to allow the user to input the seat number separately.

Statistics and Probability, Statistics

  • Category:- Statistics and Probability
  • Reference No.:- M91148

Have any Question? 


Related Questions in Statistics and Probability

Two independent samples of a random variablenbsp x are

Two independent samples of a random variable  X are taken. Determine the expected value and variance of the sample mean estimate of  µ X  if the PDF is exponential,

Final projectobjectives- identify a hypothesis testing

FINAL PROJECT Objectives - Identify a hypothesis testing problem in print. - Conduct a survey to verify or dispute the results of the hypothesis test. - Summarize the article, analysis, and conclusions in a report. Instr ...

Let x t be a poisson counting process with arrival

Let X( t) be a Poisson counting process with arrival rate,λ We form two related counting processes,   by randomly splitting the Poisson process X( t) In random splitting, the the arrival associated with X( t) will become ...

A person gets a score of 52 on a test with a mean of 56 and

A person gets a score of 52 on a test with a mean of 56 and standard deviation of 4. What would the person's score be on a scale with a mean of 100 and standard deviation of 15?

What factors affect the generalizability of findings from a

What factors affect the generalizability of findings from a particular test? Describe the relationship between the cut score and the selection ratio in two pages.

What are the four main apostate acts kuraihats prohibited

What are the four main apostate acts ('Kuraihats') prohibited for a Sikh?

Assignment decision analysis1the lake placid town council

Assignment: Decision Analysis 1. The Lake Placid Town Council decided to build a new community center to be used for conventions, concerts, and other public events, but considerable controversy surrounds the appropriate ...

1 there are just 3x 1027 it air molecules in an otherwise

1. There are just 3x 10 27 it air molecules in an otherwise empty room. Calculate (a) the average number that will be in the front third of the room at any time, (b) the standard deviation about this value, (c) the relat ...

Consider a vector of n random variablesnbspnbspsuppose we

Consider a vector of N random variables   Suppose we form a new random variable  Z by performing a weighted average of the components of . That is,   Find the values of the constants b I  such that the variance of Z  is ...

A man has a simple discount note for 6200 at an ordinary

A man has a simple discount note for $6200 at an ordinary bank discount rate of 8.61 % for 40 days. What is the effective interest rate? Round to the nearest tenth of a percent. (Use the banker's rule.)

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

A cola-dispensing machine is set to dispense 9 ounces of

A cola-dispensing machine is set to dispense 9 ounces of cola per cup, with a standard deviation of 1.0 ounce. The manuf

What is marketingbullwhat is marketing think back to your

What is Marketing? • "What is marketing"? Think back to your impressions before you started this class versus how you

Question -your client david smith runs a small it

QUESTION - Your client, David Smith runs a small IT consulting business specialising in computer software and techno

Inspection of a random sample of 22 aircraft showed that 15

Inspection of a random sample of 22 aircraft showed that 15 needed repairs to fix a wiring problem that might compromise

Effective hrmquestionhow can an effective hrm system help

Effective HRM Question How can an effective HRM system help facilitate the achievement of an organization's strate