For the coursework you are asked to build a server-side web application
containing the components described below. You can use any programming
language of your choice for the coursework but only Perl, and to a lesser
extent PHP, will be supported by the lecturer. That means that if you
choose a language other than Perl or PHP, you cannot ask for help if you
are having problems.
Some of your coursework may be marked using some automatic evaluation
software. For this software to work it will be required that you use
the names within your webforms exactly as they are specified below (in the
green font). You may loose marks if your software
does not comply exactly to this specification.
Components of your coursework
Your application should consist of the following components:
- A search interface that allows a user to search the lecture notes page.
The webform of your
search interface should contain a single textbox with name
search and a submit button
and no other boxes or buttons. At a minimum it should be allowed
to search for a single word, a phrase (indicated by using double
quotes around the phrase) or two words. A search for two words
should use Boolean AND.
- A quiz about server-side web languages containing 5 questions. The first
page of the quiz should present the first question and contain a textbox
called quiz and a submit button.
After answering the first question,
the user will be told whether the answer was correct or false and will be
presented with the second question (again using a textbox called
quiz). A cookie will be used to count the number
of correctly answered questions. After each question has been evaluated
the score will be updated and displayed to the user.
The answers to the questions are as follows: "Perl",
"regular expression", "non-greedy multipliers", "REQUEST_METHOD",
"htaccess". Your script should evaluate these strings exactly
as they are here, using upper- and lower-case as presented here, but
without the double quotes. You should create the 5 questions to
which these answers belong yourself.
- A "credits page" which contains your name and lists
any resources for the development of your application other
than the materials from the lecture notes and exercises in the practicals
script code which you may have downloaded from the web.
- Some documentation (in html format), which includes
In total your documentation should not be more than 3 pages if printed
in 12pt font on A4 paper. To avoid possible plagiarism, you should NOT post
this documentation on the web before the deadline for the hand-in.
- a schematic diagram of your application. (Eg.
flowcharts or UML diagrams.);
- an FAQ page that answers questions which your users might have;
- a short description of your site aimed at a potential investor who
might want to buy your site;
- a short critical evaluation of your site which should be honest and
NOT be aimed at investors and should describe the features and limits
of your site including details about security and implementation.
Your coursework will be evaluated during the practicals in
Week 11. If you cannot attend your practical during that week
for whatever reason, you need to contact the lecturer in advance of
the practical and arrange to attend a different practical.
If you fail to do this, you risk having your coursework marked as "late"
and capped at 40%.
The Napier webserver is guaranteed to be extremely slow during a time of
high demand around the deadline. The deadline will not be extended as
long as the server is functioning to some degree. Only if the server
fails to work completely for an extended amount of time or if the server
malfunctions during the practicals in week 11, the deadline may be extended.
Because it is guaranteed that the server will be troubled,
you should not attempt to do the coursework in the last minute. Proper
project management is part of a successful coursework. You have been warned!
You will be asked to submit the URL of your site for automatic verification
in week 11.
The deadline for handing the printed documentation in to the School Office is
December 12, 15:00. At this point you are required
to hand in
a printout of your documentation (see above, 12pt font, 3 pages, A4) and
a printout of the source code of your application, but only the pages
which contain script, NOT pages which are pure HTML. Please avoid
wasting paper for this. Use a small font; if possible print two pages per page
and/or use both sides of the paper.
Staple the documentation in the upper left corner. Please, do
NOT use plastic folders.
Safeguarding your work
It is your responsibility to ensure that your files are read-protected
from others. You should not leave any printouts of your code on Campus,
not even in the rubbish bins. You should make regular backup copies
of your code, for example, by storing the files on a floppy via your
If you submit your coursework late (between 1 and 7 days after the deadline),
the mark will be capped at 40%. After that your coursework will be marked as
You can reach a total of 50 points for the coursework. This is
50% of your final mark. The points will be distributed as follows:
|HTML, Design, Usability of the site||5 points
|Credits page||1 point