Skip to Content

PowerDesigner Preferences


I am new to PowerDesigner and am trying to figure out a few things. I'm hoping that someone out there would be able to assist.

1. Display preferences per diagram - How do I set Display Preferences for ALL class diagrams? Not per diagram.
2. How do I display custom attributes, inherited from the parent class, with its values on all classes?
3. How do I copy the definitions from the glossary terms to the objects where they are used, e.g. classes and attributes? I would also like to keep it in sync after an update is made to the term and it is approved.
4. For attributes that have a code and value (e.g. country code), what would be the best way to model this? I know that it would be possible to use a domain but is there any other option? Note: I would like to display the values in the class diagrams.
5. If I create term name as you would spell it in the real world (e.g. Account Management), and I selected "Enable Glossary for autocompletion and compliance checking", a dependency gets created to Account, Management and Account Management. This is not what I want. Is there a way to set up options such that it creates a dependency on the code rather than the name? Code in this example would be Account_Management.

Thanks in advance for your assistance!


Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Best Answer
    Jan 23, 2018 at 03:00 PM

    Welcome to PowerDesigner, Mark :)

    Here are short answers to your questions. From your questions, it looks like you're using the object-oriented model, so I'll answer them from that perspective.

    1. Click on "set as default" to make your current preferences apply to all new diagrams of that type; use "Apply To" to override the display preferences in other diagrams of the same type, in any model that is currently open.
    2. not sure what you mean here, please provide an example
    3. The definition of a class attribute and the definition of a glossary term may seem like they should be the same, and sometimes they really will be the same, but an entry in your glossary and a class attribute with the same name are nearly always not the same thing, so will not always have exactly the same definition. For example, "Cost of Goods Sold" could be defined in your glossary as a single concept; it could conceivably appear several times in an object model, with each instance having a subtly different definition. If you want your Glossary entries to exactly match your class attributes, I suggest you look again at your modellling methodology, or at how you're using your Glossary. Making the definitions match can only work if you only ever link one term to an attribute - why would you do that? that would mean having a Glossary entry for every Class Attribute, which doesn't make sense to me.
    4. Is this a modelling question, or a question about the use of PowerDesigner? I'm not sure, as you say "what would be the best way to model this?". Domains are the preferred method for holding allowed values in PD. By default, all the values and meanings for a domain are held in a text property, which is tricky to display on a diagram (it would involve creating an extended attribute { an extension of the metamodel for an object type} based on a script that parses the text to extract the values). Domains don't actually appear on diagrams (apart from their name), so the extended attribute would have to be on the class attribute, and you only have one line for each class attribute on a class symbol, which means there's nowhere to display them. They could be parsed into an extended attribute in the UML Class, and then they can be displayed on the diagram, though only as ASCII text. Whether or not that makes sense depends on your modelling methodology, and on how many vallues you expect - you would not want to list all country codes on a class diagram. You could use a Note symbol on the diagram to show selected values.
    5. The dependency is created to the Term, not to a property of the Term. By default, PD shows the names of linked objects on the Dependencies tab of an object, but you can customise it to show the codes as well, or instead.

    That's an interesting set of questions!

    Add comment
    10|10000 characters needed characters exceeded