In the 2020 movie “An American Pickle” the concept of a mobile app that helps people “shop conscientiously” by ranking products on how ethical a company/product is, featured heavily as part of a plot-point which saw one of the movie’s central characters b

computer science

Description

                   Mobile Applications 
Scenario
In the 2020 movie “An American Pickle” the concept of a mobile app that helps people “shop conscientiously” by ranking products on how ethical a company/product is, featured heavily as part of a plot-point which saw one of the movie’s central characters bid for venture capital to bring his app to market.
In the movie it is explained and demonstrated (via the use of a custom-built tablet application) that the app allows users to type in the name of a product or brand or scan barcodes of products to see an “ethical score” (from 0 to 100) which is calculated (somehow) by taking labour policies, carbon footprint and number of other (unexplained and unidentified) attributes into account, along with showing a number of other details about the product/brand and allowing users to read/write reviews of the product/brand identified.
It was an interesting concept for an app that sadly was not explored any further in the movie after appearing in one key scene early on.
But, in both assignments for this module you’re going to explore further this concept for an app and design and build a couple of apps and a web service (for back-end data storage) which could serve as workable prototypes for different parts of a “real” system.
 The first thing we need for this is a name for the system. In the movie it’s called “Boop Bop” (and in the movie, the name does make some sense, sort of!) but for our purposes, let’s give it a more meaningful name: EthyScore (short for “Ethical Score”). You’re free to name the app as something else if you can think of a better name however!
There are 3 things you will be needing to design and build for EthyScore therefore:
Firstly, 
an app for EthyScore that would be used by staff of the business for adding/editing/removing products/brands and inputting scores. Specifically it should at least allow them to do the following:
Take and store a photo of the product (if a brand is being added, it should allow the user to select an existing image containing the brand logo instead)
Store the barcode numbers of items relating to this product along with the name and short description of the product/brand
Store an overall “ethical score” for this product/brand (while this is meant to be computed based on a number of attributes as outlined above, you’re not expected to come up with an algorithm for actually generating this unless you want to, so just an overall score that is keyed in therefore)
Allow staff to review, edit and remove (hide) user reviews for products that are incorrect or offensive etc.



Secondly
another separate app which would be used by the actual users of EthyScore and should allow them to:

 Input a product/brand name (or scan a product barcode) and see a page that shows a description of the product/brand, the photo of it and the ethical score.
 Allows them to write their own short review of the product/brand.
 Allows them read reviews of the product/brand written by others.

Thirdly,
 both apps will need to communicate with a RESTful API web service to store and retrieve data, it is clearly not possible to store all this data locally on each mobile device. You will therefore need to design and implement a web service to provide this functionality. For both the service and the apps you are free to extend and implement additional functionality if you feel it necessary/worthwhile.


Requirements / Deliverables

For this second assignment you need to code, implement and test the two mobile apps and web service you designed in response to the requirements brief you were given in the scenario in assignment 1 (and repeated above).

 For both apps, you will need to:

• Select and apply an appropriate software process model during development of the application
• Select and use an appropriate mobile development framework in which to develop your app
• Communicate with the external RESTful API web service to send/receive   data
• Use an appropriate mobile development testing framework to verify that the applications and service works correctly and that requirements have been met 

You should take care to ensure appropriate data validation/verification and the use of the correct data types throughout your coding. 


You should submit:

• The two working mobile apps based on and reflecting your previous app designs from assignment 1
• The working back-end web service project that the apps use and any related database files that belong with it (your module tutor will talk to you about this specifically)
• Necessary test scripts/documents that verify that the user requirements have been met

Zip up the complete project folders for both apps and your testing work for both apps also and submit as a single zip file via Moodle on or before the deadline shown above. You will need to demonstrate both apps working to your lecturer on (or before) the deadline day also.


More information’s:
You need to use the xamarin mobile app forms for the apps to work. The Asp.net web application is an API that works with it.




Instruction Files

Related Questions in computer science category