UML does not only cope with structures
Opponent: ER does only cope with structures. UML has much more!
Proponent: The observation is correct if you take the ER model of 1976. At that time the ER model has been a great achievement. But time went. And Peter P. Chen and his pupils extended the model step by step. Peter did it thoughtfully step by step. They did not jump with extensions. But they tried to be sure that the model has a sound foundation. A lot of sideways have been proposed in the last 25 years of existence of the ER model.
In 1993, i.e. at a time of hyperactive research on object-oriented databases, Peter P. Chen claimed that the ER model is the true object-oriented model.
Opponent: Yes, I heard about this claim. But I found it already at that time un-based.
Proponent: Object-orientation is very useful. There are three or four major concepts which are necessary and which are required by more complex applications: complex database types, abstraction facilities such as generalization, polymorphism, and the object identifier. The object identifier is a very powerful instrument. It is far too powerful and cannot be theoretically well based except by restricting it. Polymorphism is a very powerful concept developed for programming languages. Generic operations are a specific example of polymorphism applied in the database area.
Types can be constructed by applying type constructors to less complex or basic types. Types have a structure and operations which are generically based on the structure definition. Abstraction is a very powerful concept. Abstraction has different facets such as construction abstraction (e.g., classification, generalization/specialization, hierarchies (e.g., IsA)), localization abstraction and implementation abstraction. The later includes concepts such as encapsulation and implementation inheritance.
Opponent: So, object-orientation is much more than entity-relationship modeling!
Proponent: Unfortunately not! ER modeling includes complex typing, abstraction and polymorphism. Object identifiers may be seen as specific attributes which can or cannot be used for extending types. So, all object-oriented concepts are included into ER concepts. Even more: are consistently included.
Opponent: But let us not stress another point. David Embley proposed the object system model. This model includes specification of interaction as well. UML allows to a very limited extend modeling of interaction as well. How can you cope with interaction?
Proponent: Extended ER models provide facilities for interaction specification. Based on the extensions we found useful for ER models we developed the codesign methodology. Codesign is design of structuring, behavior and interaction in a consistent form. Since several aspects of applications are handled at the same time, codesign approaches are slightly more complex than structural modeling. But, at the same time, you gain a lot. Since requirements of performance, implementability, networking, usability etc. can be included into the design process you will have the right
`Other related information you find in page':More readings