VISUS è stato progettato e sviluppato basandosi su alcuni principi base che ne determinano il funzionamento e che ne costituiscono l’aspetto originale.
Sono questi principi le basi per l’ottenimento dei vantaggi che VISUS offre.
-
Model-Driven: l’applicazione è generata a partire dai dati ed ha come oggetto i dati stessi; il modello relazionale definito nei dati è la struttura portante e la principale logica che determina e governa l’applicazione;
-
Assertività e meta-Informazioni: non occorre implementare funzioni e procedure ma semplicemente dichiarare (asserire) informazioni (meta-informazioni) riguardo i dati, le loro relazioni e il modo nel quale l’applicazione e l’utente interagiranno con essi;
-
Generalizzazione e Paradigmi: anziché offrire molte funzioni elementari con le quali costruire l’applicazione con la massima libertà ma con notevole sforzo, si scelgono, tra i paradigmi predefiniti, quelli più adatti che facilmente assemblati risolvono la gran parte dei casi.
-
Essenzialità e Predefinizione: non è necessario definire ogni aspetto dell’applicazione; solo gli elementi essenziali sono necessari, tutto il resto è predefinito; il ‘comportamento’ applicativo dei vari moduli è, nella gran parte dei casi, già adeguato; eventualmente, e in genere eccezionalmente, può essere modificato;
-
Ereditarietà e Derivazione: le proprietà definite ad un determinato livello applicativo sono ereditate dai livelli inferiori. Intere sezioni applicative possono essere derivate da altre già definite e variate definendone semplicemente le differenze;
-
Separazione dall’aspetto: la definizione della logica applicativa e dell’aspetto che l’applicazione avrà sono completamente separate ed autonome;
-
Separazione (disaccoppiamento) dalle tecnologie: la logica applicativa è definita in forma neutra, indipendente dai linguaggi e dalle tecnologie; l’evoluzione e il cambiamento di quest’ultimi non hanno impatto sulla modalità e la complessità di sviluppo. Le applicazioni già sviluppate possono addirittura sfruttare tali innovazioni senza subire modifiche;