Vad är ALM? Fullständig form, process för applikationslivscykelhantering
⚡ Smart sammanfattning
ALM, eller Application Lifecycle Management, styr en mjukvaruapplikation från initial specifikation till design, utveckling, testning, driftsättning och långsiktig användarupplevelse. Styrning, utveckling och drift utgör dess tre element, och sju definierade steg förvandlar en idé till en underhållen produkt.
Vad är ALM?
ALM är en process för specifikation, design, utveckling och testning av en programvaruapplikation. Den täcker hela livscykeln från idén bakom applikationen till utveckling, testning, driftsättning, support och slutligen användarupplevelsefasen. Den fullständiga formen av ALM är Application Lifecycle Management (eller applikationslivscykelhantering).
Beroende på metodiken för mjukvaruutveckling (till exempel vattenfall, agil eller DevOps) kan ALM delas upp i olika faser. ALM-processen är huvudsakligen uppdelad i tre element: styrning, utveckling och drift.
ALM-process
Här är de viktigaste områdena inom ALM:
Bolagsstyrning
Det inkluderar kravhantering, resurshantering, datasäkerhet, användaråtkomst, granskning, revision, distributionskontroll och återställning.
Fördelar med styrning:
- Anpassad affärsstrategi
- Utvecklaping ett affärsfall
- Erbjuder kontinuerlig övervakning
- Finansiering av projekt som ger det högsta värdet
- Tydlig ansvarighet och kontroll
Applikationsutveckling
Det inkluderar att identifiera aktuella problem, planera, designa, bygga, testa och driftsätta applikationen. Detta område täcker de traditionella rollerna som utvecklare och appskapare.
Applikationsoperation
Detta område inkluderar driftsättning av appen och underhåll av teknikstacken. I vattenfallsmetoden för mjukvaruutveckling är drift ett separat steg från utveckling. Ett DevOps-team sammanför drift och utveckling i en helt integrerad, kontinuerlig process.
Varför är ALM viktigt?
Följande är de främsta anledningarna till att använda ALM:
- Du får god insyn i projektets status.
- Teamen kan kommunicera effektivt.
- Kraven är enkla att definiera och track.
- Programvaran är tillräckligt testad.
- Kostnaden för att underhålla och driva lösningen är fortfarande begränsad.
ALM vs SDLC: Hur de skiljer sig
ALM och programvaruutvecklingslivscykeln behandlas ofta som synonymer, vilket orsakar förvirring när team försöker anamma en sådan. SDLC sitter inuti ALM snarare än bredvid det.
| Aspect | SDLC | ALM |
|---|---|---|
| Omfattning | Bygga programvaran | Hela produktens livslängd, från idé till pensionering |
| Börjar | Krav för en byggnad | Det inledande affärscaset |
| Slutar kl. | Distribution av den versionen | Avveckling av applikationen |
| Täcker styrning | Nej | Ja — finansiering, åtkomst, revision, efterlevnad |
| Antal cykler | En per utgåva | Många SDLC-cykler under en applikations livstid |
En applikation går vanligtvis igenom många SDLC-iterationer medan den förblir inom en enda ALM-livscykel. Att förstå att nästning förklarar varför stegen nedan sträcker sig långt efter den punkt där kod skickas.
Stadier av ALM (Application Lifecycle Management)
Här är de olika stadierna av ALM:
1) Kravhantering
Kravhantering är det första steget i ALM. Det hjälper dig att dokumentera, analysera, track, prioritera och komma överens om krav. Det är en kontinuerlig process som löper genom hela projektets livscykel. Se även vår lista över de bästa programvara för kravhantering.
2) Design
Designhantering är en process som hjälper till att öka kundnöjdhet och lojalitet genom att förbättra användbarheten. Den formar också interaktionen mellan kunden och produkten.
3) Byggledning
Bygghantering, även känt som kodhantering, är processen att konvertera källkodsfiler till en fristående programvarukomponent. I detta skede omvandlas en applikationsidé till en faktisk applikation.
Under detta skede byggs, testas och driftsätts applikationen, och testaren börjar förbereda testfall och skriva testskript för testfasen.
4) SCM
Programvarukonfigurationshantering (SCM) är ALM-stadiet där utvecklingsteamet systematiskt organiserar, hanterar och kontrollerar ändringar i dokument, kod och andra entiteter under applikationsutvecklingens livscykel.
5) Operaoch underhåll
I denna fas börjar övervakning, hantering och kontinuerlig utveckling av applikationen. Inom DevOps omfattar denna fas "release", "config" och "monitor".
I det här steget hittar och åtgärdar du buggar. Fasen hjälper dig att planera och prioritera nästa uppdatering av produkten.
6) Testhantering
I testfasen verifierar testarna att applikationen uppfyller de krav som definierades i processens inledande steg.
De säkerställer också att applikationen uppfyller användarnas förväntningar och behoven hos alla andra intressenter som kommer att stödja den under hela dess livscykel, även om dessa förväntningar inte fångades upp ordentligt under kravfasen.
7) Användarupplevelse
Underhåll, eller användarupplevelse, är traditionellt sett det längsta steget av ALM, men det är också det steg där deltagandet från test- och utvecklingsteamen vanligtvis är lägst.
När applikationen är utvecklad spelar användarnas roll en roll. De övar på hela applikationen och delar med sig av sina erfarenheter genom feedback, och den slutliga applikationen levereras.
Fördelar med ALM
Här är fördelarna med att använda ALM:
- ALM hjälper dig att kontrollera systemet genom att organisera och trackungligt arbete.
- Fel kan delas mellan projekt, vilket minskar dubbleringsrisken.
- ALM erbjuder integration med andra testverktyg.
- Det ger en tydlig riktning för en app innan den byggs.
- Utan ALM är det svårt för ett mjukvaruutvecklingsteam att producera mjukvara med den hastighet och smidighet som krävs för att förbli konkurrenskraftig.
- ALM levererar programvara effektivt med minimal omkostnad för teamet.
ALM-verktyg
Här är några viktiga ALM-verktyg:
1) Kovair ALM Studio
Kovair är en av de mest omfattande produkterna för applikationslivscykelhantering. Den kan hantera hela utvecklingscykeln, från krav till release.
Funktioner:
- Använd en helt webbaserad lösning utan klientprogramvara, vilket minskar supportbördan
- Öva på valfri utvecklingsmetodik: vattenfall, agil eller hybrid
- Implementera en konfigurerbar uppgiftsbaserad arbetsflödesmotor för ökad effektivitet och produktivitet
- Få aviseringar i realtid vid varje handlingsbart skede
- Ge fullständig täckning av varje utvecklingssteg, vilket möjliggör efterlevnad av standarder
- Möjliggör realtidsvisning av artefaktstatus, vilket ökar transparensen och förutsägbarheten vid utgivning
Länk: https://www.kovair.com/alm-studio/
2) OpenText Applikationskvalitetshantering (tidigare Micro Focus ALM)
Det här verktyget stöder lean, agil och DevOps-leverans, helping organisationer släpper programvara snabbare. Det gör det möjligt för team av alla storlekar att leverera högkvalitativa appar med högre hastighet. Produkten har bytt ägare flera gånger: den utvecklades ursprungligen av Mercury, förvärvad av HP, överförd till Micro Focus, och sedan dess OpenText förvärvade Micro Focus i januari 2023 den har sålts som OpenText Application Quality Management.
Funktioner:
- Levererar appar med hastighet, kvalitet och skalbarhet
- Gör det möjligt för intressenter att interagera och samordna för att uppnå projektets mål
- Ger robust trackung och rapportering, och sömlös integration av projektrelaterade uppgifter
- Möjliggör detaljerad projektanalys och effektiv hantering
- Ansluter till e-postsystem och meddelar teammedlemmar om ändringar
Länk: https://www.opentext.com/products/application-quality-management
3) Digital.ai Agilitet (tidigare VersionOne)
Agilitet förenklar produktplanering med enkel hantering av orderstockar. Den är byggd för DevOps och tillhandahåller kontinuerlig leverans från början till slut via ett dra-och-släpp-gränssnitt. Produkten lanserades som VersionOne, flyttades till CollabNet och levereras nu som Digital.ai Rörlighet.
Funktioner:
- Låter användare prioritera berättelser och defekter med hjälp av dra-och-släpp
- Hantera affärsinitiativ med portföljobjekt
- Tillåter gruppering av objekt efter tema
- Ger resultat enligt affärsmål
- Samlar in alla funktionsförfrågningar på ett ställe
- Hjälper till att säkerställa överensstämmelse mellan företagets mål och produktleveranser
- Ger insikter och fullständig överblick till projektledaren
Länk: https://digital.ai/products/agility/
Verktygsvalet spelar mindre roll än hur processen används dagligen, vilket de två scenarierna nedan illustrerar.
Användscenario för ALM ur ett utvecklarperspektiv
- Utvecklaren påbörjar arbetet och kontrollerar den tilldelade uppgiftslistan.
- De granskar uppgifter efter prioritet och väljer en.
- De ändrar uppgiftens status till Pågår.
- De kollar ut kod från källkodsförrådet.
- De implementerar ett enhetstest med testramverket.
- De kör testet med standardbyggskriptet. Code inspektionsrapporter om olagliga namnkonventioner eller potentiella buggar.
- De korrigerar koden och kör testet igen.
- När täckningsgraden når målet, bekräftar de koden med aktivitets-ID:t.
- Sedan kontrollerar de koden och kör byggskriptet.
- Koden kompileras och distribueras till staging-datorn.
- Testfallet körs. Om det inte fungerar skickas ett meddelande automatiskt till utvecklaren och projektledaren.
- Utvecklaren återställer koden i källkodsförrådet och på mellanlagringsdatorn.
- Om testet godkänns anropas kodinspektion och täckningsanalys. Eventuella problem rapporteras; annars meddelas utvecklaren att alla implementeringar har slutförts.
- De registrerar sin arbetshistorik i ärendehanteringssystemet.
- Projektledaren meddelas att uppgiften är löst och granskar resultatet.
Användscenario för ALM ur ett projektledarperspektiv
- Projektledaren öppnar en webbläsare och går till ALM-instrumentpanelens sida.
- Varje projekt har sin egen dashboardsida.
- Den visar antalet öppna uppgifter, antalet väntande uppgifter och alla kritiska uppgifter som är öppna.
- Instrumentpanelen meddelar projektledaren om potentiella risker och visar projektets övergripande tillstånd.
- Varje commit och ändring rapporteras automatiskt.
- ALM-processen eliminerar därför behovet av ett möte eller telefonsamtal för att kontrollera statusen för kontinuerlig integration av kritiska uppgifter.




