PRINS – kruna dugogodišnje saradnje

Projekat reinženjeringa Pravno-informacionog sistema Republike Srbije doneo je nova iskustva i pružio priliku za sticanje novih znanja svima koji su u njemu učestvovali. Kao najbolja potvrda odlične saradnje nastao je informacioni sistem koji sada ponosno u svojim portfolijima ističu kompanije JP Službeni glasnik i COMING – novi PRINS, od jeseni u produkcionoj upotrebi.


Još od svog osnivanja, Javno preduzeće Službeni glasnik predstavlja instituciju od velikog značaja u Republici Srbiji. Pored izdavaštva, jedna od strateški važnih oblasti poslovanja Glasnika je uređivanje, objava i štampanje Službenih glasila Republike Srbije. Pravno informacioni sistem Republike Srbije – PRINS je platforma na kojoj se objavljuju i čuvaju digitalna izdanja Službenih glasila. Pored zvaničnih verzija objavljenih glasila, na portalu PRINS korisnicima je ponuđena i cela lepeza sadržaja iz domena prava i važećih propisa u Republici Srbiji.

Proces pripreme, uređivanja, štampe i objave Službenih glasila, zajedno sa infrastrukturom koja podržava ceo proces, uključujući i načine i mesta čuvanja objavljenih brojeva glasila, usled svoje strateške važnosti čini predmet posebne pažnje republičkih organa i podleže strogim pravilima i kontrolama. Baš ova oblast poslovanja Službenog glasnika bila je teren na kojem će COMING i Glasnik proširiti i dodatnim poverenjem učvrstiti svoju, sada već 12 godina dugu saradnju.

Poslovna saradnja kompanije COMING i JP Službeni glasnik otpočela je na poslovima virtuelizacije infrastrukture. Sredinom 2018. godine javila se potreba da se dotadašnji proces pripreme i uređivanja sadržaja Službenih glasila unapredi, ubrza i u određenoj meri osigura od potencijalnih ljudskih grešaka. Nakon opsežne analize procesa, projektovanja i razvoja softverskog rešenja, uz veoma kvalitetnu i produktivnu saradnju projektnih timova Glasnika i COMING-a, nastalo je aplikativno rešenje Furuna, koje prožima sve aspekte procesa pripreme, organizovanja i uređivanja sadržaja Službenih glasila. Sistem je u produkcionoj upotrebi tri godine, a projekat razvoja i održavanja sistema dodatno je učvrstio poslovno poverenje i ojačao temelje za buduću saradnju.

Novi izazov stiže već na jesen 2021. godine. Projekat reinženjeringa Pravno-informacionog sistema Republike Srbije, sistema od opšteg interesa, podrazumevao je modernizaciju infrastrukture, nova tehnička i funkcionalna rešenja, ostvarivanje značajno veće skalabilnosti sistema i sistemski pristup rešavanju izazova stabilnosti i bezbednosti. Na talasu dobro poznatih i praktično dokazanih metoda, u saradnji na poljima analize i razvoja sistema za ostvarivanje procesa pripreme i objave Službenih glasila, projektni timovi COMING-a i Glasnika počinju novu saradnju, koja će, dve godine kasnije, rezultirati modernim informacionim sistemom, razvijenim korišćenjem najpopularnijih tehnologija, postavljenim na state-of-the-art infrastrukturi za domaće standarde.

Reinženjering sistema od opšteg interesa u Republici Srbiji kao takav zahteva formiranje heterogenih projektnih timova, koji uključuju stručnjake iz svih oblasti IT poslovanja obuhvaćenih projektom. Dodatno, kompleksnost postojećeg sistema, obim i značaj postojećih podataka u sistemu, kao i željena unapređenja sistema, diktirali su da COMING u projekat, pored tima za razvoj aplikativnih rešenja, uključi i timove za infrastrukturna rešenja i bezbednost.

PRINS je platforma na kojoj se objavljuju i čuvaju digitalna izdanja Službenih glasila, a korisnicima je dostupna i čitava lepeza sadržaja iz domena prava i važećih propisa u Republici Srbiji

Analiza kao generator izazova

Projekat reinženjeringa započeo je analizom procesa koji se odvijaju u poslovim održavanja postojećeg sistema PRINS. Procesi održavanja uključivali su upotrebu devet zasebnih, specijalno razvijenih aplikativnih rešenja, koja su delila resurse za perzistiranje podataka. Ove aplikacije razvijane su nezavisno, korišćenjem različitih tehnologija, svaka sa svojim specifičnim domenom i skupom funkcionalnosti. Zajedno su činile jedinstven informacioni sistem za kreiranje i uređivanje sadržaja portala PRINS, sa jedinstvenom bazom podataka, koja je sadržala i podatke od opšte važnosti – arhivu Službenih glasila Republike Srbije.

Kompleksnost strukture korisničkih naloga ogledala se u različitim izvorima podataka o korisnicima, značajnim razlikama u nivoima pristupa, uz specijalne kombinacije zasebnih korisničkih privilegija unutar istih pristupnih nivoa.

Međuzavisnost zasebnih aplikacija, iako ne u funkcionalnom smislu, bila je velika i dolazila je iz činjenice da su podaci smeštani na deljenu bazu podataka, u deljene tabele. Za određeni skup podataka, nakon dužeg perioda korišćenja sistema, nije bilo do kraja poznato koja aplikacija je izvor podataka i koji delov sistema koriste te podatke. U ovakvom stanju sistem je postao neskalabilan, sa minimalnim mogućnostima za unapređenje funkcionalnih karakteristika. Iako stabilan u radu, svaka intervencija u sistemu predstavljala je rizik po stabilnost sistema i bezbednost informacija.

Projekat reinženjeringa Pravno-informacionog sistema Republike Srbije rezultirao je modernim informacionim sistemom, razvijenim korišćenjem najpopularnijih tehnologija, postavljenim na state-of-the-art infrastrukturi za domaće standarde

slika-23

slika-24

Tehnološki iskorak daje odgovor

Najbolje rešenje za prevazilaženje opisanih problema predstavljao je reinženjering sistema, tj. projektovanje novog informacionog sistema korišćenjem savremenih metodologija za projektovanje i razvoj informacionih sistema. Jedan od osnovnih projektnih zadataka bio je značajno unapređenje u polju skalabilnosti sistema. Izazovi proistekli iz realnog poslovanja preduzeća diktirali su neophodna unapređenja i funkcionalna proširenja sistema. Prilikom projektovanja sistema od takvog značaja primarni ciljevi su obezbediti stabilnost sistema i nenarušivost podataka pri svakom daljem funkcionalnom proširenju, ali i obezbediti visok nivo bezbednosti podataka uprkos javnoj izloženosti servisa, koju diktira sama namena sistema.

Dodatni izazov za projektni tim predstavljala je potreba očuvanja nezavisnosti u radu organizacionih jedinica preduzeća, u pogledu odgovornosti prilikom generisanja i ažuriranja sadržaja. Odabrana arhitektura sistema trebalo je da pruži efikasno rešenje za integraciju i orkestraciju u radu svih organizacionih jedinica kompanije koje su obuhvaćene procesom održavanja Pravno-informacionog sistema Republike Srbije. Sistem sastavljen od više nezavisnih, efikasno orkestriranih funkcionalnih celina, podrazumevajući i visok nivo izolacije podataka, postaje sistem koji se može jednostavno nadograđivati, bez negativnih efekata po stabilnost, performanse ili bezbednost podataka.

Proces analize postojećih procesa i aplikativnih rešenja rezultirao je i pojavom novih ideja, usmerenih ka optimizaciji procesa uređivanja, modernizaciji rada i poboljšanju korisničkog iskustva urednika portala PRINS. Definisana funkcionalna unapređenja obuhvaćena su projektom i postala su deo projektnog zadatka.

Povrh svega, jedan od najvećih izazova reinženjeringa PRINS-a predstavljala je migracija velikog broja postojećih podataka, od kojih izvestan deo predstavlja podatke od državnog značaja, u novi sistem, sa planiranom značajno većom disperzijom infrastrukturnih tačaka za perzistiranje podataka. Razdvajanje podataka u zasebne baze imalo je za cilj da obezbedi nezavisnost u radu funkcionalnih celina i veće mogućnosti optimizacije performansi sistema.

Sistem sastavljen od više nezavisnih, efikasno orkestriranih funkcionalnih celina, podrazumevajući i visok nivo izolacije podataka, postaje sistem koji se može jednostavno nadograđivati, bez negativnih efekata po stabilnost, performanse ili bezbednost podataka

Arhitektura i tehnologija

Odabir arhitekture novog sistema trebalo je da pruži čvrstu podlogu za rešavanje svih navedenih izazova i omogući razvoj modernog i fleksibilnog informacionog sistema, sa velikim rokom upotrebe. Sa ovakvim zadatkom ispred sebe, projektni tim je kao najbolji odgovor odabrao mikroservisnu arhitekturu. Funkcionalne celine, detaljno opisane u fazi analize, još jednom su logički reorganizovane i prevedene u funkcionalnosti zasebnih mikroservisa.

Složena struktura korisničkih naloga prevedena je u novi sistem implementacijom jedinstvene orkestracije korisničkih privilegija, uz integraciju sa postojećim sistemima za autentifikaciju korisnika.

Devet različitih aplikativnih rešenja korišćenih u procesu održavanja portala PRINS nosilo je sa sobom i velike razlike u korisničkim interfejsima i logikama rada. Reinženjering je u sistem doneo uniforman korisnički interfejs, u skladu sa privilegijama pojedinačnih korisnika. Funkcionalne celine su interfejsno objedinjene, a korisnički putevi u različitim funkcionalnim celinama uniformisani su, tako da je korisnicima u značajnoj meri pojednostavljen rad na raznorodnim poslovima u okviru procesa održavanja PRINS portala.

Mikroservisi, nosioci odvojenih funkcionalnih celina, komuniciraju asinhrono kroz REST API-je, uz Rabbit-MQ kao backbone. Ovakav vid komunikacije mikroservisa direktno obezbeđuje ispunjenje jednog od važnijih projektnih zadataka – nezavisnost organizacionihjedinica u radu na održavanju portala.

Nova arhitektura sistema reformisala je i sisteme za perzistiranje informacija uvođenjem aktuelnijih rešenja, pa će novi PRINS, pored visokog nivoa izolacije podataka, postignutog korišćenjem većeg broja relacionih baza podataka, odlikovati i moderan alat za pretragu i vizuelizaciju podataka – Elasticsearch i Kibana. Osim kod efikasnije pretrage, Elasticsearch se koristi i za centralizovano sistemsko logovanje, što čini proces održavanja sistema mnogo efikasnijim.

Imajući u vidu mikroservisnu arhitekturu PRINS-a, kao platforma za njegovo izvršavanje izabran je Red Hat OpenShift, vodeće enterprise rešenje za razvoj i pokretanje kontejnerizovanih aplikacija

Infrastruktura

Imajući u vidu mikroservisnu arhitekturu PRINS-a, kao platforma za njegovo izvršavanje izabran je Red Hat OpenShift, koji predstavlja vodeće enterprise rešenje za razvoj i pokretanje kontejnerizovanih aplikacija. OpenShift je baziran na Kubernetesu, koji dodatno nadograđuje nizom funkcija, poput automatizovane instalacije i upravljanja životnim vekom klastera, grafičkog interfejsa za administraciju, kao i uključenim mrežnim, monitoring i logging servisima. OpenShift ne donosi benefite samo Ops timovima – developeri dobijaju namenske menadžment alate, mogućnost rapidnog deploymenta aplikacija direktno iz izvornog koda i integracije sa razvojnim okruženjima i CI/CD alatima.

Sastavni deo OpenShift licence je i Red Hat Single Sign-On (RH-SSO) rešenje, koje ima ulogu provajdera identiteta između korisničkih aplikacija i enterprise korisničkog direktorijuma ili 3rd-party SSO provajdera. RH-SSO je namenjen aplikacijama koje se izvršavaju unutar ili izvan OpenShift klastera, koje pomoću njega mogu implementirati web single sign-on funkcionalnosti na bazi popularnih standarda poput SAML 2.0, OpenID Connect i OAuth 2.0. U okviru PRINS projekta, RH-SSO je integrisan sa OpenLDAP rešenjem, koje se takođe izvršava kao kontejnerizovana aplikacija na OpenShift klasteru i ima ulogu baze PRINS korisnika.

Na OpenShiftu se izvršava i više pratećih servisa, neophodnih za rad PRINS-a, poput Elastic steka za pretragu i vizuelizaciju podataka i RabbitMQ platforme za razmenu poruka. Oba navedena servisa implementirana su korišćenjem Operator funkcionalnosti, koja predstavlja moćan koncept pakovanja i isporuke aplikacija ugrađen u temelje OpenShift platforme. Operatori omogućavaju automatizaciju kreiranja, konfiguracije i ažuriranja aplikacija, pretvarajući ih u Kubernetes objekte prvog reda, kojima se može upravljati na sličan način kao i kontejnerima. Deo OpenShift platforme je i OperatorHub – registar sertifikovanih operatora kreiranih od strane Red Hata, nakon procesa revizije koda, i to na au- tomatizovan način, kroz CI/CD alate. Za ove potrebe u PRINS okruženju se koristi kombinacija GitLaba kao CI alata opšte namene i OpenShift GitOps rešenja, koje je zaduženo za automatizovani ili „na zahtev“ deployment aplikacija i njihovih novih verzija na OpenShift klasteru. GitOps principi se prirodno uklapaju u deklarativnu prirodu Kubernetesa i donose niz benefita u operativne procedure, među kojima su i njihova standardizacija, jasno definisan proces revizije i odobravanja promena, kao i poboljšana vidljivost i audit mogućnosti.

Za zaštitu podataka PRINS komponenata i drugih servisa na OpenShift klasteru implementiran je Veeam Kasten K10, bekap rešenje nove generacije koje razume mikroservisnu arhitekturu aplikacija i Kubernetesa. Kasten K10 specifične objekte, kao što su bekap polise i destinacije za smeštanje podataka, što omogućava konfiguraciju rešenja na isti način na koji se upravlja aplikacijama na klasteru – pomoću YAML koda i GitOps alata.

Pored visokog nivoa izolacije podataka, postignutog korišćenjem većeg broja relacionih baza podataka, novi PRINS će odlikovati i moderan alat za pretragu i vizuelizaciju podataka

Novi PRINS

Dve godine intenzivne saradnje projektnih timova Službenog glasnika i COMING-a rezultirale su sistemom koji počiva na savremenoj arhitekturi, koji je razvijen korišćenjem modernih tehnologija i postavljen na najaktuelniju infrastrukturu. Projekat reinženjeringa Pravno-informacionog sistema Republike Srbije doneo je nova iskustva i pružio priliku za sticanje novih znanja svima koji su u njemu učestvovali. Kao najbolja potvrda odlične saradnje i velikog poslovnog poverenja nastao je informacioni sistem koji sada ponosno u svojim portfolijima ističu kompanije Službeni glasnik i Coming – novi PRINS, od jeseni u produkcionoj upotrebi.

Dušan Petrović i Nebojša Ilić, COMING

0 %s Comments

Prosledi komentar

Vaša adresa e-pošte neće biti objavljena.

Najnoviji

Novi-NetApp-proizvodi

Novi NetApp proizvodi

Da li su vam već poznati novi NetApp sistemi C-serije, sa QLC Flash tipom ...
Veštačka-inteligencija-u-našim-rukama

Veštačka inteligencija u

Broj oblasti u kojima se eksperimentiše sa različitim dostignućima veštačke ...
Azure-Active-Directory--postaje-Entra-ID

Azure Active Directory

Azure Active Directory je sada Entra ID. I premda većina korisnika ovu promenu ...
Transformacija-tehničkog-duga--pomoću-DevOps-tehnologija

Transformacija tehničkog duga

Najveću opasnost za organizacije ne predstavlja samo postojanje tehničkog duga, ...