Assignment title: Management


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.