Dosarul PNI Episodul 05
Arhitectura deschisă — cum s-ar fi făcut
Un stack complet, reutilizabil, publicat sub licență deschisă. Douăsprezece componente, costuri reale de licență, buget operațional realist. Propunerea noastră — pentru oricine vrea să o folosească.
Am livrat pe caiet o arhitectură alternativă. E publicată deschis, documentată componentă cu componentă, cu cifre verificabile. Oricine poate să o ia, să o îmbunătățească, să o propună. Acopră aceeași funcționalitate pe care o cere caietul analizat în Episodul 01 — dar numai pe cea care va fi folosită efectiv, fără module decorative și fără dependențe de un singur furnizor. Douăsprezece componente, dimensionate realist, construite pe tehnologii deschise cu suport comercial validat, adunate într-un stack care rulează azi în alte țări și care poate fi reprodus aici. După patru episoade de critică documentată, acest episod încheie dosarul cu o propunere constructivă — un singur lucru scris complet, sub licență deschisă, la dispoziția celor care au mandat să decidă.
Principiile arhitecturii
Cinci principii stau la baza stack-ului propus. Fiecare e o alegere de design — nu o preferință ideologică. Alegerea se verifică prin consecințele ei pe buget, pe concurență și pe durata de viață a platformei.
Transportă, nu stochează. O platformă națională de interoperabilitate e o țeavă cu contor. Rutează date între instituții și ține log-uri de audit. Datele rămân la sursă — ANAF păstrează datele fiscale, CNAS păstrează sănătatea, MAI păstrează evidența populației. Principiul ăsta dictează totul ce urmează: dimensionarea e lean, nu data warehouse; componenta centrală e un bus de mesaje, nu un motor de workflow; funcționalitățile de arhivare temporală și interogare istorică nu au loc în miez. Un caiet care cere Flashback Query, BPEL și 256 GB RAM per nod ignoră acest principiu. Arhitectura pe care o propun îl ia ca axiomă.
Standarde deschise, nu produse proprietare. LDAP v3 (RFC 4511), BPMN 2.0 (ISO 19510) — dacă e necesar orchestrare de procese, ceea ce la un ESB nu e cazul — Row Level Security PostgreSQL, temporal tables SQL:2011, OpenID Connect, SAML 2.0. Toate standarde internaționale, implementate de mai mulți producători. Cerința scrisă în caiet devine „funcționalitate conformă standardului X” — nu „produsul Y al producătorului Z”. Concurența rămâne vie. Vendor lock-in-ul dispare prin construcție.
Open source cu suport comercial validat. Nu open source în sensul DIY, ci produse open source cu contracte de suport enterprise reale. WSO2 Inc. pe middleware de integrare. EDB sau Percona pe PostgreSQL. Hyland pe Alfresco. FusionAuth Inc. pe identitate. Wazuh Inc. pe SIEM. Teleport pe PAM. Pritunl pe VPN. Zabbix SIA (Letonia, UE) pe monitorizare. La fel de robust ca proprietary, cu SLA, cu remediere 24/7, dar fără captivitate. Dacă un furnizor crește prețul nerezonabil, codul sursă rămâne al nostru și contractul se mută la alt integrator.
Reutilizare, nu Big Bang. Mai multe ministere și agenții centrale rulează azi, în producție, WSO2 — am oferit profesional suport tehnic pentru Trencadis, integrator român, fost partener regional WSO2, pe implementări în administrația publică. Stack-ul pe care îl propun extinde baza existentă. Nu o înlocuiește. Conectorii deja funcționali rămân funcționali. Echipele IT instruite rămân relevante. Licențele deja cumpărate își păstrează valoarea. Un PNI construit corect absoarbe ce există. Nu cere rescrierea de la zero.
Suveranitate digitală practică. Codul sursă e al nostru. Datele sunt pe infrastructură națională. Licențele sunt deschise. Nimic esențial nu depinde de politica de preț a unui furnizor extern. Moldova a demonstrat în 2021 că suveranitatea asta e operațională: Centrul de Guvernare Electronică a migrat MConnect de pe WSO2 pe un stack .NET propriu (YARP plus Ocelot), fără întreruperea serviciilor, fără furnizor extern, cu aceeași echipă. Asta e ce permite o arhitectură deschisă — evoluție fără captivitate.
Stack-ul, componentă cu componentă
Douăsprezece componente, grupate pe patru familii. Pentru fiecare: produsul ales, rolul funcțional, licența, suportul comercial disponibil.
Integrare și interoperabilitate. La ESB — inima platformei, componenta care rutează datele între instituții — aleg WSO2 Micro Integrator (Apache 2.0, suport WSO2 Inc.). Doisprezece ani de practică pe platforme naționale, conectori nativi pentru SOAP, REST, JMS, Kafka, JDBC, FTP, SAP. Consum 2-4 GB RAM per nod. Pe partea de API Management, WSO2 API Manager (Apache 2.0, același suport). Integrare nativă cu MI, DevPortal, rate limiting, analitică, gestiune lifecycle. Împreună acoperă scopul central al caietului — rutare, expunere controlată, audit.
Date și identitate. La baza de date, PostgreSQL cu cluster HA gestionat de Patroni. Suport comercial prin EDB sau Percona. Row Level Security din versiunea 9.5 (ianuarie 2016), temporal tables conform SQL:2011, pg_audit pentru jurnalizare condițională. Tot ce cere caietul, prin numele comerciale ale unui singur producător, există aici sub nume standard. Consum 8-16 GB RAM per nod. La identitate, FusionAuth Enterprise: SAML, OpenID Connect, federare LDAP, MFA, TOTP, multi-tenant. Pachet deb/rpm, 512 MB - 1 GB RAM, suport FusionAuth Inc.
Documente și analitică. DMS-ul e Alfresco Community (LGPL), cu opțiune Enterprise prin Hyland. Workflow via Activiti, REST API complet, OCR prin Tika și Tesseract, cod sursă complet — cerința din caiet. Pentru cei care vor lean, OpenKM rămâne alternativă validă. BI-ul e Metabase (AGPL v3), un singur JAR cu PostgreSQL ca backend. Dashboard-uri, drill-down, rapoarte programate, embedded analytics. Opțional Metabase Cloud sau Metabase Enterprise pentru suport.
Operare și securitate. La monitorizare de infrastructură, Zabbix cu suport Zabbix SIA (Letonia, UE) — 20 de ani pe piață, acoperă monitorizare VM, OS, baze de date multi-vendor agentless, LDAP forest, rețea, log files, praguri adaptive, acțiuni automate de remediere. Tot ce cere caietul, out of the box, gratuit. La PAM, Teleport Enterprise (AGPL cu sub-licență comercială) plus HashiCorp Vault pentru secrets — session recording SSH/RDP/DB, certificate auth, RBAC, secrets dinamici. La SIEM, Wazuh (GPL v2) — SIEM, XDR, FIM și integrare STIX/MISP într-un singur stack. La VPN, Pritunl Enterprise (AGPL v3) — WireGuard și OpenVPN în același produs, SSO via SAML/OIDC, MFA. La DR, Veeam Backup & Replication — comercial, neutru vendor, licență per-procesor; plus replicare PostgreSQL streaming la nivel aplicativ. La logging, stack Rust: Vector pentru colectare plus OpenObserve pentru stocare, SQL queries și dashboard-uri — 500 MB cumulat, față de 12-16 GB cât ar cere un stack ELK tradițional.
Componenta a douăsprezecea — registrul central și audit trail — e singurul lucru pe care stack-ul deschis nu îl rezolvă din raft. E logica de business specifică unei platforme naționale: cine e înscris, ce conectori are, ce politici se aplică, ce s-a trimis între cine și cine, când, cu ce rezultat. Aici dezvoltarea e proprie. În stack-ul propus, am ales Axum plus Leptos în Rust, peste PostgreSQL, cu căutare via Tantivy. Consum 50-150 MB RAM. Binar unic, systemd, deployment simplu. Codul sursă merge în repository public sub licența Magistralei — stack-ul pe care orice integrator îl poate prelua și adapta. Alternativa clasică, dacă echipa disponibilă nu are experiență Rust, rămâne Spring Boot pe JVM.
Adunate, cele douăsprezece componente consumă cumulat 25 până la 45 GB RAM, nu câteva sute. Diferența e descrisă aritmetic în Episodul 03.
Costurile reale
Cifrele cumulate pe cinci ani, comparativ:
Licențe software. Stack deschis cu suport comercial enterprise: 0,6 până la 1,6 milioane EUR pe cinci ani — pentru WSO2 MI și APIM Enterprise, FusionAuth Enterprise, EDB sau Percona pe Postgres, Teleport Enterprise, Veeam, Pritunl, Wazuh support. Stack proprietary echivalent, cu baza de date Enterprise, RAC, Label Security, Advanced Security, modulele SOA, identity management proprietar, portal și analytics proprietare, plus licențele per-core multiplicate cu hardware-ul supradimensionat: 7,3 până la 11,8 milioane EUR. Raport între șapte și zece ori mai mic pe licențe.
Hardware. Stack deschis right-sized, în clustere HA pentru toate componentele: 300.000 până la 500.000 EUR în hardware standard. Stack proprietary supradimensionat, cu servere enterprise de 256 GB RAM per nod, procesoare multi-socket, replicare geografică DR: 1,5 până la 2,5 milioane EUR. Raport de cinci ori, doar pe fier.
Echipa de operare. Stack deschis: 3-4 seniori care înțeleg tot stack-ul — experiența Moldova și Ucraina confirmă că se poate. Stack proprietary: 5-8 specialiști certificați pe tehnologii specifice, cu salarii premium pentru fiecare certificare. Diferența pe cinci ani, doar pe salarii și training: câteva sute de mii până la un milion de euro.
Total cost of ownership, cinci ani. Stack deschis: 5 până la 8 milioane EUR cumulat. Stack proprietary: 15 până la 25 milioane EUR. Observația fundamentală e simplă — diferența de zece până la cincisprezece milioane de euro nu e optimizare. E raportul între a cumpăra lean și a cumpăra supradimensionat. Între a livra funcționalitate și a livra catalog. Banii ăia pot fi orientați către ce contează cu adevărat: onboardingul real al celor trei mii de instituții, instruirea operatorilor, mentenanța evolutivă, integrarea serviciilor verticale care vor rula deasupra platformei.
Pentru detalii pe fiecare categorie și sursele cifrelor, Episodul 03 și Episodul 04 conțin aritmetica completă.
Nu e teorie
Toate cele patru precedente sunt operaționale, azi, cu sume și arhitecturi publice.
Moldova, 2014 → 2021. Am livrat MConnect pe WSO2. Platforma a rulat circa un milion de mesaje pe zi pe 8 GB RAM, pe două noduri ESB în cluster, fără optimizări speciale, cu timp de răspuns sub secundă. Costul implementării inițiale, auditat de Curtea de Conturi a Republicii Moldova: aproximativ 1 milion EUR. Costurile de operare cumulate pe trei ani (2018-2020): circa 200.000 EUR. În 2021, Centrul de Guvernare Electronică a migrat platforma de pe WSO2 pe un stack .NET dezvoltat intern (YARP plus Ocelot) — fără întreruperea serviciilor, fără furnizor extern, cu aceeași echipă tehnică. MConnect conectează azi peste 27 de autorități centrale. Asta e ce permite o arhitectură deschisă: evoluție fără captivitate.
Ucraina, 2018-prezent. Trembita, derivată din X-Road estonian (open source, licență MIT), a fost construită cu aproximativ 1,5 milioane EUR pentru componenta de interoperabilitate, extinsă ulterior prin programul european EU4DigitalUA până la cumulat 10 milioane EUR. Servește 42 de milioane de locuitori. În 2022, sub bombardament, platforma a continuat să mențină în viață servicii publice operate din adăposturi. Open source cu suport comercial, reutilizat gratuit de la o țară parteneră, a fost alegerea care a permis asta.
Estonia, 2001-prezent. X-Road procesează 900 de milioane de tranzacții pe an, conectează peste 1.000 de organizații publice și private, e publicat sub MIT și reutilizat gratuit de Finlanda, Islanda, Japonia, Ucraina, Madagascar. Licența pentru nucleu: zero. Model de succes documentat instituțional — e-Estonia, NIIS (Nordic Institute for Interoperability Solutions), Comisia Europeană.
România, azi. Mai multe ministere și agenții centrale rulează deja WSO2 în producție, deservite de integratori locali. Am oferit profesional suport tehnic pentru Trencadis, partener regional WSO2, pe implementări în administrația publică românească. Baza există deja — e operațională, e subscrisă, e instruită. PNI construit corect nu ar însemna un început. Ar însemna o agregare. Un caiet care ignoră baza asta nu construiește peste ce avem. Îl înlocuiește, cu costul transferat în factură.
Surse: Curtea de Conturi RM · Banca Mondială (proiect P121231) · EEAS · e-Estonia · NIIS · experiență directă MConnect 2014-2020 și Trencadis 2018-prezent.
Ce rămâne acum
Arhitectura e publicată. Repository-ul Magistralei conține specificațiile complete pe fiecare dintre cele douăsprezece componente, cu cereri de clarificare pentru fiecare cerință problematică din caiet, cu estimările de cost și cu cele patru episoade anterioare ca bază documentară. Orice ofertant o poate prelua, adapta, propune. Orice jurnalist poate cere autorității contractante un răspuns punctual pe oricare întrebare ridicată aici. Orice cetățean poate trimite linkul dosarului unei persoane care poate face ceva — funcționar, politician, jurnalist, contestator.
Magistrala nu depune oferte. Nu contestă la CNSC. Nu acționează în justiție. Nu face lobby. Face un singur lucru — documentează public. Restul e al celor care au mandat sau pasiune.
Patru episoade au arătat ce e în caiet și de ce e problematic. Episodul 01 a așezat cifrele pe masă. Episodul 02 a citit caietul linie cu linie. Episodul 03 a făcut aritmetica. Episodul 04 a arătat riscul european real. Episodul de față a propus alternativa.
Restul depinde de cei care citesc. 33 de milioane de euro se atribuie curând. Dacă sunt bine cheltuiți e, până la urmă, decizia tuturor celor care aleg să se uite.