Decisioni tecniche

Prima di sviluppare un software: cosa verificare

Obiettivi, persone, dati e vincoli: come raccogliere le informazioni utili prima di scegliere una soluzione o impegnare risorse.

A cura di SoftGen · 4 minuti di lettura

Miniatura di un progetto software con obiettivi, vincoli, alternative e una verifica della soluzione.

Partire dal risultato che serve

Una richiesta di software nasce spesso da un’attività che richiede troppo tempo, da informazioni disperse o da un sistema che non accompagna più il lavoro. “Ci serve un’applicazione” è un punto di partenza: per scegliere cosa costruire occorre descrivere il risultato atteso e le condizioni in cui dovrà funzionare.

Un obiettivo utile è osservabile. Per esempio: consentire a un tecnico di registrare un intervento dal luogo in cui lavora, rendendo disponibili al coordinatore stato e materiali utilizzati. Restano da definire utenti, dispositivi, connessione e controlli. Queste domande rendono confrontabili le proposte tecniche.

Cinque verifiche da fare insieme

  • Persone e attività: chi userà la soluzione, chi approverà il lavoro e chi la manterrà? Osservare un’attività reale può far emergere passaggi non descritti nelle procedure.

  • Dati: quali informazioni servono, dove si trovano e chi può modificarle? Un campo chiamato “cliente” in due sistemi può avere significati diversi.

  • Sistemi esistenti: quali strumenti devono restare, quali interfacce sono disponibili e quali vincoli impongono i fornitori?

  • Condizioni d’uso: dispositivi, volumi, connessioni intermittenti, permessi e continuità operativa vanno descritti prima di scegliere l’architettura.

  • Risorse: tempo delle persone, budget, licenze, gestione e manutenzione fanno parte della decisione, oltre allo sviluppo iniziale.

Confrontare alternative concrete

La scelta può riguardare un adattamento del software già disponibile, un’integrazione fra strumenti o una nuova applicazione. Il confronto è più utile quando ogni alternativa risponde allo stesso problema e rende espliciti costi, dipendenze e limiti.

Alternativa

Quando esplorarla

Cosa verificare

Configurare uno strumento esistente

Le attività sono già supportate in buona parte.

Permessi, esportazione dati, limiti di personalizzazione e costo nel tempo.

Collegare sistemi

Le funzioni esistono, ma i dati vengono ricopiati.

Interfacce disponibili, significato dei dati e gestione degli errori.

Sviluppare una soluzione

Il processo richiede funzioni specifiche.

Perimetro iniziale, competenze di gestione, test e manutenzione.

Configurare uno strumento esistente

Quando esplorarla

Le attività sono già supportate in buona parte.

Cosa verificare

Permessi, esportazione dati, limiti di personalizzazione e costo nel tempo.

Collegare sistemi

Quando esplorarla

Le funzioni esistono, ma i dati vengono ricopiati.

Cosa verificare

Interfacce disponibili, significato dei dati e gestione degli errori.

Sviluppare una soluzione

Quando esplorarla

Il processo richiede funzioni specifiche.

Cosa verificare

Perimetro iniziale, competenze di gestione, test e manutenzione.

Trasformare i dubbi in prove

Le incertezze decisive meritano una verifica circoscritta. Se il problema è la qualità dei dati, una piccola estrazione può essere più utile di un’interfaccia completa. Se il dubbio riguarda l’uso sul campo, si può provare un flusso con le persone interessate. Se dipende da un’integrazione, conviene verificare prima l’accesso ai sistemi.

Per ciascuna prova si definiscono domanda, materiali disponibili, risultato osservabile e criterio con cui decidere il passo successivo. I requisiti dovrebbero essere comprensibili, coerenti e verificabili: è un principio presente anche nelle indicazioni NASA sulla validazione dei requisiti software, da adattare alla complessità del progetto.

Uno scenario illustrativo

Un’impresa riceve rapportini via email e li ricopia nel gestionale. Prima di progettare un portale si esaminano alcuni rapportini, si segue il lavoro di un coordinatore e si verifica se il gestionale offre un’interfaccia di importazione. Potrebbe emergere che il primo intervento utile è uniformare i dati e automatizzarne il trasferimento. Oppure che occorre un’applicazione per raccoglierli sul campo. La decisione dipende dalle prove.

Scenario illustrativo di un possibile intervento. Non descrive un progetto cliente né risultati già ottenuti.

Cosa dovrebbe restare alla fine dell’analisi

Una descrizione condivisa del problema, le alternative considerate, i principali vincoli e un primo perimetro verificabile. Per ogni attività devono essere chiari responsabile, informazioni necessarie e criterio di completamento. Anche decidere di fermarsi o di usare meglio uno strumento esistente può essere un esito utile.

SoftGen può affiancare questa fase con analisi del contesto, confronto delle opzioni e verifiche di fattibilità. Il percorso successivo viene concordato sulla base di ciò che emerge.

Riferimenti

NASA Software Engineering Handbook — Requirements Validation

Una scheda pratica per il primo confronto

Puoi raccogliere queste informazioni anche in forma provvisoria. Le risposte mancanti indicano cosa approfondire, non sono un motivo per rimandare il confronto.

Campo

Domanda utile

Materiale di partenza

Obiettivo

Quale attività deve cambiare e quale problema osserviamo?

Un episodio concreto e il risultato cercato.

Utenti

Chi svolge il lavoro e in quali condizioni?

Ruoli, dispositivi e contesto d’uso.

Sistemi

Quali applicazioni o dati devono essere coinvolti?

Elenco dei sistemi e documentazione disponibile.

Vincoli

Che cosa deve essere conservato o rispettato?

Scadenze, accessi, responsabilità e dipendenze.

Verifica

Come riconosceremo un risultato utile?

Un’attività osservabile e i casi da provare.

Obiettivo

Domanda utile

Quale attività deve cambiare e quale problema osserviamo?

Materiale di partenza

Un episodio concreto e il risultato cercato.

Utenti

Domanda utile

Chi svolge il lavoro e in quali condizioni?

Materiale di partenza

Ruoli, dispositivi e contesto d’uso.

Sistemi

Domanda utile

Quali applicazioni o dati devono essere coinvolti?

Materiale di partenza

Elenco dei sistemi e documentazione disponibile.

Vincoli

Domanda utile

Che cosa deve essere conservato o rispettato?

Materiale di partenza

Scadenze, accessi, responsabilità e dipendenze.

Verifica

Domanda utile

Come riconosceremo un risultato utile?

Materiale di partenza

Un’attività osservabile e i casi da provare.

Da questa scheda può nascere un confronto tra alternative oppure una prova mirata. Il livello di dettaglio va commisurato alla decisione da prendere.

APPLICARE QUESTE IDEE

Competenze e percorsi collegati

ARTICOLI E APPROFONDIMENTI

Continua ad approfondire

Criteri, alternative e verifiche per affrontare la prossima decisione tecnica.

Tutti gli articoli

IL TUO CONTESTO

Portiamo la domanda sul tuo progetto

Partiamo dai sistemi, dalle persone e dalle informazioni disponibili per individuare il prossimo passo utile.

Parliamo del tuo progetto