Upravljanje življenjskega cikla aplikacij (ALM) je praksa, ki se uporablja za razvoj aplikacij računalniške programske opreme. To ni samo upravljanje izvorne kode, ki se nato prevede v programski program, ampak vsak vidik razvoja od trenutka zasnove do točke, ko se šteje, da aplikacija ni več izvedljiva za nadaljnji razvoj. S to prakso je ALM sredstvo za premostitev ciljev, ki jih ima podjetje ali organizacija za določen kos programske opreme, ustvarjanje ali izvajanje te programske opreme in vzdrževanje programske opreme. ALM je torej učinkovit pri izboljšanju proizvodnje, sodelovanja in kakovosti skozi celotno življenjsko dobo razvojnega projekta.
Postopek je običajno razdeljen na tri glavne cilje, od katerih ima vsak prekrivajoče se odgovornosti. Primarna in najbolj razširjena praksa v celotni uporabi procesa upravljanja življenjskega cikla je upravljanje. Od trenutka spočetja se vse v procesu ALM upravlja in spremlja. Vsaka komponenta življenjskega cikla, vključno z zasnovo, razvijalci, samo programsko kodo, spada pod odgovornost upravljanja.
Upravljanje obravnava vso organizacijo teh elementov, pa tudi analizo in poročanje, ustvarjeno na vsakem koraku v procesu. To podjetju pomaga pri sprejemanju pravilnih odločitev o nadaljnjih razvojnih prizadevanjih, kot so primerjave stroškov z različnimi vidiki življenjskega cikla, da bi izboljšali celoten proces. Podatkovne metrike, pridobljene med upravljanjem življenjskega cikla aplikacije z njenim upravljanjem, so pomembne tudi pri določanju, ali je nadaljnji razvoj upravičen ali je treba projekt programske opreme opustiti zaradi drugega truda.
Drugi primarni vidik ALM, razvoj, je tam, kjer se odvija vse pregovorno vrtenje ključev. Tu se lahko tudi zamenja upravljanje življenjskega cikla aplikacij z življenjskim ciklom razvoja programske opreme (SDLC), ki sam po sebi vsebuje dodatne ravni kompleksnosti. ALM pa vključuje SDLC kot kritično komponento. Razvojni vidik skrbi za zahteve, načrtovanje, kodiranje in testiranje programske opreme. Tu se dogaja tudi velik del vzdrževanja, kot so nove polne različice, popravki napak in manjše izdaje.
Potem so tu še dnevne operacije. Ko programska oprema doseže stanje, v katerem jo je mogoče uspešno uvesti, saj izpolnjuje vse zahteve in specifikacije zasnove ter je prestala začetno testiranje kakovosti, je primerna za izdajo. Operations tukaj prevzame vlogo upravljanja življenjskega cikla aplikacije, tako da pripravi programsko opremo za uvajanje. To lahko vključuje kakršno koli trženje in prodajo, če je potrebno, ter vzpostavitev podpornega okolja za pomoč strankam.