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

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


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

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 ...

Handling Inconsistencies in Tables with Nulls and Functional Dependencies

In this paper we address the problem of handling inconsistencies in tabl...

Long-Term Productivity Based on Science, not Preference

This position paper argues that decisions on processes, tools, technique...

Please sign up or login with your details

Forgot password? Click here to reset