Identifying and Managing Technical Debt in Database Normalization Using Machine Learning and Trade-off Analysis

by   Mashel Albarak, et al.

Technical debt is a metaphor that describes the long term effects of shortcuts taken in software development activities to achieve near term goals. In this study, we explore a new context of technical debt that relates to database normalization design decisions. We posit that ill normalized databases can have long term ramifications on data quality, performance degradation and maintainability costs over time, just like debts accumulate interest. Conversely, conventional database approaches would suggest normalizing weakly normalized tables, this can be a costly process in terms of effort and expertise it requires for large software systems. As studies have shown that the fourth normal form is often regarded as the ideal form in database design, we claim that database normalization debts are likely to be incurred for tables below this form. We refer to normalization debt item as any table in the database below the fourth normal form. We propose a framework for identifying normalization debt. Our framework makes use of association rule mining to discover functional dependencies between attributes in a table, which will help determine the current normal form of that table and identify debt tables. To manage such debts, we propose a trade off analysis method to prioritize tables that are candidate for normalization. The trade off is between the rework cost and the debt effect on the quality of the system as the metaphoric interest. To evaluate our method, we use a case study from Microsoft, AdventureWorks. The results show that our method can reduce the cost and effort of normalization, while improving the database design.


page 1

page 2

page 3

page 4


Database Normalization Debt: A Debt-Aware Approach to Reason about Normalization Decisions in Database Design

Technical debt is a metaphor that describes the long term effects of sho...

Prioritizing Technical Debt in Database Normalization Using Portfolio Theory and Data Quality Metrics

Database normalization is the one of main principles for designing relat...

Is 2NF a Stable Normal Form?

Traditionally, it was accepted that a relational database can be normali...

Automatically Estimating the Effort Required to Repay Self-Admitted Technical Debt

Technical debt refers to the consequences of sub-optimal decisions made ...

A Generative Model for Score Normalization in Speaker Recognition

We propose a theoretical framework for thinking about score normalizatio...

Mitigating Cross-Database Differences for Learning Unified HRTF Representation

Individualized head-related transfer functions (HRTFs) are crucial for a...

Conceptual Modeling Applied to Data Semantics

In software system design, one of the purposes of diagrammatic modeling ...

Please sign up or login with your details

Forgot password? Click here to reset