• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Part II - Business Domain Model changes

 
Tomas Cirip
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I know that business domain model is not supposed to be changed. From what I am reading some of you have changed it. How do I know which change (changing multiplicity, adding new business entities/classes, merging them etc) are still ok and not in conflict with original model? Is there some good article or page where I can find what kind of changes are still acceptable and not breaking original domain model?
Thanks
 
Priya Patel
Greenhorn
Posts: 23
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Thomas Syrup wrote :-
I know that business domain model is not supposed to be changed. From what I am reading some of you have changed it. How do I know which change (changing multiplicity, adding new business entities/classes, merging them etc) are still ok and not in conflict with original model? Is there some good article or page where I can find what kind of changes are still acceptable and not breaking original domain model?
Thanks
--------------------
---
Tomas Cirip

There is no real definitive paper that answers what you are asking. The role of a seasoned architect is to be able to see the wood for the trees.
There is nothing stopping you making changes to the BDM as long as you justify fully why and what you have changed. The BDM isn't workable in its current format anyway however, with some subtle changes you can quickly get up to speed to construct the class diagram.

Priya
 
Ajith Kallambella
Sheriff
Posts: 5782
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
A domain model is normally technology agnostic. Technology here includes both implementation platform such as J2EE and analysis methodology such as OO.
After the business analysts finalize the domain model, you bring in the technology experts to decompose the model by applying a specific methodology. In case of a typical OO analysis phase you do things such as identifying generalization/specializations, separating processes from participants, defining contracts( interfaces ), identify conceptual divisions in order to define types and so on.
Once this is done, you apply platform specific(J2EE) principles and identify implementation details/constraints - things such as what gets modelled as entity beans( and why ), what can be just a POJO etc.

How do I know which change (changing multiplicity, adding new business entities/classes, merging them etc) are still ok and not in conflict with original model?

So to answer your original question( finally ), you should ensure that, during the steps detailed above, you do not contradict any relationships specified in the original domain model. This is an absolute must. Avoid diluting the clarity of any relationship and don't redefine the cardinality.
 
Tomas Cirip
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Ajith Kallambella:
A domain model is normally technology agnostic. Technology here includes both implementation platform such as J2EE and analysis methodology such as OO.
After the business analysts finalize the domain model, you bring in the technology experts to decompose the model by applying a specific methodology. In case of a typical OO analysis phase you do things such as identifying generalization/specializations, separating processes from participants, defining contracts( interfaces ), identify conceptual divisions in order to define types and so on.
Once this is done, you apply platform specific(J2EE) principles and identify implementation details/constraints - things such as what gets modelled as entity beans( and why ), what can be just a POJO etc.

So to answer your original question( finally ), you should ensure that, during the steps detailed above, you do not contradict any relationships specified in the original domain model. This is an absolute must. Avoid diluting the clarity of any relationship and don't redefine the cardinality.

Thank you Ajith,
do you by any chance have some book or website that you would recommend on this topic? I just have a problem how much I can change and how much just to put into assumptions. I know assignment is simplified just enough to test our ability to build good systems. But still I want to build something that is close to real world system. Assignment is very good lesson for me. I don't have a problem with any part, I am very familiar with J2EE. I just have problem with BDM which I should start with first of all. After that, I think it is piece of cake. Thank you for your response.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic