25/01/2023
Il Software Development Life Cycle è un processo utilizzato per sviluppare e gestire il software in maniera efficiente.
In particolare migliora la qualità del software prodotto e garantisce che il software consegua gli obiettivi per cui è stato realizzato.
Pianificazione ed Analisi dei Requisiti
Probabilmente la fase più importante e che coinvolge diversi attori come:
referenti del cliente, esperti di settore, senior project manager e così via per poter coprire tutte le aree economiche, operative e tecniche del progetto. In questa fase avviene anche l’identificazione della quality assurance e dei rischi associati al progetto.
Definizione dei requisiti
Una volta analizzati i requisiti, gli stessi devono trovare posto in maniera chiara e dettagliata in un apposito documento: il Software Requirement Specification (SRS) che può evolvere durante il progetto.
Progettazione dell’architettura
è arrivato il momento di progettare l’architettura software ed eventualmente sistemistica che permetterà di rendere operativi i requisiti. In questa fase trovano spazio argomenti come modularità, scalabilità, budget, vincoli, data flow, moduli e soluzioni di terze parti. Il risultato finale è il documento Design Document Specification (DDS).
Costruzione/Sviluppo del prodotto
Viene realizzato il software.
In questa fase trovano spazio coding guidelines, compiler, debugger, API documents, interpreter, librerie, ecc…
Testing del prodotto
Fase essenziale e che garantisce la qualità, gli esempi si sprecano dei software che sono andati in produzione ed hanno avuto gravi problemi. Occorre definire un test plan ed un’accettazione chiara della qualità.
Messa in produzione e manutenzione
La messa in produzione può seguire diversi approcci per mitigare i rischi, successivamente il software deve essere testato costantemente per essere aderente ai requisiti di qualità, di performance e di miglioramento continuo.