4

According to StackOverflow, an entity-relationship model (ERM) is an abstract and conceptual representation of data, information aspects of a business domain or its process requirements. Ultimately ERM is being implemented in a database. A domain model is composed of the objects, behavior, relationships, and attributes that make up the industry that is the focus of development.

Both uses squares to model something, they have attributes inside and they have relationships between them. What's the difference, just the name?

David Sousa
  • 120
  • 2
  • 8
  • 2
    ER models don't have "attributes inside" squares, that sounds more like table diagrams. Domain model is a generic term that can include any kind of descriptive or predictive data model or domain simulation, but is often used by adherents of a various system engineering disciplines to mean the kind of model prescribed by their preferred approach. Do you have specific examples in mind? – reaanb Dec 19 '16 at 19:40
  • I'm understanding what you are saying, the thing is the program that I use to generate the ERM also creates the attributes (Visual Paradigm), maybe I misinterpreted the name diagram. So in this case, ERD is the same thing as domain model? Sorry if I explained poorly but I'm not very comfortable with these terms, I m still studying! – David Sousa Dec 19 '16 at 19:50
  • 1
    I also use Visual Paradigm to build table diagrams (despite its confused terminology), and Dia for ER diagrams. ER models are a kind of domain model. There are many other kinds, like network data models which are still very popular and often confused with ER models or object-oriented systems. Note that diagrams and models aren't the same thing - diagram are used to visualize models. A model is actually a logical structure that allow us to hold and derive facts about the world it represents. – reaanb Dec 19 '16 at 21:11
  • Thanks, you helped me a lot understanding the concepts! I still studying UML, and I like to understand correctly the things! – David Sousa Dec 21 '16 at 16:30

1 Answers1

3

Both are defined in ISO/IEC/IEEE 24765 : Systems and software engineering -- Vocabulary, as:

domain model "a product of domain analysis that provides a representation of the requirements of the domain."

entity-relationship diagram "a diagram that depicts a set of real-world entities and the logical relationships among them."

Furthermore, the standard notes that a domain model can represent structure, information flow, functions, constraints and controls. In the UML those can be represented with class diagrams; as an example: structure with classes and associations, information flow using information flow items or information flow classifiers, operations, multiplicities, navigatabilities or multiplicities or OCL, and controls -- respectivly.

Pétur Ingi Egilsson
  • 4,368
  • 5
  • 44
  • 72
  • 1
    I add: I do not believe that E-R diagrams can replicate the semantics of OCL, unless that is the case then by the standard definition an E-R diagram is not always suitable for representing domain models. I *believe* as I'm not very familiar with the E-R notation; please correct me if I am wrong. OCL is based on first-order predicate logic, the E-R notation would have to be able to express that. – Pétur Ingi Egilsson Dec 22 '16 at 20:35
  • Thanks, I still studying UML, the concepts are easy to understand but sometimes appears questions like this and I can't find stuff about this. – David Sousa Dec 23 '16 at 20:05
  • 1
    In that case, you might want to keep a link to [OMG's UML 2.5 standard](http://www.omg.org/spec/UML/2.5/PDF/) in your bookmarks – Pétur Ingi Egilsson Dec 23 '16 at 20:39