Che cos'è la gestione del ciclo di vita delle applicazioni?
La gestione del ciclo di vita delle applicazioni (ALM) è una pratica utilizzata per lo sviluppo di applicazioni software. Questa non è solo la gestione del codice sorgente che viene quindi compilato in un programma software, ma ogni aspetto dello sviluppo dal momento del concetto al punto in cui l'applicazione non è più considerata fattibile per un ulteriore sviluppo. Con questa pratica, ALM è un mezzo per colmare gli obiettivi che un'azienda o un'organizzazione ha per un particolare software, la creazione o l'implementazione di quel software e la manutenzione del software. ALM, quindi, è efficace nel migliorare la produzione, la collaborazione e la qualità per tutta la vita di un progetto di sviluppo.
Il processo è in genere suddiviso in tre obiettivi principali, ciascuno con responsabilità sovrapposte. La pratica principale e più diffusa nell'intera applicazione del processo di gestione del ciclo di vita è la governance. Dal momento del concepimento, tutto nel processo ALM è gestito e monitorato. Ogni componente del ciclo di vita, incluso il design, gli sviluppatori, il codice software stesso, rientra nella responsabilità della governance.
La governance gestisce tutta l'organizzazione di questi elementi, nonché l'analisi e il reporting generati da ogni fase del processo. Ciò aiuta l'azienda a prendere decisioni valide su ulteriori sforzi di sviluppo come il confronto dei costi con vari aspetti del ciclo di vita al fine di migliorare il processo complessivo. Le metriche dei dati ottenute durante la gestione del ciclo di vita delle applicazioni attraverso la sua governance sono importanti anche per determinare se è giustificato un ulteriore sviluppo o se il progetto software deve essere scartato per un altro sforzo.
Il secondo aspetto principale di ALM, lo sviluppo, è il luogo in cui si svolge tutta la proverbiale rotazione della chiave inglese. Questo è anche il punto in cui la gestione del ciclo di vita delle applicazioni può confondersi con il ciclo di vita dello sviluppo del software (SDLC), che di per sé contiene livelli aggiuntivi di complessità. ALM, tuttavia, include SDLC come componente critico. L'aspetto di sviluppo si occupa dei requisiti, della progettazione, della codifica e dei test del software. Questo è anche il luogo in cui si verifica gran parte della manutenzione, come nuove versioni complete, correzioni di errori e versioni minori.
Quindi ci sono le operazioni quotidiane. Una volta che il software ha raggiunto uno stato in cui può essere implementato con successo, in quanto soddisfa tutti i requisiti e le specifiche di progettazione e ha superato i test iniziali per la qualità, è pronto per il rilascio. Operations assume qui il ruolo di gestione del ciclo di vita dell'applicazione, preparando il software per la distribuzione. Ciò può comportare qualsiasi attività di marketing e vendita che potrebbe essere necessaria e la creazione di un ambiente di supporto per l'assistenza ai clienti.