Designere er ikke alltid klar over fremtidige utfordringer når man designer ny programvare eller funksjonalitet, og noen ganger kan det være bedre å endre designet enn å holde seg til et design som ikke tar høyde for nylig oppdagede krav begrensninger eller problemer.