リファクタリング (データベース)

データベースのリファクタリングはデータベースの計画ないし枠組み（）についてのひとつの単純な変更である。それはその挙動と'情報的意味'（）を保ったままその設計を改善するものである。データベースのリファクタリングはデータの解釈や利用の方法を変更しないしまたバグの修正や新たな機能を付け加えるものでもない。データベースに対するそれぞれのリファクタリングは稼働状態においてそのシステムを保つ、したがって管理による遅延を引き起こさずに、その生産環境においてその有効なデータの存在を与える。

データベースのリファクタリングは概念的にはプログラムコードのリファクタリングよりも難しい；コードのリファクタリングは挙動上の意味を管理する必要だけであるのに、データベースのリファクタリングは情報上の意味も管理しなければなならない。

データベースの図式は大抵幾つかの理由の一つによってリファクタリングされる：
 システムを保ったままの発展的な設計と併行して発展的な'作法'（）において計画を開発すること。
 既存の資産のデータベースの計画のもとに設計の問題を改善すること。データベースのリファクタリングは、たいていそのデータベースの設計の「清掃（）」である、しばしば既存の作られたデータベースの正規化についての欲求により動機づけられる。
 小さな、危険性が低い変更の系列として、大きな（そして潜在的に危険な）変更になるようなものを実装すること。

データベースのリファクタリングの範疇 

2006年にスコット・アンブラー（）とピラモド・サダラージ（）はデータベースのリファクタリングの範疇を述べた。

2019年にウラジスラブ・スツルジック（）は新しい一つのものをもってデータベースのリファクタリングを補充した。

データベースのリファクタリングの処理 

データベースのリファクタリングの処理は既存のデータベースの計画を発展するようデータベースのリファクタリングを適用する行為である（データベースのリファクタリングはの中核の実践である）。考慮を要する三つの点がある：
 いかに単一のリファクタリングを実装するか
 いかにデータベースのリファクタリングが組織の中へ持ち込まれて共有されるか
 いかにデータベースのリファクタリングの系列が適用されるのか

関連項目 

 Liquibase
 Ruby on Rails
 単体テスト
 テスト駆動開発
 データ移行
 
 
  リファクタリング

引用文献 

 
 上記の和書：
 
 
 
 

エクストリーム・プログラミング
データベース