PMFA

Eseji

40 aksioma. Zatvoren kanon.

001

Zašto je fleksibilnost oblik korupcije u poslovnom softveru

Fleksibilnost zamenjuje zakon pregovorom. Pregovor stvara prekršaje. Prekršaji uništavaju poverenje.

002

Zašto je ERP propao: bez zakona u jezgru

ERP sistemi nisu propali zato što im je nedostajala funkcionalnost. Propali su zato što im je nedostajao zakon.

003

Determinizam je jedini oblik poverenja

Poverenje nastaje kroz determinizam, ne kroz transparentnost. Sistem je pouzdan samo ako isti ulaz uvek proizvodi isti ishod.

004

Konfiguracija bez autoriteta je prevara

Kada konfiguracija može da nadjača zakon, sistem postaje oruđe prikrivanja, ne upravljanja.

005

Revizija bez ponavljanja je fikcija

Ako prošle odluke ne mogu da se ponove pod revizijom, izveštaji revizije su naracije, ne dokazi.

006

Multi-Tenancy bez RLS je teatar

Deljene baze podataka sa tenant ID-jevima nisu izolacija. Jedan propust ih deli od katastrofe.

007

Konfiguracija nije zakon

Konfiguracija opisuje preferencu. Zakon definiše obavezu. Sistem koji tretira konfiguraciju kao izvršni autoritet nema zakon.

008

Stanje je nuspojava

Stanje nije istina. Stanje je ostatak. Istina je redosled odluka. Stanje je ono što ostaje.

009

Događaji su jedini izvor istine

Istina nije ono što sada postoji. Istina je ono što se desilo. Ništa što ne čuva šta se desilo ne može tvrditi istinu.

010

Determinizam je pravni uslov

Odluka koja ne može biti reprodukovana ne može biti odbranjena. Zakon ne toleriše verovatnoću. Zakon zahteva izvesnost.

011

Namera je jedini validan ulaz

Sistem koji prihvata sirove komande prihvata haos. Namera deklariše šta treba da se desi. Komande deklarišu kako.

012

Komande nisu odluke

Komanda izražava nameru. Odluka je odgovor sistema. Samo odluke stvaraju istoriju.

013

Projekcije su ugovori, ne skladište

Projekcija nije skladište podataka. To je ugovorna transformacija događaja u stanje koje se može upitati.

014

Šeme su pravne granice

Šema nije dokumentacija. To je pravna granica. Što šema zabranjuje ne može se desiti.

015

Vreme je prvorazredna dimenzija

Vreme nije metapodatak. To je strukturna dimenzija. Svaka odluka mora biti vremenski locirana.

016

Bezbednost je osobina arhitekture

Bezbednost nije funkcionalnost koja se dodaje kasnije. To je strukturna osobina dizajna sistema.

017

Validacija je sprovođenje zakona

Validacija nije provera grešaka. To je sprovođenje zakona. Nevažeći ulazi nikada ne smeju stići do sistema.

018

Podrazumevane vrednosti su odluke

Podrazumevana vrednost nije pogodnost. To je politička odluka dizajnera sistema.

019

Ćutanje je odluka

Kada sistem ne kaže ništa, odlučio je da ne govori. Tišina nije odsustvo odluke.

020

Neuspeh je prvorazredni ishod

Neuspeh nije izuzetak. To je legitiman ishod koji mora biti projektovan i zabeležen.

021

Ponavljanja su političke odluke

Ponavljanje nije tehničko oporavak. To je politička odluka o tome šta greške znače i kako reagovati.

022

Timeout-i su pravne granice

Timeout nije optimizacija performansi. To je pravna granica koja definiše kada strpljenje završava.

023

Konkurentnost je pravni problem

Konkurentnost nije karakteristika performansi. To je pravni problem o tome ko može delovati kada i kojim redom.

024

Idempotentnost je ugovor

Idempotentnost nije tehnička osobina. To je ugovorno obećanje da ponavljanje ne menja ništa.

025

Backpressure je upravljanje

Backpressure nije kontrola protoka. To je upravljanje o tome šta se dešava kada se kapacitet prekorači.

026

Redovi su sudovi

Red nije bafer. To je sud gde posao čeka da bude procenjen i raspoređen prema zakonu.

027

Scheduler-i su zakonodavci

Scheduler nije optimizator. To je zakonodavac koji odlučuje šta se izvršava, kada i sa kojim prioritetom.

028

Keševi su sporazumi

Keš nije skladište. To je sporazum o tome šta može biti zapamćeno i koliko dugo.

029

Konzistentnost je obećanje

Konzistentnost nije osobina. To je obećanje o tome šta će posmatrači videti i kada.

030

Dostupnost je dozvola

Dostupnost nije uptime. To je dozvola za delovanje. Bez dostupnosti nema autoriteta.

031

Greška je signal

Greška nije zabuna. To je signal koji mora biti prenesen, zabeležen i obrađen prema politici.

032

Oporavak je politika

Oporavak nije automatska restauracija. To je politička odluka o tome šta obnoviti i kako.

033

Rollback nije Undo

Rollback ne briše istoriju. On stvara novu istoriju koja kompenzuje ono što se desilo ranije.

034

Kompenzacija je zakon

Kompenzacija nije rukovanje greškama. To je sprovođenje zakona kada akcije moraju biti pravno poništene.

035

Posmatranje je odgovornost

Posmatranje nije praćenje. To je odgovornost. Što ne može biti posmatrano ne može biti upravljano.

036

Metrike su podsticaji

Metrike nisu merenja. To su podsticaji koji oblikuju ponašanje. Šta merite time upravljate.

037

SLA-ovi su javna obećanja

SLA nije cilj. To je javno obećanje koje stvara pravnu obavezu i odgovornost.

038

Ugovori su izvršni

Ugovori nisu dokumenti. To su izvršna pravila koja sistem sprovodi u runtime-u.

039

Politika je proizvod

Proizvod nije softver. Proizvod je politika koja upravlja time šta softver radi.

040

Sistem je zakon

Ako sistem to dozvoljava, dozvoljeno je. Ako ne, nikada nije postojalo. Sistem je zakon.