SAP PowerDesigner is a great data modelling tool with features that differentiate it from the rest of the market, increasing the productivity of data modellers.
The CDM LDM Productivitymodel extension from Metadata Matters improves the productivity of data modellers still further, helping them to visualise, manage and validate their models, concentrating on making modelling decisions, and spending less time on routine tasks.
Attach the CDM LDM Productivitymodel extension to any Conceptual or Logical Data Model and start using the new features right away. Better still, deploy the extension via the PowerDesigner Repository and have it attach itself to every new Conceptual or Logical Data Model automatically—updates to the extension will automatically be made available to every model that it’s attached to.
The CDM LDM Productivity model extension extends model validation and adds extra options to contextual menus. For example, here are the new options in the contextual menu for an Entity:
Metadata Matters will work with you to customise the extension to meet your own unique requirements – the cost of the extension includes a day of customisation effort.
Here’s a summary of the capabilities provided:
Completeness of Diagrams
How much time do you spend examining a diagram only to discover that something vital is missing? Eliminate the doubt – – for a given Entity, select from lists of linked objects to add to your diagram – add all child Entities for an Inheritance
Which Entity (or Entities – there may be more than one) is the ‘Ultimate Parent’ of a sub-type in a deep Inheritance hierarchy? The answer may surprise you, and we know that modellers do not like surprises.
Entity Hierarchy Diagrams
Create and refresh a diagram that guarantees to show you the full structure of all the Inheritance hierarchies that an Entity participates in. Here’s a simple example:
Here’s a much bigger example, for an Entity that participates in two hierarchies:
Entity Proximity Diagrams
Create and refresh a diagram that guarantees to show you everything linked to an Entity.
Save thinking and working time by automatically moving ‘Primary Identifier’ Attributes to the top of the list and moving the Primary Identifier of an Entity to the top of the list of Identifiers. Ensure that Entity Attributes or Data Items with the <undefined> data type are linked to the default domain.
Applying Naming Standards
Construct meaningful and useful names for Relationships, Identifiers and Inheritances.
Extend the built-in model validation with new custom model checks, helping you to: * apply your modelling and naming standards * check for double-spaces in object names * check Relationship role names * be aware of multiple parent Entities or alternate Identifiers
Hiding and Showing Migrated Attributes
If you chose to work with the Logical Data Model but you would like your diagrams to look more like diagrams in the Conceptual Data Model you can – by hiding selected classes of Attributes. Changed your mind? You can always show them again.
Specify the required type of layout and orientation for every diagram and apply it when you want to.
Hiding and Showing Diagram Content
Show or Hide Link Symbols. Remove graphical synonyms or shortcut symbols from a diagram.
Straighten a link symbol by removing all the corners. A simplified way of changing page size and orientation.
If you’re using Packages in your models, you’ll be aware of the potential pitfalls and how much work there can be if you change your mind about the Package structure. The extension provides two useful features: * Safely remove a Package from the hierarchy without losing content * Check if a Relationship and the child Entity have the same owner
Managing Text Properties
Replace an object Comment with the Description or vice versa.
Output the Display Preferences to the Output window.
If you want to improve your productivity even more (and who doesn’t want to do that?), a more comprehensive model extension will be available soon for the CDM and LDM. This will include the “Ultimate Parents” capabilities, plus features to help you with
diagram content and page layout, including
set page size and orientation
add all possible objects
add things linked to an entity
add all inheritance links for an inheritance
removing Packages cleanly
showing and hiding foreign key or inherited attributes
In my first post and second post on the topic of Entity Inheritance hierarchies I showed ways in which the customisation features of PowerDesigner are useful when dealing with them.
If managing complex hierarchies is one of your modelling concerns (for example, if you’re using the FIBO CDM or LDM), help is at hand. A model extension is available from Metadata Matters that provides a set of useful new properties (known in PowerDesigner as Extended Attributes) to help you manage your hierarchies, as well as the menu options to ensure that they stay up to date.
Here’s part of an inheritance hierarchy in the FIBO Conceptual Data Model (thanks to Jurgen Ziemer for allowing me to use the model for illustration). Let’s focus on the entity Deposit Account:
The Deposit Account entity in context
The model extension provides a new Parentage tab that provides information about how an entity fits into inheritance hierarchies. Deposit Account has two parents and two grandparents – notice that one of the parents (and the hierarchy above it) are not visible on my diagram:
Presenting information about the parentage of Deposit Account in a custom form
Most of the information on this form is up-to-date and reliable, because it’s computed every time it’s viewed; only the Ultimate Parents property has to be manually refreshed (because of the potential processing overhead from automatically refreshing it every time it is displayed, which could be noticeable in a model with many entities and many inheritance levels).
Everything on this form (apart from the list of parent entities) is available in a List Report. Here’s a fragment of a List Report that has been filtered to only include entities whose name ends with “Account”:
The extension provides menu options to:
refresh a single entity
refresh an entity and all its dependent entities
refresh every parent and child entity in the model
in the FIBO CDM it takes about 30 seconds to update this information for over 1000 entities and 406 inheritances
For example, the contextual menu for the model now includes an option to refresh the list of Ultimate Parent entities for every parent and child entity in the model
You can access this menu by right-clicking the model in the Browser or right-clicking a diagram background.