Application Lifecycle Management

ALM
L’Application Lifecycle Management – ALM – è il termine generale che funge da contenitore concettuale della governance delle attività relative alla produzione di sistemi software applicativi.
ALM è simile al SDLC (Software Development LifeCycle) ma è più esteso nel suo scopo. Comprende l’intero periodo in cui un’organizzazione investe tempo e denaro in una soluzione e cioè dal momento dell’ideazione del prodotto software al momento della sua radiazione, attraverso le fasi intermedie della progettazione, realizzazione, messa in esercizio e manutenzione.

Metodi che orbitano intorno ad ALM

Non vi è alcuna relazione diretta fra l’ALM e il metodo che si adotta per il processo produttivo.

I metodi di produzione del software possono, potenzialmente, essere molto diversi tra loro, in accordo con la natura del problema e con il contesto nel quale il prodotto software dovrà funzionare.

Vi sono differenze di ambiente operativo e tecnologico che influenzano le scelte del metodo     di produzione. Ad esempio:

  • Differenze di scala
  • sistemi che, date le dimensioni del problema che indirizzano, necessitano di una definizione up-front di un’ampia parte dei requisiti implementativi (es: ERP) e sistemi che invece, partendo da un nucleo minimale, evolvono nel tempo a step successivi in accordo con i bisogni degli utenti (es: Web App).
  • Differenze di struttura
  • sistemi applicativi avionici o medicali in cui il bug fixing non può essere fatto in esercizio e sistemi applicativi utente in cui un certo grado di bug fixing è ammesso anche in esercizio
  • Differenze di architettura
  • Sistemi che si basano su architetture fortemente centralizzate (es: sistemi radar) e sistemi distribuiti basati su microservizi ed API (es: App social)

Altri aspetti rilevanti quando si deve scegliere il metodo produttivo sono le modalità organizzative e la cultura aziendale. L’influenza che questi due fattori hanno, è spesso determinate perchè incide direttamente sui risultati del progetto – Tempi, Costi, Qualità.

DAD (Disciplined Agile Delivery)

 

Un buono strumento per affrontare le caratteristiche di complessità dell’ ALM è il metodo DAD (Disciplined Agile Delivery)  proposto dal Disciplined Agile Consortium – oggi confluito in PMI – che riconosce la eterogeneità dei problemi posti dai contesti di produzione e propone un approccio ibrido ”pragmatico” in cui possono coesistere differenti metodi (sia tradizionali che innovativi) e una visione “Enterprise” della produzione del software; una visione, cioè, che non tiene conto solo delle fasi tecnologiche dell’ SDLC ma che ha cura di tutti i processi che l’ALM racchiude.

Una sintesi del DAD

  • E’ impostato su una completa Value Chain – end-to-end rispetto al customer
  • E’ scalabile – contempla sia piccole che grandi organizzazioni che devono sviluppare progetti di dimensioni eterogenee
  • Il suo approccio metodologico è ibrido (Agile, Iterativo, OUP, Legacy, ecc.) – metodi differenti possono coesistere nella stessa organizzazione
  • Quando è Agile, è flessibile (XP, Scrum, Lean, FDD, ecc.)
  • Promuove il ciclo “Rischio – Valore
  • E’ context sensitive e goal driven; è pragmatico, non prescrittivo
  • E’ orientato alla microorganizzazione dei Team e alla loro Governance
  • Ha una visione Enterprise completa

Agile Management By Metrics

Adottare un processo Agile non significa dover abbandonare la pianificazione ed il controllo delle attività produttive, ma attuarli in modo coerente con la sua filosofia di base.  Metodi e strumenti devono, quindi, consentire di rilevare misure utili in modo conveniente e coerente con l’impostazione leggera ed adattabile del processo produttivo Agile. In un processo di questo tipo, a fronte dei vantaggi relativi alla tempestività di risposta, alla maggiore rispondenza dei prodotti ai bisogni reali degli stakeholder, ci sono gli svantaggi della possibile perdita di capacità previsionale sull’uso delle risorse e di confrontabilità della produttività con realtà diverse. Si tende a passare da una modalità a progetti con impegno variabile ad una modalità a servizio continuativo con staff e impegno costante. Le misure funzionali e non funzionali, allora, associate a quelle di processo possono dare una marcia in più nella governance di un processo produttivo Agile o Ibrido.

Vuoi più informazioni?

Trattamento dati personali

Iscrizione alla newsletter DPO

Scopri le nostre proposte !