Modelli SDLC - Evoluzione

Un modello del ciclo di vita dello sviluppo software (SDLC) è un framework che descrive le attività svolte in ogni fase di un progetto di sviluppo software.

In un ciclo di vita di sviluppo software, le attività vengono eseguite in cinque fasi:

  • Requirements Gathering- Vengono raccolti i requisiti per un software da sviluppare. Questi requisiti saranno in una lingua compresa dal cliente / utente. Si consiglia la terminologia specifica del dominio.

  • Analysis - I requisiti raccolti vengono analizzati dal punto di vista dell'implementazione e le specifiche del software vengono scritte per coprire sia i requisiti funzionali che i requisiti non funzionali.

  • Design - Questa fase prevede l'arrivo all'architettura del software e alle specifiche di implementazione basate sulla tecnologia scelta per lo sviluppo.

  • Construction - In questa fase, il codice viene sviluppato, unit test, integrato, integrato testato e viene prodotta la build.

  • Testing- In questa fase viene eseguito il test funzionale del software costruito. Ciò include anche la verifica dei requisiti non funzionali.

Esistono due approcci per eseguire queste attività:

  • Prescriptive - I modelli SDLC che ti forniranno modi per svolgere le attività in modo prescritto come definito dal framework.

  • Adaptive- I modelli SDLC che ti daranno flessibilità nello svolgimento delle attività, con alcune regole che devono essere seguite. I metodi agili seguono principalmente questo approccio, ognuno con le sue regole. Tuttavia, seguire un approccio adattivo o agile non significa che il software sia sviluppato senza seguire alcuna disciplina. Ciò porterebbe a un caos.

Devi capire che non possiamo dire che un modello SDLC specifico sia buono o cattivo. Ognuno di loro ha i suoi punti di forza e di debolezza e quindi sono adatti in determinati contesti.

Quando scegli un modello SDLC per il tuo progetto, devi capire:

  • Il contesto della tua organizzazione
  • Il tuo contesto tecnologico
  • La composizione della tua squadra
  • Il contesto del tuo cliente

Ad esempio, se lo sviluppo del software è prevedibile, è possibile utilizzare un approccio prescrittivo. D'altra parte, se lo sviluppo del software è imprevedibile, cioè i requisiti non sono del tutto noti, o il team di sviluppo non ha una precedente esposizione al dominio o alla tecnologia corrente, ecc., L'approccio adattivo è la scelta migliore.

Nelle sezioni seguenti, comprenderete i modelli SDLC più diffusi che si sono evoluti durante l'esecuzione di progetti di sviluppo software nel settore. Imparerai anche i punti di forza e di debolezza di ciascuno di essi e in quali contesti sono adatti.