Software di sistema

Il termine software è utilizzato per indicare la parte immateriale del computer, a differenza di quella fisica definita hardware. Per software si intendono i programmi, ovvero gli insiemi di istruzioni che il computer esegue. Il software è diviso in due categorie: software di sistema e software applicativo.

Il software di sistema garantisce le funzioni base che permettono l’utilizzo del computer, mentre il software applicativo serve per risolvere specifici problemi.

Il sistema operativo è il software più importante presente sul computer. Senza l’installazione di un sistema operativo, nessun computer è in grado di funzionare. Esso gestisce tutti i componenti del computer e permette all’utente di dialogare con la macchina.

Il sistema operativo coordina le funzioni generali del computer. Fanno parte del sistema operativo:

  • il supervisore, che permette il funzionamento di tutto il sistema, carica i programmi in memoria e gestisce le unità periferiche;

  • i programmi che correggono gli errori;

  • i programmi che gestiscono le librerie di archivi elettronici;

  • i programmi che definiscono la configurazione hardware del sistema.

La capacità di un sistema operativo di gestire più processi (vale a dire programmi in esecuzione) contemporaneamente è detta multiprogrammazione o, nel caso di sistemi monoutente, multitask.

I sistemi operativi più noti sono:

  • MS DOS (Microsoft Disk Operating System), largamente diffuso fino alla nascita di Windows, che ora ha preso il suo posto. Non è dotato di una interfaccia grafica e quindi non è di facile utilizzo.

  • Windows, senza dubbio il sistema operativo più diffuso.

  • Mac OS della Apple, per i computer Macintosh e PowerPC.

  • Unix, sistema pensato per gli utenti più esperti e molto utilizzato sulle workstation.

  • Linux, una versione di Unix per PC. È un sistema operativo che rientra nella categoria Open Software, ossia software di dominio pubblico.

Software applicativo

E' possibile individuare due tipi di software applicativi:

  • i software di tipo general purpose, come i software per l'automazione d'ufficio, la progettazione, il publishing e la multimedialità;

  • i software che svolgono funzioni specifiche, come la gestione di magazzini, paghe e stipendi, i conti correnti bancari, la contabilità, la fatturazione, l'anagrafe comunale, ecc.

Sono software applicativi anche i programmi per creare testi e presentazioni, i fogli elettronici, i database, i programmi di grafica e contabilità, ecc.

Gli elaboratori di testi sono programmi di videoscrittura e rappresentano il software applicativo maggiormente diffuso. Essi offrono funzionalità come salvare un testo su file, conservarlo, correggerlo, modificarlo, copiarlo, stamparlo. Il più noto programma di elaborazione di testi è Microsoft Word.

Il foglio elettronico permette di gestire ed elaborare dati numerici, creare tabelle, correlarle tra loro ed effettuare importanti analisi e statistiche. È possibile, inoltre, rappresentare i dati sotto forma di grafici.

I database sono programmi in grado di gestire archivi di tipologia e grandezza variabile, ordinando le informazioni in modo razionale e permettendo un facile recupero dei dati.

Un ruolo significativo è svolto dai programmi multimediali, che si caratterizzano per l’uso contemporaneo di dati di tipo differente: testi, immagini, animazioni, filmati e suoni. Sono impiegati nelle presentazioni, nell’insegnamento e nell’editoria elettronica.

GUI

L’interfaccia grafica, detta GUI (Graphic User Interface), consente di interagire intuitivamente con il computer. Utilizza rappresentazioni grafiche, come finestre e icone, per rappresentare comandi, file e applicazioni, rendendo più facile e immediato l’uso dei programmi. Tutte le operazioni come impartire comandi, scegliere opzioni, ecc. vengono svolte tramite il mouse.

Sviluppo di software

Il processo di sviluppo di un software è composto da quattro fasi:

  • Analisi: è la prima fase del processo di sviluppo; ha lo scopo di identificare gli utenti del software per mettere in luce le loro esigenze, richieste ed eventuali problematiche. La figura professionale che si occupa di questa fase è l’analista;

  • Programmazione: è la fase in cui il programma viene scritto cercando di fare in modo che le regole, i comandi e i vocaboli siano il più vicino possibile al linguaggio dell’utente e al suo modo di esprimersi. Il programma cosi realizzato è definito programma sorgente. La figura professionale che si occupa di questa fase è il programmatore;

  • Traduzione: è la fase in cui il programma viene convertito nel linguaggio dell’elaboratore attraverso il compilatore, che traduce l’intero programma e lo rende disponibile per una successiva esecuzione e l’interprete, che traduce ed esegue passo passo le istruzioni;

  • Test: è la fase di verifica in cui vengono svolti i test per controllare se il software è funzionale allo scopo e se soddisfa tutte le caratteristiche stabilite.