Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit


Coursework Assessment Pro-forma

CM1102 Web Applications


This assignment is worth 30% of the total marks available for this module. If coursework is submitted late (and where there are no extenuating circumstances) the following rules will apply:

1. If the assessment is submitted no later than 24 hours after the deadline, the mark for the assessment will be capped at the minimum pass mark;

2. If the assessment is submitted more than 24 hours after the deadline, a mark of 0 will be given for the assessment.

Your submission must include the official Coursework Submission Cover sheet, which can be found here: https://docs.cs.cf.ac.uk/downloads/coursework/Coversheet.pdf


Learning Outcomes Assessed

Design, build, and test front-end web pages according to specifications and best practices.


Overview

This assessment consists of two parts:

1. to create a static website (using HTML and CSS) on an aspect of the history of computing and the Internet

2. to create a dynamic website (using HTML, CSS and CGI) to compute Easter dates

Although both parts have the same formal deadline (Friday 10th December) we strongly encourage you to submit part 1 before Friday 3 rd December. In that way, we will be able to mark and provide feedback on part 1 during the lab sessions of Friday 3rd December. This feedback can be useful when working on part 2.


Part 1: Create a static website (using HTML and CSS) on an aspect of the history of computing and the Internet

Using only HTML and CSS, create a website consisting of at least three web pages dedicated to either a person or a technology central to the development of computers or the Internet.

If the website is about a particular person, then it should contain separate pages about:

1. Information about the person (e.g. his or her personal background).

2. A discussion about the technological contribution he or she has made.

3. A discussion on why this technological contribution is still relevant today.

If the website is about a technology, then it should contain separate pages about:

1. The functionality it provides: what does it do and what is it for?

2. Some of the relevant technical details.

3. An overview of its history.

Suggested persons to choose from are: Charles Babbage, Terry Davis, Grace Hopper, Ada Lovelace, Dennis Ritchie, Clive Sinclair, Richard Stallman, Ken Thompson, Linus Torvalds, Jack Tramiel, Konrad Zuse, or anyone else of a similar importance. Suggested technologies to choose from are: ADSL, C (programming language), Graphical User Interfaces, Java, Python, SMTP, SSH, Wi-Fi, or any other technology of similar importance.

Each of the web pages should include a navigational menu that allows the user to move to each of the other pages on the website.

Include a table (with at least 2 columns and 3 rows) to provide a historical overview (e.g. year of birth, education, main achievements, and death if your website is about a person; years of main developments if your website is about a technology). Also include a picture, such that clicking on it brings the user to a related external page (for example to a Wikipedia page).

All pages of the website must be subject to CSS styling that is controlled by an external style sheet. The website should be written entirely by hand using only HTML and CSS (that is, you must not use any kind of HTML/CSS code generators).


Part 2: Create a dynamic website (using HTML, CSS and CGI) to compute Easter dates

Create a website that interacts with a Python program via CGI (Common Gateway Interface) to inform the user of the day and month on which Easter falls in a given year that the user inputs. The website must use a form to allow the user to input the year, and radio buttons to specify how they want the output to be formatted. The user should be able to select between the following formats:

1. Numerically, as dd/mm/year (for example: 12/04/2020).

2. Verbosely, with the full name of the month as day of named_month year (for example: 12th April 2020).

3. Both of these formats.

Note that for option 2 some credit (1 mark) will be awarded for qualifying the date with a superscript of either st, nd, rd or th, according to the day.

Both the form and the program output should be formatted using CSS from an external stylesheet located on the server.

The website should be written entirely by hand using only HTML, CSS and CGI with Python (that is, you must not use any kind of code generator). The website must be placed on the COMSC web server, in line with the instructions below, with the HTML code in the project directory and the Python code in the cgi-bin subdirectory.


Hints

Data items from a form, when accessed in CGI with Python, are returned by the form.getvalue() function as a string. Therefore, you will need to convert them to integers using the function int() before you can process them with your procedure to compute the Easter date. In your Python script, to determine the value of the radio buttons form controls, compare the variable containing the value returned by form.getvalue() with a string containing the respective item of text, that is the value of the value attribute of the corresponding form control.


Submission Instructions

Part 1 and part 2 should be submitted separately, no later than Friday 10th December 2021 at 9.30am.

As for part 1, submission should be done as follows:

Via Learning Central (the entry for part 1)

○ A single .zip archive that includes the complete source code of your website, with the same structure as needed for deployment on the project server, including all required resources such as images.

○ A plain text file named readme.txt that includes: your name, student number, e-mail address, and the URL of the website on the project server.

○ The standard COMSC coursework submission coversheet: https://docs.cs.cf.ac.uk/downloads/coursework/Coversheet.pdf

Via the school’s web server

Uploading your website should be done to websites.cs.cf.ac.uk using the CIFS protocol. Please make sure that you place your website in the project directory, which has been created for you. Once you have uploaded your website, you can access it at http://project.cs.cf.ac.uk/

Do not upload the .zip archive to the web server — upload the individual files instead!

As for part 2, submission should be done as follows:

Via Learning Central (the entry for part 2)

○ A single .zip archive that includes the complete source code of your website, with the same structure as needed for deployment on the project server, including all required resources such as images.

○ A plain text file named readme.txt that includes: your name, student number, e-mail address, and the URL of the website on the project server.

○ The standard COMSC coursework submission coversheet: https://docs.cs.cf.ac.uk/downloads/coursework/Coversheet.pdf

Via the school’s web server

Uploading your website should be done to websites.cs.cf.ac.uk using the CIFS protocol. Please make sure that you place your website in the project directory (scripts should go into the cgi-bin subdirectory) which has been created for you. Once you have uploaded your website, you can access it at http://project.cs.cf.ac.uk/

Do not upload the .zip archive to the web server — upload the individual files instead!

No changes are allowed (on Learning Central or on the web server) after the deadline of Friday 10th December at 9.30am. Also, non-compliance with the above instructions can lead to some (or even all) marks being deducted.


Feedback and suggestions for future learning

Your work will be marked during the online marking and feedback sessions. A lab assistant will test and evaluate your website (using screen share) and provide marks and feedback while doing so. The marking sessions will be held at the following times:

marking and feedback session for part 1: Friday 3rd December

marking and feedback session for part 2: Friday 10th December

If you miss the marking sessions, your work will still be marked, but you will not receive any feedback, nor will you be able to ask any questions about the particular mark you received.


Criteria for assessment

As for part 1, marks will be given for the following aspects:

  Criterion
  Marks
  at least three web pages of HTML code
  2
  navigation with a menu on each page that provides access to each other page
  2
  a table that has at least two columns and three rows, containing information relevant to
  the website
  2
  An external style sheet that includes rules that at least set the font family, size and colour
  of text
  2
  Informative content about a key person or a technology, including a clickable picture.
  To obtain the full mark for content there should be a clear explanation of the nature of
  the contribution, aimed at a reader who has little or no prior knowledge of the subject. At
  least two of the pages should include informative content (at least three reasonable sized
  paragraphs per page). It should be written entirely or mostly in your own words.
  References should be listed, and any items of text quoted directly from another source
  must be placed in quotes and should be clearly acknowledged, with details of the source.
  2


As for part 2, marks will be given for the following aspects:

  Criterion
  Marks
  an HTML web page with a form that accepts user input of both the year and the option
  for formatting the output
  1
  the above page is styled with an external CSS style sheet
  1
  python + CGI program at least echoes (prints out) the year that the user has input into the
  form, as a HTML/CSS web page
  2
  Python + CGI processing of user input to generate and output (in HTML/CSS) the date of
  Easter for the year that the user has entered
  3
  Correct implementation of the user options for formatting the date as both
  “dd/mm/year” and “day named_month year”
  2
  The superscript for the day (st , nd , rd, or th) is correctly computed and displayed
  1

The examiners will have the discretion to award partial marks when a component is only partially implemented or is not fully working.