DMAN Coursework 2 For 2023-24
DMAN Coursework 2 For 2023-24
DMAN Coursework 2 For 2023-24
Type Percentage
Assessment 2
Hand in: Set Exercise – Friday 19th January 2024 – 4pm
Group of 2
You are required to develop the database that you developed in your coursework 1 as a NoSQL
system, using a Mongo DB database. Using a document store database is a perfect way of
storing this type of data related to the case study of PMM Grocery Supermarket to store all
details and every element within the organization. See the case study brief below.
You will be using MongoDB to provide the backend database for this service. You can use
either the system on your Google virtual machines or another system such as your own
installation of MongoDB or on the cloud such as AWS.
PMM Grocery Supermarket sells products under different categories like beverages,
bread/bakery, Canned/Jarred goods, Dairy, Dry/baking goods, frozenfoods, meats,
produce, cleaners, personal care, paper goods etc. And each product will have details
like product price, product Id, product name, ingredients, allergy advice, lifestyle,
size/volume, net weight, direction for use, nutrition info, country of origin, storage
instruction and maunfacturer.
Example of a details –
Product Id – 4088600412177
Ingredients - 𝐖𝐡𝐞𝐚𝐭 𝐅𝐥𝐨𝐮𝐫 (𝐖𝐡𝐞𝐚𝐭 𝐅𝐥𝐨𝐮𝐫, Calcium Carbonate, Iron, Niacin, Thiamin),
Water, Malted 𝐖𝐡𝐞𝐚𝐭 (6%), Yeast, 𝐑𝐲𝐞 Flour, Rapeseed Oil, Salt, 𝐖𝐡𝐞𝐚𝐭 Bran, 𝐖𝐡𝐞𝐚𝐭
Semolina, Malted 𝐁𝐚𝐫𝐥𝐞𝐲 Flour, Preservative: Calcium Propionate; Flour Treatment Agent:
Ascorbic Acid.
Lifestyle - Vegetarian
Nutrition Info. - Per 100g: Energy 1064kJ, 251kcal Fat 1.7g of which saturates 0.2g
Carbohydrate 48g of which sugars 4.9g Fibre 4.1g Protein 8.5g Salt 0.87g
Storage Instructions - Store in a cool, dry place away from strong odours and direct sunlight.
Once opened, store in an airtight container. Suitable for freezing. Freeze by date mark shown
and use within one month. Defrost thoroughly before use. Do not refreeze once defrosted.
So, as you can see from above brief, there are different numbers of products with
different Ingredients description, different Nutrition information, different storage
Instruction. Therefore, this type of project lends itself to the sue of NoSQL system,
especially a document store system such as MongoDB.
Create a NoSQL, (MongoDB) database that will store products and their
corresponding details. You can generate random products and their details using any
free online data generating platform or you create your own. You will require to a
minimum of 100 products in your database. Each product will need to be stored as a
single record in a single collection in the database. You will need to provide the code
that you used to create the database and store the records. This will allow you to
create the 3 queries needed for your task 2.
Write 3 queries that will retrieve product information from your database. Think of
the sort or things that a user will want to be able to do. For example, a user might:
• Look for products for specific season with specific ingredients and
Nutritional content.
• Product availability and locations.
• History of delivery of orders.
• Products purchasing record based on the locations.
Further information
• We do not need to consider the technology that may be used to provide the
front end. There is another team working on this part of the project.
• We do not need to consider the networking required to get data requests and
responses to and from the database.
• Databases created in any DBMS other than MongoDB will receive 0,
(ZERO), marks.
Marking Scheme
Assessment 2 (T1 – T3)
T1: Database / record Development (15 marks)
11 - 15 marks: sensible record structure that provides a good understanding of the JSON
structures. Consistent use of a suitable structure for each record
6 - 10 marks: some consideration of the JSON structure used but some inconsistencies across
the records in the database.
0 - 5 marks: little or no consideration of proper JSON structures.