Wat is ALM? De afkorting staat voor Application Lifecycle Management (proces voor applicatielevenscyclusbeheer).
⚡ Slimme samenvatting
ALM, oftewel Application Lifecycle Management, beheert een softwareapplicatie vanaf de eerste specificatie tot en met het ontwerp, de ontwikkeling, het testen, de implementatie en de langdurige gebruikerservaring. Governance, ontwikkeling en beheer vormen de drie elementen, en zeven gedefinieerde fasen begeleiden een idee naar een onderhouden product.

Wat is ALM?
ALM ALM is een proces van specificatie, ontwerp, ontwikkeling en testen van een softwareapplicatie. Het omvat de volledige levenscyclus, van het idee voor de applicatie tot ontwikkeling, testen, implementatie, ondersteuning en uiteindelijk de gebruikerservaring. De volledige naam van ALM is Application Lifecycle Management.
Afhankelijk van de softwareontwikkelingsmethodologie (bijvoorbeeld waterval, agile of DevOps) kan ALM worden opgedeeld in verschillende fasen. Het ALM-proces is hoofdzakelijk onderverdeeld in drie elementen: governance, ontwikkeling en operations.
ALM-proces
Hieronder vindt u de belangrijkste onderdelen van ALM:
Bestuur
Het omvat onder meer vereistenbeheer, resourcebeheer, gegevensbeveiliging, gebruikerstoegang, beoordeling, audit, implementatiebeheer en terugdraaien.
Voordelen van goed bestuur:
- Afgestemde bedrijfsstrategie
- Ontwikkelping een businesscase
- Biedt continue monitoring
- Financiering van projecten die de hoogste waarde opleveren
- Duidelijke verantwoording en controle
Applicatie ontwikkeling
Het omvat het identificeren van actuele problemen, het plannen, ontwerpen, bouwen, testen en implementeren van de applicatie. Dit gebied omvat de traditionele rollen van ontwikkelaar en app-maker.
Toepassingsbewerking
Dit gebied omvat de implementatie van de app en het onderhoud van de technologiestack. Bij de watervalmethode voor softwareontwikkeling is de operationele fase een aparte fase van de ontwikkelingsfase. Een DevOps-team brengt operationele taken en ontwikkeling samen in een volledig geïntegreerd, continu proces.
Waarom is ALM belangrijk?
Hieronder volgen de belangrijkste redenen om ALM te gebruiken:
- Je krijgt goed inzicht in de projectstatus.
- Teams kunnen effectief communiceren.
- De eisen zijn eenvoudig te definiëren en track.
- De software is naar behoren getest.
- De kosten voor het onderhouden en bedienen van de oplossing blijven beperkt.
ALM versus SDLC: waarin ze verschillen.
ALM en de softwareontwikkelingslevenscyclus worden vaak als synoniemen beschouwd, wat tot verwarring leidt wanneer teams een van beide proberen te implementeren. SDLC is een integraal onderdeel van ALM en staat er niet los van.
| Aspect | SDLC | ALM |
|---|---|---|
| strekking | Het bouwen van de software | De volledige productlevenscyclus, van idee tot uitfasering. |
| Begint op | Vereisten voor een bouwproject | De eerste businesscase |
| Eindigt bij | Implementatie van die release | Buitenbedrijfstelling van de applicatie |
| Omvat bestuur | Nee | Ja — financiering, toegang, controle, naleving |
| Aantal cycli | Eén per release | Meerdere SDLC-cycli gedurende de levensduur van één applicatie. |
Een applicatie doorloopt doorgaans vele iteraties in de softwareontwikkelingslevenscyclus (SDLC), terwijl deze binnen één enkele ALM-levenscyclus blijft. Inzicht in deze geneste structuur verklaart waarom de onderstaande fasen zich tot ver na het moment van code-release uitstrekken.
Fasen van ALM (Application Lifecycle Management)
Hier zijn de verschillende fasen van ALM:
1) Behoeftebeheer
Vereistenbeheer is de eerste fase van ALM. Het helpt je bij het documenteren, analyseren en track, prioriteer en stem de vereisten af. Het is een continu proces dat gedurende de gehele projectlevenscyclus plaatsvindt. Bekijk ook onze lijst met de beste software voor vereistenbeheer.
2) Ontwerp
Designmanagement is een proces dat de klanttevredenheid en -loyaliteit verhoogt door de gebruiksvriendelijkheid te verbeteren. Het geeft ook vorm aan de interactie tussen de klant en het product.
3) Bouwbeheer
Buildmanagement, ook wel codemanagement genoemd, is het proces waarbij broncodebestanden worden omgezet in een zelfstandige softwarecomponent. In deze fase transformeert een applicatie-idee in een daadwerkelijke applicatie.
Tijdens deze fase wordt de applicatie gebouwd, getest en geïmplementeerd, waarna de tester begint met het voorbereiden van testgevallen en het schrijven van testscripts voor de testfase.
4) SCM
Softwareconfiguratiebeheer (SCMALM is de ALM-fase waarin het ontwikkelteam systematisch wijzigingen in documenten, code en andere entiteiten organiseert, beheert en controleert gedurende de applicatieontwikkelingslevenscyclus.
5) Operaties en Onderhoud
In deze fase beginnen de monitoring, het beheer en de doorlopende ontwikkeling van de applicatie. Binnen DevOps omvat deze fase de stappen "release", "configuratie" en "monitoring".
In deze fase spoor je bugs op en los je ze op. De fase helpt je bij het plannen en prioriteren van de volgende productupdates.
6) Testmanagement
Tijdens de testfase controleren testers of de applicatie voldoet aan de eisen die in de eerste stappen van het proces zijn vastgesteld.
Ze zorgen er ook voor dat de applicatie voldoet aan de verwachtingen van de gebruiker en aan de behoeften van alle andere belanghebbenden die de applicatie gedurende de gehele levenscyclus zullen ondersteunen, zelfs wanneer die verwachtingen niet goed in kaart zijn gebracht tijdens de fase van de vereistenanalyse.
7) Gebruikerservaring
Onderhoud, oftewel de gebruikerservaring, is van oudsher de langste fase van ALM, maar tegelijkertijd ook de fase waarin de test- en ontwikkelteams doorgaans het minst betrokken zijn.
Zodra de applicatie is ontwikkeld, komt de rol van de gebruikers in beeld. Zij gebruiken de volledige applicatie, delen hun ervaringen via feedback en vervolgens wordt de uiteindelijke applicatie opgeleverd.
Voordelen van ALM
Hieronder volgen de voordelen van het gebruik van ALM:
- ALM helpt u het systeem te beheren door het te organiseren en trackoningswerk.
- Fouten kunnen over projecten heen worden gedeeld, waardoor het risico op dubbele problemen wordt verminderd.
- ALM biedt integratie met andere testtools.
- Het biedt een duidelijke richting voor een app voordat deze wordt gebouwd.
- Zonder ALM is het moeilijk voor een softwareontwikkelteam om software te produceren met de snelheid en flexibiliteit die nodig zijn om concurrerend te blijven.
- ALM levert software efficiënt met minimale belasting voor het team.
ALM-hulpmiddelen
Hier zijn enkele belangrijke ALM-tools:
1) Kovair ALM-studio
Kovair is een van de meest complete Application Lifecycle Management-producten. Het kan alle fasen van de ontwikkelingslevenscyclus beheren, van vereisten tot release.
Kenmerken:
- Kies voor een volledig webgebaseerde oplossing zonder clientsoftware, waardoor de ondersteuningslast wordt verminderd.
- Oefen elke ontwikkelingsmethodologie: waterval, agile of hybride.
- Implementeer een configureerbare taakgebaseerde workflow-engine voor meer efficiëntie en productiviteit
- Ontvang realtime meldingen in elke bruikbare fase
- Zorg voor een complete dekking van elke ontwikkelingsstap, waardoor naleving van de normen mogelijk is.
- Maak realtime weergave van de status van artefacten mogelijk, wat de transparantie en voorspelbaarheid van releases vergroot.
Link: https://www.kovair.com/alm-studio/
2) OpenText Applicatiekwaliteitsbeheer (voorheen Micro Focus ALM)
Deze tool ondersteunt lean, agile en DevOps-levering, en helptping Organisaties brengen sneller software uit. Het stelt teams van elke omvang in staat om sneller hoogwaardige apps te leveren. Het product is meerdere malen van eigenaar veranderd: het werd oorspronkelijk ontwikkeld door Mercury, overgenomen door HP, overgedragen aan Micro Focus, en sindsdien OpenText Micro Focus werd in januari 2023 overgenomen. het is verkocht als OpenText Toepassingskwaliteitsbeheer.
Kenmerken:
- Levert apps met snelheid, kwaliteit en op grote schaal.
- Maakt het voor belanghebbenden mogelijk om met elkaar te communiceren en samen te werken om projectdoelen te bereiken.
- Biedt robuuste trackoning en rapportage, en naadloze integratie van projectgerelateerde taken
- Maakt gedetailleerde projectanalyse en effectief beheer mogelijk.
- Maakt verbinding met e-mailsysteem en stelt teamleden op de hoogte van wijzigingen.
Link: https://www.opentext.com/products/application-quality-management
3) Digital.ai Agility (voorheen VersionOne)
Agility vereenvoudigt productplanning met eenvoudig backlogbeheer. Het is ontwikkeld voor DevOps en biedt end-to-end continue levering via een drag-and-drop-interface. Het product werd gelanceerd als VersionOne, verhuisde naar CollabNet en wordt nu geleverd als Digital.ai Behendigheid.
Kenmerken:
- Hiermee kunnen gebruikers taken en defecten prioriteren door middel van slepen en neerzetten.
- Beheer zakelijke initiatieven met portfolio-items.
- Hiermee kunnen items op thema worden gegroepeerd.
- Levert resultaten op die aansluiten bij de bedrijfsdoelstellingen.
- Verzamelt alle functieverzoeken op één plek.
- Helpt ervoor te zorgen dat de bedrijfsdoelstellingen en de productresultaten op elkaar zijn afgestemd.
- Biedt inzicht en een volledig overzicht aan de projectmanager.
Link: https://digital.ai/products/agility/
De keuze van het gereedschap is minder belangrijk dan de manier waarop het proces in de dagelijkse praktijk wordt gebruikt, zoals de twee onderstaande scenario's illustreren.
Gebruiksscenario van ALM vanuit het perspectief van een ontwikkelaar
- De ontwikkelaar gaat aan de slag en controleert de takenlijst die aan hem of haar is toegewezen.
- Ze beoordelen de taken op prioriteit en kiezen er één uit.
- Ze wijzigen de status van de taak naar 'In uitvoering'.
- Ze halen code op uit de broncodeopslagplaats.
- Ze implementeren een unit-test met behulp van het testframework.
- Ze voeren de test uit met het standaard buildscript. Code Inspectierapporten melden illegale naamgevingsconventies of potentiële bugs.
- Ze corrigeren de code en voeren de test opnieuw uit.
- Zodra de dekkingsgraad het beoogde niveau bereikt, wordt de code met de taak-ID vastgelegd.
- Vervolgens controleren ze de code en voeren ze het buildscript uit.
- De code wordt gecompileerd en geïmplementeerd op de testomgeving.
- De testcase wordt uitgevoerd. Als deze mislukt, wordt er automatisch een melding naar de ontwikkelaar en projectmanager gestuurd.
- De ontwikkelaar draait de code terug in de broncode-repository en op de testomgeving.
- Als de test slaagt, worden code-inspectie en dekkingsanalyse uitgevoerd. Eventuele problemen worden gemeld; anders wordt de ontwikkelaar op de hoogte gesteld dat alle implementaties succesvol zijn afgerond.
- Ze registreren hun werkgeschiedenis in het taakbeheersysteem.
- De projectmanager wordt op de hoogte gesteld dat de taak is afgerond en beoordeelt het resultaat.
Use case scenario van ALM vanuit het perspectief van een Projectleider
- De projectleider opent een webbrowser en gaat naar de ALM-dashboardpagina.
- Elk project heeft zijn eigen dashboardpagina.
- Het toont het aantal openstaande taken, het aantal taken in behandeling en alle kritieke taken die openstaan.
- Het dashboard informeert de projectleider over potentiële risico's en geeft een overzicht van de algehele projectstatus.
- Elke commit en wijziging wordt automatisch gerapporteerd.
- Het ALM-proces maakt daarom een vergadering of telefoongesprek overbodig om de status van de continue integratie van kritieke taken te controleren.



