Southern CrossUniversity UnitWeb Development IIAssignment 1Design and build a Web site.Due DateII :00 pm, Friday 9th April 202 1Learning OutcomesI – 4Graduate AttributesI, 3 & 4Weight25% of overall unit assessmentMode MarksTask DescriptionThis assignment is developmental and cumulative. Successive parts of thisassignment (and assignment 2) depend on previous parts. You are stronglyadvised to undertake these parts … Continue reading “Design and build a Web site | My Assignment Tutor”
Southern CrossUniversity UnitWeb Development IIAssignment 1Design and build a Web site.Due DateII :00 pm, Friday 9th April 202 1Learning OutcomesI – 4Graduate AttributesI, 3 & 4Weight25% of overall unit assessmentMode MarksTask DescriptionThis assignment is developmental and cumulative. Successive parts of thisassignment (and assignment 2) depend on previous parts. You are stronglyadvised to undertake these parts as soon as possible in your study. Leavingyour starting date to the week before the due date is a very poor strategy forsuccess in this unit.A marking scheme will be posted on MySCU to help you direct your effortssuccessfully.Your assignments (assignment-I and assignment-2) require you to develop a web application for ahypothetical DVD rental e-shop. The final application is similar to:htt p:/linfoteeh.seu.ed u.au/ern poriurnFrom this moment, I will refer to the application as the movie_zone or the app. When you havecompleted the assignment, you are required to;• Upload your web application to your student directory (on the school’s serverinfotech.scu.edu.au)• Upload a zip file of your site (and the design documentation) to the MySCU assignmentsfolder.Please note that all material used on your website has to comply with the Southern Cross University“Web Hosting and Publishing Policy”.The following is the detailed description for Assignment 1:• Part-A: Design. In this part you will do the “reverse engineering” of the existing movies_zone to create thehigh-level system design and the low-level module design for the application. The low-level module design willapply the Model-View-Controller (MVC) design pattern.• Part-B: Implementation. In this part you will implement and test version 1 ofthe application. In particular,version 1 will have the following features:o The Controller will be able to handle the client requests and redirect them to the corresponding Modelmethodso The Model will be able to handle all SELECT movies requests e.g. select all movies, select newreleases, select movies by stars, directors, genre etc.o The View should be able to view the results in plain texto A simple user interface to test the application i.e. to send a request and see the response.o PHP code should be Object Oriented.Assignment-l guidelinePart-A: DesignTo complete this part, you have to follow these guidelines:Step 1: Requirement analysis. In this step, you will document all functional and non-functional requirements of the appby “playing” with the pre-built application at the following URL:http://infotech.scu.edu.aul-W ebDev2/emporiumlexample_11Examples of functional requirements are:• Add new movie details (list all details that can be added)• Select movies by title, by author, by stars etc.Examples of non-functional requirements are:• Two column design at minimum• Display new releases in the front-page• Use separate CSS file for styling etc.To access the admin interface on both the sample site and your own site, you have to allow for any usemame andwebdev2 as the password. Note that you may not be able to enumerate all the requirements in one go but the moredetails you have, the less chance you have to go back to re-design the app later.Step 2: Perform the high-level design and create a high-level system design diagram to illustrate your design. You needto write a small paragraph to explain how the app works using design diagram. Use the tool in https:llwww.draw.io/tobuild your design diagram.Step 3: Perform the low-level module design usmg MVC design pattern. You will need to use the functionalrequirements you have gathered in Step 1 to help you in this step. For each module in your design, provide informationabout the module inputs, outputs and description about the logic i.e. the function the module provides. Try to provideenough information so that the module can be implemented. You will need to create a diagram to show how the modulesare interconnected in your low-level module design diagram. Finally, write a paragraph to explain one user case usingthe low-level design diagram. For example, explain how the user can display all movies of a given director.Part-B: ImplementationTo complete this part, you have to follow these guidelines:• Setup the provided moviezone database on your local (XAMP) and your infotech sites MySQL server and studythe database structure. Refer to the next section for the database description.• Write a base class for each major component Model, View and Controller and a class for each module of yourlow level design. Define the main properties and methods for each class based on the module description.• Implement the Controller component first as it is the simplest component and it can be used to test othermodules.• Implement the Data Access Interface module to access the movie database. You do not need to implement alldata access methods at this stage. Implement only those required to select movies from the database.• Implement the View component. Note that at this stage, the View only need to send unformatted results back tothe client so most of the View methods will contain a single print_r or echo command.o Implement the Model component. Note that you only need to implement all SELECT movies methods atthis stage. The Model should use methods provided by the Data Access Interface for the tasks.o Finally, create a simple UI to test the application. You don’t have to create the interface for the app atthis stage, but it is a good idea to begin the construction.• Follow the assignment advice in each topic to manage your development.The Movies DatabaseThe database structureYou will be provided with an existing database of movies to help you in this assignment. The database and setupinstruction is in a zip file that can be downloaded from the same folder with this document. You need to setup thedatabase on your local (XAMP) and also the infotech sites MySQL server before starting any development.The database provided for your assignments holds the following information:Member information, this table will store the information gathered on your assignment 1 JavaScript form or theprovided PHP self-targeting form:1. Surname.2. Other names.3. Preferred contact method (land-line telephone, email or mobile)4. Day-time telephone number (must contain format (XX) XXXXXXXX where X is a digit only). Note: this maybeempty.5. Mobile telephone number (must contain format XXXX XXX XXX where X is a digit only) Note: this maybe empty.6. E-mail address (Fully verified using supplied function validEmail – see Notes for the join.phppage). Note: this maybe empty.7. Whether the user wants to receive the e-shops magazine.8. Postal address: 3 separate fields (Number / Street – Suburb / City and Postcode). Note: this maybe empty if the userchose not to receive the magazine.9. Username selected by user (6 characters min – 10 characters max.). Note: this should be unique!10. Password selected by user (10 characters max. containing at minimum one uppercase letter, one lowercase letter onenumber and one special character with no whitespace allowed).11. Occupation.12. Join dateStock (Movie) information these tables store the following information.1 Title (Not unique – how many King Kong movies are there?)2 Tag Line (unique)3 Plot (unique – up to 256 characters)4 Image name (appended with php timestamp)5 Director6 Studio7 Genre (only 1 as that is how done in a shop)8 Classification (G, PG, M, MA, R or X)9 Stars (3 max – at least 2 required)10 Co-Stars (3 max – or none)11 Year of theatrical release12 Rental period (Overnight, 3 Day or Weekly)13 DVD rental price (individual for each Movie)14 BlueRay rental price (individual for each Movie)15 DVD purchase price (individual for each Movie)16 BlueRay purchase price (individual for each Movie)17 Total number of DVDs18 Number of DVDs on loan19 Total number of BlueRays20 Number of BlueRays on loan.Fig. 1: The movies database structureFig 1 shows the database structure, data tables in the database and their fields. Two views have been created to simplifythe use of the database. A View is a virtual table based on the result-set of an SQL statement. A view contains rows andcolumns, just like a real table. The fields in a view are fields from one or more real tables in the database. In general, youselect data from a view in the same way you select data from a real table. However, other SQL queries such as Insert,Update and Delete may have some limitation.Examples of using the provided views:movie_detaiL view – display list of movies with all details sorted by movie title:SELECT * FROM movie_detail_view;SELECT * FROM movie_detail_view WHERE genre = ‘Sci-Ii’;SELECT * FROM movie_detail_view WHERE title = ‘Furious Seven’;SELECT * FROM movie_detail_view WHERE classilication = ‘G’;movie_actor_view -display moviejd’s that star or co-star a particular actor:SELECT movie_id FROM movie_actor_view WHERE actor_name = “Vin Diesel”;Combining the above to get the details of movies with a particular actor:SELECT * FROM movie_detail_view WHERE movie_id IN (SELECT movieJd FROM movie_actor_view WHERE actor_name = ‘VinDiesel’);Where to get additional data?To fmd new movies to add to your database (or to load it if you created your own), I suggest you visit the Internet MovieDatabase (IMDb -http://www.imdb.com) for your movie needs – Additionally as this is an educational exercise (ahypothetical DVD database – that will be deleted at the end of semester) DVD pictures can be “borrowed’ from this sitefor the purposes of this assignment. As homage to IMDb (the site you “borrowed” images from) include a thank you onyour homepage (index.php) linking to the IMDbAssignment-l Marking RubricA spreadsheet that will be used for the marking of your site is provided (co-located with this assignment specification)on MySCU to itemises exactly what tutors will be looking at in relation to marking your website. It contains a detailedbreakdown ofthe marking criteria for this assignment. I strongly suggest you peruse this spreadsheet.Submission FormatWhen you have completed the assignment, you are required to submit your assignment (a zip file containing yourcomplete site and the design document) to the MySCU assignment folder. The zip file will be named using the followingconvention:filename ~ FirstInitialYourLastName_PROG2002_ Ass1.zip(i.e. GColes]ROG2002_Ass l .zip)Additionally, you are required to upload your site to your student directory (on the school’s server infotech.scu.edu.au)and verify that all works well.Note to IBS students: Please check with your local lecturer/tutor the submission requirements for your assignments.Typically, they will be different from on-shore students of Southern Cross University.More informationAll design documents must be contained in one single word/pdf document. Drawings and diagrams should be placed intothe design document. Files created in non-university standard programs cannot be accepted, as the marker may not beable to view them.In this assignment, you can use any HTML/PHP design environment you desire to complete your website. However,please note the following:• All HTML pages and CSS files must validate.• JavaScript is the only allowable language for error checking on the join page. My Recommendations (what Iused) are as follows:• Notepad++ to author all HTML, JavaScript, PHP and MySQL.• XAMPP for testing all of these files on my Home PC (Apache 2, PHP & MySQL).All software mentioned here can be downloaded (For Free).Original workIt is a University requirement that a student’s work complies with the Academic Policy, Chapter 4.20 on StudentAcademic Integrity. It is a student’s responsibility to be familiar with the Policy.Failure to comply with the Policy can have severe consequences in the form of University sanctions. For information onthis Policy please refer to Chapter 4.20 on Student Academic Integrity at the following website:http://www.scu.edu.au/governance/academicboard/policy/As part of a University initiative to support the development of academic integrity, assessments may be checked forplagiarism, including through an electronic system, either internally or by a plagiarism checking service, and be held forfuture checking and matching purposes.Retain duplicate copyBefore submitting the assignment, you are advised to retain electronic copies of original work. In the event of anyuncertainty regarding the submission of assessment items, you may be requested to reproduce a final copy.School Extension PolicyIf you need an extension/special consideration for an assignment you will need to fill in the “Special Consideration forAssessment” form. If the requested extension is for more than 48 hours you will need to include some documentaryproof of the reason you need the extension (i.e. doctors certificate etc.). Remember that extensions will not be granted ondue dates of the assignments (except in exceptional situations) – get your request in before the assignment is due.To streamline and improve the special consideration process, new eForms have been developed that will enable studentsto submit an application electronically via MyEnrolment for:• Special Consideration for Assessment (extension and marking)• Special Exam ApplicationExtensions within 24 hours of submission or following the submission deadline will not be granted (unless supportedby a doctor’s certificate or where there are exceptional circumstances – this will be at the unit assessor’s discretionand will be considered on a case by case basis).A penalty of 5% of the total available grade will accrue for each 24-hour period that an assessment item is submittedlate. Therefore, an assessment item worth 20 marks will have 1 mark deducted for every 24-hour period and at the endof 20 days will receive 0 marks.Students who fail to submit following the guidelines in this Unit Information Guide will be deemed to have notsubmitted the assessment item and the above penalty will be applied until the specified submission guidelines arefollowed.Marks and FeedbackAll assessment materials submitted during the semester will normally be marked and returned within two weeks of therequired date of submission (provided that the assessment materials have been submitted by the due date).Marks will be made available to each student via the MySCU Grade book.