PMFA model izvršenja
Sva poslovna realnost se proizvodi kroz jednu zakonitu putanju.
Nema mutacije.
Nema prepisivanja.
Nema tihe promene.
Event-Sourced jezgro
Svaka akcija je događaj. Događaji su nepromenljivi. Trenutno stanje je uvek projekcija svih događaja. Ovo nije obrazac—to je zahtev. Sistemi koji direktno mutiraju stanje nisu PMFA-usklađeni.
Policy engine
Poslovna pravila nisu rasuta po kodu. Ona žive u namenskom sloju politika koji je izvršan, testabilan i proverljiv. Promene politika su verzionisane i sledljive.
Razdvajanje kernela i ekstenzija
Kernel je svet. Sadrži invarijante koje ne mogu biti prekršene. Ekstenzije mogu dodati funkcionalnost, ali ne mogu modifikovati ponašanje kernela. Ovo razdvajanje je apsolutno.
Temporalni model
Vreme je prvoklasna dimenzija. Svaka činjenica ima vreme važenja i vreme transakcije. Retroaktivne promene se prate, ne skrivaju. Sistem zna šta je znao kada.
Infrastruktura projekcija
Modeli za čitanje su projekcije. Mogu se ponovo izgraditi iz događaja u bilo kom trenutku. Optimizovani su za upite, ali nikada nisu izvor istine.
Revizija po dizajnu
Revizija nije funkcionalnost. To je posledica arhitekture. Pošto su sve promene stanja događaji, i svi događaji su nepromenljivi, svaki sistem izgrađen na PMFA je inherentno proverljiv.
SHA-256: 10e13e64d2743a02edcc0e637fa04e704ff133ca6e7f7963661f0c6acac3da23