This week's book giveaway is in the OCPJP forum.
We're giving away four copies of OCA/OCP Java SE 7 Programmer I & II Study Guide and have Kathy Sierra & Bert Bates on-line!
See this thread for details.
The moose likes Architect Certification (SCEA/OCMJEA) and the fly likes SCEA Assignment :- Factory Home Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of OCA/OCP Java SE 7 Programmer I & II Study Guide this week in the OCPJP forum!
JavaRanch » Java Forums » Certification » Architect Certification (SCEA/OCMJEA)
Bookmark "SCEA Assignment :- Factory Home" Watch "SCEA Assignment :- Factory Home" New topic
Author

SCEA Assignment :- Factory Home

PankajD Pdewangan
Greenhorn

Joined: Dec 29, 2008
Posts: 2
Hi all, anybody working on the SCEA 5.0 Part II (Factory home assignment)?
Victor-OE Cardona
Greenhorn

Joined: Jun 29, 2006
Posts: 29
Hi, i'm working on SCEA 5.0 Factory Home assignment.
Wilmar Rodriguez
Ranch Hand

Joined: Jan 10, 2008
Posts: 53
I worked with this assignment, may i help you?
John Volk
Greenhorn

Joined: Jan 26, 2009
Posts: 6
I'm working on it too
Wilmar, did you pass assignment ?
I would appreciate any useful info you may provide
Selami Kara
Greenhorn

Joined: Jan 27, 2009
Posts: 1
Hi,
I am also working on this assignment, and there is something I didn't understand, in the domain model.
But I don't know if we are allowed to mention actual class names from the assignment here. If we can mention, please let me know and i'll ask my question.

Thanks & Regards
Wilmar Rodriguez
Ranch Hand

Joined: Jan 10, 2008
Posts: 53
Yes, I passed, 150 of 160 points.
Victor-OE Cardona
Greenhorn

Joined: Jun 29, 2006
Posts: 29
Wilmar Rodriguez wrote:Yes, I passed, 150 of 160 points.

Congratulations Wilmar that's a nice score.

could you give us some remarks about the assignment ?

Victor Cardona
SCJP, SCWCD, SCBCD, SCDJWS
William Taylor
Greenhorn

Joined: Feb 11, 2009
Posts: 15
Could someone explain what is your understanding of the relationship between CompletedDesign and Product? If Product is the same as House (1 to 1), why completed design and product has 0-* and 1-* relationship?

Thank you very much for your help.
rafael liu
Greenhorn

Joined: Feb 08, 2009
Posts: 11
William:

I think the relation should be 1-* to 1-*, I doesn't make sense to have a Product without a CompletedDesign. It would be ok if there were a "house propotype hall" from which the user could pick an already made house..
William Taylor
Greenhorn

Joined: Feb 11, 2009
Posts: 15
Hi Rafael,

I think it makes sense that a product does not match any completed design. It simply means no client has chosen that product yet.

While a completed design must finally map to one product of Factory Homes, even the company has a lot of pre-built models. So one on the Product end holds. However, I don't understand what n on this end means.

rafael liu
Greenhorn

Joined: Feb 08, 2009
Posts: 11
That's what I thought at first, but there's no way to have a Product without a CompletedDesign, there simply is no Use Case that would build a Product without creating a respective CompletedDesign. And even if it had, there is no Use Case that would pick this pre-built house.

CompletedDesign is for me an "interaction with the system", this way in the same interaction the Customer can build 2, 3, * houses. Anyway, I'm changing this domain model..
William Taylor
Greenhorn

Joined: Feb 11, 2009
Posts: 15
rafael liu wrote:That's what I thought at first, but there's no way to have a Product without a CompletedDesign, there simply is no Use Case that would build a Product without creating a respective CompletedDesign. And even if it had, there is no Use Case that would pick this pre-built house.

Don't mix the concept of completedDesign and product. Completed designs come from the online design application by customers, however, products are of the company of Factory Homes, which are designed aleady.

CompletedDesign is for me an "interaction with the system", this way in the same interaction the Customer can build 2, 3, * houses. Anyway, I'm changing this domain model..

rafael liu
Greenhorn

Joined: Feb 08, 2009
Posts: 11
Wow, that's weird, my reply appeared as an edit of yours..

I wrote:
CompletedDesign is for me an "interaction with the system", this way in the same interaction the Customer can build 2, 3, * houses. Anyway, I'm changing this domain model..


In your understanding the House itself would be in the Inventory System?
William Taylor
Greenhorn

Joined: Feb 11, 2009
Posts: 15
rafael liu wrote:Wow, that's weird, my reply appeared as an edit of yours..

I wrote:
CompletedDesign is for me an "interaction with the system", this way in the same interaction the Customer can build 2, 3, * houses. Anyway, I'm changing this domain model..


In your understanding the House itself would be in the Inventory System?


I don't think so. To me, the inventory system only takes care of inventory validation.
rafael liu
Greenhorn

Joined: Feb 08, 2009
Posts: 11
The company has recently invested in a state of the art stock inventory and management
system that controls all inventory and valid combinations of inventory in the Factory Homes
catalog. This system is accessible using a well-defined set of web services.


I was designing it as a subsystem that would store and retrive components for me. The Wall, Door, etc in my application would be just for binding the Web Service response into a POJO, it wouldn't be store in my data base. The House, Product, etc would be in my data base only with references to its components.

I don't see how it would work if this system was only for validation.. You would pass a set of components combination just to check validity?
William Taylor
Greenhorn

Joined: Feb 11, 2009
Posts: 15
rafael liu wrote:
The company has recently invested in a state of the art stock inventory and management
system that controls all inventory and valid combinations of inventory in the Factory Homes
catalog. This system is accessible using a well-defined set of web services.


I was designing it as a subsystem that would store and retrive components for me. The Wall, Door, etc in my application would be just for binding the Web Service response into a POJO, it wouldn't be store in my data base. The House, Product, etc would be in my data base only with references to its components.

I don't see how it would work if this system was only for validation.. You would pass a set of components combination just to check validity?


I don't see why we cannot have components like Walls and Doors in our database. If House, Product, etc. can be there with references to its components, it might be OK to have components themselves stored in our database also. For example, listing categories and adding a new component to a design can be easily done without invoking the Web Services. Only when checking availability and applicability for a new component, we need to validate against the inventory system. In this way, the inventory system only holds the business logic while the database does CRUD operations for the system.

By storing references to components in your approach, would there be too many invocations to the inventory subsystem? How about just store the XML house representation or store everything in the inventory system?
rafael liu
Greenhorn

Joined: Feb 08, 2009
Posts: 11
I see your point. But Inventory could be used for another kind of application, like a Home Center store, this way I think it should only deal with components, not the House itself. Another thing about the House being stored in the Inventory System is that it's not actually "in stock", there is no count, there isn't even the real House built.

Yes, communication would be more chatty. But one thing: how do you understand the the Inventory System would check valid combinations? Probably the IS has to know about component characteristics in order to check compatible combinations between them, that way the component representation should be stored in the IS. (or maybe some dumb logic like A doesn't go with B? maybe I'm complicating things but what about Wall that can't be make of concrete if the Foundation aren't waterproof?)

I like the idea of IS holding business logic while the database holds data, but IS is actually a system itself, not just a layer of our application.

Maybe a middle term: the inventory has the components but once we got it we replicate it on the application's database.
vudem Vinay
Greenhorn

Joined: Mar 19, 2009
Posts: 1

Hi Rafael/William

I am also working on this assignment. I think you guys might have completed this assignment by now.
Just now I started working on this.
I put all the components in my data base and validation(Availability and Applicability) will be done by the IS(web services).
Used builer pattern to build the House Object.
Used EJB(CMPs) to retrive and update the data in the database.
and I am assuming that we no need take care of the design of the IS system and 3-D modelling tools.
Please correct me if my approach is wrong. This is my initial design.

Thanks
Vinay
Helmut Schrank
Greenhorn

Joined: Jun 08, 2009
Posts: 1
Hi ,

after completing part one in february I start with the assignment now. Unfortunately the same question regarding the relation ship between CompletedDesign and Product came up and I really don't see any reasonably explanation for this. Of course, a customer may design a lot of houses, fill them with the essentials( heatng, plumbing (Use Case 3)) set them as complete and discuss with the sales rep about them. Therefore I change the BDM regarding the relation between to exactly ONE and explain it in an note. I think, it very much in the responsibility of an architect to correct previous decisions made by him/her/others :-)

Moreover I keep my database very limited, only storing information about customers, the completed designs of customers and the scheduling. Valid combinations, availability and details(price, ..) is fetched from the Inventory System (IS). This greatly simplifies my DB-design.

One questions remains the expected class diagram. Using UML for a long time, I never made a COMPLETE class diagram. I use class diagrams only for visualising domain models and their relationships (as it is in the provided diagram) or to show special aspects of a more complicated aspects or the correct usage of a designpattern. To continue this approach I probably will deliver several class diagrams, not one. What do you think? To what a degree of detail your class diagrams will be constructed? A big one showing every thing or several specialised diagrams concerned with specific aspects (Component Search, House Constructing, Consultation Scheduling, etc)?

All the best for your work,
Helmut
Prashant Purkar
Ranch Hand

Joined: May 08, 2008
Posts: 84
Hi Vuden,

You need to consider how your system will interface with IS & 3D Modelling tool and include that in your design.
i.e. you can not completely ignore external system, more ever component diagrams should include all internal & external systems.

Helmut, I think its safer to have one big diagram with classes showing multiplicity, relationships, association names etc..
I had to resubmit my class diagram because of the other approach (many diagrams with only essential info) though i wouldn't know what exactly was wrong.

There is thread in a javaranch talking more about class diagrams mistakes. please check that also.

Regards
Prashanta
Zheng Wangz
Greenhorn

Joined: Jul 11, 2008
Posts: 9
Hi,
I'd like to know if we could change BDM? In my assignment, there's a 1-1 relationship between product and house. And if we could change it to IS-A relationship in the class diagram. I think it will make sense.
Georgiana Lungu
Ranch Hand

Joined: May 17, 2010
Posts: 34
Hello,

I just started working for this assignment as well. I think people that started this thread already completed the assignment long ago, though I decided to post as a reply to it cause there are already plenty of discussions started on this topic and cause I would raather comment on:

Zheng Wangz wrote:And if we could change it to IS-A relationship in the class diagram. I think it will make sense.


I have also seen it first as a House being a product but this would not explain the CompletedDesign -> Product many to many relation, and as said, this would involve an assumption of a 1 to 1 relation between the two.

Wouldn't it be rather valid to see the Product - House relation as like a Product is an independent Component and, in addition, some dimension, price, other details, that depend on a particular referenced House, the one they were added to? and this way, obviously a CompletedDesign would hold the reference to all the Products(Components) added to the House that is being completed(this would be for 1 to many).

For many to 1, I am wondering wether shouldn't we assume that there are preconfigured combination of basic components that form preconfigured Houses, and the user only has over configure on top of a chosen existing basic combination? Because, first of all, actually building a design from scratch I think is a too low level action for a Customer and since there are only a few valid combinations, it would make sens to present them ready made to him.

 
wood burning stoves
 
subject: SCEA Assignment :- Factory Home