データベースのリファクタリング(Database_refactoring)はデータベースの計画ないし枠組み(英: database schema )についてのひとつの単純な変更である。
解説
それはその挙動と'情報的意味'(英: informational semantics )を保ったままその設計を改善するものである。データベースのリファクタリングはデータの解釈や利用の方法を変更しないしまたバグの修正や新たな機能を付け加えるものでもない。データベースに対するそれぞれのリファクタリングは稼働状態においてそのシステムを保つ、したがって管理による遅延を引き起こさずに、その生産環境においてその有効なデータの存在を与える。
データベースのリファクタリングは概念的にはプログラムコードのリファクタリングよりも難しい;コードのリファクタリングは挙動上の意味を管理する必要だけであるのに、データベースのリファクタリングは情報上の意味も管理しなければなならない。
データベースの図式は大抵幾つかの理由の一つによってリファクタリングされる:
- システムを保ったままの発展的な設計と併行して発展的な'作法'(英: manner)において計画を開発すること。
- 既存の資産のデータベースの計画のもとに設計の問題を改善すること。データベースのリファクタリングは、たいていそのデータベースの設計の「清掃(英: clean up)」である、しばしば既存の作られたデータベースの正規化についての欲求により動機づけられる。
- 小さな、危険性が低い変更の系列として、大きな(そして潜在的に危険な)変更になるようなものを実装すること。
データベースのリファクタリングの範疇
2006年にスコット・アンブラー(英: Scott Ambler)とピラモド・サダラージ(英: Pramod Sadalage)はデータベースのリファクタリングの範疇を述べた。
2019年にウラジスラブ・スツルジック(英: Vladislav Struzik)は新しい一つのものをもってデータベースのリファクタリングを補充した。
データベースのリファクタリングの処理
データベースのリファクタリングの処理は既存のデータベースの計画を発展するようデータベースのリファクタリングを適用する行為である(データベースのリファクタリングは発展的データベース設計 (英語: evolutionary database design)の中核の実践である)。考慮を要する三つの点がある:
- いかに単一のリファクタリングを実装するか
- いかにデータベースのリファクタリングが組織の中へ持ち込まれて共有されるか
- いかにデータベースのリファクタリングの系列が適用されるのか
引用文献
参考文献
- Ambler, Scott; Sadalage, Pramod (March 3 2006). Refactoring Database: Evolutionary Database Design (1st. ed.). Addison-Wesley Professional. ISBN 978-0321774514
- 上記の和書:スコット・W・アンブラー、ピラモド・サダラージ『データベース・リファクタリング: データベースの体質改善テクニック』(第1版)ピアソン・エデュケーション、東京、2008年4月10日。ISBN 978-4-89471-500-4。
- Ambler, Scott, Catalog of Database Refactorings - Agile Data -
- Струзік, В. А. (2019)" Категорія рефакторинг доступу / В. А. Струзік // Комп’ютерні науки, інформаційні технології та системи управління : Міжнародна науково-технічна конференція студентів, аспірантів та молодих вчених, 27–29 листопада 2019 р. – Івано-Франківськ : Прикарпатський національний університет ім. Василя Стефаника, 2019. – С. 20-21."
- Струзік, В. А. (2020)"Категорія рефакторинг доступу / В. А. Струзік, С. В. Грибков, В. В. Чобану // Наукові праці НУХТ. – Т. 26, № 2. – 2020. – С. 31–49."
- Struzik, Vladislav (Jan 24, 2022), Refactoring: yesterday, today, tomorrow.
関連項目
- Liquibase
- Ruby on Rails
- 単体テスト
- テスト駆動開発
- データ移行
- データベース・テスト (英語: database test)
- 非正規化 (英語: denormalization )
- リファクタリング




