Con architettura di un sistema si intendono sia le funzionalità che hanno delle componenti software o hardware che le relazioni che si possono instaurare tra di loro.
Una architettura client/server è caratterizzata dalla presenza di due ruoli: il server è una entità che offre un qualche tipo di servizio, il client è una entità che usa il servizio offerto.
Una architettura orientata ai servizi (SOA: Service Oriented Architecure) è un metodo di sviluppo del software che utilizza componenti indipendenti ciascuno con un compito preciso accessibile in maniera definita.
Un framework è un insieme strutturato di strumenti, librerie, regole e componenti già pronti che forniscono l’ossatura di base per sviluppare applicazioni in uno specifico linguaggio di programmazione.
Un media type conosciuto anche come "Multipurpose Internet Mail Extensions" o "tipo mime" indica la natura e il formato di un file. Nella sua forma più semplice si scrive tipo/sottotipo.
Un protocollo è un insieme di regole (sia di tipo sintattico che di tipo semantico) che determinano come due o più entità si scambiano informazioni tra loro.
La scalabilità di un sistema è la capacità che ha il sistema stesso di mantenere le prestazioni stabili anche a fronte di un aumento di carico di lavoro.
Uno stack tecnologico è l'insieme di linguaggi di programmazione, framework, database, sistemi di gestione, librerie e strumenti scelti per lo sviluppo, la pubblicazione e l’esecuzione di un’applicazione.