Refaktorering eller omstrukturering av kode eller (en: refactoring) er en teknikk for å trinnvis forbedre kvaliteten på programkode. Formålet er å omstrukturere kode for å den enklere og dermed mer lettlest, lettere å vedlikeholde og videreutvikle.

En viktig detalj med omstruktureringen er at funksjonaliteten utad skal være identisk etterpå, det vil si at oppførselen på koden ikke skal endre seg. Derfor bør omstrukturering skje trinnvis i mindre enkle endringer.

Ettersom omstrukturering ikke tilfører noe nytt til koden er dette et ganske mekanisk arbeide som det finnes bra verktøy for å automatisere.

Etymologi rediger

Begrepet kommer fra faktorisering som betyr å dele opp en ligning eller et tall i mindre enheter (faktorer) som kan ganges som for å få det opprinnelige tallet eller uttrykket. I Norge ble begrepet først brukt fra tidlig 2000 tallet, samtidig som smidige utviklingsmetoder ble populært.[trenger referanse]