Design and develop a mobile application

Assignment Help PL-SQL Programming
Reference no: EM132764063

Route

You are to develop an app that provides nutrition facts and information to users. The app should:

1. Contain a list of products (minimum 20 products) so it can be tested. Each product must include at least its name and its nutrition grade (i.e. A, B, C, D, E). You will be able to add more products using screen #2.

2. A screen for adding new products. The user should be able to type a product's barcode or scan a barcode to add it. The data must be automatically loaded using the openfoodfacts API. If the product is found, enable the user to ‘save' it to the list of products (i.e. screen #1).

3. A screen where you can view individual products. For a selected product you should be able to see a description (name), ingredients, and nutrients. Also, you should be able to add (or remove) products from custom lists (see screen #4 below).

4. A screen for managing custom lists (like ‘favorites' or ‘avoid' or ‘healthy'). This screen should enable you to add more lists or delete existing ones. Clicking on a list should show the list of products in that list.

You may hard-code data into the app but to achieve the highest marks in this part, your application should connect to a public, web-based service (see Assessment Criteria below) e.g. to retrieve live information such as the ingredients and nutrients for a selected product.

As part of the app you will need to maintain a small database to store the products and their mapping into lists.

For this you will use an SQLite database. An example database is provided for you and you are free to build from scratch or extend it as you wish. This is a simplistic database with just three tables named ‘lists', ‘products' and ‘products_to_lists'. The first table holds the details of each list (id, name, description, perhaps colour). The second holds details for each product (id, name, ingredients, nutrients etc.). You can use the openfoodfacts API to see the available data. The latter table uses foreign keys to match products to lists. This is illustrated in the figure below:

819_figure.jpg


Figure 1: Schema of the ‘products', 'lists' and ‘products_to_lists' tables

In the "products" table the ‘code' is the primary key (it can take values such as ‘20503550', ‘3052X22A', etc.) The ‘name' is the product's name (e.g. "Kellogs Corn Flakes"), ‘grade' is a text-based rating of the nutritional value of the product (usually ‘A', ‘B', ‘C', ‘D', and ‘E'). Similarly, the nova group is a numerical rating of the nutritional value of the product. The ingredients and the nutrients can be text-based descriptions of the contents of the product (like "sugar 50%, salt 5%", etc.) Note this is only one way to (simplistically) hold the information. You could also hold the structured data you receive from the openfoodfacts API in separate tables, or perhaps as a JSON-formatted string which continues to hold the information. Additional data you could include are ‘vegan', ‘vegetarian', etc. (SQLite does not directly support Booleans. Instead, you could use integers where 0 is false and 1 is true).
The "lists" table holds data about the lists you use to organize the products. At the very least they include an ID, name and description, but you could further customize with colour, icons, etc.

Finally, the ‘products_to_lists' table is used to provide mappings from products to lists. The two fields together form the primary key, and individually are foreign keys to the corresponding products and lists tables. Adding an entry introduces the mapping of the product to a list. Removing it eliminates the mapping. This way you can have multiple mappings of the same products in multiple lists, and multiple products in the same list. SQLite has a simplified set of data types compared to other database engines such as MySQL.

THE BRIEF/INSTRUCTIONS
Your coursework assignment is to design then develop a mobile application. The following pack outlines the basic components and advanced features your application needs for assessment. The second route is pre-defined - this is the route for you, if you would prefer to be told exactly what to create. Both the routes are assessed in the same way, there is no one route better than the other. It is personal choice for each individual student.

Attachment:- SQL_work.rar

Reference no: EM132764063

Questions Cloud

Explain the planning process of community health improvement : Explain the planning process of community health improvement. Choose one of the models / tools for community health planning discussed in your book and explain.
Analyze an issue related to nursing care of aging population : Using research and appraisal of existing evidence, analyze an issue related to the nursing care of the aging population and the promotion of their optimal.
Explain net neutrality : Explain net neutrality and how are we currently affected by the new administration's decision to re-write existing laws. Explain some of the recent
Prepare outline a proposal for health education : Outline a proposal for health education that can be used in a family-centered health promotion to address the issue for the target population.
Design and develop a mobile application : Design then develop a mobile application. The following pack outlines the basic components and advanced features your application needs for assessment
What could the chn do to help the patient : Maria has a history of obesity and peripheral vascular disorder. Current vital signs are temperature 37.0 C tympanic, pulse 88 beats/min, respirations.
What are the advantages of following the flow of food : 1. What is the importance of Sanitation code of the Philippines? 2. What are the advantages of following the Flow of Food?
Analyze the culture and make recommendations : You will use the same organization to analyze the culture and make recommendations.
Explain why your workplace is or is not civil : Post a brief description of the results of your Work Environment Assessment. Based on the results, how civil is your workplace? Explain why your workplace.

Reviews

Write a Review

PL-SQL Programming Questions & Answers

  Create a database model

Create a database model and Submit the table creation statements for the Database Model.

  Write pl-sql procedures and functions

Write PL/SQL procedures and functions to populate and query that database

  Sql questions

Write a query to display using the employees table the EMPLOYEE_ID, FIRST_NAME, LAST_NAME and HIRE_DATE of every employee who was hired after to 1 January, 1995.

  Run the lab_03_01.sql script

Run the lab_03_01.sql script in the attached file to create the SAL_HISTORY table. Display the structure of the SAL_HISTORY table.

  Write sql queries

Write a query to display the last name, department number, and salary of any employee whose department number and salary both match the department number and salary of any employee who earns a commission.

  Explaining sql insert statement to insert new row in cds

Write down a SQL insert statement to insert new row in "CDS" table.

  Write down name of actors in ascending order

Write down actors (or actress, your choice, but not both) who have won at least two (2) Academy Awards for best actor/actress. Provide the actor name, movie title & year. Order the result by actor name."

  What is an sql injection attack

What is an SQL injection attack? Explain how it works, and what precautions must be taken to prevent SQL injection attacks.What are two advantages of encrypting data stored in the database?

  Determine resonant frequency in series rlc resonant circuit

Given the series RLC resonant circuit in the figure, operating at variable frequency, determine: The resonant frequency ω o ,  The circuit’s quality factor Q , The cut-off frequencies, f 1  & f 2  and the bandwidth BW

  Query that uses cube operator to return lineitemsum

Write summary query which uses CUBE operator to return LineItemSum (which is the sum of InvoiceLineItemAmount) group by Account(an alias for AccountDesciption).

  Query to show customers were missing for existing orders

As DBA, your manager called a meeting and asked why there are so many orders for customers that don't exist in the customer table. Write query which would shows which customers were missing for existing orders. Use a join or a subquery.

  Sql query into a relational algebra statement

Turn this SQL query into a relational algebra statement? SELECT Request.reqfor, Ordering.invamt, Ordering.invnbr, Ordering.invdat

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd