Modelul de date decide anul doi
Aproape orice rescriere la care suntem chemați are aceeași poveste de început. Prima versiune a fost livrată rapid, afacerea s-a schimbat, iar modelul de date nu s-a schimbat împreună cu ea. Doi ani mai târziu, un tabel numit items ține patru tipuri diferite de entități, jumătate din coloane sunt nullable pentru că se aplică doar unuia dintre ele, iar fiecare funcționalitate nouă are nevoie de un caz special.
Numele din cod sunt numele din cameră
Cea mai ieftină corecție este cea făcută înainte să existe o migrare. Petrecem primele zile ale unui proiect scriind ce face de fapt afacerea - în vocabularul ei - și abia apoi decidem ce ar trebui să fie software-ul. Dacă oamenii din operațiuni îi spun consignație, tabelul nu se numește shipment2.
Granițele urmează afacerea, nu framework-ul
Serviciile se separă acolo unde se separă afacerea. Asta le face livrabile independent mai târziu și acesta este motivul pentru care un sistem bine desenat poate absorbi o linie de produs nouă prin configurare, nu prin rescriere.
Dacă nu puteți desena sistemul pe o singură pagină, nimeni din echipă nu are aceeași imagine despre el.
