Book a Demo

Author Topic: how to Link a conceptual data model to a logical data model  (Read 2675 times)

[email protected]

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
how to Link a conceptual data model to a logical data model
« on: August 22, 2022, 05:57:59 pm »
Hi All,

Hope someone can help out.

I am modelling a conceptual data model using UML classes. I use a subset: classes, some attributes, associations, generalisations, compositions and aggregations.

Now the mission is to start linking these concepts (the UML classes) to the tables in the datastores where they exist. So I'm not aiming at deriving a data model from the class model. It is instead that these "concepts" have been implemented in the past in a wide variety of operational solutions, that are supported with (relational) databases.

So imagine: A first package (in the project browser) contains (some of) the classes. A second package contains the datastores with tables. I'm now trying to start capturing which tables in which datastores are realizing which classes.

I tried using a matrix (from the ribbon Select Design -> Package/Matrix/open as source or target: having the classes as Target, having the tables in the datastores as the source and then in the matrix indicating which table realizes which class ...

Can't seem to get it to work, even while following the user guide (I think) ... Maybe I'm doing something wrong, yet can't see it. Or maybe I'm not using the proper way at all?

How to capture where the concepts are realized is what I'm trying to do ...

Thanks! Kind regards, Peter

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: how to Link a conceptual data model to a logical data model
« Reply #1 on: August 22, 2022, 06:02:40 pm »
What is it that isn't working?

You should be able to link tables to classes, using either a matrix or simply with relations on a diagram. (the result is exactly the same)

If you want to go further and also map columns to attributes and associations, you might want to look into the EA Mapping addin

Geert

Modesto Vega

  • EA Practitioner
  • ***
  • Posts: 1183
  • Karma: +30/-8
    • View Profile
Re: how to Link a conceptual data model to a logical data model
« Reply #2 on: August 22, 2022, 06:45:24 pm »
It should work, I use a realization to show the relationships between the concepts  (conceptual data entities) and logical data entities.

Just to be nit-picky, logical data entities should be technology neutral.

[email protected]

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Re: how to Link a conceptual data model to a logical data model
« Reply #3 on: August 23, 2022, 04:26:28 pm »
Thanks for the replies. I meanwhile also logged a ticket with Sparx support ... I'll look into the plugin. Attributes are not (yet) to be linked ... Also agree on the logical data model being technology-agnostic. However: I need to work with what is available, and that are the implemented data models ... The "documentation" = the logical data models are quite missing ...

Here are some more details of what I did:

First issue: the documentation reads "View | Relationship Matrix
                  Project Browser Package Context Menu | Documentation | Open in Relationship Matrix | As Source   or   | As Target"
From the design ribbon, in the diagram section, I find a Views button, that includes amongst others "Relation matrix view". However, all options, except the last line "Inline Specification" are greyed out.
The other option Project Browser package context menu does not show an "Open relationship matrix" option ... Whether I select it from the folder holding the classes or the folder holding the data model.

Here's the first "what am I doing wrong".

Instead, I then used the "Find command": I type "relationship matrix". The first line in the result set is "Package/matrix". This effectively opens a work area with in the top the lists of options for source and target.  I then dragged the folder holding the classes to the "Source" part of the work area. This resulted in a vertical list of all classes in the folder. So far so good.
I then dragged the folder holding the data model to the Target area. This initially seemed to do only one thing: the folder name would show up in the box next to the label "Target" on the top.
Not sure what manipulations I did, however suddenly the list of tables also appeared.

I then filled in the matrix.

Contemplating the result, I decided it would be better to switch source and target. So I tried dragging the Source and target folders back to the canvas to no avail. I tried  selecting the respective folders (using the three-dotted buttons) again to no avail.

I started removing the realization relationships one by one (as in select e.g. one of the classes, select properties --> properties --> Links; then select the realization link and delete, confirm, click OK.

Given that is quite tedious, I then made a deep copy of all data tables (hence duplicating all from DataStore1 to DataStore2) . Then I selected all the original tables (from "DataStore1"), and then I deleted them.
So now my "data folder" contains only DataStore2 with the new copy of the tables. Also all original realization relationships have gone;

Still, I only get my classes listed on top. I can't seem to get to the tables anymore. How come?