Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

University of Westminster Department of Computer Science 5COSC005W Coursework 2 (Semester 2) Module leader Dr D. Dracopoulos Unit Coursework 2 Weighting: 50% Qualifying mark 30% Description Learning...

1 answer below »
University of Westminster
Department of Computer Science
5COSC005W Coursework 2 (Semester 2)
Module leader Dr D. Dracopoulos
Unit Coursework 2
Weighting: 50%
Qualifying mark 30%
Description
Learning Outcomes
Covered in this
Assignment:
LO1, LO2, LO3, LO4, LO5
Handed Out: 2/3/2020
Due Date 30/3/ XXXXXXXXXX:00
Expected deliverables Source code/XML files/Resources (images, etc)
Method of Submission: Online via Blackboard
Type of Feedback and
Due Date:
Individual feedback ve
ally straight after the viva and written
individual feedback via Blackboard within 2 weeks of submission
All marks will remain provisional until formally agreed by
an Assessment Board.
Assessment regulations
Refer to section 4 of the “How you study” guide for undergraduate students for a
clarification of how you are assessed, penalties and late submissions, what constitutes
plagiarism etc.
Penalty for Late Submission
If you submit your coursework late but within 24 hours or one working day of the
specified deadline, 10 marks will be deducted from the final mark, as a penalty for late
submission, except for work which obtains a mark in the range 40 – 49%, in which case
the mark will be capped at the pass mark (40%). If you submit your coursework more
than 24 hours or more than one working day after the specified deadline you will be
given a mark of zero for the work in question unless a claim of Mitigating Circumstances
has been submitted and accepted as valid.
It is recognised that on occasion, illness or a personal crisis can mean that you fail to
submit a piece of work on time. In such cases you must inform the Campus Office in
writing on a mitigating circumstances form, giving the reason for your late or non-
submission. You must provide relevant documentary evidence with the form. This
information will be reported to the relevant Assessment Board that will decide whethe
the mark of zero shall stand. For more detailed information regarding University
Assessment Regulations, please refer to the following
website:http:
www.westminster.ac.uk/study/cu
ent-students
esources
academic-regulations
http:
www.westminster.ac.uk/study/cu
ent-students
esources/academic-regulations
http:
www.westminster.ac.uk/study/cu
ent-students
esources/academic-regulations
5COSC005W MOBILE APPLICATION
DEVELOPMENT - Assignment 2
Deadline 30/3/2020, 13:00
Dr Dimitris C. Dracopoulos
Email: XXXXXXXXXX
Description
You are required to implement an Android application described by the specifications below.
You are not allowed to use any third-party li
aries with the only exception
of the IBM Watson Cloud classes services mentioned in this document. The only
other li
aries that you can use are the standard Android API li
aries found in
the following URL:
https:
developer.android.com
eference
It is important to follow exactly the specifications and your implementation must
conform to these:
The application developed will help the user learn and practice different foreign languages.
1. When the application starts, it presents the user with 5 buttons labelled Add Phrases,
Display Phrases, Edit Phrases, Language Subscription, and Translate.
(3 marks)
2. Clicking on the Add Phrases button, it should display to the user a page where the use
can create and save English words and phrases. The page should contain 1 textbox which
can be used to enter a single word (or a single phrase). For example, the user can ente
the following: “Good morning” or “university”.
The page should also contain a Save button which when pressed saves the word (phrase)
entered in an SQLite database local to the mobile device.
(12 marks)
3. Clicking on the Display Phrases button displays to the user a list of all the saved words
and phrases sorted in alphabetical order (one per line) The displayed words and phrases
should come from the database and they should co
espond to the ones which the use
created using the Add Phrases functionality in this instance of running the application o
a previous instance that the application was run (i.e. the application should NOT delete
any saved words/phrases when it exits and all data are persisted in the database).
1
If the list of words/phrases is more than one page long, it should provide scrollbars that
the user can use to see all of them.
(10 marks)
4. Pressing the Edit Phrases button the application should display to the user a list of all
previously saved words and phrases (one per line). Next to each of them there is a radio
utton which the user can use to select only one word (or phrase), i.e. only one selection
can be active at any point in time.
A button titled Edit and a button titled Save are also present in the page together with
a textbox which is initially empty. The user can select a single word (phrase) by ticking
one of the radio buttons and subsequently pressing the Edit button. Once the Edit button
is pressed, the selected word appears in the textbox and the user can use the textbox to
change (edit) the contents of the word/phrase. If a different radio button is selected before
pressing the Save button, the contents of the textbox are updated with the newly selected
word (phrase). Once the user finishes editing the contents of the textbox, he/she can press
the Save button and the newly entered information will replace the selected word/phrase
in the database. At the same time the cu
ent page will be updated (refresh) with the
new information available in the database.
(15 marks)
5. Clicking on the Language Subscription button the list of all available foreign languages
found in the following web page will appear:
https:
cloud.ibm.com/docs/language-translator?topic=language-translator-identifiable-languages
A tickbox next to each foreign language is also displayed (the tickboxes should initially
e blank, i.e. not ticked the first time that this application is ever run). The displayed
languages should come from the database and each tickbox should only be checked if
the the user has previously subscribed to the co
esponding foreign language using the
Language Subscription functionality.
The user can check or uncheck the tickboxes and then click on a button titled Update which
is also present in the page in order to subscribe or unsubscribe to the co
esponding foreign
language respectively. Once the button is clicked, the application updates the database
with the list of foreign languages subscribed by the user.
(15 marks)
6. Pressing the Translate button the user is presented with the list of words/phrases saved
efore in the database together with a dropdown menu and a Translate button. The drop-
down menu contains the list of foreign languages that the user has previously subscribed
to. After the user selects a foreign language he/she can click on a word/phrase to select
it (this could be possibly indicated with a different background/font) and subsequently
click on the Translate button. The translated word/phrase should appear somewhere in
the page.
The translation should be made by using the IBM Cloud Watson Translator Web service
as covered in the tutorials (a free account should be created first to obtain a unique API
key and a unique URL for the service):
https:
cloud.ibm.com/docs/services/language-translator?topic=language-translator-gettingstarted
(13 marks)
2
https:
cloud.ibm.com/docs/language-translator?topic=language-translator-identifiable-languages
https:
cloud.ibm.com/docs/services/language-translator?topic=language-translator-gettingstarted
7. Extend the previous (Translate) task by adding a Pronounce button in the page. Once
a translation is made, the Pronounce button can be clicked and the application should
speak and pronounce the translated foreign word (phrase) by using the IBM Cloud Watson
TextToSpeech Web service covered in the tutorials:
https:
cloud.ibm.com/docs/services/text-to-speech
(12 marks)
8. Optional: Extend the application so that the user can translate all the saved English
phrases in a foreign language of his/her choice and save the translations in the database.
Following that, the user should have an option where he/she can see all the phrases and
the co
esponding translations, e.g. selecting “French” displays all the saved phrases and
the co
esponding saved translations in French (the translations should come from the
database not the Web Service so that the user can use this functionality while the device
is offline). The user should be able to do the same for multiple foreign languages, i.e. the
application should be able to save the words/phrases stored in the database in more than
one foreign languages.
This option will be useful for the user to revise all of the phrases learned in a specific
foreign language. (10 marks)
Marking Scheme: The marks achieved for each part of the program are indicated in the
description of the task above. In addition to these the following will be taken into account:
• Code readability (structure, comments, variable naming, etc,): 5%
• Implementation (e.g. quality, efficiency, look and feel of the application, based on fonts,
colours, etc.): 5%
The maximum for work which does not compile (or XML files with syntax e
ors causing
the Java code not to compile) is 30%.
Based on the functionality implemented, the marks awarded will consist of 2 parts:
• 30% of the marks achieved will be awarded based on the submission.
• The remaining 70% of the marks for the implementation will be awarded after a compulsory
viva, that will test the understanding of the code by the student. The student will be asked
to demonstrate the application and will be asked questions about the code to demonstrate
his/her understanding. No understanding of any parts of the code will result in no marks
given for this component (i.e. a maximum of 30% can only be achieved if a students cannot
explain his/her code and he is unable to point to any references within the code of where
this code was found in a textbook or internet).
A compulsory viva for each student based on his/her submission will take place
during the next tutorial session after the submission (all of them taking place in the
weeks starting the 30th of March and 6th of April). Each student will be notified
a specific slot that he/she needs to attend. Failure to turn up in the viva slot
designated (no changes will be allowed as this a normal examination) will result in
awarding only 30% of the marks achieved for the submission (see marking scheme
above)
3
https:
cloud.ibm.com/docs/services/text-to-speech
It is the responsibility of each student to make sure that during the viva the code
uns properly in the lab used during the viva, i.e. you should make sure in advance
(allow enough time before the viva day) that everything is running properly in the
machine you will be using. If you developed code at your home computer, it is you
esponsibility that you port it to the lab in advance, before the viva. Marks will be
awarded based on the demo/viva and excuses of the type “it used to run - don’t
know what happened since last time” will not be accepted or awarded with extra
marks.
You are allowed to use your own laptop during the viva if you wish to.
Submission of assignments using a different method other than Blackboard will
not be accepted and zero (0) marks will be
Answered Same Day Mar 18, 2021

Solution

Aditya answered on Mar 27 2021
131 Votes
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here