Architektura.
Návrh a rozpad aplikací v praxi: monolit versus mikroslužby, bounded contexts a agregáty v DDD, anti-corruption layer proti cizímu ERP, Strangler Fig při migraci legacy kódu a ADR jako způsob, jak si rozhodnutí zapsat. Doplňují to rozbory velkých projektů, které na architektuře ztroskotaly.
Postbank: Migrace vyšla. Tak proč přišel do banky regulátor?
Deutsche Bank převedla 19 milionů smluv dvanácti milionů klientů Postbank na svoji platformu a 3. července 2023 to označila za úspěšně dokončené. Technicky to vyšlo, přiznala to i vlastní dozorčí rada. O tři měsíce později přesto poslal BaFin do banky zvláštního zmocněnce, vůbec prvního ve své historii kvůli ochraně spotřebitele. Migrace dat totiž není totéž co migrace provozu.
Schématik δ: Update po 10 letech
Moje logická hra běžela deset let na Symfony 3.1 a PHP 5.5, aniž bych v ní změnil jediný řádek. Na jeden prompt jsem ji přepsal na Symfony 8.1 a na PHP 8.5.
Britská pošta: Jak se ze zdvojeného zápisu stane tisíc odsouzených?
Účetní systém Horizon dvacet let ukazoval pobočkám manka, která tam nebyla. Pošta je po lidech vymáhala a sama je za ně trestně stíhala.
Kdy je CQRS v PHP overkill? 3 signály, že si komplikujete život
CQRS je jen rozdělení jednoho objektu na dva. Složité je všechno, co si k němu lidi přibalí, aniž by to potřebovali. Tři signály, že platíte režii, ze které nic nemáte.
Haribo, SAP a zmizelí medvídci
Legenda říká, že SAP připravil Německo o gumové medvídky. Zdroje říkají něco jiného. Co se u Haribo doopravdy rozbilo a proč to bolelo i bez customizace.
Ubiquitous language: Jak ho vynutit v Symfony projektu?
Ubiquitous language není slovník pro celou firmu, ale jazyk jednoho bounded contextu. Šest praktik, jak ho udržet v Symfony projektu, včetně toho, jak ho nechat hlídat CI místo reviewera.
Digitalizace stavebního řízení: Co tady selhalo?
Systémy pro digitální stavební řízení se spustily 1. července 2024 a okamžitě se zasekly. Technický audit ale říká, že architektura stála na moderních a osvědčených technologiích a vady jdou opravit. Selhalo všechno okolo. A ve vládní zprávě a v tabulce smluv, kterou zveřejnilo samo ministerstvo, je vidět kde.
Bounded contexts v PHP: Jak nakreslit mapu aplikace?
Jak event stormingem najít hranice domén, rozdělit PHP aplikaci na bounded contexts a implementovat je v Symfony. A kdy se do toho naopak nepouštět?
Birmingham, Oracle a 216 milionů liber: Proč město už roky nevidí na vlastní účetnictví?
Birmingham měl orgán, který měl zamítat odchylky od standardu, výstupní kritéria pro testování i finančního ředitele, který vlastnil business case. Všechno to existovalo a všechno hlásilo, že je to v pořádku. Dnes se dopad nasazení Oraclu počítá na 216,5 milionu liber a radnice nasazuje znovu – tentokrát bez úprav.
Agregáty v DDD: Kde nakreslit hranici?
Agregát je slovo, které se v DDD skloňuje nejčastěji a rozumí se mu nejmíň. Tři pravidla pro kreslení hranic agregátů, konzistence mezi nimi a ukázka v Symfony/Doctrine.
Lidl, SAP a půl miliardy eur v koši: Co se vlastně stalo a proč to tolik stálo?
Projekt eLWIS. Jak Lidl sedm let stavěl se SAPem nový systém pro správu zboží, utratil odhadem přes 500 milionů eur a nakonec se vrátil k původnímu Wawi. Kde se stala chyba, proč to stálo tolik a co dnes Lidl provozuje místo SAPu?
Strangler Fig v PHP: Jak migrovat zastaralé aplikace?
Strangler Fig pattern v PHP: Jak postupně migrovat legacy aplikaci na Symfony bez big-bang rewrite a bez výpadku? Manuál krok za krokem, anti-corruption layer, feature flagy, diagramy a kdy pattern naopak nepoužít.