# Decision support system

Un Decision Support System (DSS) è un sistema software di supporto alle decisioni, che permette di aumentare l'efficacia dell'analisi in quanto fornisce supporto a tutti coloro che devono prendere decisioni strategiche di fronte a problemi che non possono essere risolti con i modelli della ricerca operativa.
Gli elementi di base che identificano questo Sistema Informativo Aziendale si identificano dal suo nome, "Decision" sta ad indicare che viene posta l'attenzione sui processi aziendali decisionali, "Support" indica che è un insieme di tecnologie informatiche di supporto al decisore e infine "System" fa intendere che questi sono strumenti atti a fornire interazione tra utenti e macchine. La funzione principale di un DSS è quella di estrarre in poco tempo e in modo versatile le informazioni utili ai processi decisionali, provenienti da una rilevante quantità di dati. Bisogna però distinguere, in questa grande quantità di dati, quali siano i dati generati dai processi di gestione aziendale e quali siano invece quelli utili al decisore per i processi di decisioni aziendale.
Il DSS si appoggia su dati in un database o una base di conoscenza, che aiutano l'utilizzatore a decidere in maniera ottimale o sub-ottimale; esso non è solo un'applicazione informatica, perché contiene anche strumenti di Business Intelligence e di tecnologie dei Sistemi Esperti, quali modelli di supporto decisionale.

## Come nasce

Nasce dall'enorme accumulo di dati dell'ultimo ventennio e dalla richiesta di utilizzo di tali dati per scopi al di fuori della normale elaborazione giornaliera.

## Definizioni di DSS

Dagli anni '70 fino ad oggi si sono susseguite diverse definizioni del concetto di DSS. Nei primi anni '70 un DSS era definito come un “sistema informatico a supporto del processo decisionale”. Alla fine degli anni '70 e agli inizi degli anni '80 un DSS era definito come un sistema che utilizzava tecnologie disponibili in quegli anni per migliorare le attività manageriali. Dalla fine degli anni '80 ad oggi dal concetto di DSS emergono anche le caratteristiche “intelligenti” del sistema oltre quelle di software user-friendly.
In definitiva, gli aspetti essenziali di un DSS si possono racchiudere in:
* facilità d'uso alla portata di tutti gli utenti;
* ambiente interattivo;
* possibilità per il sistema di fornire supporto al processo decisionale;
* efficacia nell'utilizzo dei modelli e nell'analisi dei dati.

## Componenti

Solitamente un DSS è formato dai seguenti componenti principali.

### Base dati

La base dati raccoglie informazioni e dati che interessano l'utente. Questi dati sono indipendenti rispetto ai dati gestionali e sono spesso integrati con informazioni esterne. Da quanto detto si deduce che la struttura del DSS dipende sia dal problema che si deve affrontare sia dall'utente che lo utilizza.

### Base di modelli

Oltre alla base di dati un'altra risorsa dei DSS è la base dei modelli, i quali sono una risorsa importantissima di informazione in quanto analizzano dati in riferimento ad un determinato problema. Una base di modelli contiene le procedure necessarie a risolvere i problemi dell'utente, la sua funzione quindi è quella di organizzare la gestione di tutti i modelli per consolidare il processo di elaborazione dei dati, al fine di razionalizzare il processo decisionale interno.

### Sistema software

Il sistema software si divide in tre componenti:
* DBMS (Database Management System), è un software che permette di definire schematicamente l'organizzazione dei dati, memorizzarli, modificarli, gestirli permettendo una semplice estrazione della base di dati.
* MBMS (Model Based Management System), facilita la memorizzazione, la modifica e l'uso dei modelli. Il ruolo di un MBMS è simile a quello di un DBMS differenziato solo nella gestione delle procedure, ma non dei dati.
* DGMS (Dialogue Generation and Management System), è il software che disegna l'interfaccia utente, quindi esso ha il compito di rendere più accessibile l'operazione che l'utente esegue sul DSS. Questa parte del sistema software è di fondamentale importanza per il DSS poiché l'utente è particolarmente interessato alla capacità di comunicazione del sistema.

### Data Mining

Data mining è un'operazione che individua ed estrae le informazioni, come relazioni, associazioni tra i dati presenti nel database precedentemente sconosciute all'utente. Le principali tecniche che utilizzano il data mining sono le reti neurali, gli algoritmi di clustering e gli algoritmi genetici.

### Query

Le Query interrogano il data base usando istruzioni specifiche del prodotto che si sta usando, tecnica molto specialistica, essa non ha un'importanza decisionale ma velocizza l'elaborazione di informazioni, essa si limita a fornire elementi a conferma o a smentita delle ipotesi formulate dall'utente.

### OLAP

OLAP acronimo di On Line Analytical Processing è una tecnica che analizza in maniera approfondita una grande quantità di dati, si limita a fornire elementi a conferma o a smentita delle ipotesi formulate dai decisori (decisionmaker).

### Knowledge

Knowledge o anche knowledge management serve:
* Ad organizzare i dati e le informazioni in modo tale da fornire conoscenza, esperienza, apprendimento continuo.
* Più database in un unico data warehouse.
* Aiuta a conoscere bene l'organizzazione dei dati e il tipo di ricerca.

## Applicazioni

L'utilizzo dei DSS non è circoscritto all'ambito aziendale, ma è utilizzato in ogni ambito in cui esiste la necessità di ottenere, dall'enorme quantità di dati presenti nel database o disponibili su Internet, informazioni e correlazioni significative e conoscenze utili alla strategia decisionale.
Esempi di applicazioni possono essere:
* commercio: analisi di vendite, reclami, spedizioni, inventari, clienti, rimanenze;
* manifattura: analisi di costi di produzione, fornitori, ordini;
* sanità: analisi di ricoveri, dimissioni, contabilità;
** telemedicina: aiutare il medico nell'analisi e decisioni dei dati telemonitorati;
* servizi finanziari: analisi dei rischi, rilevamento frodi, utilizzo carte di credito;
* telecomunicazioni: analisi del flusso delle chiamate, profilo dei clienti, assistenza clienti, promozioni;
* trasporti: gestione parco mezzi, gestione carico e distribuzione.
Una declinazione dei DSS in ambito tecnico-ingegneristico è chiamata Design Support System, si tratta di sistemi di supporto alle decisioni riguardanti la progettazione.

## Obiettivi

Come detto, l'obiettivo di un DSS è quello di collezionare, trasformare e diffondere informazioni in modo "intelligente", per aiutare l'utilizzatore a prendere decisioni, senza però sostituirsi ad esso, infatti la decisione si ottiene combinando le valutazioni umane con le informazioni elaborate dal sistema.
Nel dettaglio, gli obiettivi di un DSS possono essere riassunti nei seguenti:
* fornire all'utente, attraverso procedure interattive, tutte le informazioni necessarie per la comprensione del problema;
* possibilità di ispezionare i dati da diversi punti di vista;
* possibilità di valutare le conseguenze delle scelte compiute;
* adattarsi al trattamento di problemi per i quali non è possibile fornire una soluzione algoritmica.
Un DSS aumenta soprattutto l'efficacia delle decisioni cognitive e questo è un fatto rivoluzionario, perché l'obiettivo dell'informatica negli ultimi 30 anni è stato l'aumento dell'efficienza e un intervento "intelligente" nella risoluzione di problemi.

## Realizzazione
### Fasi realizzative

La realizzazione di un DSS si sviluppa in quattro fasi principali:
* intelligence phase è la fase in cui si raccolgono dati ed informazioni dall'interno e dall'esterno per l'identificazione del problema reale da affrontare;
* design phase è la fase in cui si costruisce il modello e si generano le soluzioni possibili;
* choice phase in questa fase si effettua la valutazione e quindi la scelta delle soluzioni ottimali infine si effettua il testing;
* implementation fase in cui si realizza il DSS implementando la soluzione scelta.
Infine, eventualmente il feedback, per la valutazione delle risposte alle fasi precedenti al fine di poter modificare la decisione.

### Problemi realizzativi

Tra i problemi da affrontare per realizzare un DSS possiamo trovare la necessità di:
* gestire grandi quantità di dati;
* accedere a diverse fonti di dati su piattaforme diverse;
* garantire l'accesso a più utenti con compiti diversi, per effettuare query, analisi in tempo reale e simulazioni;
* gestire la versione storica dei dati.

### Requisiti

La creazione di un DSS deve inoltre rispondere a requisiti specifici legati alle caratteristiche dei processi decisionali e alle necessità dell'utente. La flessibilità deve essere un requisito fondamentale del DSS poiché esistono varie tipologie di problemi, vari tipi di decisione, vari tipi di dati che implicano diverse modalità di elaborazione e anche tipologie differenti di utenti che si ritrovano ad utilizzare il sistema DSS.
Devono inoltre essere permesse analisi ad hoc sui dati e l'uso di diversi modelli (quantitativi, statistici, ecc.).

## Valutazioni

Esistono due categorie principali di metriche di valutazione dei DSS basate su:
* efficacia, indica se si sta compiendo l'azione giusta, esprimendo il grado di conformità di un sistema agli scopi per il quale è stato progettato;
* efficienza, indica se l'azione viene svolta in modo ottimale.

## Esempi di utilizzo dei DSS

Esempio di DSS applicato ad un'impresa. Il DSS deve garantire:
* ottimizzazione del capitale per investimenti su materiali e attrezzature;
* elaborazione dei dati appartenenti ai clienti per eventuali sconti su quantità e tipologie di merci;
* organizzazione efficiente delle rimanenze di magazzino con possibile promozione su tali scorte in modo da ottimizzare il carico e scarico dei magazzini;
* scelta del tipo di trasporto basato sulla quantità, tipologia, distanza che la merce deve percorrere;
* gestione della contabilità;
* gestione dinamica delle richieste e dei preventivi;
* gestione dei documenti obbligatori e delle pratiche;
* gestione di report e filtri.