リアーキテクチャ 【rearchitecture】 リアーキテクティング / rearchitecting / リアーキ
リファクタリング(refactoring)はソフトウェアの品質や開発効率を高めるためのメンテナンス工程で、外部から見た挙動や仕様を変えずに既存のプログラムコードを書き換え、より見通しがよく理解しやすいコードに改める。
一般的なリファクタリングではクラスやメソッド、関数、あるいはより小さなコードブロックなどの単位で細かな修正を積み重ねていくが、リアーキテクチャではソフトウェア全体の構造を見直し、モジュールやコンポーネントなどの構成や機能の見直しや組み換えなどを行う。
例えば、単一のプログラムのまま開発が進み、機能追加が繰り返されて規模が大きくなりすぎた場合に、機能単位ごとにモジュールに分割して連携するよう改めるといった改修を行う。モジュールなどの統廃合、機能の移転などを行う場合もある。
通常のリファクタリングと同様、ソフトウェアの外部から見た振る舞いは変えないのが原則である。そのためにはテストを入念に実施する必要があるが、単体のプログラム内でのコードの書き換えとは異なり、大きな構造の変更を伴うため、テストコードの大幅な書き換えや再編成も必要となる。
(2024.3.15更新)