Upewnij się, że dokumentujesz wymagania tak dobrze, jak to możliwe.Oczywiście musisz również zarządzać tym, co spełnia wymagania, aby uniknąć nadmiernego projektowania, mając ustalony zakres, który uniemożliwia deweloperom uruchamianie pomysłów lub pozłacanie, co należy zrobić, i pomaga utrzymać zarządzanie lub klientów przed wprowadzaniem pełzania zakresu . Określ wszystkie wymagania i jak będą rozwiązywane zmiany zakresu.
Jestem za krótkimi cyklami rozwoju (upewnij się, że piszesz testy) i zwinną metodologią, ale żadna z nich nie jest tarczą przeciwko drugiemu syndromowi. W pewnym sensie łatwiej jest dodawać funkcję po funkcji, jeśli pracujesz w krótkim sprincie, nie zatrzymując się, by spojrzeć na ogólny obraz. Użyj zwinnych praktyk, aby zbudować najprostszą rzecz, która działa, a następnie dodaj pozostałe swoje wymagania tak prosto, jak to tylko możliwe. Zapamiętaj YAGNI, ponieważ kiedy zbudujesz system po raz drugi, wtedy najprawdopodobniej zbudujesz coś, czego na pewno będziesz potrzebował w pewnym momencie, coś, co sprawi, że system będzie "rozszerzalny", więc nigdy nie będzie musiał trzecia kompilacja. To najlepsze intencje, ale droga do piekła i tak dalej.
Dziękuję za odpowiedź, wybrałem to jako poprawne, ponieważ jest zwięzłe, ale zapewnia przepływ pracy przez cały czas. –
Scrum nie powstrzymuje cię przed stworzeniem "drugiego systemu". Po prostu zarządza przepływem pracy. "Drugi zespół systemowy" jest głównie problemem architektonicznym. (poza tym nie lubię Scruma). – Rolf