This week's book giveaway is in the OCAJP forum. We're giving away four copies of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) and have Khalid A Mughal & Rolf W Rasmussen on-line! See this thread for details.
I have received Factory Homes assignment for scea part 2.
I went through it and here's my interpretation of CompletedDesign to Product to House relationship. Can you take a look and let me know if you think differently?
I think House is the layout/style chosen by User. House stands for raw structure of the house (single story/duplex etc.) with the number and location of windows, doors and walls. But which actual windows/doors (wooden/metallic) will be used are to be searched from inventory system and once they are searched and added to House it is called a Product. When user will be done with designing the Product he will submit it to the system for validation. System will validate the design and also add missing components like plumbing, electrical wiring, heating etc. and mark it as CompletedDesign.
Talking about relationships, since Product to House is a 1-1 relationship, this means if there are n products there are n corresponding Houses. So if one CompletedDesign can have n Products attached, indirectly that means we are talking about n Houses. So user can design several Houses/Products and submit them together as a group for validation to get a SINGLECompletedDesign. Practically this would make sense if one is interested in constructing multiple apartments on a piece of land, some of them may be 1-bedroom and others 2-bedroom. I mean this is just an example I am thinking of.
Let me know if you differ with my assessment, which would help me think deeper and better to start designing the system.