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.

  • 🧭 Tre element: Styrning kontrollerar finansiering och åtkomst, utveckling bygger applikationen och driften kör och underhåller den distribuerade teknikstacken.
  • 📋 Krav Foundation: Dokumentation, analys, prioritering och överenskommelse om krav sker kontinuerligt snarare än att avslutas innan bygget påbörjas.
  • 🔁 Metodkänslig: Waterfall separerar drift från utveckling, medan DevOps sammanfogar dem till en kontinuerlig, helt integrerad process.
  • 🗂️ Konfigurationskontroll: Programvarukonfigurationshantering tracregistrerar varje ändring av kod, dokument och relaterade entiteter under hela livscykeln.
  • 🧪 Verifieringsomfattning: Testning bekräftar överensstämmelse med angivna krav och med intressenternas förväntningar som kraven inte uppfyllde.
  • 🛠️ Verktygslandskap: Kovair ALM Studio, OpenText Kvalitetshantering för applikationer, och Digital.ai Krav för agilitetsskydd fram till releasedatum.

Vad är ALM

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)

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.

Kovair ALM Studio

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.

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.

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.

Vanliga frågor

Nej. ALM är disciplinen; HP ALM är en produkt som implementerar det. Den produkten säljs nu som OpenText Applikationskvalitetshantering efter att ha passerat Mercury, HP och Micro Focus.

Ägarskapet delas. Styrningen ligger vanligtvis hos produkt- och portföljhanteringen, utvecklingen hos ingenjörscheferna och driften hos plattformen eller DevOps-teamet. En enda ägare för hela livscykeln är sällsynt.

AI utarbetar krav från intressentmeddelanden, genererar testfall från dessa krav, förutspår vilka ändringar medför den högsta felrisken och sammanfattar releaseberedskapen för styrningsgranskningar.

Delvis. AI kan föreslå kopplingar mellan krav, testfall och commits genom att matcha språk och ändringshistorik. Reglerade miljöer kräver fortfarande att en människa godkänner tracgenomförbarhetsmatris före revision.

Kravtäckning, andel fel som undkommit, ledtid från begäran till release och omarbetningsprocent. Stigande täckning med minskande andel fel som undkommit indikerar att livscykelkontrollerna är effektiva.

Sammanfatta detta inlägg med: