Myślę, że koncentrujesz się na niewłaściwych wartościach. W zwinnym kluczem jest wartość biznesowa. Tworzysz produkt w celu zapewnienia wartości biznesowej niektórym użytkownikom końcowym.
Jeśli tworzysz warstwę trwałości z opóźnieniem lub nadrabiasz ją po drodze, twoja strategia dostarczania wartości biznesowej klientowi. Nie wierzę, że sam termin „zwinny” decyduje o tym, czy powinieneś to zrobić.
W tej prezentacji Robert C. Martin (jeden z autorów zwinnego manifestu) popiera pogląd na odroczenie strategii przechowywania danych .
To bardzo dobra prezentacja, mogę polecić jej obejrzenie.
Ale nie zgadzam się z tym! Przynajmniej do pewnego stopnia.
Nie wierzę, że można nazwać historię użytkownika „Gotowe”, jeśli historia użytkownika zawiera dane, które powinny zostać utrwalone, a tak naprawdę nie ma zaimplementowanego żadnego rodzaju trwałości.
Jeśli właściciel produktu zdecyduje, że teraz jest czas na uruchomienie, nie możesz tego zrobić. A jeśli nie zacząłeś wdrażać trwałości do późnej fazy projektu, nie masz również informacji o tym, ile czasu zajmie wdrożenie warstwy trwałości, pozostawiając poważne ryzyko projektu.
Zwinne projekty, nad którymi pracowałem, nie odroczyły strategii dostępu do danych. Ale został oddzielony, co pozwala nam to zmienić po drodze. A cały schemat bazy danych nie został zaprojektowany z góry. Po drodze tworzone są tabele i kolumny, ponieważ są one wymagane w celu zaimplementowania przechowywanego przez użytkownika użytkownika, który ostatecznie zapewnia wartość biznesową.