1 Introduction
In this scenario, ShaDey Inc. has a centralized business glossary, but governance has broken down in practice. The CDM was created by a consulting firm and never maintained. Teams built their own LDMs independently. The PDM was inherited from a legacy SAP migration and ad-hoc analytics projects. The result: glossary terms exist on paper, but they do not match what is actually implemented.
1. The glossary exists, but teams disagree on definitions (e.g., "Active Customer" means different things to Marketing, Finance, and Engineering).
2. CDM uses SAP-influenced names like "Account" and "Material" instead of business-friendly "Customer" and "Product."
3. LDM attributes are abbreviated, undocumented, and vary by team.
4. PDM tables are named after source systems (
5. AI/ML teams cannot trust any feature because lineage is broken.
2. CDM uses SAP-influenced names like "Account" and "Material" instead of business-friendly "Customer" and "Product."
3. LDM attributes are abbreviated, undocumented, and vary by team.
4. PDM tables are named after source systems (
kna1_extract, mara_data) or ad-hoc projects (cust_data_v2_FINAL).5. AI/ML teams cannot trust any feature because lineage is broken.
Maturity: DAMA DMBOK Level 1–2 (Initial/Repeatable) | Glossary Status: Exists but unenforced and outdated | Naming Convention: None; each team uses its own | Lineage: Broken; cannot trace glossary to PDM | Data Contracts: Informal or absent
Compare with Scenario 1: Aligned Governance to see what proper alignment looks like.
2 Centralized Business Glossary
The same 13 enterprise terms exist in the glossary, but definitions are contested, ownership is unclear, and the mapping to data models is inconsistent or broken. Expand each card to see the misalignment.
Customer
Customer Management
High
A person or organization that has purchased from or registered with ShaDey Inc. through any channel (in-store, e-commerce, wholesale).
Full Metadata: Misalignment Details
GlossaryCustomer
CDMAccount
LDMcust
PDMkna1_extract
Active Customer
Customer Management
High
A customer who has completed at least one purchase transaction within a defined trailing period from the measurement date. Warning: the "defined period" differs across three teams.
Full Metadata: Conflicting Definitions
Conflicting Definitions by Team
MarketingPurchased OR browsed within 6 months (includes website visits)
FinanceCompleted purchase within trailing 12 months (revenue-based only)
EngineeringLast login within 90 days (app engagement, no purchase required)
GlossaryActive Customer
CDMNot modeled
LDMactive_yn
PDM3 tables
Product
Merchandising
High
A sellable item in ShaDey Inc.'s portfolio, identified by a unique SKU, belonging to a Category within a Department.
Full Metadata: Misalignment Details
GlossaryProduct
CDMMaterial
LDMmat
PDMmara_data
Sale
Sales & Revenue
High
A completed purchase transaction in which a customer acquires one or more products through a channel at an agreed price.
Full Metadata: Misalignment Details
GlossarySale
CDMBillingDocument
LDMbilling_doc
PDMvbrk_vbrp_joined
Net Sales
Sales & Revenue
High
Gross sales revenue minus returns, discounts, allowances, and sales taxes. Warning: three different calculation formulas exist in production.
Full Metadata: Formula Conflicts
Conflicting Formulas by Team
Finance
SUM(gross_amount) - SUM(returns) - SUM(discounts) - SUM(tax)Marketing
SUM(gross_amount) - SUM(returns) (excludes discounts and tax)Operations
SUM(line_total) (pre-aggregated, includes tax, excludes returns)GlossaryNet Sales
CDMNot modeled
LDMNot defined
PDM3 tables
Inventory On Hand
Supply Chain
High
The quantity of a product physically available for sale at a specific location, measured in sellable units, excluding reserved, damaged, or in-transit stock.
Full Metadata: Misalignment Details
GlossaryInventory On Hand
CDMStockPosition
LDMstk_pos
PDMmard_extract
Supplier
Procurement
Medium
An external organization that manufactures, distributes, or imports products sold by ShaDey Inc., bound by a procurement contract.
Full Metadata: Misalignment Details
GlossarySupplier
CDMVendor
LDMvndr
PDMlfa1_extract
Promotion
Merchandising
Medium
A time-bound pricing incentive (discount, BOGO, coupon, markdown) applied to one or more products or categories to drive sales volume.
Full Metadata: Misalignment Details
GlossaryPromotion
CDMPricingCondition
LDMcond_rec
PDMkonv_extract
Order
Sales & Revenue
High
A customer's expressed intent to purchase one or more products. An order may be pending, confirmed, fulfilled, or cancelled. Distinct from a completed sale.
Full Metadata: Misalignment Details
GlossaryOrder
CDMSalesDocument
LDMsd_doc
PDMvbak_vbap_joined
Shipment
Logistics
Medium
A physical movement of goods from a warehouse or distribution center to a customer delivery address or store location.
Full Metadata: Misalignment Details
GlossaryShipment
CDMDelivery
LDMdeliv
PDMlikp_lips_joined
Return
Sales & Revenue
Medium
A customer-initiated reversal of a completed sale, resulting in the return of goods and issuance of a refund or credit to the customer.
Full Metadata: Misalignment Details
GlossaryReturn
CDMSalesDocument
LDMsd_doc (mixed)
PDMvbak_vbap (filtered)
Feature Store Record
Data Science
High
A pre-computed, versioned, point-in-time correct feature vector derived from governed data products, stored in the centralized ML feature store.
Full Metadata: Misalignment Details
GlossaryFeature Store Record
CDMNot modeled
LDMNot modeled
PDMad-hoc tables
Model Training Dataset
Data Science
High
A point-in-time correct, labeled dataset assembled for training or retraining an ML model. Should be immutable with full lineage.
Full Metadata: Misalignment Details
GlossaryTraining Dataset
CDMNot modeled
LDMNot modeled
PDMad-hoc files
3 Enterprise Data Models
The CDM, LDM, and PDM exist but were built independently. Entity names, attribute names, and physical table names do not align with the business glossary, or with each other.
Conceptual Data Model (SAP-Influenced)
11 entities, but names are derived from SAP technical terminology, not the business glossary. A consultant built this from SAP transaction codes, not from business workshops.
Account
Glossary: "Customer". SAP-derived name. Mismatch
Material
Glossary: "Product". SAP MARA-derived. Mismatch
Plant
Glossary: "Store / Channel". SAP WERKS concept. Mismatch
Vendor
Glossary: "Supplier". SAP LFA1-derived. Mismatch
StockPosition
Glossary: "Inventory". Partially aligned; includes reserved stock.
SalesDocument
Glossary: "Order" + "Sale" + "Return" mixed. Major mismatch
BillingDocument
Glossary: "Sale". SAP VBRK-derived. Mismatch
PricingCondition
Glossary: "Promotion". Mixes promotions with permanent pricing.
Delivery
Glossary: "Shipment". SAP LIKP name. Close but different.
CreditMemo
Return subtype, financial view only. Physical return not modeled.
(ML not in CDM)
AI/ML FeatureSet and Training Dataset are not represented. CDM predates ML.
The CDM was built by reverse-engineering SAP tables, not by modeling business concepts. Entity names like "Account", "Material", "Plant", and "Vendor" are SAP terminology that business users do not recognize. The glossary-to-CDM link is broken at the first step.
Logical Data Model (Inconsistent Attributes)
Customer (as "cust"): 5 abbreviated attributes
| Attribute | Type | Constraint | Glossary Link |
|---|---|---|---|
kunnr | VARCHAR(10) | PK | SAP field name, not "customer_id" |
name1 | VARCHAR(40) | NOT NULL | SAP field name, should be "full_name" |
email | VARCHAR(100) | Length too short (max 100 vs. RFC 5321 max 254) | |
active_yn | CHAR(1) | Y/N flag, no derivation rule documented | |
cust_type | VARCHAR(20) | Free-text, not ENUM. Values: "retail", "Retail", "RETAIL", "b2b", etc. |
Compared to Scenario 1, this LDM is missing:
loyalty_tier, registration_date, preferred_channel, ltv_segment, and primary_store_id. No SCD tracking. No business rules documented.
Supplier (as "vndr"): 4 abbreviated attributes
| Attribute | Type | Constraint | Glossary Link |
|---|---|---|---|
lifnr | VARCHAR(10) | PK | SAP field name, not "supplier_id" |
name1 | VARCHAR(40) | NOT NULL | SAP name, should be "supplier_name" |
land1 | CHAR(3) | SAP country field, not "country_code" (ISO 3166) | |
ktokk | VARCHAR(4) | SAP account group. No business meaning documented. |
Missing:
lead_time_days, quality_rating, contract_start_date, payment_terms, is_certified, primary_category_id. The LDM has 4 of the 10 attributes needed.
Physical Data Model (Ad-Hoc Tables)
No naming convention. Tables are named after source systems, project names, or developer initials. Multiple tables for the same concept with no reconciliation.
kna1_extract (SAP customer replica)
CREATE TABLE kna1_extract (
KUNNR VARCHAR(10) PRIMARY KEY, -- SAP customer number, not UUID
NAME1 VARCHAR(40), -- SAP field name, not "full_name"
NAME2 VARCHAR(40), -- no glossary mapping
ORT01 VARCHAR(40), -- city in SAP German abbrev
LAND1 CHAR(3), -- country code
AKTIV CHAR(1), -- active flag, no derivation rule
ERDAT VARCHAR(8) -- date as YYYYMMDD string, not DATE type
);
cust_data_v2 (analytics team ad-hoc)
CREATE TABLE cust_data_v2 (
id INT IDENTITY PRIMARY KEY, -- auto-increment, no business key
cust_num VARCHAR(20), -- sometimes KUNNR, sometimes email
cust_name VARCHAR(100), -- concatenated, inconsistent format
is_active BOOLEAN, -- Marketing's 6-month definition
segment VARCHAR(50), -- free-text: "high value", "HIGH", etc.
last_updated DATETIME -- no timezone, no SCD tracking
);
mara_data, vbrk_vbrp_joined, additional ad-hoc tables
mara_data (SAP material replica)
CREATE TABLE mara_data (
MATNR VARCHAR(18) PRIMARY KEY, -- SAP material number, not UUID/SKU
MAKTX VARCHAR(40), -- description in SAP, not "product_name"
MTART VARCHAR(4), -- material type code, no ENUM
MATKL VARCHAR(9) -- material group, maps to "category" loosely
);
vbrk_vbrp_joined (SAP billing replica)
CREATE TABLE vbrk_vbrp_joined (
VBELN VARCHAR(10), -- billing document number
POSNR VARCHAR(6), -- line item
KUNAG VARCHAR(10), -- sold-to customer (SAP)
MATNR VARCHAR(18), -- material, not "product_id"
FKIMG DECIMAL(13,3), -- quantity
NETWR DECIMAL(15,2), -- net value per SAP (includes some deductions)
WAERK CHAR(5) -- currency
);
Also in production:
customer_export_final_FINAL, product_catalog_export, item_master, pos_transactions, ecom_orders, rpt_revenue_daily, mktg_net_sales_cube, ops_sales_summary, ds_features_alice, ml_features_v3_bob, training_data_churn_v2_FINAL, alice_train_set_backup. Total: 20+ tables for concepts that Scenario 1 covers with 8 governed tables.
4 Glossary-to-Model Alignment Flow
In Scenario 2, the flow from glossary to PDM is broken at every step. Names diverge, definitions conflict, and physical tables cannot be traced back to glossary terms.
Broken Flow: "Customer"
Business Glossary
Customer
"A person or org that has purchased from ShaDey Inc."
"A person or org that has purchased from ShaDey Inc."
name change
CDM
Account
SAP-derived name, different from glossary
SAP-derived name, different from glossary
abbreviated
LDM
cust5 attrs, SAP field names, no rules
fragmented
PDM
kna1_extractcust_data_v2customer_export_final_FINALBroken Flow: "Net Sales"
Business Glossary
Net Sales
"Gross sales − returns − discounts − tax"
"Gross sales − returns − discounts − tax"
not modeled
CDM
Not modeled
No derived metric concept
No derived metric concept
no formula
LDM
Not defined
Each team writes its own SQL
Each team writes its own SQL
3 versions
PDM
rpt_revenue_dailymktg_net_sales_cubeops_sales_summary
When naming diverges at CDM and definitions fragment at LDM, the PDM becomes a collection of ad-hoc tables that nobody fully understands. Impact analysis is impossible; changing one definition could break any of 20+ tables, and nobody knows which ones. Leadership meetings devolve into "which number is right?" arguments.
5 Term Deep Dives: Broken Traceability
Tracing 8 key terms through every layer. Red indicates misalignment; amber indicates partial alignment. Compare with Scenario 1 where every row is green.
| Glossary Term | CDM Entity | LDM Entity / Attribute | PDM Table(s) | Status | Root Cause |
|---|---|---|---|---|---|
| Customer | Account (wrong name) |
cust, abbreviated, 5 attrs |
kna1_extract, cust_data_v2, customer_export_final_FINAL |
Broken | SAP-derived CDM, no naming standard |
| Active Customer | Not modeled | cust.active_yn, no rule |
3 tables, 3 definitions (6mo / 12mo / 90d) | Broken | No enterprise standard definition |
| Product | Material (SAP name) |
mat, 4 SAP attrs |
mara_data, product_catalog_export, item_master |
Broken | SAP naming, multiple systems |
| Net Sales | Not modeled | Not defined; ad-hoc SQL per team | rpt_revenue_daily, mktg_net_sales_cube, ops_sales_summary |
Broken | 3 conflicting formulas in production |
| Inventory On Hand | StockPosition (close) |
stk_pos, mixes stock types |
mard_extract, wms_inventory_live |
Partial | Semantic mismatch: includes reserved |
| Supplier | Vendor (SAP name) |
vndr, 4 SAP attrs |
lfa1_extract |
Broken | SAP naming at every layer |
| Order / Return | SalesDocument (mixed) |
sd_doc, orders + returns + quotes |
vbak_vbap_joined, must filter by doc_type |
Broken | 3 glossary terms collapsed into 1 entity |
| Feature Store / Training | Not in CDM | Not in LDM | Personal schemas: ds_features_alice, ml_features_v3_bob |
Broken | CDM predates AI/ML, no governance |
In Scenario 2, no column in the PDM can be reliably traced back to a glossary term. Impact analysis requires manual detective work across 20+ tables. A schema change in
kna1_extract could break reports, ML features, and downstream exports, and nobody knows the full blast radius until something fails in production.
6 Business Impact
How misaligned governance and an inconsistent glossary damage every aspect of data operations at ShaDey Inc.
Analytics & Reporting
- "Net Sales" shows 3 different numbers across Finance, Marketing, and Ops dashboards
- Leadership spends 40% of data review meetings debating which number is correct
- Monthly reconciliation takes 2–3 analyst-days per cycle
Trust & Confidence
- Business users do not trust the data; they maintain shadow spreadsheets
- "Which number is right?" is the most common question in leadership meetings
- New analysts spend 3–4 weeks just learning which tables to trust
AI/ML Failure Risk
- Features built from ad-hoc tables contain definition drift; "active customer" means 3 things
- Training data is not reproducible; retraining produces different results
- PII leakage risk: no governance on personal-schema feature tables
Governance & Compliance
- GDPR audit: cannot prove where customer PII resides across 20+ tables
- SOX compliance: Net Sales formula is not standardized for financial reporting
- Data steward position vacant; no enforcement of glossary definitions
Interoperability
- Cross-domain queries fail because "Customer" is
KUNNRin one table andcust_numin another - Joining SAP tables to analytics tables requires manual key mapping per query
- API contracts use different entity names than the database
Operational Cost
- Estimated $1.2M/year in reconciliation, rework, and duplicate pipeline maintenance
- New data products take 3–6 months instead of weeks due to "data archaeology"
- 20+ tables to maintain vs. 8 governed tables in Scenario 1
7 Key Takeaways
ShaDey Inc. has a glossary, but it is not enforced. When CDM entities use SAP names ("Account", "Material", "Vendor") instead of glossary terms ("Customer", "Product", "Supplier"), the glossary becomes documentation that nobody reads.
"Customer" → "Account" → "cust" → "kna1_extract". At each layer, the name drifts further from the business term. By PDM, a new analyst cannot tell which table represents which glossary concept without tribal knowledge.
When "Active Customer" has 3 definitions and "Net Sales" has 3 formulas, every ML feature that depends on these concepts inherits silent inconsistency. The model does not know which definition it was trained on, and neither does the team.
The gap between Scenario 1 and Scenario 2 is not theoretical. It manifests as: 3x more tables to maintain, monthly reconciliation cycles, leadership trust erosion, compliance audit failures, and 3–6 month delays on every new data product.
See how this should work: Scenario 1: Aligned Governance