Kivedeni -- erre nem tudok modszert sajna, es varom az otleteket.
Viszont ha tudod, hogy ez a dolgok termeszete, lehetsz eleg ovatos -- a mertek azert nem mindegy. Es erdemes B tervvel rendelkezni arra az esetre, ha ilyen dolgok derulnek ki.
BTW akkora tragediat azert nem kell latni a dologban, hisz a rendszer elete altalaban nem zarul le az atadassal. Ami nem jott ossze, vagy rosszul megy a kovetkezo verzioba. Es ott nincs akkora kulonbseg a "vadonat uj" es a "kifelejtett" featuresek kozott.
A folyamatos atirasra meg jo rakeszulni, tanulmanyozt a 'refactoring' technikakat, meg az olyan stilust, amelyik keves veraldozattal rugalmas, vagy rugalmassa teheto.
Az egesz OO dolog is azert tudott nagyot aratni, a magas szintu encapsulation-nel. Nagy rendszerekben meg erdemes lazitani a kapcsolatokat (lasd ezzel kapcsolatos patternek) hogy egy resz akar drasztikus megvaltoztatasa se dontson ossze mindent.
Amit meg erdemes tanulmanyozni, az Antipatterns -- az ismerten rossz dolgok, melyek minduntalan ismetlodnek. Ha ezeket koran felismered, nagy elonyt szerezhetsz.
Pasa