Med systemomarbetning avses att man utgår från ett äldre system och skapar ett nytt system som bevarar funktioner och data från det äldre systemet. Begreppet rymmer ett spektrum av ansatser, från nyutveckling som innebär att man bygger ett nytt system på den gamla grunden, över vidareutveckling som innebär att man utgår från det gamla systemet men lägger till nya funktioner, till ren källkodsomvandling.