SlideShare a Scribd company logo
1 of 12
Download to read offline
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 1
© 2021 IDERA, Inc. All rights reserved. IDERA LIVE 2021
The Power of Abstraction
Steve Hoberman
me@stevehoberman.com
www.DataModelingInstitute.com
Get the right sounds!
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 2
Party
Role
Play
What is abstraction?
The process of redefining attributes, relationships, and entities into more generic
structures
Customer Competitor
Supplier
Government agency
Partner
Employee
Student
Consumer
Dependent
Abstracting these attributes
● Customer
○ Number
○ Name
○ Weekday phone
○ Weekend phone
○ First order date
○ Tax ID
○ DUNS #
• Supplier
– Number
– Company name
– Contact first name
– Contact last name
– Primary phone
– Secondary phone
– Credit rating
– First PO date
– DUNS #
• Employee
– Number
– First name
– Last name
– Work phone
– Home phone
– Email address
– Hire date
– Social Security #
– HR system ID
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 3
And these business rules
• An Employee can be assigned to many
Customers
• A Customer can contact many Employees
• An Employee manages the relationship with
many Suppliers
• A Supplier can contact many Employees
Where abstraction fits
1. Normalize
2. Apply the Abstraction Safety Guide in this order:
a. Attributes
b. Entities
c. Relationships
3. Document in detail
+ +
Thing
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 4
1. Normalize
Supplier
Supplier Number
Supplier Company Name
Supplier Contact First Name
Supplier Contact Last Name
Supplier Primary Phone Number
Supplier Secondary Phone Number
Supplier Credit Rating
Supplier First PO Date
Supplier DUNS Number
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Work Phone Number
Employee Home Phone Number
Employee Email Address
Employee Hire Date
Employee Social Security Number
Employee HR System ID
Customer Assignment
Employee Number (FK)
Customer Number (FK)
Supplier Assignment
Employee Number (FK)
Supplier ID (FK)
Customer
Customer Number
Customer Name
Customer Weekday Phone Number
Customer Weekend Phone Number
Customer First Order Date
Customer Tax ID
Customer DUNS Number
Have assigned
Have assigned
Be assigned
Be assigned
Thing
Thing
Abstraction Safety Guide (ASG)
No
No
No
Yes
Are there any matches on the model? (Commonality)
1.
Is it very likely that there are future requirements that
would benefit from this abstract structure? (Value)
Yes
2.
Is the extra development effort now, less than making
development changes later? (Effort)
Yes
3.
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 5
ASG: Commonality question
• Does this attribute, entity, or relationship have
something in common with one or more other
attributes, entities, or relationships?
• Similar to game of Concentration
• Need to find a match
• The more you play, the better you get!
• It’s fun!
ASG: Value question
● If yes, is it very likely that there are future
requirements that would benefit from this abstract
structure?
● Most important question
○ Keeps our feet on the ground
○ Focus remains on business
● Always phrase in “Types”
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 6
ASG: Effort question
• If yes, is the extra development effort now, less than making
development changes later?
• It’s easier to ask for forgiveness than permission
• Factors include
• True work effort
• Politics
• Current and future budget constraints
• Perception of abstraction
Customer
Customer Number
Customer Name
Customer Weekday Phone Number
Customer Weekend Phone Number
Customer First Order Date
Customer Tax ID
Customer DUNS Number
Customer attributes
● Value
○ Can we have additional TYPES of phone numbers?
○ Can we have additional TYPES of identifiers?
● Effort
○ If there is value, let’s go for it!
Commonality
Weekday and
Weekend are both
phone numbers Commonality
Tax ID and
DUNS are both identifiers
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 7
Customer
Customer Number
Customer Name
Customer First Order Date
Customer Alternate ID
Customer Alternate ID Type Code
Customer Number (FK)
Customer Alternate ID Value Text
Customer Phone
Customer Phone Type Code
Customer Phone Priority Number
Customer Number (FK)
Customer Phone Number
Be identified by
Be contacted by
Customer attributes
Customer
Customer Number
Customer Name
Customer Weekday Phone Number
Customer Weekend Phone Number
Customer First Order Date
Customer Tax ID
Customer DUNS Number
Supplier
Supplier Number
Supplier Company Name
Supplier Contact First Name
Supplier Contact Last Name
Supplier Credit Rating
Supplier First PO Date
Supplier DUNS Number
Supplier Phone
Supplier Phone Type Code
Supplier Phone Priority Number
Supplier Number (FK)
Supplier Phone Number
Be contacted by
Supplier
Supplier Number
Supplier Company Name
Supplier Contact First Name
Supplier Contact Last Name
Supplier Primary Phone Number
Supplier Secondary Phone Number
Supplier Credit Rating
Supplier First PO Date
Supplier DUNS Number
Supplier attributes
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 8
Employee Alternate ID
Employee Alternate ID Type Code
Employee Number (FK)
Employee Alternate ID Value Text
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Email Address
Employee Hire Date
EmployeePhone
Employee Phone Type Code
Employee Phone Priority Number
Employee Number (FK)
Employee Phone Number
Be identified by
Be contacted by
Anything
else?
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Work Phone Number
Employee Home Phone Number
Employee Email Address
Employee Hire Date
Employee Social Security Number
Employee HR System ID
Employee attributes
Communication Medium?
Employee Alternate ID
Employee Alternate ID Type Code
Employee Number (FK)
Employee Alternate ID Value Text
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Email Address
Employee Hire Date
EmployeePhone
Employee Phone Type Code
Employee Phone Priority Number
Employee Number (FK)
Employee Phone Number
Be identified by
Be contacted by
Employee Alternate ID
Employee Alternate ID Type Code
Employee Number (FK)
Employee Alternate ID Value Text
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Hire Date
Employee Communication Medium
Employee Communication Medium Type Code
Employee Communication Medium Priority Number
Employee Number (FK)
Employee Communication Medium Value Text
Be identified by
Be contacted by
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 9
Now the entities!
Customer Assignment
Employee Number (FK)
Customer Number (FK)
Customer
Customer Number
Customer Name
Customer First Order Date
Supplier
Supplier Number
Supplier Company Name
Supplier Contact First Name
Supplier Contact Last Name
Supplier Credit Rating
Supplier First PO Date
Supplier DUNS Number
Supplier Assignment
Employee Number (FK)
Supplier Number (FK)
Employee
Employee Number
Employee First Name
Employee Last Name
Employee Hire Date
Customer Phone
Customer Phone Type Code
Customer Phone Priority Number
Customer Number (FK)
Customer Phone Number
Employee Communication Medium
Employee Communication Medium Type Code
Employee Communication Medium Priority Number
Employee Number (FK)
Employee Communication Medium Value Text
Supplier Phone
Supplier Phone Type Code
Supplier Phone Priority Number
Supplier Number (FK)
Supplier Phone Number
Customer Alternate ID
Customer Alternate ID Type Code
Customer Number (FK)
Customer Alternate ID Value Text
Employee Alternate ID
Employee Alternate ID Type Code
Employee Number (FK)
Employee Alternate ID Value Text
Be assigned
Be assigned
Have assigned
Have assigned
Be contacted by
Be contacted by
Be contacted by
Be identified by Be identified by
Introducing Party!
● Customer, Supplier, and Employee are all roles
that a Party can play
● What are some aliases for ‘Party’?
Party is a person or organization of interest to the
enterprise. It is similar to the concept of “Who?” That
is, who is important to the business?
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 10
Adding Party and Role
Party
Party Number
Party Company Name
Party Person First Name
Party Person Last Name
Party Role Communication Medium
Party Role Communication Medium Priority Number
Party Number (FK)
Role Type Code (FK)
Party Role Communication Medium Type Code (FK)
Party Role Communication Medium Value Text
Party Role Association
Party A Number (FK)
Role Type A Code (FK)
Party B Number (FK)
Role Type B Code (FK)
Party Role Association Type Code (FK)
Party Role Alternate ID
Party Number (FK)
Role Type Code (FK)
Party Role Alternate ID Type Code (FK)
Party Role Alternate ID Value Text
Role Type
Role Type Code
Role Type Description Text
Party Role
Party Number (FK)
Role Type Code (FK)
Supplier Credit Rating
Supplier First Purchase Order Date
Employee Hire Date
Customer First Order Date
Be contacted by
Interact with
Interact with
Be identified by
Play
Be played by
Adding subtyping
Employee
Party Number (FK)
Role Type Code (FK)
Employee Hire Date
Supplier
Party Number (FK)
Role Type Code (FK)
Supplier First Purchase Order Date
Supplier Credit Rating
Party
Party Number
Party Company Name
Party Person First Name
Party Person Last Name
Party Role
Party Number (FK)
Role Type Code (FK)
Party Role Association
Party A Number (FK)
Role Type A Code (FK)
Party B Number (FK)
Role Type B Code (FK)
Party Role Association Type Code (FK)
Role Type
Role Type Code
Role Type Description Text
Party Role Communication Medium
Party Role Communication Medium Priority Number
Party Number (FK)
Role Type Code (FK)
Party Role Communication Medium Type Code (FK)
Party Role Communication Medium Value Text
Party Role Alternate ID
Party Number (FK)
Role Type Code (FK)
Party Role Alternate ID Type Code (FK)
Party Role Alternate ID Value Text
Customer
Party Number (FK)
Role Type Code (FK)
Customer First Order Date
Play
Be played by
Interact with
Be contacted by
Be identified by
Interact with
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 11
“Abstraction is strong in this one”
Increases application stability
Increases application stability
Facilitates integration
Facilitates integration
Reduces design time
Reduces design time
Roles start and end, “things” always
there
Roles start and end, “things” always
there
Absolves the modeler from capturing
business rules
Absolves the modeler from capturing
business rules
The dark side of abstraction
Model becomes vague and imprecise
Model becomes vague and imprecise
Less rules in the database
Less rules in the database
Performance issues
Performance issues
Reporting tools struggle with abstraction
Reporting tools struggle with abstraction
Stewardship gaps
Stewardship gaps
Accidently expose PII
Accidently expose PII
Thing
IDERA LIVE 2021 The Power of Abstraction
© Steve Hoberman Page 12
© 2021 IDERA, Inc. All rights reserved. 23
THANKS!
ANY QUESTIONS?
You can find me at:
● me@stevehoberman.com
● www.stevehoberman.com

More Related Content

More from IDERA Software

The role of the database administrator (DBA) in 2020: Changes, challenges, an...
The role of the database administrator (DBA) in 2020: Changes, challenges, an...The role of the database administrator (DBA) in 2020: Changes, challenges, an...
The role of the database administrator (DBA) in 2020: Changes, challenges, an...IDERA Software
 
Problems and solutions for migrating databases to the cloud
Problems and solutions for migrating databases to the cloudProblems and solutions for migrating databases to the cloud
Problems and solutions for migrating databases to the cloudIDERA Software
 
Public cloud uses and limitations
Public cloud uses and limitationsPublic cloud uses and limitations
Public cloud uses and limitationsIDERA Software
 
Optimize the performance, cost, and value of databases.pptx
Optimize the performance, cost, and value of databases.pptxOptimize the performance, cost, and value of databases.pptx
Optimize the performance, cost, and value of databases.pptxIDERA Software
 
Monitor cloud database with SQL Diagnostic Manager for SQL Server
Monitor cloud database with SQL Diagnostic Manager for SQL ServerMonitor cloud database with SQL Diagnostic Manager for SQL Server
Monitor cloud database with SQL Diagnostic Manager for SQL ServerIDERA Software
 
Database administrators (dbas) face increasing pressure to monitor databases
Database administrators (dbas) face increasing pressure to monitor databasesDatabase administrators (dbas) face increasing pressure to monitor databases
Database administrators (dbas) face increasing pressure to monitor databasesIDERA Software
 
Six tips for cutting sql server licensing costs
Six tips for cutting sql server licensing costsSix tips for cutting sql server licensing costs
Six tips for cutting sql server licensing costsIDERA Software
 
Idera live 2021: Why Data Lakes are Critical for AI, ML, and IoT By Brian Flug
Idera live 2021:  Why Data Lakes are Critical for AI, ML, and IoT  By Brian FlugIdera live 2021:  Why Data Lakes are Critical for AI, ML, and IoT  By Brian Flug
Idera live 2021: Why Data Lakes are Critical for AI, ML, and IoT By Brian FlugIDERA Software
 
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...IDERA Software
 
Idera live 2021: Managing Digital Transformation on a Budget by Bert Scalzo
Idera live 2021:  Managing Digital Transformation on a Budget by Bert ScalzoIdera live 2021:  Managing Digital Transformation on a Budget by Bert Scalzo
Idera live 2021: Managing Digital Transformation on a Budget by Bert ScalzoIDERA Software
 
Idera live 2021: Keynote Presentation The Future of Data is The Data Cloud b...
Idera live 2021:  Keynote Presentation The Future of Data is The Data Cloud b...Idera live 2021:  Keynote Presentation The Future of Data is The Data Cloud b...
Idera live 2021: Keynote Presentation The Future of Data is The Data Cloud b...IDERA Software
 
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...IDERA Software
 
Idera live 2021: Database Auditing - on-Premises and in the Cloud by Craig M...
Idera live 2021:  Database Auditing - on-Premises and in the Cloud by Craig M...Idera live 2021:  Database Auditing - on-Premises and in the Cloud by Craig M...
Idera live 2021: Database Auditing - on-Premises and in the Cloud by Craig M...IDERA Software
 
Idera live 2021: Performance Tuning Azure SQL Database by Monica Rathbun
Idera live 2021:  Performance Tuning Azure SQL Database by Monica RathbunIdera live 2021:  Performance Tuning Azure SQL Database by Monica Rathbun
Idera live 2021: Performance Tuning Azure SQL Database by Monica RathbunIDERA Software
 
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERAGeek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERAIDERA Software
 
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...IDERA Software
 
Benefits of Third Party Tools for MySQL | IDERA
Benefits of Third Party Tools for MySQL | IDERABenefits of Third Party Tools for MySQL | IDERA
Benefits of Third Party Tools for MySQL | IDERAIDERA Software
 
Achieve More with Less Resources | IDERA
Achieve More with Less Resources | IDERAAchieve More with Less Resources | IDERA
Achieve More with Less Resources | IDERAIDERA Software
 
Benefits of SQL Server 2017 and 2019 | IDERA
Benefits of SQL Server 2017 and 2019 | IDERABenefits of SQL Server 2017 and 2019 | IDERA
Benefits of SQL Server 2017 and 2019 | IDERAIDERA Software
 
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERA
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERABe Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERA
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERAIDERA Software
 

More from IDERA Software (20)

The role of the database administrator (DBA) in 2020: Changes, challenges, an...
The role of the database administrator (DBA) in 2020: Changes, challenges, an...The role of the database administrator (DBA) in 2020: Changes, challenges, an...
The role of the database administrator (DBA) in 2020: Changes, challenges, an...
 
Problems and solutions for migrating databases to the cloud
Problems and solutions for migrating databases to the cloudProblems and solutions for migrating databases to the cloud
Problems and solutions for migrating databases to the cloud
 
Public cloud uses and limitations
Public cloud uses and limitationsPublic cloud uses and limitations
Public cloud uses and limitations
 
Optimize the performance, cost, and value of databases.pptx
Optimize the performance, cost, and value of databases.pptxOptimize the performance, cost, and value of databases.pptx
Optimize the performance, cost, and value of databases.pptx
 
Monitor cloud database with SQL Diagnostic Manager for SQL Server
Monitor cloud database with SQL Diagnostic Manager for SQL ServerMonitor cloud database with SQL Diagnostic Manager for SQL Server
Monitor cloud database with SQL Diagnostic Manager for SQL Server
 
Database administrators (dbas) face increasing pressure to monitor databases
Database administrators (dbas) face increasing pressure to monitor databasesDatabase administrators (dbas) face increasing pressure to monitor databases
Database administrators (dbas) face increasing pressure to monitor databases
 
Six tips for cutting sql server licensing costs
Six tips for cutting sql server licensing costsSix tips for cutting sql server licensing costs
Six tips for cutting sql server licensing costs
 
Idera live 2021: Why Data Lakes are Critical for AI, ML, and IoT By Brian Flug
Idera live 2021:  Why Data Lakes are Critical for AI, ML, and IoT  By Brian FlugIdera live 2021:  Why Data Lakes are Critical for AI, ML, and IoT  By Brian Flug
Idera live 2021: Why Data Lakes are Critical for AI, ML, and IoT By Brian Flug
 
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...
Idera live 2021: Will Data Vault add Value to Your Data Warehouse? 3 Signs th...
 
Idera live 2021: Managing Digital Transformation on a Budget by Bert Scalzo
Idera live 2021:  Managing Digital Transformation on a Budget by Bert ScalzoIdera live 2021:  Managing Digital Transformation on a Budget by Bert Scalzo
Idera live 2021: Managing Digital Transformation on a Budget by Bert Scalzo
 
Idera live 2021: Keynote Presentation The Future of Data is The Data Cloud b...
Idera live 2021:  Keynote Presentation The Future of Data is The Data Cloud b...Idera live 2021:  Keynote Presentation The Future of Data is The Data Cloud b...
Idera live 2021: Keynote Presentation The Future of Data is The Data Cloud b...
 
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...Idera live 2021:   Managing Databases in the Cloud - the First Step, a Succes...
Idera live 2021: Managing Databases in the Cloud - the First Step, a Succes...
 
Idera live 2021: Database Auditing - on-Premises and in the Cloud by Craig M...
Idera live 2021:  Database Auditing - on-Premises and in the Cloud by Craig M...Idera live 2021:  Database Auditing - on-Premises and in the Cloud by Craig M...
Idera live 2021: Database Auditing - on-Premises and in the Cloud by Craig M...
 
Idera live 2021: Performance Tuning Azure SQL Database by Monica Rathbun
Idera live 2021:  Performance Tuning Azure SQL Database by Monica RathbunIdera live 2021:  Performance Tuning Azure SQL Database by Monica Rathbun
Idera live 2021: Performance Tuning Azure SQL Database by Monica Rathbun
 
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERAGeek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
Geek Sync | How to Be the DBA When You Don't Have a DBA - Eric Cobb | IDERA
 
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...
How Users of a Performance Monitoring Tool Can Benefit from an Inventory Mana...
 
Benefits of Third Party Tools for MySQL | IDERA
Benefits of Third Party Tools for MySQL | IDERABenefits of Third Party Tools for MySQL | IDERA
Benefits of Third Party Tools for MySQL | IDERA
 
Achieve More with Less Resources | IDERA
Achieve More with Less Resources | IDERAAchieve More with Less Resources | IDERA
Achieve More with Less Resources | IDERA
 
Benefits of SQL Server 2017 and 2019 | IDERA
Benefits of SQL Server 2017 and 2019 | IDERABenefits of SQL Server 2017 and 2019 | IDERA
Benefits of SQL Server 2017 and 2019 | IDERA
 
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERA
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERABe Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERA
Be Proactive: A Good DBA Goes Looking for Signs of Trouble | IDERA
 

Recently uploaded

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Recently uploaded (20)

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

Idera live 2021: The Power of Abstraction by Steve Hoberman

  • 1. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 1 © 2021 IDERA, Inc. All rights reserved. IDERA LIVE 2021 The Power of Abstraction Steve Hoberman me@stevehoberman.com www.DataModelingInstitute.com Get the right sounds!
  • 2. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 2 Party Role Play What is abstraction? The process of redefining attributes, relationships, and entities into more generic structures Customer Competitor Supplier Government agency Partner Employee Student Consumer Dependent Abstracting these attributes ● Customer ○ Number ○ Name ○ Weekday phone ○ Weekend phone ○ First order date ○ Tax ID ○ DUNS # • Supplier – Number – Company name – Contact first name – Contact last name – Primary phone – Secondary phone – Credit rating – First PO date – DUNS # • Employee – Number – First name – Last name – Work phone – Home phone – Email address – Hire date – Social Security # – HR system ID
  • 3. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 3 And these business rules • An Employee can be assigned to many Customers • A Customer can contact many Employees • An Employee manages the relationship with many Suppliers • A Supplier can contact many Employees Where abstraction fits 1. Normalize 2. Apply the Abstraction Safety Guide in this order: a. Attributes b. Entities c. Relationships 3. Document in detail + + Thing
  • 4. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 4 1. Normalize Supplier Supplier Number Supplier Company Name Supplier Contact First Name Supplier Contact Last Name Supplier Primary Phone Number Supplier Secondary Phone Number Supplier Credit Rating Supplier First PO Date Supplier DUNS Number Employee Employee Number Employee First Name Employee Last Name Employee Work Phone Number Employee Home Phone Number Employee Email Address Employee Hire Date Employee Social Security Number Employee HR System ID Customer Assignment Employee Number (FK) Customer Number (FK) Supplier Assignment Employee Number (FK) Supplier ID (FK) Customer Customer Number Customer Name Customer Weekday Phone Number Customer Weekend Phone Number Customer First Order Date Customer Tax ID Customer DUNS Number Have assigned Have assigned Be assigned Be assigned Thing Thing Abstraction Safety Guide (ASG) No No No Yes Are there any matches on the model? (Commonality) 1. Is it very likely that there are future requirements that would benefit from this abstract structure? (Value) Yes 2. Is the extra development effort now, less than making development changes later? (Effort) Yes 3.
  • 5. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 5 ASG: Commonality question • Does this attribute, entity, or relationship have something in common with one or more other attributes, entities, or relationships? • Similar to game of Concentration • Need to find a match • The more you play, the better you get! • It’s fun! ASG: Value question ● If yes, is it very likely that there are future requirements that would benefit from this abstract structure? ● Most important question ○ Keeps our feet on the ground ○ Focus remains on business ● Always phrase in “Types”
  • 6. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 6 ASG: Effort question • If yes, is the extra development effort now, less than making development changes later? • It’s easier to ask for forgiveness than permission • Factors include • True work effort • Politics • Current and future budget constraints • Perception of abstraction Customer Customer Number Customer Name Customer Weekday Phone Number Customer Weekend Phone Number Customer First Order Date Customer Tax ID Customer DUNS Number Customer attributes ● Value ○ Can we have additional TYPES of phone numbers? ○ Can we have additional TYPES of identifiers? ● Effort ○ If there is value, let’s go for it! Commonality Weekday and Weekend are both phone numbers Commonality Tax ID and DUNS are both identifiers
  • 7. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 7 Customer Customer Number Customer Name Customer First Order Date Customer Alternate ID Customer Alternate ID Type Code Customer Number (FK) Customer Alternate ID Value Text Customer Phone Customer Phone Type Code Customer Phone Priority Number Customer Number (FK) Customer Phone Number Be identified by Be contacted by Customer attributes Customer Customer Number Customer Name Customer Weekday Phone Number Customer Weekend Phone Number Customer First Order Date Customer Tax ID Customer DUNS Number Supplier Supplier Number Supplier Company Name Supplier Contact First Name Supplier Contact Last Name Supplier Credit Rating Supplier First PO Date Supplier DUNS Number Supplier Phone Supplier Phone Type Code Supplier Phone Priority Number Supplier Number (FK) Supplier Phone Number Be contacted by Supplier Supplier Number Supplier Company Name Supplier Contact First Name Supplier Contact Last Name Supplier Primary Phone Number Supplier Secondary Phone Number Supplier Credit Rating Supplier First PO Date Supplier DUNS Number Supplier attributes
  • 8. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 8 Employee Alternate ID Employee Alternate ID Type Code Employee Number (FK) Employee Alternate ID Value Text Employee Employee Number Employee First Name Employee Last Name Employee Email Address Employee Hire Date EmployeePhone Employee Phone Type Code Employee Phone Priority Number Employee Number (FK) Employee Phone Number Be identified by Be contacted by Anything else? Employee Employee Number Employee First Name Employee Last Name Employee Work Phone Number Employee Home Phone Number Employee Email Address Employee Hire Date Employee Social Security Number Employee HR System ID Employee attributes Communication Medium? Employee Alternate ID Employee Alternate ID Type Code Employee Number (FK) Employee Alternate ID Value Text Employee Employee Number Employee First Name Employee Last Name Employee Email Address Employee Hire Date EmployeePhone Employee Phone Type Code Employee Phone Priority Number Employee Number (FK) Employee Phone Number Be identified by Be contacted by Employee Alternate ID Employee Alternate ID Type Code Employee Number (FK) Employee Alternate ID Value Text Employee Employee Number Employee First Name Employee Last Name Employee Hire Date Employee Communication Medium Employee Communication Medium Type Code Employee Communication Medium Priority Number Employee Number (FK) Employee Communication Medium Value Text Be identified by Be contacted by
  • 9. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 9 Now the entities! Customer Assignment Employee Number (FK) Customer Number (FK) Customer Customer Number Customer Name Customer First Order Date Supplier Supplier Number Supplier Company Name Supplier Contact First Name Supplier Contact Last Name Supplier Credit Rating Supplier First PO Date Supplier DUNS Number Supplier Assignment Employee Number (FK) Supplier Number (FK) Employee Employee Number Employee First Name Employee Last Name Employee Hire Date Customer Phone Customer Phone Type Code Customer Phone Priority Number Customer Number (FK) Customer Phone Number Employee Communication Medium Employee Communication Medium Type Code Employee Communication Medium Priority Number Employee Number (FK) Employee Communication Medium Value Text Supplier Phone Supplier Phone Type Code Supplier Phone Priority Number Supplier Number (FK) Supplier Phone Number Customer Alternate ID Customer Alternate ID Type Code Customer Number (FK) Customer Alternate ID Value Text Employee Alternate ID Employee Alternate ID Type Code Employee Number (FK) Employee Alternate ID Value Text Be assigned Be assigned Have assigned Have assigned Be contacted by Be contacted by Be contacted by Be identified by Be identified by Introducing Party! ● Customer, Supplier, and Employee are all roles that a Party can play ● What are some aliases for ‘Party’? Party is a person or organization of interest to the enterprise. It is similar to the concept of “Who?” That is, who is important to the business?
  • 10. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 10 Adding Party and Role Party Party Number Party Company Name Party Person First Name Party Person Last Name Party Role Communication Medium Party Role Communication Medium Priority Number Party Number (FK) Role Type Code (FK) Party Role Communication Medium Type Code (FK) Party Role Communication Medium Value Text Party Role Association Party A Number (FK) Role Type A Code (FK) Party B Number (FK) Role Type B Code (FK) Party Role Association Type Code (FK) Party Role Alternate ID Party Number (FK) Role Type Code (FK) Party Role Alternate ID Type Code (FK) Party Role Alternate ID Value Text Role Type Role Type Code Role Type Description Text Party Role Party Number (FK) Role Type Code (FK) Supplier Credit Rating Supplier First Purchase Order Date Employee Hire Date Customer First Order Date Be contacted by Interact with Interact with Be identified by Play Be played by Adding subtyping Employee Party Number (FK) Role Type Code (FK) Employee Hire Date Supplier Party Number (FK) Role Type Code (FK) Supplier First Purchase Order Date Supplier Credit Rating Party Party Number Party Company Name Party Person First Name Party Person Last Name Party Role Party Number (FK) Role Type Code (FK) Party Role Association Party A Number (FK) Role Type A Code (FK) Party B Number (FK) Role Type B Code (FK) Party Role Association Type Code (FK) Role Type Role Type Code Role Type Description Text Party Role Communication Medium Party Role Communication Medium Priority Number Party Number (FK) Role Type Code (FK) Party Role Communication Medium Type Code (FK) Party Role Communication Medium Value Text Party Role Alternate ID Party Number (FK) Role Type Code (FK) Party Role Alternate ID Type Code (FK) Party Role Alternate ID Value Text Customer Party Number (FK) Role Type Code (FK) Customer First Order Date Play Be played by Interact with Be contacted by Be identified by Interact with
  • 11. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 11 “Abstraction is strong in this one” Increases application stability Increases application stability Facilitates integration Facilitates integration Reduces design time Reduces design time Roles start and end, “things” always there Roles start and end, “things” always there Absolves the modeler from capturing business rules Absolves the modeler from capturing business rules The dark side of abstraction Model becomes vague and imprecise Model becomes vague and imprecise Less rules in the database Less rules in the database Performance issues Performance issues Reporting tools struggle with abstraction Reporting tools struggle with abstraction Stewardship gaps Stewardship gaps Accidently expose PII Accidently expose PII Thing
  • 12. IDERA LIVE 2021 The Power of Abstraction © Steve Hoberman Page 12 © 2021 IDERA, Inc. All rights reserved. 23 THANKS! ANY QUESTIONS? You can find me at: ● me@stevehoberman.com ● www.stevehoberman.com