Prometheus Blogs

Too Many Models?

09/08/2016

The same data can be represented by many UML models.

Most fundamental is the model of the problem domain itself, independent of any implementation technology. This is purest and the simplest from of the model, because it deliberately ignores the details of implementation technologies in order to focus on the data itself. Of course there will often be differences of opinion about the best way to express the data in the domain model, so you can have more than one domain model.

For every implementation technology of interest (such as SQL or XML Schema) you can create a UML model that describes the implementation (rather than the pure data). These implementation models let you describe an implementation in detail. As an example, XML Schema supports “sequence”, “choice”, and “all” content models, which are typically described by additional nodes in a UML diagram that uses the UML Profile For XML. Many people prefer to work at this very concrete level, because they are familiar with the implementation technology, which makes the model very familiar and comfortable. There are at least three reasons why this level of concreteness is actually counterproductive:

  • The focus on one specific technology comes at the expense of other implementation technologies. For example, if you focus on XML, it makes it harder to use the resulting model for SQL.
  • The level of concreteness results in counterproductive “bikeshed effects”.
  • The implementation technology details complicate the model, obscuring the fundamental relationships between data. The implementation details are “noise” that make it harder to perceive the signal (the pure domain model)1.

The difference in complexity between an implementation model and a domain model is illustrated below. The top diagram is a fragment of a model reverse engineered from a functional relational database. The second diagram was derived from the first by deleting from the model elements that a machine (with reasonable presumptions) can deduce. I know which of the two I’d rather work with.

Please note that a focus on a UML domain model does not prevent working with XML Schema. In fact it makes it easier to develop not only an XML Schema, but a JSON schema, an SQL schema, an ASN.1 syntax, and many other concrete descriptions as well. When all the technology models are programmatically derived from the fundamental domain model, they necessarily describe exactly the same data, which makes it easier for diverse implementations to interact.

Of course UML concrete models could be derived from the domain model, just as schemas can. Query/View/Transform (QVT) can be used for that purpose. I’ll wish good luck to anybody who wants to go down that path.

Concrete diagram (top) and abstract diagram (below) Diagrams representing a concrete UML model of SQL (top) and a purer abstract domain model (below).


  1. Of course there will be folks who will claim that it’s the other way around - that the concrete model is the signal and the domain model is the noise. Anybody with this perspective ought to explain which concrete model is the signal. The SQL/XML/JSON/YAML proponents are welcome to duke it out between themselves.

Reader Comments
  1. ztwztn said... around 11 months ago
    buy viagra online discount http://canadlan-pharmacy.com
  2. xvdmzi said... around 11 months ago
    <a href=http://canadlan-pharmacy.com>how to buy viagra</a> buy viagra generic online http://canadlan-pharmacy.com
  3. ddfvmj said... around 10 months ago
    <a href=http://canadlan-pharmacy.com>viagra to buy</a> generic viagra wiki http://canadlan-pharmacy.com
  4. mfvdoo said... around 10 months ago
    <a href=http://canadlan-pharmacy.com>buy viagra online usa</a> best online sites to buy viagra http://canadan-pharmacy.com
  5. fsctqb said... around 10 months ago
    <a href=http://canadlan-pharmacy.com>viagra without prescription</a> viagra generico online in italia http://canadlan-pharmacy.com
  6. qwpaiu said... around 10 months ago
    <a href=http://canadlan-pharmacy.com>canadian pharmacy viagra</a> safest online site to buy viagra http://canadan-pharmacy.com
  7. ehuekm said... around 10 months ago
    <a href=http://cialisy.com>discount cialis</a> cialis voucher http://cialisy.com
  8. mkfngb said... around 9 months ago
    <a href=http://canadlan-pharmacy.com>buy viagra internet</a> viagra doctors online http://canadlan-pharmacy.com
  9. qwccbl said... around 9 months ago
    <a href=http://canadian-pharmacye.com>cheap viagra pills</a> cual es el medicamento generico del viagra http://canadian-pharmacye.com
  10. zvghhk said... around 9 months ago
    <a href=http://canadian-pharmacie.com>buy viagra without presc</a> viagra uk online store http://canadian-pharmacie.com
  11. effrex said... around 9 months ago
    <a href=http://cialisy.com>cialis online prescription</a> cialis online mexico http://cialisy.com
  12. qkvqzz said... around 8 months ago
    <a href=http://canadian-pharmacye.com>buy viagra new york</a> are there generic viagra http://canadian-pharmacye.com
  13. sseccc said... around 8 months ago
    <a href=http://canadan-pharmacy.com>buy viagra online discount</a> viagra price in india in hindi http://canadan-pharmacy.com
  14. bnfmch said... around 8 months ago
    <a href=http://canadian-pharmacie.com>buy viagra usa</a> generic viagra available in india http://canadian-pharmacie.com
  15. oiufpg said... around 8 months ago
    <a href=http://canadian-pharmacye.com>viagra price</a> viagra online scotland http://canadian-pharmacye.com
  16. mmtwpl said... around 8 months ago
    <a href=http://canadian-pharmacie.com>viagra coupon</a> generico do viagra ems http://canadian-pharmacie.com
  17. dndsct said... around 8 months ago
    <a href=http://viagracy.com>viagra coupon</a> viagra mail order usa find viagra online http://viagracy.com
  18. pucbdo said... around 7 months ago
    cialis prescription http://canada-pharmaci.com
  19. ikojci said... around 7 months ago
    <a href=http://canadian-pharman.com>cheap viagra overnight</a> cheap viagra usa farmacie online italia viagra http://canadian-pharman.com
  20. yhguqr said... around 7 months ago
    viagra uk price comparison <a href=http://viagrasy.com>canadian pharmacy viagra</a> viagra in malaysia online http://viagrasy.com
  21. maewll said... around 7 months ago
    <a href=http://speedy-papers.com>best essay writing</a> help me write my essay <a href=http://speedy-papers.com>essay writing app</a> revise essay online http://speedy-papers.com
  22. ujttrk said... around 7 months ago
    <a href=http://canadian-pharman.com>viagra for sale</a> generic viagra online usa generic for viagra in us http://canadian-pharman.com
  23. uiwkjf said... around 7 months ago
    <a href=http://canadian-viagracy.com>viagra cost</a> buy viagra on line http://canadian-viagracy.com
  24. tfwiou said... around 7 months ago
    <a href=http://canadian-pharmasy.com>buy cialis cheap</a> buy cheap cialis usa visa buy generic cialis from uk http://canadian-pharmasy.com
  25. vngmbv said... around 7 months ago
    <a href=http://canada-pharmaci.com>cialis online no prescription</a> cialis 100mg http://canada-pharmaci.com
  26. hghrjj said... around 7 months ago
    <a href=http://canadian-pharmacie.com>canadian pharmacy</a> donde comprar generico de viagra http://canadian-pharmacie.com
  27. pwclbd said... around 6 months ago
    viagra coupons <a href=http://canadian-pharmacyc.com>viagra online prescription</a> generico viagra onde comprar http://canadian-pharmacyc.com
  28. lxuszl said... around 6 months ago
    http://cialisn.com - canadian cialis buy cialis professional online http://cialisn.com
Leave a Comment

Back