Zpo-8-wyk-Slajd5
Z Studia Informatyczne
Motywacja
Refaktoryzacja jest jedną z technik pielęgnacji oprogramowania.
Jak wskazują badania, pielęgnacja pochłania nawet do 80% całkowitych kosztów związanych z oprogramowaniem. Znamienny jest też przykład podany przez Boehma: stworzenie linii kodu w oprogramowaniu dla Boeinga kosztowało ponad stukrotnie mniej niż jej pielęgnacja do końca życia produktu.
Ta i podobna obserwacje posłużyły M. Lehmanowi do sformułowania praw dotyczących ewolucji oprogramowania. Mówią one, że oprogramowanie w trakcie ewolucji staje się coraz bardziej złożone, a jego struktura w coraz mniejszym stopniu odpowiada wymaganiom. Jedynym sposobem przeciwdziałania temu zjawisku jest ciągła restrukturyzacja, która przywraca pierwotną prostotę projektu.