SlideShare a Scribd company logo
Automating
Data Dictionaries
By Jared Nielsen
There is never enough time
As organizations acquire other companies, grow in the market, race
to compete, and implement new applications in an ever-faster pace,
the precise knowledge of what data lies where and for what purpose
is rarely current or up-to-date.
Standard practices for how to compile the de-facto master data
dictionary essentially become:
• Slow down
• Do a discovery
• Document the work
• Come to agreement
• Enforce
This structure can run counter to core business growth objectives
which results in a tendency by management to bypass them.
Who knows first?
There are two tracks to analyze here. New applications and Legacy
applications.
New Applications
1. Product is concepted
2. Database is created
3. APIs + rules are generated
4. Screens are designed
5. Functionality is implemented
6. Documentation is generated
7. Application is enhanced
Legacy Applications
1. Product is discovered
2. APIs + rules are generated
3. Documentation is updated
4. Application is enhanced
It is my proposal that the first person to know the actual, detailed
rules about the data is the API developer who implements the rules
for that data.
Why target the API layer?
Every organization has legacy applications. The core asset in those
applications is the data itself. Where in the past you would have to
modernize the entire app, with API technologies, you can leave a
legacy app in operation while plugging in APIs to the side of the
database for that application.
New applications should natively rely on API-driven development so
it is a given that they will be implemented for new apps.
Because the API developer must understand the data to implement
the rules, they become the first and authoritative source of the data
dictionary information that their APIs use.
The application needs an “endpoint” to hit that API, which Swagger
provides. The data governance team needs documentation of what
that data really does and needs it to be current. Because these
endpoints are used they always are the most current definition.
Data definition as a database
Defining data can be as large as a complex MDM initiative or as
small as a pile of Excel spreadsheets that become woefully out of
date. I have seen $10mm MDM initiatives collapse under their own
weight, and I’ve seen piles of Excel documents wither and wilt from
lack of use. The reason is they either impede business goals or are
irrelevant and unused.
Used data is good data
The information in data definitions gets stale. When a programmer
changes a feature in an API, they will document their code, but they
will rarely dig up documentation and update it. By using a
combination of Code Comments, Reflection, and Swagger Auto
Documentation, the data definitions themselves become a “data
dictionary database” automatically. Because they are generated “on
the fly” they are always current. Because they are used “live” they
must remain current and updated. The definition *is* a database.
Auto data dictionary generation
This process flow illustrates the model for using APIs to originate and
surface data dictionary definitions in a way that is always current and
automated.
DB POCO DTO Rules Swagger
Endpoint
App
Classes
(nSwag)
Service
Layer
UI
Automatic ETL
Sweep
Master Data
Definition
Automatic Documentation Generator
Effective method for automated data governance
While this is an oversimplification, if your organization tackles data
governance using this method, it will be able to automate and
emerge the current data with minimal impact to core business growth
objectives:
• Create APIs for all data so it is surfaced and usable outside the
confines of the user application screens
• Centralize business rules and validations at the API level
• Document the data and the rules in the source code
• Use reflection to harvest those comments into a strongly typed
definition (JSON)
• The documented endpoints should become *the* source of data
for applications, documentation, and MDM definitions
I believe that this will have a transformative effect on your
organization.
For More Information
Jared Nielsen
(713) 568-4599
Linkedin.com/in/nielsendata
Swagger: http://swagger.io
nSwag: https://github.com/NSwag/NSwag
DataAnnotations: https://goo.gl/YUWuKP
WebAPI AutoDoc: https://goo.gl/4gKCYp

More Related Content

What's hot

PowerApps Deep Dive
PowerApps Deep Dive PowerApps Deep Dive
PowerApps Deep Dive
Timo Pertilä
 
Biwug20190425
Biwug20190425Biwug20190425
Biwug20190425
BIWUG
 
Fueling AI & Machine Learning: Legacy Data as a Competitive Advantage
Fueling AI & Machine Learning: Legacy Data as a Competitive AdvantageFueling AI & Machine Learning: Legacy Data as a Competitive Advantage
Fueling AI & Machine Learning: Legacy Data as a Competitive Advantage
Precisely
 
Build and extend applications for Office 365 with PowerApps and Flow
Build and extend applications for Office 365 with PowerApps and FlowBuild and extend applications for Office 365 with PowerApps and Flow
Build and extend applications for Office 365 with PowerApps and Flow
Microsoft Tech Community
 
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
DataKitchen
 
Integrating with Einstein Analytics
Integrating with Einstein AnalyticsIntegrating with Einstein Analytics
Integrating with Einstein Analytics
Pat Patterson
 
SharePoint Search Results Branding
SharePoint Search Results BrandingSharePoint Search Results Branding
SharePoint Search Results Branding
Cory Peters
 
Building Applications for Your Business Using PowerApps and Flow
Building Applications for Your Business Using PowerApps and FlowBuilding Applications for Your Business Using PowerApps and Flow
Building Applications for Your Business Using PowerApps and Flow
Chris Bortlik
 
Which Embedded Analytics is Right for You?
Which Embedded Analytics is Right for You?Which Embedded Analytics is Right for You?
Which Embedded Analytics is Right for You?
OpenText
 
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
Ahmad Najjar
 
Enterprise search: search at scale
Enterprise search: search at scaleEnterprise search: search at scale
Enterprise search: search at scale
UllyCarolinneSampaio
 
Real World API Design Using The Entity Framework Services
Real World API Design Using The Entity Framework ServicesReal World API Design Using The Entity Framework Services
Real World API Design Using The Entity Framework Services
David McCarter
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
David Page
 
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenariosSPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
Ahmad Najjar
 
Hands-on Microsoft Flow
Hands-on Microsoft FlowHands-on Microsoft Flow
Hands-on Microsoft Flow
Nakkeeran Natarajan
 
5 Signs You Need to Re-Think Your Data Integration Strategy
5 Signs You Need to Re-Think Your Data Integration Strategy5 Signs You Need to Re-Think Your Data Integration Strategy
5 Signs You Need to Re-Think Your Data Integration Strategy
Darren Cunningham
 
Eckerson Embedded Webcast
Eckerson Embedded WebcastEckerson Embedded Webcast
Eckerson Embedded Webcast
OpenText
 
Microsoft PowerApps
Microsoft PowerAppsMicrosoft PowerApps
Microsoft PowerApps
Rene Modery
 
Deep-Dive: Predicting Customer Behavior with Apigee Insights
Deep-Dive: Predicting Customer Behavior with Apigee InsightsDeep-Dive: Predicting Customer Behavior with Apigee Insights
Deep-Dive: Predicting Customer Behavior with Apigee Insights
Apigee | Google Cloud
 

What's hot (20)

PowerApps Deep Dive
PowerApps Deep Dive PowerApps Deep Dive
PowerApps Deep Dive
 
Biwug20190425
Biwug20190425Biwug20190425
Biwug20190425
 
Fueling AI & Machine Learning: Legacy Data as a Competitive Advantage
Fueling AI & Machine Learning: Legacy Data as a Competitive AdvantageFueling AI & Machine Learning: Legacy Data as a Competitive Advantage
Fueling AI & Machine Learning: Legacy Data as a Competitive Advantage
 
Build and extend applications for Office 365 with PowerApps and Flow
Build and extend applications for Office 365 with PowerApps and FlowBuild and extend applications for Office 365 with PowerApps and Flow
Build and extend applications for Office 365 with PowerApps and Flow
 
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
Strata+hadoop data kitchen-seven-steps-to-high-velocity-data-analytics-with d...
 
Integrating with Einstein Analytics
Integrating with Einstein AnalyticsIntegrating with Einstein Analytics
Integrating with Einstein Analytics
 
SharePoint Search Results Branding
SharePoint Search Results BrandingSharePoint Search Results Branding
SharePoint Search Results Branding
 
Building Applications for Your Business Using PowerApps and Flow
Building Applications for Your Business Using PowerApps and FlowBuilding Applications for Your Business Using PowerApps and Flow
Building Applications for Your Business Using PowerApps and Flow
 
Akaza conf 3.22
Akaza conf 3.22Akaza conf 3.22
Akaza conf 3.22
 
Which Embedded Analytics is Right for You?
Which Embedded Analytics is Right for You?Which Embedded Analytics is Right for You?
Which Embedded Analytics is Right for You?
 
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
SPS London 2017 - Building applications with PowerApps, Microsoft flow and Of...
 
Enterprise search: search at scale
Enterprise search: search at scaleEnterprise search: search at scale
Enterprise search: search at scale
 
Real World API Design Using The Entity Framework Services
Real World API Design Using The Entity Framework ServicesReal World API Design Using The Entity Framework Services
Real World API Design Using The Entity Framework Services
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenariosSPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
SPS Dubai 2017 - PowerApps & Microsoft Flow: Advanced scenarios
 
Hands-on Microsoft Flow
Hands-on Microsoft FlowHands-on Microsoft Flow
Hands-on Microsoft Flow
 
5 Signs You Need to Re-Think Your Data Integration Strategy
5 Signs You Need to Re-Think Your Data Integration Strategy5 Signs You Need to Re-Think Your Data Integration Strategy
5 Signs You Need to Re-Think Your Data Integration Strategy
 
Eckerson Embedded Webcast
Eckerson Embedded WebcastEckerson Embedded Webcast
Eckerson Embedded Webcast
 
Microsoft PowerApps
Microsoft PowerAppsMicrosoft PowerApps
Microsoft PowerApps
 
Deep-Dive: Predicting Customer Behavior with Apigee Insights
Deep-Dive: Predicting Customer Behavior with Apigee InsightsDeep-Dive: Predicting Customer Behavior with Apigee Insights
Deep-Dive: Predicting Customer Behavior with Apigee Insights
 

Similar to Automating datadictionaries

Neoaug 2013 critical success factors for data quality management-chain-sys-co...
Neoaug 2013 critical success factors for data quality management-chain-sys-co...Neoaug 2013 critical success factors for data quality management-chain-sys-co...
Neoaug 2013 critical success factors for data quality management-chain-sys-co...
Chain Sys Corporation
 
How to Spot a Great API
How to Spot a Great APIHow to Spot a Great API
How to Spot a Great API
Scribe Software Corp.
 
Big Data Tools: A Deep Dive into Essential Tools
Big Data Tools: A Deep Dive into Essential ToolsBig Data Tools: A Deep Dive into Essential Tools
Big Data Tools: A Deep Dive into Essential Tools
FredReynolds2
 
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
Elemica
 
API Integration
API IntegrationAPI Integration
API Integration
eMerge Technologies
 
Build and extend applications for Office with PowerApps and Flow
Build and extend applications for Office with PowerApps and FlowBuild and extend applications for Office with PowerApps and Flow
Build and extend applications for Office with PowerApps and Flow
Juan Fabian
 
Job portal
Job portalJob portal
Job portal
Arman Ahmed
 
Office Add-ins developer community call-July 2019
Office Add-ins developer community call-July 2019Office Add-ins developer community call-July 2019
Office Add-ins developer community call-July 2019
Microsoft 365 Developer
 
Introducing Flow & PowerApps - "Power to the people"
Introducing Flow & PowerApps - "Power to the people"Introducing Flow & PowerApps - "Power to the people"
Introducing Flow & PowerApps - "Power to the people"
Xylos
 
10 Step Guide to API Integrations
10 Step Guide to API Integrations10 Step Guide to API Integrations
10 Step Guide to API Integrations
Cloud Elements
 
Api enablement-mainframe
Api enablement-mainframeApi enablement-mainframe
Api enablement-mainframe
Maran Gothandaraman
 
TechoERP.pdf
TechoERP.pdfTechoERP.pdf
TechoERP.pdf
TechoERP
 
DAS Slides: Metadata Management From Technical Architecture & Business Techni...
DAS Slides: Metadata Management From Technical Architecture & Business Techni...DAS Slides: Metadata Management From Technical Architecture & Business Techni...
DAS Slides: Metadata Management From Technical Architecture & Business Techni...
DATAVERSITY
 
Business rules-extraction
Business rules-extractionBusiness rules-extraction
Business rules-extraction
Maran Gothandaraman
 
Re-Inventing Enterprise IT Around APIs & Apps
Re-Inventing Enterprise IT Around APIs & AppsRe-Inventing Enterprise IT Around APIs & Apps
Re-Inventing Enterprise IT Around APIs & Apps
WSO2
 
Data Modeling 101: How to make Data model
Data Modeling 101: How to make Data modelData Modeling 101: How to make Data model
Data Modeling 101: How to make Data model
Abdul Ahad
 
whitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_processwhitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_processEric Saraceno
 
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
DianaGray10
 

Similar to Automating datadictionaries (20)

Neoaug 2013 critical success factors for data quality management-chain-sys-co...
Neoaug 2013 critical success factors for data quality management-chain-sys-co...Neoaug 2013 critical success factors for data quality management-chain-sys-co...
Neoaug 2013 critical success factors for data quality management-chain-sys-co...
 
How to Spot a Great API
How to Spot a Great APIHow to Spot a Great API
How to Spot a Great API
 
Big Data Tools: A Deep Dive into Essential Tools
Big Data Tools: A Deep Dive into Essential ToolsBig Data Tools: A Deep Dive into Essential Tools
Big Data Tools: A Deep Dive into Essential Tools
 
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
Sergio Juarez, Elemica – “From Big Data to Value: The Power of Master Data Ma...
 
API Integration
API IntegrationAPI Integration
API Integration
 
Build and extend applications for Office with PowerApps and Flow
Build and extend applications for Office with PowerApps and FlowBuild and extend applications for Office with PowerApps and Flow
Build and extend applications for Office with PowerApps and Flow
 
Job portal
Job portalJob portal
Job portal
 
Office Add-ins developer community call-July 2019
Office Add-ins developer community call-July 2019Office Add-ins developer community call-July 2019
Office Add-ins developer community call-July 2019
 
Introducing Flow & PowerApps - "Power to the people"
Introducing Flow & PowerApps - "Power to the people"Introducing Flow & PowerApps - "Power to the people"
Introducing Flow & PowerApps - "Power to the people"
 
10 Step Guide to API Integrations
10 Step Guide to API Integrations10 Step Guide to API Integrations
10 Step Guide to API Integrations
 
Api enablement-mainframe
Api enablement-mainframeApi enablement-mainframe
Api enablement-mainframe
 
TechoERP.pdf
TechoERP.pdfTechoERP.pdf
TechoERP.pdf
 
Explorer
ExplorerExplorer
Explorer
 
DAS Slides: Metadata Management From Technical Architecture & Business Techni...
DAS Slides: Metadata Management From Technical Architecture & Business Techni...DAS Slides: Metadata Management From Technical Architecture & Business Techni...
DAS Slides: Metadata Management From Technical Architecture & Business Techni...
 
Business rules-extraction
Business rules-extractionBusiness rules-extraction
Business rules-extraction
 
Re-Inventing Enterprise IT Around APIs & Apps
Re-Inventing Enterprise IT Around APIs & AppsRe-Inventing Enterprise IT Around APIs & Apps
Re-Inventing Enterprise IT Around APIs & Apps
 
Data Modeling 101: How to make Data model
Data Modeling 101: How to make Data modelData Modeling 101: How to make Data model
Data Modeling 101: How to make Data model
 
whitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_processwhitepaper_workday_technology_platform_devt_process
whitepaper_workday_technology_platform_devt_process
 
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...Building Bridges:  Merging RPA Processes, UiPath Apps, and Data Service to bu...
Building Bridges: Merging RPA Processes, UiPath Apps, and Data Service to bu...
 
Abdul ETL Resume
Abdul ETL ResumeAbdul ETL Resume
Abdul ETL Resume
 

Recently uploaded

Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
Roshan Dwivedi
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
takuyayamamoto1800
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 

Recently uploaded (20)

Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Launch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in MinutesLaunch Your Streaming Platforms in Minutes
Launch Your Streaming Platforms in Minutes
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 

Automating datadictionaries

  • 2. There is never enough time As organizations acquire other companies, grow in the market, race to compete, and implement new applications in an ever-faster pace, the precise knowledge of what data lies where and for what purpose is rarely current or up-to-date. Standard practices for how to compile the de-facto master data dictionary essentially become: • Slow down • Do a discovery • Document the work • Come to agreement • Enforce This structure can run counter to core business growth objectives which results in a tendency by management to bypass them.
  • 3. Who knows first? There are two tracks to analyze here. New applications and Legacy applications. New Applications 1. Product is concepted 2. Database is created 3. APIs + rules are generated 4. Screens are designed 5. Functionality is implemented 6. Documentation is generated 7. Application is enhanced Legacy Applications 1. Product is discovered 2. APIs + rules are generated 3. Documentation is updated 4. Application is enhanced It is my proposal that the first person to know the actual, detailed rules about the data is the API developer who implements the rules for that data.
  • 4. Why target the API layer? Every organization has legacy applications. The core asset in those applications is the data itself. Where in the past you would have to modernize the entire app, with API technologies, you can leave a legacy app in operation while plugging in APIs to the side of the database for that application. New applications should natively rely on API-driven development so it is a given that they will be implemented for new apps. Because the API developer must understand the data to implement the rules, they become the first and authoritative source of the data dictionary information that their APIs use. The application needs an “endpoint” to hit that API, which Swagger provides. The data governance team needs documentation of what that data really does and needs it to be current. Because these endpoints are used they always are the most current definition.
  • 5. Data definition as a database Defining data can be as large as a complex MDM initiative or as small as a pile of Excel spreadsheets that become woefully out of date. I have seen $10mm MDM initiatives collapse under their own weight, and I’ve seen piles of Excel documents wither and wilt from lack of use. The reason is they either impede business goals or are irrelevant and unused. Used data is good data The information in data definitions gets stale. When a programmer changes a feature in an API, they will document their code, but they will rarely dig up documentation and update it. By using a combination of Code Comments, Reflection, and Swagger Auto Documentation, the data definitions themselves become a “data dictionary database” automatically. Because they are generated “on the fly” they are always current. Because they are used “live” they must remain current and updated. The definition *is* a database.
  • 6. Auto data dictionary generation This process flow illustrates the model for using APIs to originate and surface data dictionary definitions in a way that is always current and automated. DB POCO DTO Rules Swagger Endpoint App Classes (nSwag) Service Layer UI Automatic ETL Sweep Master Data Definition Automatic Documentation Generator
  • 7. Effective method for automated data governance While this is an oversimplification, if your organization tackles data governance using this method, it will be able to automate and emerge the current data with minimal impact to core business growth objectives: • Create APIs for all data so it is surfaced and usable outside the confines of the user application screens • Centralize business rules and validations at the API level • Document the data and the rules in the source code • Use reflection to harvest those comments into a strongly typed definition (JSON) • The documented endpoints should become *the* source of data for applications, documentation, and MDM definitions I believe that this will have a transformative effect on your organization.
  • 8. For More Information Jared Nielsen (713) 568-4599 Linkedin.com/in/nielsendata Swagger: http://swagger.io nSwag: https://github.com/NSwag/NSwag DataAnnotations: https://goo.gl/YUWuKP WebAPI AutoDoc: https://goo.gl/4gKCYp