An opportunity I could not miss - a 2-hour presentation on modelling to an audience of database experts!
Starting with a brief look at using Visio and/or Excel for data modelling and governance, I talked about the extras we can gain by using PowerDesigner to design databases.
Of course, it's not 'just' databases we're concerned with, the relationships those databases have with our business and technical architecture is also important.
The next key topic is the role of Data Models and others (such as the Requirements model) in Governance and Design.
Next it's mapping data sources and targets to demonstrate and create data lineage, showing how PowerDesigner supports multiple DBMS Versions (and what you can do to change how it does that), creating a CUBE for Business Objects, finally (almost) focusing on the support provided for SAP IQ.
Finally, I described some real-world uses of PowerDesigner.
2. PowerDesigner 16.7 MasterclassJune, 2020
Topics
Governance and
Design using MS
Visio and/or Excel
From Excel to
PowerDesigner -
what can we gain?
It's more than 'just'
databases
Data Models in
PowerDesigner -
Requirements, Governance
and Design
Lineage
Database Support
in PowerDesigner
Creating a
Business Objects
CUBE
What's in it for IQ?
Real-world
PowerDesigner
uses
What now?
3. PowerDesigner 16.7 MasterclassJune, 2020
Could define and connect metadata of
different types, and generate applications
Had a flexible front-end for drawing
diagrams (and I still have 3 of them):
My first modelling tool
It ran on an ICL
mainframe, and it
was called the
‘Data Dictionary
System’ (DDS).
5. PowerDesigner 16.7 MasterclassJune, 2020
A simple DB in Visio
Employee
PK emp_id
manager_id
emp_fname
emp_lname
FK1 dept_id
Department
PK dept_id
dept_name
dept_head_id
Sales_Order
PK id
PK,FK2 cust_id
order_date
region
FK1 emp_id
Sales_Order_Item
PK,FK2 cust_id
PK,FK2 id
PK line_id
FK1 prod_id
quantity
ship_date
Product
PK prod_id
name
description
size
color
quantity
unit_price
Customer
PK cust_id
fname
lname
address
city
etc.
Visio
file
6. PowerDesigner 16.7 MasterclassJune, 2020
Model it in Excel?
Excel
file
Table Column Comment Primary Domain
Customer Customer Identifier X Identifier
Forename Name
Last Name Name
Address Address
City City
Sales Order Identifier X Identifier
Customer Identifier Customer id X Identifier
Order Date Date
Region Region
Employee Identifier Identifier
Employee Employee Identifier X Identifier
Manager Identifier Identifier
Employee First Name Name
Employee Last Name Name
Department Identifier Identifier
Department Department Identifier X Identifier
Department Name Name
Department Head Identifier Identifier
Product Product Identifier Identifier
Name Name
Description Description
Size Number
Colour Colour Code
Quantity Quantity
Unit Price Price
Name Owner Comment
Customer READER This descibes Customer
Department READER This descibes Department
Employee READER This descibes Employee
Sales Order READER This descibes Sales Order
Product READER This descibes Product
Sales Order Item READER
This descibes Sales Order
Item
7. PowerDesigner 16.7 MasterclassJune, 2020
Import from Excel into
PowerDesigner
1..5
Customer
Customer Identifier
Forename
Last Name
Address
City
IDENTIFIER
NAME
NAME
ADDRESS
CITY
<pk>
Department
Department Identifier
Department Name
Department Head Identifier
IDENTIFIER
NAME
IDENTIFIER
<pk>
Employee
Employee Identifier
Manager Identifier
Employee First Name
Employee Last Name
Department Identifier
IDENTIFIER
IDENTIFIER
NAME
NAME
IDENTIFIER
<pk>
<ak>
<ak>
<fk>
Sales Order
Identifier
Customer Identifier
Order Date
Region
Employee Identifier
IDENTIFIER
IDENTIFIER
DATE
REGION
IDENTIFIER
<pk>
<pk,fk1>
<fk2>
Product
Product Identifier
Name
Description
Size
Colour
Quantity
Unit Price
IDENTIFIER
NAME
DESCRIPTION
NUMBER
COLOUR_CODE
QUANTITY
PRICE
Sales Order Item
Identifier
Customer Identifier
IDENTIFIER
IDENTIFIER
<fk1>
<fk1>
8. PowerDesigner 16.7 MasterclassJune, 2020
Physical names can be derived
1..5
cust
cust_id
forename
last_nm
addrss
city
id
nm
nm
addrss
city
<pk>
dept
dept_id
dept_nm
dept_head_id
id
nm
id
<pk>
empe
empe_id
manager_id
empe_first_nm
empe_last_nm
dept_id
id
id
nm
nm
id
<pk>
<ak>
<ak>
<fk>
sales_order
id
cust_id
order_dt
rgn
empe_id
id
id
dt
rgn
id
<pk>
<pk,fk1>
<fk2>
product
product_id
nm
dscn
size
colour
quantity
unit_price
id
nm
dscn
number
colour_cd
quantity
price
sales_order_item
id
cust_id
id
id
<fk1>
<fk1>
Codes
Sales Order
Identifier
Customer Identifier
Order Date
Region
Employee Identifier
identifier
identifier
date
region
identifier
<pk>
<pk,fk1>
<fk2>
Names
11. PowerDesigner 16.7 MasterclassJune, 2020
The model can be extended
<<DBCreateAfter>>
<<DBCreateAfter>> <<DBCreateAfter>>
<<DBCreateAfter>>
<<DBCreateAfter>>
<<DBCreateAfter>>
<<DBCreateAfter>>
<<DBCreateAfter>>
1..5
cust
cust_id
forename
last_nm
addrss
city
id
nm
nm
addrss
city
<pk>
dept
dept_id
dept_nm
dept_head_id
id
nm
id
<pk>
empe
empe_id
manager_id
empe_first_nm
empe_last_nm
dept_id
id
id
nm
nm
id
<pk>
<ak>
<ak>
<fk>
sales_order
id
cust_id
order_dt
rgn
empe_id
id
id
dt
rgn
id
<pk>
<pk,fk1>
<fk2>
product
product_id
nm
dscn
size
colour
quantity
unit_price
id
nm
dscn
number
colour_cd
quantity
price
sales_order_item
id
cust_id
id
id
<fk1>
<fk1>
sp_cust_list
sp_cust_products
sp_product_info
sp_sales_order_itemssp_sales_order
14. PowerDesigner 16.7 MasterclassJune, 2020
The right tool can
give you a lot more
than just this messy
Diagram
– would you want to
work with this
diagram?
14
Most models are not that simple
16. PowerDesigner 16.7 MasterclassJune, 2020
Check against your design standards
The tedious stuff, like making sure all your
tables have the standard audit columns
Do you need JSON?
How much will this DB grow?
Managing (and comparing) schema, table &
column versions
Building Data Vaults automatically
16
Automate tasks – before you
build the database
17. PowerDesigner 16.7 MasterclassJune, 2020
Making automation available
A Contextual menu is one way of
accessing automation – check the
model, export JSON to a file, apply
Naming Standards, adding audit
columns
18. PowerDesigner 16.7 MasterclassJune, 2020
Add your own model
checks, along with
automatic fixing for
those problems if
possible
(e.g. adding
surrogate key)
18
Check your design meets your
design standards
27. PowerDesigner 16.7 MasterclassJune, 2020
Check models into the
repository, but don’t
update the mainline until
they’ve been approved
27
Check in model for peer review
33. PowerDesigner 16.7 MasterclassJune, 2020
❑ ETL Jobs
❑ Forms and Reports
❑ Applications
❑ XML Message Schemas
❑ Regulatory Requirements
❑ Business Processes
❑ Use Cases
❑ JIRA tickets
etc.
33
Databases have connections
Enterprise Architecture Model
Model: Enterprise Architecture Model
Package:
Diagram: ServiceOrientedDiagram
Author: Administrator Date: 2016-08-16
Version:
35. PowerDesigner 16.7 MasterclassJune, 2020
Logical Data Models
Physical Data Models
Round-trip engineering
Multiple diagrams per model
Extended (user-defined) properties
Model Generation and Synchronisation
Model Validation
Reporting
The basics of data
modelling
Most
tools do
these
36. PowerDesigner 16.7 MasterclassJune, 2020
Data Models
• Conceptual
• Object-oriented*
• XML
• Data Movements
What does PowerDesigner
add?
Other types of Models
• Object-oriented *
• Business Process*
• Enterprise Architecture*
• Requirements
• Impact Analysis Model
499-501
• Availability depends on your licence
37. PowerDesigner 16.7 MasterclassJune, 2020
Model Editing in Browser (PowerDesigner Web)
Specific support for SAP databases
Integration with SAP Products
◦ HANA
◦ Business Suite
◦ Business Objects
◦ Solution Manager
◦ NetWeaver (via BPMN)
◦ Data Services
◦ Information Steward
What does PowerDesigner add?
42. PowerDesigner 16.7 MasterclassJune, 2020
Enterprise Conceptual Data
Model
Value Contribution
Finance
Sales Shipping
Business Organisation
Customer
Location Asset
Market Research
Material
Product Development
Business Partner
A key artefact
in both Data
Governance
and Business
Governance
43. PowerDesigner 16.7 MasterclassJune, 2020
Account
# Account Identifier
Address
#
o
*
*
*
*
*
Address Identifier
Address Line 1
Address Line 2
Region
Postal Code
City
Country
Customer
# Customer Identifier
Employee
#
o
o
o
Employee Identifier
First Name
Last Name
Title
Invoice
#
o
Invoice Identifier
Invoice Date
Account Relationship
#
*
o
Account Relationship Type
Relationship Effective From
Relationship Effective To
Customer
Account
Account Identifier
Address
Address Identifier
Address Line 1
Address Line 2
Region
Postal Code
City
Country
Customer
Customer Identifier
Employee
(Organisation)
Employee Identifier
First Name
Last Name
Title
Invoice
(Finance)
Invoice Identifier
Invoice Date
Organisational Customer
Business Name
Personal Customer
First Name
Last Name
Account Relationship
Account Relationship Type
Relationship Effective From
Relationship Effective To
Enterprise model
expands to …
Same
model,
different
notation
Attributes or not?
Your choice
Account
Address
Customer
Employee
Invoice
Account Relationship
46. PowerDesigner 16.7 MasterclassJune, 2020
• Core Physical Database
Modelling features
◦ Round-trip engineering
◦ Versioning and Archive
Models
• Extended and
customised for each
DBMS / version
◦ If you don’t like it you
can change it
PowerDesigner support for
Databases
51. PowerDesigner 16.7 MasterclassJune, 2020
• The standard
Physical Data Model
has been heavily
configured to
support IQ
52
What’s in it for IQ?
52. PowerDesigner 16.7 MasterclassJune, 2020
Most likely action
is changing DDL
syntax
◦ E.g. Template for
name of Check
Constraint
Customising DBMS Support
56. PowerDesigner 16.7 MasterclassJune, 2020
• Define a Lifecycle
and associated
phases, then
associate tables to
the Lifecycle
• See the features on
Database menu
57
Lifecycles
58. PowerDesigner 16.7 MasterclassJune, 2020
• PowerDesigner can
generate data movement
scripts to populate your
AS IQ data warehouse
from other databases.
The script can generate a
flat file for loading to the
IQ data warehouse and
create Insert Location
statements for use with a
proxy database (for ASE
and ASA only).
IQ Data Movements
• Extension adds tabs
61. PowerDesigner 16.7 MasterclassJune, 2020
Business Transformation – a European railway company
◦ Understand current (as-is) Enterprise Architecture
◦ Describe requirements for a proposed purchase of a software solution for Sales and Marketing
◦ Describe detailed (to-be) Sales and Marketing business processes, prior to selecting a solution
◦ Update Enterprise Architecture understanding following implementation of Sales and Marketing solution
Data Governance
◦ Two organisations have purchased Collibra Data Governance Centre and needed to integrate with
PowerDesigner
Information Architecture
◦ An urgent Covid-19 requirement for a key provider of offshore Oil and Gas infrastructure
◦ Managing multiple IQ environments
◦ Generating Data Vault models for the Data Warehouse
Regulatory Compliance
◦ A bank needs to show how they have complied with BCBS 239
Real-world examples
62. PowerDesigner 16.7 MasterclassJune, 2020
Integrating PowerDesigner with Collibra Data
Governance Centre
Export model structure as JSON, to be
ingested by Collibra
Import file exported from Collibra
◦ Create new PowerDesigner model, ready for user to
compare with the existing model
Data Governance
63. PowerDesigner 16.7 MasterclassJune, 2020
COVID-19
◦ An urgent requirement for a key provider of
offshore Oil and Gas infrastructure
Information Architecture
64
Image copyright - New Scientist - https://www.newscientist.com/term/covid-19/#
64. PowerDesigner 16.7 MasterclassJune, 2020
•Country / city / facility / vessel
Where are they currently
located?
•Country / city / facility / vessel
Where will they need to travel
to?
•The further away in time, the greater the uncertainty
When will they need to get
there?
•This could depend on their citizenship / residency
Where are they allowed to travel
to?
•What are the current and expected travel restrictions?
How do we get them to where
they need to be?
Due to the COVID-19 pandemic, urgently
needed information about staff
65. PowerDesigner 16.7 MasterclassJune, 2020
•One of the engineers due to join that vessel
is a Brazilian, currently in a city in Italy that
will probably be locked down soon
The crew of a vessel
in the North Sea
needs to be relieved
as soon as possible
•How many different routes are there? How
long will transit be possible?
An American
engineer in Bahrain
needs to go home to
Hawaii
For example
66. PowerDesigner 16.7 MasterclassJune, 2020
Using PowerDesigner, they were able to provide the required
capabilities very quickly by producing:
A Logical Data Model of the information required – based on
personal knowledge of business applications and creating
Physical Data Models of the databases that hold the data
A Physical Data Model of the new database structures needed
A database (generated from the Physical Data Model) to hold
the information
Power BI reports for the business
This was VERY urgent
67. PowerDesigner 16.7 MasterclassJune, 2020
There is one IQ database associated with a
PDM
If(!) you need to support several
environments
◦ Generated DDL - include %Environment%
◦ Use script to post-process DDL
◦ Combine both the above to generate a special tag
that can be edited
Managing multiple IQ
environments
70. PowerDesigner 16.7 MasterclassJune, 2020
Database_1
Database_2
Database_3
Staging Raw Vault Business Vault Data Marts
Generating Data Vault models
for the Data Warehouse
71. PowerDesigner 16.7 MasterclassJune, 2020
BCBS Principles documented in Requirements
Model
◦ Created by importing Word document
Enterprise Conceptual Data linked to BCBS
Enterprise Logical Data Model used to
generate domain models
Demonstrating compliance with
BCBS 239
73. PowerDesigner 16.7 MasterclassJune, 2020
• If you already have a
relationship with a
reseller, talk to
them about a demo
• If you don’t, I can
put you in touch
with Mike Evans at
Kronva
What now?
• For techie stuff,
contact George
McGeachie (or SAP if
you prefer – Ruairi
Prendiville knows his
stuff ☺)
74. PowerDesigner 16.7 MasterclassJune, 2020
• I host regular
chinwags (3 times a
week)
• If you want to join in
go to
metadatajunkie.wordpress.com/
pd-chinwags/
75
Chinwags and 1-2-1s
• The same page also
contains a link if you
want to book a free
one-to-one
discussion with
George McGeachie