Tehnička dokumentacija

Uvod

KIBJLS servis se sastoji od uvezane mreže ključnih i suportivnih infrastrukturalnih elemenata. Ključni elementi sistema neposredno implemenitraju funkcionalne karakteristike servisa. Svrha suportivnih sistema je omogućavanje drugih detalja servisa koji nisu direktno vezani za ključne funkcionalnosti već se tiču razvojnih i operativnih metodologija koje garantuju efikasnost, agilnost, upravljivost, kontrolu događaja, sigurnost itd.

U implementacij KIBJLS servisa generalno se sprovode DevOps1 principi. U ovoj metodologiji rada, pored praski koje se sprovde u agilnim metodologijama, najveća važnost se pridaje automatizaciji svih elemenata informacionog sistema u cilju što češće isporuke pojedinačnih delova sistema koji u datom vremenskom periodu evoluiraju u kompletno rešenje po meri naručioca, pri čemu se garantuje željeni nivo kvaliteta isporučenih komponenti.

Metodologije i prakse

Sledeće metodologije i prakse se primenjuju u implementaciji servisa na lokaciji naručioca:

  • Automatski build
    Dešava se svaku promenu izvornog koda i garantuje da je servis uvek u izvršnom stanju.
  • Automatski testovi
    Pružaju garanciju kvaliteta i performansi isporučenih funkcionalnosti na željenom nivou.
  • Automatska okruženja
    Okruženja se kreiraju automatski i izvršavaju aktuelno ili bilo koje istorijsko stanje servisa ili posebne grane servisa sa novim/testnim funkcionalnostima.
  • Infrastruktura kroz izvorni kod
    Većina osnovnih ili suportivnih infrastrukturalnih elemenata sistema je kodirano i verzionirano što uključuje instalacije i konfiguracije operativnih sistema, razvojnih i administrativnih okruženja, web i database servera itd.
  • Nezavisnost izvornog koda od okruženja
    Identičan izvorni kod se u svim okruženjima koji se isključivo parametrima (environment variables) prilagodjava uslovima u kojima se izvršava.
  • Nadgledanje i notifikacije
    Podrazumeva pregled stanja svih ključnih komponenti servisa u realnom vremenu što uključuje definisanje i implementaciju niza aplikativnih i sistemskih metrika tako da tim koji sprovodi sistem u produkciji uvek može imati relevantne informacije pre svih drugih aktera u sistemu.