Assignment title: Information
COMP1678
(2016/17)
User Centred Web
Engineering
Header ID
XXX
Contribution
100% of course
Course Leader
Dr Mahtab Hossain
Release Date
Wednesday 05/10/2016
Interim Submission Due
Friday 04/11/2016
Deadline Date
Wednesday 04/01/2017
This coursework should take an average student who is up-to-date with tutorial work approximately 50
hours
Feedback and grades are normally made available within 15 working days of the coursework deadline
Learning Outcomes:
On completing this course successfully you will be able to:
A. Demonstrate a clear understanding of a User Centred Design (UCD) development methodology, and
importance of gathering different user requirements, and apply them in a Web based interface design.
B. Utilise current and emerging open source server-side and client-side Web technologies to create
database-driven Web applications.
Plagiarism is presenting somebody else's work as your own. It includes: copying
information directly from the Web or books without referencing the material;
submitting joint coursework as an individual effort; copying another student's
coursework; stealing coursework from another student and submitting it as your own
work. Suspected plagiarism will be investigated and if found to have occurred will be
dealt with according to the procedures set down by the University. Please see your
student handbook for further details of what is / isn't plagiarism.
All material copied or amended from any source (e.g. internet, books) must be referenced
correctly according to the reference style you are using.
Your work will be submitted for electronic plagiarism checking. Any attempt to bypass our
plagiarism detection systems will be treated as a severe Assessment Offence.
Coursework Submission Requirements
For this coursework there is an interim submission of a PDF due on 04/11/2016. This interim
submission will enable you to get feedback which should help you to get a better grade.
An electronic copy of your work for this coursework must be fully uploaded by midnight on the
Deadline Date of Wednesday 04/01/2017 using the link on the coursework Moodle page for
COMP1678.
For this coursework you must submit a single Acrobat PDF document.
In general, any text in the document must not be an image (i.e., must not be scanned) and would
normally be generated from other documents (e.g., MS Office using "Save As .. PDF").
For this coursework you must also upload a single ZIP file containing supporting evidence (e.g.,
code).
There are limits on the file size (current values are on Moodle).
Make sure that any files you upload are virus-free and not protected by a password or corrupted
otherwise they will be treated as null submissions. Your work will be marked online and comments on your work and a provisional grade will be
available from the Coursework page on Moodle. A news item will be posted when the comments
are available, and also when the grade is available in BannerWeb.
You must NOT submit a paper copy of this coursework, or include the Banner header sheet.
All coursework must be submitted as above. Under no circumstances can they be accepted by
academic staff
The University website has details of the current Coursework Regulations, including details of penalties for
late submission, procedures for Extenuating Circumstances, and penalties for Assessment
Offences. See http://www2.gre.ac.uk/current-students/regsCoursework: Developing a user centred
sentiment analysis website from Twitter feeds
This is an individual piece of coursework.
1 GENERAL OVERVIEW
The popularity of "Microblogging" is on the rise for quite some time among online users. Users on a
microblogging site may share their personal updates, thoughts, opinions, and even world news. The power
and impact of microblogging cannot be overlooked in today's world. A number of organisations are
already using microblogging as a cost-effective way of communicating with customers, building online
communities, product release information, updates, etc. Twitter (http://www.twitter.com) is one such
microblogging form that has a massive following (approximately 320 million registered users). It allows
registered users to post short messages (up to 140 characters) called tweets and reply to or even retweet
other users' tweets. One of Twitter's key strengths is the number of third party applications that enable
users to interact with the twitter service from a wide range platforms or services.
For this coursework, you will be required to design and develop a website based on the users' twitter
account feeds by categorising them under 'sentiments' (e.g., positive, negative or neutral). All the users
registered to your website must possess a valid twitter handle from which his/her feeds will be retrieved.
You can perform 'sentiment analysis' against i) the user's own tweets or ii) the user's own tweets and
retweets, or ii) user's home timeline, i.e., users own tweets, retweets, and tweets of other users that
he/she might be following. You need to justify any of the three options that you undertake.
Sentiment analysis is one of the hardest aspects of web analytics using microblogging sites' resources. It
could be an important starting point to gauge a business's or brand's impact on the web, and consequently,
the business strategies could be adjusted. For your coursework, you could choose a simplistic algorithm
to perform the sentiment analysis. For example, a word like 'love' or 'hate' appearing in a tweet could be
associated with 'positive' or 'negative' sentiments, respectively. Remember that identifying 'perfect'
sentiment is not the primary goal of this coursework. The emphasis of this coursework would be more on
the various user centred design principles and techniques that you apply, and the application of
client/server side web development technologies.
TASK 1: ANALYSIS AND DESIGN
The web application is expected to be developed in user centred design approach. The design process
needs to be documented through appropriate design artefacts (e.g. Information Architecture, Personas,
Task Analysis, Storyboarding, Prototypes, Evaluation) that show how the design has been conceived and
which steps were taken to implement a user centred design process. The student is expected to consider
contemporary issues (e.g., responsive design, accessibility) in designing the web applications. He/she
should also provide a clear rationale for his/her design decisions based on user research and best practices
of user centred design. Furthermore, clear evidence and documentation should be shown that a usercentred design process has been followed, and an analysis of the information design for the user interface
has been carried out.
TASK 2: INTERFACE IMPLEMENTATION
You are required to develop a user friendly web interface to be run on current web browsers that shows
the tweets categorised according to the sentiments. You should make use of appropriate HTML and CSS
coding techniques to achieve this. Use of templates and frameworks such as Bootstrap is encouraged but
it must be referenced in the code and report. Be aware that marks can only be awarded for modifications
to templates and frameworks, so please make sure you properly distinguish your own work/modifications
in the report.
You must make sure that the user interfaces meets usability and accessibility criteria, and conform to user
centred design guidelines and theory. You also need to consider how the user will navigate between pages
(if required). All of this must be documented in the report.
TASK 3: SYSTEM IMPLEMENTATION
The system must be hosted on the University of Greenwich IIS server (your CMS I: drive) or a similar
collaborative college system. All sources of code must be fully referenced. Do not implement anything
that you do not understand as you may have to explain all your code to a tutor at an acceptance testing
session.
You are required to develop a prototype system using a dynamic web programming language (e.g., PHP)
and a suitable database (e.g., MySQL) with the following functionalities:
1. Every user registered into the system should possess a valid twitter handle. You should also create
a twitter handle yourself before registering to your own system if you don't already have one. The
registered user is encouraged to follow other users of Twitter from his/her own twitter account.
The twitter feeds should be retrieved from this registered twitter handle of your system. Note
that, your system should have provisions to have multiple users registered with their respective
twitter handles.
2. You should have a registration system in place for your system. You can assume that the twitter
handle provided by the user during registration is valid – no error checking is required. Once
registered, a user should be able to edit his/her own profile that contains a short biography,
contact details, picture, etc.
3. After registration, the user can log into the system using username/password or email/password
or any other combination that you deem appropriate. Unauthorised access should be prohibited.
Password should be saved inside the database encrypted. After login, the tweets related to the
user's twitter handle with which he/she have registered will be retrieved. Again note that
depending on the logged user, the retrieved tweets may vary as every user is expected to register
and login with his/her own Twitter handle.
4. A simple algorithm like Cosine Similarity or Naïve Baye's Classifier is sufficient to categorise theretrieved tweets according to the different sentiments for showing meaningfully in the website.
You can associate various keywords to the different sentiments 'offline' initially (e.g., love, thank
you etc. reflecting 'positive' sentiment). However, you should also provide provisions inside your
website to update (add/delete/edit) the keywords corresponding to the sentiments by a
registered user.
5. The visualization aspects of the user interface, e.g., how many tweets are
positive/negative/neutral (and/or in percentages) should come from the user centred study that
you performed in Task 1 with justification. You are encouraged to also include other types of
report or results that you deem appropriate inside your "sentiment analysis website" arising from
the user centred design and analysis.
TASK 4: REPORT
You are required to present a formal report, which must be uploaded by the due date. The report is the
basis for the marking and credit can only be given for work that is presented in the report. The report
should not simply be a collection of screenshots, you must explain your design and development decisions
and provide evidence to back them up either from the literature or your own studies. The report should
include the following:
Table of Contents.
The URL of the prototype web site. A sample username/password or email/password or any
other combination that you have used to log into your system should be supplied inside the
report through which the website can be accessed. Include your registered twitter account
handle as well for this particular user. All these information should be inside the FIRST PAGE of
your report.
The key issues and findings of the report divided into Tasks 1, 2 and 3.
A section containing the evaluation and testing of the site.
The report should include code snippets (not the full code) and screen images. A ZIP of the code should
also be uploaded along with the PDF of the report.2 ASSESSMENT CRITERIA
Assessment 1: Analysis and Design 40%
Marks will be awarded for documentation of the two stages and understanding of tools/techniques chosen.
Especially, whether contemporary issues (e.g., responsive design, accessibility) of designing web
applications have been considered, and evidence that an analysis of the information design for the user
interface has been carried out (requirement of Formative Assessment – interim upload). They should also
provide clear rationale of their design designs, and evidence of whether user centred design process has
been followed (this can be added to their interim report and be included inside their final report).
Assessment 2: Interface Implementation 20%
Marks will be awarded for Usability and Accessibility as well as their written (if any)/modification to the
generated HTML/CSS code for both versions.
Assessment 3: System Implementation 30%
Marks will be awarded for functional front-end (running on web browsers) and back-end Database design,
and completeness of the delivered prototype's functionalities.
Assessment 4: Report Presentation, Completeness, Referencing 10%
Marks will be awarded for general presentation, referencing style, completeness and documentation of
Assessments 1- 3.
_____________________________________________________________________
Total 100%
_____________________________________________________________________
All the above tasks will be evaluated w.r.t. the following deliverables:
Deliverable 1: An interim upload
An interim report (Week 7 – Friday (4th November, 2016)) as a formative assessment which the student
should utilise to obtain useful feedback from the tutors that he/she might incorporate for their final
upload. It should consist of the user centred design and analysis part (please see Assessment 1 / Task 1
for more details) of the coursework.
Deliverable 2: A Final Report
You are required to present a formal report, which must be uploaded by the due date. The report is the
basis for the marking and credit can only be given for work that is presented in the report. The reportshould not simply be a collection of screenshots, you must explain your design and development decisions
and provide evidence to back them up either from the literature or your own studies. ). It should consist
the whole documentation of Tasks 1, 2 and 3.
The report should include code snippets (not the full code) and screen images. It should include the
following:
Table of Contents.
The first page of the report should list the URL of the prototype web site together with a
username and password that you have already registered with a twitter account (specify the
registered twitter account as well). It might be used by the assessor to log-in without
registering to your website with his/her own account.
The key issues and findings of the report divided into Tasks 1, 2 and 3. You should include all the
requirements that are specified inside the each individual Task here.
A section containing the evaluation and testing of the site.
Apart from the contents related to the explanation of their web application, the presentation and
coherence of the report structure, grammar, referencing, etc. will also be taken into account in evaluating
the final report.
Deliverable 3: A Prototype System
A ZIP of the code of your website should also be uploaded along with the PDF of the report. Proper
credentials should be provided by the student to assess the website properly inside the report. For
example, the URL of the prototype web site together with a username and password that you have
already registered with a twitter account (specify the registered twitter account as well) which can be
used to login to your system.
An acceptance test will also be arranged by your tutor near the end of the term where you will
show your prototype system to the tutor/assessor on Week 12. You are expected to explain your system,
and answer any queries that the tutor/assessor might have. You can utilise this session's feedback to
enhance your prototype during your final upload.3 GRADING CRITERIA
Distinction (>=70%)
Well-developed work that satisfies the coursework requirements in design and implementation to a
high standard. Able to demonstrate detailed critical understanding of the relevant concepts. A well
written report and reflections on the tasks completed, and an excellent prototype.
Merit (60 – 69%)
Work that addresses the requirements in design and implementation reasonably well. Shows a
good understanding of the relevant concepts with a good report and prototype.
Pass (50 – 59%)
Barely meets the coursework requirements in design and implementation. Demonstrates a limited
understanding of the relevant concepts with a report that fails to address many of the design
choices' rationale, and a prototype that may be missing many of the functional requirements.
Fail (<50%)
Demonstrating little, incorrect or no understanding of the relevant concepts. A superficial report
that fails to address most of the requirements both in design and implementation perspective.