Che cos'è SDLC

C'è una cena programmata nella tua fattoria. Quando inizierai a pianificare questo? Qual è l'approccio che seguirai? Ti informerai sul numero di ospiti che verranno alla grande festa? E preparerai un delizioso menu (diciamo architettura)? Inizierai a preparare il cibo e una volta cotto lo proverai, vero? (Controlla solo se c'è un sapore nel tuo cibo). Spero che ti abbiamo dato un'idea di base di ciò che stiamo cercando di spiegare qui, passiamo al nostro argomento. Un ciclo di vita di sviluppo software (SDLC) è un approccio definito e una serie di passaggi che vengono seguiti per lo sviluppo di qualsiasi software al fine di soddisfare o superare le aspettative o i requisiti del cliente.

Tipi di fasi in SDLC

Esistono diverse fasi in un ciclo di vita del software che viene fornito di seguito:

  • Fase dei requisiti
  • Fase di analisi
  • Fase di progettazione
  • Fase di sviluppo
  • Fase di test
  • Fase di distribuzione e manutenzione

Fase dei requisiti:

Questo è il primo e fondamentale passo nel ciclo di vita dello sviluppo software. Inizia con la raccolta dei requisiti da parte di clienti o clienti. Nella maggior parte delle organizzazioni, questo ruolo è affidato agli analisti aziendali. Un analista aziendale interagisce con il cliente / i clienti, organizza riunioni giornaliere, documenta i requisiti nelle specifiche dei requisiti aziendali (o specifiche aziendali semplici) e consegna il requisito finale documentato al team di sviluppo. È responsabilità degli analisti aziendali che ogni dettaglio sia acquisito e documentato e anche assicurarsi che tutti comprendano chiaramente le esigenze del cliente.

Fase di analisi:

Una volta completata la fase di raccolta dei requisiti, l'attività successiva è quella di analizzare i requisiti e ottenerli approvati dal cliente / dai clienti. Questo risultato è ottenuto attraverso la specifica dei requisiti software (SRS) che comprende tutti i requisiti raccolti e sviluppati durante la fase di raccolta dei requisiti. Questa fase è svolta principalmente da project manager, analisti aziendali e consulenti.

Fase di progettazione:

Una volta terminata la fase di analisi, viene la necessità di elaborare l'architettura più accurata, robusta, efficiente ed economica del prodotto che deve essere sviluppata. Di solito, in questa fase viene proposto più di un progetto e il migliore viene selezionato in base a parametri diversi come robustezza, durata, tempistica, rapporto costo-efficacia e molti altri! La diversa architettura di progettazione è generalmente documentata in Specifica del documento di progettazione o DDS. Questa fase consiste in 2 approcci di progettazione:

  • Progettazione di basso livello : questa attività viene eseguita dagli sviluppatori senior in cui specificano la funzione di ciascun modulo dell'architettura del prodotto che deve essere sviluppata.
  • Design di alto livello : questo compito viene svolto da Architects / Senior Architects in cui progettano diverse possibili architetture del prodotto che deve essere sviluppato.

Fase di sviluppo:

In questa fase viene utilizzata l'implementazione effettiva di linguaggi di programmazione e diversi framework per lo sviluppo del prodotto. In questa fase, sono coinvolti tutti gli sviluppatori. Gli sviluppatori dovrebbero seguire determinati standard e linee guida di codifica predefiniti; si prevede che completino i moduli del progetto entro la scadenza definita per il progetto. Questa fase è anche la più lunga e una delle fasi più critiche del ciclo di vita dello sviluppo del software. Questa fase è documentata come un documento di codice sorgente (SCD).

Fase di test:

Una volta completata la fase di sviluppo, il passo successivo è testare il software sviluppato. Il software sviluppato viene inviato al team di test dove eseguono accuratamente diversi tipi di test sul software e cercano difetti. Se viene rilevato un difetto, il team di test registra e documenta nuovamente il team di sviluppo per la rimozione degli errori. Questo ruolo è affidato ai tester del software e agli analisti della qualità dell'azienda. Il team di test deve assicurarsi che ogni componente del software sia privo di errori e funzioni come previsto.

Fase di distribuzione e manutenzione:

Al termine della fase di test, la prima versione del software viene distribuita e consegnata al cliente per il loro utilizzo. Una volta che il cliente inizia a utilizzare il software sviluppato, esiste l'ambito del bug fixing che non è stato rilevato durante la fase di test, poiché quando un folto gruppo di utenti finali inizia a utilizzare il software, è possibile che si verifichino pochi casi limite. Esiste inoltre la possibilità di aggiornare il software con le versioni più recenti e le ultime patch e tecnologie di sicurezza. E infine, c'è anche spazio per il miglioramento del software aggiungendo più funzionalità al software esistente.

Modelli SDLC popolari:

Esistono molti diversi modelli SDLC progettati per l'implementazione nel processo di sviluppo del software. I più importanti e popolari sono:

  • Modello a cascata
  • Modello iterativo
  • Modello a spirale
  • V-Model

Modello a cascata:

Nel modello a cascata, l'intero processo di sviluppo del software è suddiviso in fasi in cui l'output di una fase funge da input per la fase successiva. La fase successiva inizia solo quando viene completata la fase precedente.

Modello iterativo:

Questo modello inizia con una serie più piccola di requisiti e non richiede l'intero contesto delle specifiche del prodotto per avviare il processo SDLC. Questo processo è ripetitivo e ad ogni iterazione del processo SDLC, viene creata una versione più recente del software. Ogni iterazione può durare tra 2-6 settimane. Ogni iterazione sviluppa un componente separato in questo approccio. Questo modello richiede anche una risorsa in modalità rispetto al modello a cascata.

Modello a spirale:

Questo modello è una combinazione di un modello Cascata e Spirale e funziona in modo iterativo. Basato sul rischio coinvolto nel progetto, questo modello guida il team ad adottare elementi di uno o più modelli SDLC come una cascata o un modello iterativo. Qui il ciclo di vita del software è diviso in parti più piccole e nuove funzionalità possono essere aggiunte al software anche nelle fasi avanzate di SDLC.

V-Model:

Il modello V è sostanzialmente un'espansione al modello a cascata in cui le fasi di test e sviluppo sono pianificate in parallelo. Un lato consiste nella fase di verifica, mentre l'altro consiste nella fase di convalida che viene infine unita mediante codifica. Lo stato successivo inizia solo quando lo stato precedente viene completato.

Articoli consigliati

Questa è stata una guida a What Is SDLC. Qui abbiamo discusso i vari tipi di SDLC con i popolari modelli SDLC. Puoi anche consultare i seguenti articoli per saperne di più -

  1. Sviluppo software vs sviluppo Web
  2. Ciclo di vita dei difetti nei test del software
  3. Passaggi unici per la costruzione di modelli finanziari (software, tipi)
  4. Introduzione allo sviluppo software

Categoria: