Che cos'è il software componente?
Il software componente, a volte chiamato componentware, si riferisce a un modulo separato o oggetto di programmazione che funziona indipendentemente dagli altri componenti di un sistema mantenendo la comunicazione con l'intero sistema. In termini più semplici, un componente viene creato per fornire un'attività o un servizio specifico. Mentre questo tipo di ingegneria del software si basa sulla programmazione orientata agli oggetti, è considerata una classificazione separata e più avanzata chiamata programmazione orientata ai servizi. I moduli dei singoli componenti consentono a un sistema di continuare a funzionare nel caso in cui un singolo programma si arresti in modo anomalo.
Il termine software componente descrive in modo appropriato il modo in cui ciascuno dei singoli moduli del programma costituisce un componente o parte dell'intero sistema. Ad esempio, considera il modo in cui un'auto è assemblata da molte parti diverse. Alcune parti sono più essenziali per la sua funzione rispetto ad altre ma, nel complesso, se un particolare sistema non critico si guasta, come la radio, il resto dell'auto continuerà a funzionare. La programmazione del software componente è uno schema di progettazione simile in cui più parti creano un intero sistema.
Questo tipo di software viene comunemente utilizzato nelle applicazioni di programmazione quando un errore completo del sistema può creare problemi di sicurezza o creare fastidi. Tali applicazioni includono software di elaborazione e pagamento degli ordini, software di archiviazione e persino browser Internet. Le singole attività eseguite da software di questo tipo sono delegate a singoli componenti software. Questi pezzi assicurano il costante funzionamento dell'intero sistema proteggendo al contempo la sicurezza dei sistemi, poiché ogni componente è isolato dagli altri.
Nel caso dei browser Internet, i singoli componenti possono funzionare per offrire sessioni multiple di navigazione dei processi. Per l'utente medio, ciò significa che quando sono aperte cinque schede e uno script java non autorizzato provoca il blocco del sito visualizzato in una scheda, viene compromessa solo quella scheda. Chiudendo la scheda, è possibile salvare il resto della sessione. Questo sistema a più processi aumenta anche la sicurezza nel moderno browser Internet perché mantiene ogni processo nel suo spazio separato.
Molti moderni sistemi operativi (OS) utilizzano software componente almeno in una certa misura. Un esempio è il sistema operativo Windows. In questo sistema, gli utenti possono abilitare o disabilitare i componenti del sistema operativo per personalizzarli in base alle proprie esigenze. Inoltre, se un programma si blocca, sono incluse delle protezioni per interrompere in modo sicuro il processo associato e terminare il programma senza riavviare il computer. Questa capacità ha reso il software componente una parte importante dell'ingegneria del software.