Question: In system development, a complete and clear software requirements specification might not always be available. Often, assumptions have to be made at the initial stage

In system development, a complete and clear software requirements specification might not always be available. Often, assumptions have to be made at the initial stage of ER design. This question is an example of such scenario in which the requirements are vague and incomplete. . One of your friends is asked by their family to develop an app to keep track on the family's grocery purchases and to alert them on items about to expire or low in stock. These are the details given to them. I want a simple app, I don't want to key in a lot of stuff. I can add items that I want to track on the app. When I get a new item, I can add it on the app. If I bought it before, I can select it from a list. Then, select the expiry date for the newly bought item. For simplicity, assume that every item is a single-unit-single-use item. When an item is about to expire, say in 3 days or 5 days, let me know. I can set the alarm for each item. I want to group the items to Fridge, Cupboard, and Freezer category. For now, only these three categories. When I use an item, I can click "used". I also want to set the items I want to have more in stock. When it is running low, I want the app to let me know. I can set the minimum quantity. I also want to check how many stuff I have wasted every month because they have "expired". . . . Given the vague software requirements, your friend came up with a draft ER diagram as shown in Figure 1. Items StockLevel item (PK) has . HOW. Tval ser une minimum quantity. I also want to check how many stuff I have wasted every month because they have "expired". Given the vague software requirements, your friend came up with a draft ER diagram as shown in Figure 1. Iterns StockLevel has I 1... itemiD (PK) name description expiry Date purchaseDate itemCategory alarmDay status stockib (PK) minimumQuantity currentQuantity 0..1 a) It should be clear that the draft ER diagram is insufficient with respect to the software requirements. Please suggest improvement(s) in point form on the ER diagram to your friend. You can do so by suggesting additional entities/attributes/relationships, split/remove entity/attribute, and so on. For each suggestion, please provide an explanation. You can also specify assumptions (if any) related to your suggestions
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
