1. GALIMA DARYTI KITAIP:
išeities kodas, prieinamumo stebėsena,
integracijų lengvumas ir atviras išeities kodas
Karolis Vyčius
Vyriausybės kanceliarija
2. 1. Kodas
Išeities kodas, konfigūracijos, automatizacijos,
dokumentacija tvarkoma užsakovo pusėje.
2. Tikrinimas ir testavimas
Išeities kodas tikrinamas ir automatiškai
testuojamas užsakovo pusėje.
3. Diegimai
Diegimai į serverį vykdomi automatiškai tik iš
užsakovo infrastruktūros.
Kodas pas
užsakovą – laisvė
priimti sprendimus Techninė specifikacija ir išeities kodas (NTIS projektas)
3. Naudos
Kai kodas pas tave, tu turi laisvę priimti
sprendimus!
Aplinkos ministerijos GitHub paskyra
1. Savarankiškumas
Mažesnė priklausomybė nuo išorės tiekėjų ar
rangovų. Galimybė lengviau atlikti būtinas
modifikacijas ar atnaujinimus
2. Išlaidų mažinimas
Mažesnė rizika prisirišti prie konkretaus
teikėjo. Galima padidinti konkurenciją per
viešuosius pirkimus.
3. Inovacijos ir
bendradarbiavimas
Otganizacijos gali dalintis kodu, žiniomis su
kitais ir taip skatinti technologijų pažangą
4. 01 Kritiniai viešai žinomi saugumo
pažeidžiamumai (CVE)
02 Slaptos informacijos saugojimas
tiesiogiai išeities kode
Saugumas ir
pasitikėjimas
Dažniausiai pastebimi tobulintini dalykai
perėmus kodą
GitHub Dependabot alerts kritinio CVE pavyzdys
5. Susitarimas su rangovais
Susitarimai su rangovais pvz., ar bus dirbama
užsakovo repozitoriume ar išeities kodo
sinchronizavimas.
Automatizacijos ir diegimai
Įrankio pasirinkimas pvz., GitHub actions,
GitLab CI/CD. CircleCI, Jenkins.
Kodo repozitoriumas
Dažniausiai renkamasi GitHub SaaS arba
GitLab Community Edition talpinamas
nuosavoje infrastruktūroje
Kaip atgauti laisvę priimti sprendimus?
Pakeitimų istorijos pavyzdys
7. 1. Išlaikyti teigiamą
lankytojo patirtį
2. Apsaugoti
organizacijos reputaciją
3. Laiku aptikti
problemas
Vieša
prieinamumo
stebėsena Patikimumo reikalavimai techninėje specifikacijoje (NTIS projektas)
9. Netolima ateitis:
Vieša komunikacija apie
kiekvieną sutrikimą
Rangovų viešai komunikuojami ir valdomi
incidentai ar sutrikimai, kurie turi įtakos
sistemos naudotojams
Viešo sutrikimo valdymo pavyzdys iš Cloudflare
10. Nedideli techniniai pakeitimai
Kartais reikalingi pakeitimai siekiant
išsamesnės prieinamumo stebėsenos
Susitarimai su rangovu
Informacijos apie planuojamus techninės
priežiūros darbus pridėjimas, incidentų
valdymas.
Išsirinkti įrankį
BetterUptime ir DigitalOcean Uptime
(turi nemokamas versijas). Atlassian's
status page.
Kaip pradėti stebėti sistemos prieinamumą?
Automatiškai užfiksuoto incidento pavyzdys (VDA BetterUptime)
11. 1. Aiški ir išsami API
dokumentacija
Padeda integruoti API į sistemas be detalaus
dokumentacijos studijavimo bei leidžia
generuoti dokumentaciją iš išeities kodo.
2. Lengvas versijavimas
Galutiniam vartotojui padeda lengvai pereiti prie
naujesnių API versijų, o kūrėjui dokumentuoti
API versijų pasikeitimus
3. Ekosistema
Įrankiai API tyrinėjimui, testavimui, kodo
generavimui. Turtinga ekosistema
supaprastina API integravimą.
OpenApi: paprastas
integracijos procesas
IVPK duomenų teikimo formatųir standartų rekomendacijos
12. Ypač paprastas API integracijos procesas
Išankstinės pacientų registracijos sistemos (IPR IS) OpenApi pavyzdys