Descrizione generale del Software¶
K-Link si compone di tre progetti distinti, un progetto di Backend e un progetto di Frontend.
- Il progetto di Frontend è stato sviluppato in Angular 9
- Il progetto di Backend è stato sviluppato con il Web Framework Django3 basato sul linguaggio python3
Frontend: L’applicativo frontend è interamente sviluppato con Angular 9 e il deploy in produzione prevede il solo rilascio della sorgente Angular. Con questa metodologia il rendering avviene lato browser lasciando al backend il solo compito di interrogare il database e non anche di renderizzare il contenuto.
Backend: il backend è sviluppato con il framwork web Django3, basato sul linguaggio Python3. Il framework utilizza nativamente un ORM che permette di collegarsi a diversi database tra i quali MySql, Postgres, Oracle. Il backend è basato sul framework django-rest-api e gestisce la comunicazione con il database interamente a webapi. Questo approccio permette di fornire servizi non solo al frontend, ma anche ad app di terze parti.
Il sistema inoltre permette una facile integrazione con tool di terze parti per l’import e la sincronizzazione dei dati grazie alle api già sviluppate e alla documentazione automatica con swagger. Il sistema prevede la possibilità di prepopolare i siti in automatico. In questo modo è possibile creare con poche azioni un nuovo fruitore del servizio)
K-Link è multilingua e al momento sono presenti le lingue: italiano, sloveno. L’aggiunta di nuove lingue non prevede ulteriori costi di sviluppo ma solo la traduzione dei testi.
E’ presente inoltre l’integrazione con Login FVG, SPID e PagoFVG. K-Link viene sottoposto periodicamente a penetration e security test sia automatici che manuali, sia da personale interno che da aziende indipendenti esterne. Questi test ne garantiscono la sicurezza e l’affidabilità. Inoltre le azioni amministrative vengono salvate e loggate come prescritto da audit.
K-Link è accessibile anche agli utenti con disabilità e segue le regole AGID in termine di accessibilità sia tecnica che di usabilità, come previsto da AGID e dalle linee guida di livello AAA del W3C.