-
Użytkownicy są przyzwyczajeni do starego systemu, który działa dłużej niż nowy. Chodzi głównie o wygląd ale również zachowanie systemu jako takiego. Tak zwana "pamięć mięśniowa" robi swoje.
-
Przepisywanie zajmuje sporo czasu, przez który zazwyczaj stary system wciąż ewoluuje, stąd też jest to niekończący się wyścig z czasem. To ile rzeczy "stary" zrobi zanim "nowy" się dorobi zazwyczaj jest zagadką.
-
Pisanie od nowa funkcjonalności, które mają zdefiniowane zachowania w starym systemie jest receptą na kłopoty, ponieważ zazwyczaj będą pojawiać się nowe błędy. Nie ma oprogramowania, które jest wolne od błędów a pisanie testów zabiera czas (dodajmy że często w starym systemie testów nie ma).
-
Zmiana logiki działania systemu, która nie jest uzgodniona z użytkownikami będzie zawsze budzić kontrowersje. Choćby nie wiem jak dobre było uzasadnienie techniczne dla zmian, brak komunikacji zawsze będzie receptą na przegraną pisanego od nowa projektu.
Niezależnie od tego czy jesteśmy zadowoleni czy nie - "kody zostały rzucone na produkcję".
@splatch Reddit ma taką wersję do dzisiaj (http://old.reddit.com) i jakoś daje radę😃