Analisi di sistemi software

Cosa significa fare analisi
Gli obiettivi dell’analisi
Il ruolo (o i ruoli) dell’analista
Cosa deve saper fare l’analista
Le tecniche di analisi
Gli strumenti per l’analisi

Cosa significa fare analisi

L’etimologia greca, “analysis”, significa letteralmente “scomposizione”, la scomposizione dell’elemento studiato nei suoi elementi costitutivi, per poterlo comprendere e definire meglio.

I termini originari sono “ana” (che significa sopra, in alto) e “lysis” (che significa scioglimento, scomposizione): scomposizione di ciò che sta in alto, che sta sopra. Cioè l’equivalente dell’espressione inglese “top-down”.

Analisi dei processi di business, in questa accezione, è l’individuazione e la definizione dei processi; l’analisi dei requisiti individua e definisce i requisiti; l’analisi dei dati individua e definisce le informazioni da gestire negli archivi, e così via.

Il significato del termine analisi si è poi esteso. Secondo il Grande Dizionario della Lingua Italiana della Utet (Battaglia):

1. scomposizione di un tutto nei suoi elementi costitutivi più semplici ed esame sistematico di ciascuno di essi
2. (per estensione) indagine accurata, particolare, studio minuzioso (di un fenomeno, di un fatto, di un problema)


Gli obiettivi dell’analisi

Chiarire le esigenze, definire le soluzioni.

L’analisi di sistemi software deve far dialogare due mondi: quello di chi ha un’esigenza da soddisfare (il committente, l’utente, lo stakeholder) e quello di chi deve realizzare la soluzione a livello implementativo (lo sviluppatore software).

Non è un compito facile (e non lo è neppure quando l’analista e lo sviluppatore sono la stessa persona).


Il ruolo (o i ruoli) dell’analista

Analista di business, analista di processi, analista di sistema, analista funzionale, analista software, analista tecnico, analista programmatore, …

Le etichette possibili sono molte, ed il loro significato varia: ogni organizzazione traccia i confini dei ruoli in modo diverso.

Il fatto è che il mestiere di analista comporta un ampio spettro di competenze, che non è facile trovare in un singolo individuo.

Così, alcune organizzazioni preferiscono mantenere un unico ruolo di analista; altre, preferiscono separare le responsabilità in ruoli distinti.


Cosa deve saper fare l’analista

L’analista dovrebbe essere come l’architetto di Vitruvio, uno scrittore dell’antichità latina, secondo il quale

“L’architetto ideale dovrebbe essere una persona di lettere, un matematico, familiare con gli studi storici, uno studioso appassionato di filosofia, con conoscenze di musica, non ignorante di medicina, istruito sugli aspetti legali, familiare con l’astronomia ed i calcoli astronomici.” – Vitruvio, circa 25 a.C.

Infatti l’analista ideale dovrebbe essere:

  • capace di dialogare in modo efficace (ed efficiente) con chi è interessato alle caratteristiche del sistema (gli stakeholder) per chiarire i requisiti
  • competente sulla materia trattata (il dominio del problema) almeno al punto da poter porre ai propri interlocutori delle domande sensate
  • competente sulle caratteristiche importanti per ogni sistema software (prestazioni, sicurezza, usabilità, eccetera), in modo da definire i livelli di servizio adeguati
  • competente sulle tecnologie che verranno usate per l’implementazione, in modo da fare scelte opportune e fattibili
  • capace di specificare la soluzione richiesta in termini non ambigui e comprensibili per gli sviluppatori

Le tecniche di analisi

Le tecniche sono i ferri del mestiere per l’analista (in greco antico, “techne” significava arte, nel senso delle conoscenze pratiche proprie degli artigiani).

Alcune tecniche di analisi “storiche”, come l’analisi strutturata, sono considerate oggi superate. Altre, come i diagrammi di flusso e i diagrammi di transizione di stato, sono state inglobate negli standard (BPMN e UML)

Le tecniche più comunemente usate oggi sono:

Le tecniche aiutano l’analista a farsi (e quindi a fare ai propri interlocutori) le domande necessarie per chiarire le esigenze e delineare delle ipotesi di soluzione adeguate: Le tecniche di analisi e progettazione sono fonti di domande.


Gli strumenti per l’analisi

Ci sono diversi strumenti a disposizione di chi deve fare analisi. Standard, guide e applicazioni software.

Standard

Guide e modelli di riferimento

Applicazioni software


Notizie più recenti:

Tutte le notizie