Thank you to everybody who has watched the videos I published on YouTube last month, and for the ‘Likes’. I have had one detailed response to those videos, which appears to arise from a combination of misunderstanding the purpose of the videos, and a wish to promote another modelling process and the accompanying tool. I have no problem with the latter, of course, I welcome such discussions 😊.
The comments came from Charles Meyer Richter, and can be found here on Linked IN. Charles originally made his point in response to the video being shared on Linked In by Oliver Cramer (thanks, Oliver), and I replied to that with a brief comment:
Hello Charles Meyer Richter. Thanks for the comments – the purpose of the set of four videos is to demonstrate the features of a given tool, using the tool’s vocabulary, in which “Conceptual Data Model” is a type of model, very similar to the tool’s “Logical Data Model”, with a couple of notable differences. I certainly didn’t intend to state anything about my “preferred construct” at all, just to demonstrate a tool. I should have made that clear at the time.
The purpose of this blog post is to provide a longer answer to his longer comment, though I shan’t address every point Charles makes individually. He addresses several key areas in his comments:
- The sequence of models that I created in the videos
Unfortunately, Charles viewed my chain of three models as a methodology statement which it is not.
- What I said about “Conceptual Data Models”
I’ve just listened again to what I said in the first video – “in PowerDesigner a Conceptual Data Model is something that can look a lot like a Logical Data Model, with a couple of differences”. This is true, the key differences are that the PowerDesigner Conceptual Data Model doesn’t migrate attributes along relationships, and every attribute is supported by an underlying Data Item. Data Items can be used to provide a set of atomic data definitions, which are sometimes known as Data Elements. You don’t have to actually reference Data Items in Entities if you don’t want to – that’s the thing I like about PowerDesigner, the fact that, by varying model options, and by building simple customisations, you can tailor the tool to support your own Data Governance and Data Modelling approach.
- How long every action takes in PowerDesigner
Charles uses the examples of drawing entities, laying out diagrams, linking attributes to business Rules, and linking Data Items to CDM Entities. He also asks if PowerDesigner can support 9 levels entities-within-entities. I remember a Logical Data Model with a lot of sub-type levels in the past, but I don’t think it went down 9 levels. Anyway, as a quick test, I created a CDM in Barker notation with 13 levels:
In “Entity-Relationship” notation, such a hierarchy is even bigger – see the diagram on the right.
If I wanted to build a taxonomy using PowerDesigner, I might use a combination of packages and entities to build it, possibly in a CDM, or perhaps as UML Classes in the Object-oriented Model.
Going back to how long things can take – I intended to show a variety of editing and object creation techniques in the tool, and I probably didn’t include all of them. Using object lists to create and edit objects can be a real time-saver, as can editing using Dependency Matrices, and importing from Excel.
Charles envisaged a real-world data model with 185 entities in it, using that to scope a ‘release’ that required 93 of them. In the video, I didn’t show how to filter a list of entities, drag them onto a diagram, and then use that diagram as the scope of a new model that I’m generating, again due to lack of time.
I could have demonstrated the diagram auto-layout capabilities, but there just wasn’t time to do that. The same is true for changing the details included on entity symbols – PowerDesigner gives me more control over symbol content than any other tool I’ve used.
- The types of model he suggests using instead of the chain of CDM-LDM-PDM
Charles proposes something very similar to what I showed, which I’ve drawn up in a PowerDesigner Free Model.
I like what he suggests – I’ve certainly seen a double-layer of physical data models like that in PowerDesigner. The Knowledge Model includes Concepts, Goals, Benefits and Values, KPIs, Business Functions, and the ability to produce a first-cut cost-benefit report.
In my videos, I only mentioned three types of PowerDesigner model, out of a total of nine. The PowerDesigner “Enterprise Architecture” Model provides most of the capabilities that Charles mentions, though some customisation would be needed.
In his final point, Charles says (I agree with this) that you need a powerful set of tools to “store and manipulate the 16 goals, something like 19 performance indicators, the 185 knowledge classes, 30 attributes and 24 conceptual classes that will create the 24 logical and physical database tables”. He’s correct, and PowerDesigner is one of several tools to provide that capability; the difference is that it isn’t a “set of tools”, it’s a single tool.