PMFA

PMFA model izvršenja

Sva poslovna realnost se proizvodi kroz jednu zakonitu putanju.

UI izražava nameru
Kernel validira nameru prema zakonu
Događaji beleže nepromenljivu istinu
Projekcije izvode vidljivo stanje
Realnost postaje objašnjiva i ponovljiva

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.

Canonical text. Interpretations are invalid.
SHA-256: 10e13e64d2743a02edcc0e637fa04e704ff133ca6e7f7963661f0c6acac3da23