PMFA
← Povratak na indeks
001

Zašto je fleksibilnost oblik korupcije u poslovnom softveru

Fleksibilnost zamenjuje zakon pregovorom. Pregovor stvara prekršaje. Prekršaji uništavaju poverenje.
Verzija 1.0.0 — Ratifikovano

Poslovni softver nije propao zato što je bio previše krut.
Propao je zato što je dozvolio fleksibilnost tamo gde je zakon bio neophodan.

Fleksibilnost je uvedena kao vrlina.
U praksi je zamenila autoritet pregovorom.

I. Istorijski neuspeh

Rani poslovni sistemi su kodirali pravila u kod.
Ta pravila su bila teška za promenu, ali su bila sprovodiva.

Kako su sistemi rasli, pravila su premeštana u konfiguraciju.
Konfiguracija je obećavala prilagodljivost bez ponovne izgradnje.

Ovo je bila prva greška.

Konfiguracija je uklonila odgovornost.
Kada je ponašanje podesivo, odgovornost postaje nejasna.
Niko ne poseduje ishod—postoje samo podešavanja.

II. Strukturni uzrok

Zakon je apsolutan.
Konfiguracija je predmet pregovora.

Poslovni sistemi su uveli konfiguraciju tamo gde mora postojati zakon:

Čim je konfiguracija ušla u izvršni put,
prekršaji su postali mogući.

Ne vidljivi prekršaji.
Tihi prekršaji.

III. Tihi prekršaji

Tihi prekršaj je gori od eksplicitne greške.

Greške padaju glasno.
Prekršaji uspevaju tiho.

Podesivo pravilo može biti zaobiđeno:

Svaki izuzetak slabi sistem.
Vremenom, izuzeci postaju normalno ponašanje.

Sistem i dalje radi.
Izveštaji se i dalje generišu.
Ali se stvarnost već razišla.

IV. Slom poverenja

Revizija ne proverava funkcionalnosti.
Revizija proverava istinu.

Kada ishodi zavise od stanja konfiguracije:

U tom trenutku sistem više nije sistem.
On postaje mašina za priče.

Poverenje se ne ruši zbog nedostatka podataka,
već zbog nemogućnosti dokazivanja.

V. Neobnovljiva šteta

Fleksibilnost na nivou izvršavanja stvara neobnovljivu štetu.

Kada je ponašanje predmet pregovora:

Sećanje ne skalira.
Sećanje se ne može revidirati.

Nikakvo refaktorisanje ne može naknadno vratiti autoritet.

VI. Neupitni zaključak

Fleksibilnost u izvršavanju nije sloboda.
Ona je korupcija.

Zakon mora postojati tamo gde se izvršava.
Konfiguracija sme postojati samo iznad zakona, nikada unutar njega.

Svaki sistem koji dozvoljava fleksibilnost na nivou izvršavanja
neminovno gubi sposobnost da dokaže stvarnost.

Taj gubitak je trajan.

Canonical text. Interpretations are invalid.
SHA-256: ed4f4817d470f139623b9c0b112efaca751117208e66a97789c13283118a5376