Hvad er ALM? Fuld formular, proces for applikationslivcyklusstyring

⚡ Smart opsummering

ALM, eller Application Lifecycle Management, styrer en softwareapplikation fra den indledende specifikation gennem design, udvikling, test, implementering og langsigtet brugeroplevelse. Styring, udvikling og drift udgør dens tre elementer, og syv definerede faser fører en idé til et vedligeholdt produkt.

  • 🧭 Tre elementer: Governance styrer finansiering og adgang, udvikling bygger applikationen, og driften kører og vedligeholder den implementerede teknologistak.
  • ???? Krav Foundation: Dokumentation, analyse, prioritering og aftale af krav foregår løbende i stedet for at blive afsluttet, før byggeriet starter.
  • 🔁 Metodisk følsom: Waterfall adskiller drift fra udvikling, mens DevOps samler dem i én kontinuerlig, fuldt integreret proces.
  • 🗂️ Konfigurationskontrol: Software Configuration Management tracregistrerer alle ændringer af kode, dokumenter og relaterede enheder på tværs af livscyklussen.
  • 🧪 Bekræftelsesomfang: Testning bekræfter overholdelse af de angivne krav og interessenternes forventninger, som kravene ikke opfyldte.
  • 🛠️ Værktøjslandskab: Kovair ALM Studio, OpenText Applikationskvalitetsstyring og Digital.ai Krav til agilitetsdækning frem til udgivelsen.

Hvad er ALM

Hvad er ALM?

ALM er en proces med specifikation, design, udvikling og test af en softwareapplikation. Den dækker hele livscyklussen fra idéen bag applikationen til udvikling, test, implementering, support og i sidste ende brugeroplevelsesfasen. Den fulde form for ALM er Application Lifecycle Management (ALM).

Afhængigt af softwareudviklingsmetoden (f.eks. vandfald, agil eller DevOps) kan ALM opdeles i forskellige faser. ALM-processen er hovedsageligt opdelt i tre elementer: styring, udvikling og drift.

ALM proces

Her er de vigtigste områder inden for ALM:

Governance

Det omfatter kravstyring, ressourcestyring, datasikkerhed, brugeradgang, gennemgang, revision, implementeringskontrol og rollback.

Fordele ved styring:

  • Afstemt forretningsstrategi
  • Udviklingping en forretningsplan
  • Tilbyder løbende overvågning
  • Finansiering af projekter, der leverer den højeste værdi
  • Klar ansvarlighed og kontrol

Applikationsudvikling

Det omfatter identifikation af aktuelle problemer, planlægning, design, opbygning, testning og implementering af applikationen. Dette område dækker de traditionelle udvikler- og app-skaberroller.

Applikationsoperation

Dette område omfatter implementering af appen og vedligeholdelse af teknologistakken. I vandfaldssoftwareudviklingsmetoden er drift en separat fase fra udvikling. Et DevOps-team samler drift og udvikling i en fuldt integreret, kontinuerlig proces.

Hvorfor er ALM vigtigt?

Følgende er hovedårsagerne til at bruge ALM:

  • Du får et godt overblik over projektets status.
  • Teams er i stand til at kommunikere effektivt.
  • Kravene er nemme at definere, og track.
  • Softwaren er testet tilstrækkeligt.
  • Omkostningerne til vedligeholdelse og drift af løsningen er fortsat begrænsede.

ALM vs SDLC: Hvordan de adskiller sig

ALM og softwareudviklingslivscyklussen behandles ofte som synonymer, hvilket skaber forvirring, når teams forsøger at implementere en. SDLC sidder inden for ALM snarere end ved siden af ​​den.

Aspect SDLC ALM
Anvendelsesområde Opbygning af softwaren Hele produktets levetid, fra idé til pensionering
starter ved Krav til en bygning Den indledende business case
Slutter kl. Implementering af den udgivelse Nedlukning af applikationen
Dækker styring Ingen Ja — finansiering, adgang, revision, compliance
Antal cyklusser Én pr. udgivelse Mange SDLC-cyklusser i løbet af én applikationslevetid

En applikation gennemgår typisk mange SDLC-iterationer, mens den forbliver inden for en enkelt ALM-livscyklus. Forståelsen af ​​indlejring forklarer, hvorfor stadierne nedenfor strækker sig langt ud over det punkt, hvor koden sendes.

Stadier af ALM (Application Lifecycle Management)

Stadier af ALM (Application Lifecycle Management)

Her er de forskellige stadier af ALM:

1) Kravstyring

Kravstyring er den første fase af ALM. Den hjælper dig med at dokumentere, analysere, track, prioritér og aftal krav. Det er en kontinuerlig proces, der løber gennem hele projektets livscyklus. Se også vores liste over de bedste software til håndtering af krav.

2) Design

Designstyring er en proces, der bidrager til at øge kundetilfredshed og loyalitet ved at forbedre brugervenligheden. Det former også interaktionen mellem kunden og produktet.

3) Bygningsstyring

Byggestyring, også kendt som kodestyring, er processen med at konvertere kildekodefiler til en separat softwarekomponent. I denne fase omdannes en applikationsidé til en faktisk applikation.

I denne fase bygges, testes og implementeres applikationen, og testeren begynder at forberede testcases og skrive testscripts til testfasen.

4) SCM

Software Configuration Management (SCM) er ALM-fasen, hvor udviklingsteamet systematisk organiserer, administrerer og kontrollerer ændringer i dokumenter, kode og andre enheder i løbet af applikationsudviklingens livscyklus.

5) Operationer og vedligeholdelse

I denne fase begynder overvågning, styring og løbende udvikling af applikationen. I DevOps dækker denne fase "release", "config" og "monitor".

I denne fase finder og løser du fejl. Fasen hjælper dig med at planlægge og prioritere de næste opdateringer til produktet.

6) Testhåndtering

I testfasen verificerer testerne, at applikationen overholder de krav, der er defineret i de indledende trin i processen.

De sikrer også, at applikationen opfylder brugernes forventninger og behovene hos alle andre interessenter, der vil understøtte den gennem hele dens livscyklus, selv hvor disse forventninger ikke blev korrekt indfanget i kravfasen.

7) Brugeroplevelse

Vedligeholdelse, eller brugeroplevelse, er traditionelt den længste fase af ALM, men det er også den fase, hvor deltagelse fra test- og udviklingsteams normalt er lavest.

Når applikationen er udviklet, kommer brugernes rolle i spil. De øver sig i hele applikationen og deler deres oplevelser gennem feedback, og den endelige applikation leveres.

Fordele ved ALM

Her er fordelene ved at bruge ALM:

  • ALM hjælper dig med at kontrollere systemet ved at organisere og trackonge arbejde.
  • Fejl kan deles på tværs af projekter, hvilket reducerer risikoen for dobbeltarbejde.
  • ALM tilbyder integration med andre testværktøjer.
  • Det giver en klar retning for en app, før den bygges.
  • Uden ALM er det svært for et softwareudviklingsteam at producere software med den hastighed og smidighed, der er nødvendig for at forblive konkurrencedygtig.
  • ALM leverer software effektivt med minimal overhead for teamet.

ALM værktøjer

Her er nogle vigtige ALM-værktøjer:

1) Kovair ALM Studio

Kovair er et af de mest omfattende produkter inden for applikationslivscyklusstyring. Det kan håndtere hele udviklingslivscyklussen, fra krav til udgivelse.

Kovair ALM Studio

Funktioner:

  • Adopter en fuldt webbaseret løsning uden klientsidesoftware, hvilket reducerer supportbyrden
  • Øv dig i enhver udviklingsmetodik: vandfald, agil eller hybrid
  • Implementer en konfigurerbar opgavebaseret workflowmotor for øget effektivitet og produktivitet
  • Få meddelelser i realtid på alle handlingsmuligheder
  • Giver fuld dækning af alle udviklingstrin, hvilket muliggør overholdelse af standarder
  • Tillad realtidsvisning af artefaktstatus, hvilket øger gennemsigtigheden og forudsigeligheden af ​​frigivelse

Forbindelse: https://www.kovair.com/alm-studio/

2) OpenText Applikationskvalitetsstyring (tidligere Micro Focus ALM)

Dette værktøj understøtter lean, agil og DevOps-levering, helping organisationer udgiver software hurtigere. Det giver teams i alle størrelser mulighed for at levere apps af høj kvalitet med større hastighed. Produktet har skiftet hænder flere gange: det blev oprindeligt udviklet af Mercury, opkøbt af HP, overført til Micro Focus, og siden OpenText opkøbte Micro Focus i januar 2023 den er blevet solgt som OpenText Application Quality Management.

OpenText Application Quality Management

Funktioner:

  • Leverer apps med hastighed, kvalitet og skala
  • Giver interessenter mulighed for at interagere og koordinere for at nå projektets mål
  • Giver robust tracadministration og rapportering samt problemfri integration af projektrelaterede opgaver
  • Muliggør detaljeret projektanalyse og effektiv styring
  • Forbinder til e-mailsystemer og underretter teammedlemmer om ændringer

Forbindelse: https://www.opentext.com/products/application-quality-management

3) Digital.ai Agilitet (tidligere VersionOne)

Agilitet forenkler produktplanlægning med nem styring af efterslæb. Det er bygget til DevOps og leverer kontinuerlig end-to-end-levering via en træk-og-slip-grænseflade. Produktet blev lanceret som VersionOne, flyttet til CollabNet og leveres nu som Digital.ai Agility.

Digital.ai Agility

Funktioner:

  • Giver brugerne mulighed for at prioritere historier og defekter ved hjælp af træk og slip
  • Administrer forretningsinitiativer med porteføljeelementer
  • Tillader gruppering af elementer efter tema
  • Leverer resultater i henhold til forretningsmål
  • Samler alle funktionsanmodninger ét sted
  • Hjælper med at sikre overensstemmelse mellem virksomhedens mål og produktleverancer
  • Giver projektlederen indsigt og gennemsigtighed fra start til slut

Forbindelse: https://digital.ai/products/agility/

Valg af værktøj betyder mindre end hvordan processen bruges i det daglige, hvilket de to scenarier nedenfor illustrerer.

Brug case-scenarie for ALM fra et udviklerperspektiv

  • Udvikleren starter arbejdet og kontrollerer den tildelte opgaveliste.
  • De gennemgår opgaver efter prioritet og vælger én.
  • De ændrer opgavens status til Igangværende.
  • De tjekker kode ud fra kildekodearkivet.
  • De implementerer en enhedstest med testframeworket.
  • De udfører testen med standardbyggeskriptet. Code inspektionsrapporter om ulovlige navngivningskonventioner eller potentielle fejl.
  • De retter koden og kører testen igen.
  • Når dækningsgraden når målet, committer de koden med opgave-id'et.
  • Derefter tjekker de koden og kører byggescriptet.
  • Koden kompileres og implementeres på staging-maskinen.
  • Testcasen kører. Hvis den ikke fungerer, sendes der automatisk en besked til udvikleren og projektlederen.
  • Udvikleren ruller koden tilbage i kildearkivet og på staging-maskinen.
  • Hvis testen består, aktiveres kodeinspektion og dækningsanalyse. Ethvert problem rapporteres; ellers får udvikleren besked om, at alle implementeringer er gennemført.
  • De registrerer deres arbejdshistorik i opgavestyringssystemet.
  • Projektlederen får besked om, at opgaven er løst, og gennemgår resultatet.

Brug case-scenarie for ALM fra et projektlederperspektiv

  • Projektlederen åbner en webbrowser og går til ALM-dashboardsiden.
  • Hvert projekt har sin egen dashboard-side.
  • Den viser antallet af åbne opgaver, antallet af ventende opgaver og alle kritiske opgaver, der er åbne.
  • Dashboardet underretter projektlederen om potentielle risici og viser den samlede projekttilstand.
  • Hver commit og ændring rapporteres automatisk.
  • ALM-processen fjerner derfor behovet for et møde eller telefonopkald for at kontrollere status for kontinuerlig integration af kritiske opgaver.

Ofte Stillede Spørgsmål

Nej. ALM er disciplinen; HP ALM er ét produkt, der implementerer det. Det produkt sælges nu som OpenText Applikationskvalitetsstyring efter gennemgang Mercury, HP og Micro Focus.

Ejerskabet er delt. Styring ligger normalt hos produkt- og porteføljestyring, udvikling hos tekniske ledere og drift hos platformen eller DevOps-teamet. En enkelt ejer for hele livscyklussen er sjælden.

AI udarbejder krav ud fra interessentnotater, genererer testcases ud fra disse krav, forudsiger hvilke ændringer, der indebærer den højeste fejlrisiko, og opsummerer udgivelsesberedskab til governance reviews.

Delvist. AI kan foreslå links mellem krav, testcases og commits ved at matche sprog og ændringshistorik. Regulerede miljøer kræver stadig, at et menneske godkender traceffektivitetsmatrix før revision.

Kravdækning, fejlfrihedsrate, leveringstid fra anmodning til frigivelse og genbearbejdningsprocent. Stigende dækning med faldende fejlfrihedsrate indikerer, at livscykluskontrollerne er effektive.

Opsummer dette indlæg med: