ALM - Application Lifecycle Management
Kuvauksen kirjoitti: Tarmo Urrio | N4378
Lyhyt kuvaus käsitteestä tai aiheesta
ALM - Application Lifecycle Management on prosessi, joka kartoittaa ohjelmistokehityksen eri vaiheita. Se koostaa koko ohjelmiston elämänkaaren alkukehityksestä käyttäjäkokemukseen sisällyttäen ihmiset, työkalut ja prosessit mitkä hallinoivat sovelluksen kehitystä.
ALM:ia ei tule sekoittaa Software development life cycleen (SDLC), vaikka molemmat ovatkin ohjelmistokehityksen hallinnan prosesseja. SDLC keskittyy pääasiallisesti ohjelmiston kehitysvaiheeseen, kun taas ALM ohjelmiston koko elinkaareen.
ALM:n tarkoituksena on antaa selkeä kuva kyseisen ohjelmiston kehityksen vaiheesta ja etenemisestä. Se auttaa kehityksen organisoimisessa sekä seurannassa, ja on hyödyllinen prosessi kaikille kehitykseen osallistujille.
Miksi ALM
- Projektin tila on jatkuvasti nähtävissä koko kehitystiimille.
- Eri tiimit pystyvät kommunikoimaan helposti
- Vaatimusten seuranta helpottuu
- Ohjelmiston testaus tapahtuu kattavasti
- Kustannukset pysyvät hallittuna
Vaiheet
Pääasiassa ALM pystytään jakamaan kolmeen päävaiheeseen.
- Hallinta
- Tuotanto
- Operaatiot
Hallinassa käsitellään koko tuotteen eri ominaisuuksien tuottamia vaatimuksia, sekä näiden tuomia valintoja ja haasteita kehitykseen. Hyötynä hallinnassa on yhteensopivat strategiat tuotannolle sekä selkeät linjaukset kehityksen kululle sekä laadun varmistukselle. Tuotanto käsittää ohjelmiston kehityksen päävaiheet suunnittelusta vaatimusmäärittelyn pohjalta, ohjelmiston testaukseen. Tämä alue käsittää pääasiallisesti tyypillisen kehittäjän ja testaajan roolit. Operaatiot sisältää ohjelmiston jatkokehityksen, ylläpidon ja jatkuvan integaarion sekä toimituksen asiakkaalle.
Tarkemmat vaiheet
Ohjelmistokehityksen elämänkaaren hallintaan kuuluu seitsemän vaihetta.
- Requirement management / Vaatimusten määrittely
- Design / Suunnittelu
- Build management / Ohjelmiston kehitys
- Software configuration management (SCM) / Ohjelmiston konfiguraation hallinta
- Operations and maintenance / Ohjelmiston julkaisu käyttäjille sekä ylläpito
- Test management / Testauksen hallinta
- User experience / Käyttäjäkokemus
Requirement management
Ohjelmiston vaatimukset määritellään, priorisoidaan, sekä sovitaan asiakkaan kanssa.
Design
Ohjelmisto suunnitellaan yhdessä asiakkaan kanssa.
Build management
Ohjelmisto kehitetään, testataan ja toimitetaan, sekä aloitetaan testaus.
Software configuration management
Ohjelmiston dokumenttien sekä koodien muutoksia hallinnoidaan koko kehityksen ajan.
Operations and maintenance
Ohjelmisto toimitetaan käyttökuntoon ja mahdolliset viat etsitään.
Test management
Ohjelmistotestaajat vahvistavat, että ohjelmisto on sopiva vaatimusmäärittelyyn nähden, mahdolliset viat korjataan, ja että ohjelmisto vastaa toivottua käyttökokemusta.
User experience
Ohjelmistokehityksen elinkaaren pisin vaihe on käyttäjäkokemuksen ylläpito. Ohjelmistoa parannetaan käyttäjäpalautteen pohjalta.
Muuta aiheeseen liittyvää
ALM hallintaan on markkinoilla useilla työkaluja. Näitä ovat esimerkiksi:
- IBM Rational
- HP Application Lifecycle Management
- Microsft ALM Suite
- Atlassian Jira
Linkit ulkopuolisiin lähteisiin
- https://www.guru99.com/alm-tutorial.html
- https://www.redhat.com/en/topics/devops/what-is-application-lifecycle-management-alm
Avainsanat harjoitustehtävän repositoriossa
TODO - Odota avainsanat muista valmistuvista käsitteistä