Answered step by step
Verified Expert Solution
Question
1 Approved Answer
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 has stockID (PK) minimumQuantity currentQuantity 1.* itemi D {PK) name description expiry Date purchaseDate itemCategory alarmDay status 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. b) Draw the ER diagram as suggested in (a) complete with attributes for each entity, primary key, relationships, and multiplicities between entities
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started