Co je ALM? Úplná forma, proces správy životního cyklu aplikací
⚡ Chytré shrnutí
ALM neboli Application Lifecycle Management (Správa životního cyklu aplikace) řídí softwarovou aplikaci od počáteční specifikace přes návrh, vývoj, testování, nasazení až po dlouhodobou uživatelskou zkušenost. Řízení, vývoj a provoz tvoří její tři prvky a sedm definovaných fází převádí nápad do udržovaného produktu.

Co je ALM?
ALM je proces specifikace, návrhu, vývoje a testování softwarové aplikace. Zahrnuje celý životní cyklus od nápadu na aplikaci až po vývoj, testování, nasazení, podporu a nakonec fázi uživatelské zkušenosti. Úplná forma ALM je Application Lifecycle Management (správa životního cyklu aplikací).
V závislosti na metodologii vývoje softwaru (například vodopádový, agilní nebo DevOps) může být ALM rozděleno do různých fází. Proces ALM se dělí hlavně na tři prvky: řízení, vývoj a provoz.
Proces ALM
Zde jsou klíčové oblasti ALM:
Správní rada
Zahrnuje správu požadavků, správu zdrojů, zabezpečení dat, přístup uživatelů, kontrolu, audit, řízení nasazení a vrácení zpět.
Výhody správy a řízení:
- Sladěná obchodní strategie
- Developing obchodní případ
- Nabízí nepřetržité monitorování
- Financování projektů, které přinášejí nejvyšší hodnotu
- Jasná odpovědnost a kontrola
Vývoj aplikací
Zahrnuje identifikaci aktuálních problémů, plánování, návrh, tvorbu, testování a nasazení aplikace. Tato oblast pokrývá tradiční role vývojáře a tvůrce aplikací.
Provoz aplikace
Tato oblast zahrnuje nasazení aplikace a údržbu technologického stacku. V metodě vodopádového vývoje softwaru je provoz oddělenou fází od vývoje. DevOps tým spojuje provoz a vývoj do plně integrovaného, nepřetržitého procesu.
Proč je ALM důležitý?
Níže jsou uvedeny hlavní důvody pro použití ALM:
- Získáte dobrý přehled o stavu projektu.
- Týmy jsou schopny efektivně komunikovat.
- Požadavky se snadno definují a track.
- Software je dostatečně otestován.
- Náklady na údržbu a provoz řešení zůstávají omezené.
ALM vs. SDLC: Jak se liší
ALM a životní cyklus vývoje softwaru (Save Development Life Cycle) jsou často považovány za synonyma, což způsobuje zmatek, když se týmy snaží jeden z nich zavést. SDLC je součástí ALM, nikoli vedle něj.
| Vzhled | SDLC | ALM |
|---|---|---|
| Rozsah | Vytvoření softwaru | Celý životní cyklus produktu, od nápadu až po vyřazení z provozu |
| Začíná v | Požadavky na sestavení | Počáteční obchodní případ |
| Končí v | Nasazení dané verze | Vyřazení aplikace z provozu |
| Zahrnuje správu a řízení | Ne | Ano – financování, přístup, audit, dodržování předpisů |
| Počet cyklů | Jeden na vydání | Mnoho cyklů SDLC během životnosti jedné aplikace |
Aplikace obvykle prochází mnoha iteracemi SDLC a zároveň zůstává v rámci jednoho životního cyklu ALM. Pochopení vnořování vysvětluje, proč níže uvedené fáze sahají daleko za bod, kdy je kód dodáván.
Fáze ALM (řízení životního cyklu aplikací)
Zde jsou různé fáze ALM:
1) Řízení požadavků
Správa požadavků je první fází ALM. Pomáhá vám dokumentovat, analyzovat, track, stanovit priority a dohodnout se na požadavcích. Je to nepřetržitý proces, který probíhá po celou dobu životního cyklu projektu. Podívejte se také na náš seznam nejlepších software pro správu požadavků.
2) Design
Řízení designu je proces, který pomáhá zvyšovat spokojenost a loajalitu zákazníků zlepšením použitelnosti. Zároveň formuje interakci mezi zákazníkem a produktem.
3) Správa sestavení
Správa sestavení, známá také jako správa kódu, je proces převodu souborů zdrojového kódu do samostatné softwarové komponenty. V této fázi se nápad na aplikaci transformuje do skutečné aplikace.
Během této fáze je aplikace sestavena, otestována a nasazena a tester začíná připravovat testovací případy a psát testovací skripty pro testovací fázi.
4) SCM
Správa konfigurace softwaru (SCM) je fáze ALM, ve které vývojový tým systematicky organizuje, spravuje a kontroluje změny v dokumentech, kódu a dalších entitách během životního cyklu vývoje aplikace.
5) Operaa údržba
V této fázi začíná monitorování, správa a průběžný vývoj aplikace. V DevOps tato fáze zahrnuje „vydání“, „konfiguraci“ a „monitorování“.
V této fázi vyhledáváte a řešíte chyby. Tato fáze vám pomáhá plánovat a prioritizovat další aktualizace produktu.
6) Správa testů
Ve fázi testování testeři ověřují, zda aplikace splňuje požadavky definované v úvodních krocích procesu.
Také zajišťují, aby aplikace splňovala očekávání uživatelů a potřeby všech ostatních zúčastněných stran, které ji budou podporovat po celou dobu jejího životního cyklu, a to i v případě, že tato očekávání nebyla během fáze požadavků řádně zachycena.
7) Uživatelská zkušenost
Údržba neboli uživatelská zkušenost je tradičně nejdelší fází ALM, ale je to také fáze, ve které je účast testovacích a vývojových týmů obvykle nejnižší.
Jakmile je aplikace vyvinuta, vstupuje do hry role uživatelů. Ti si celou aplikaci vyzkouší, sdílejí své zkušenosti prostřednictvím zpětné vazby a finální verze aplikace je dodána.
Výhody ALM
Zde jsou výhody používání ALM:
- ALM vám pomáhá řídit systém organizací a trackrálovská práce.
- Vady lze sdílet napříč projekty, což snižuje riziko duplicity.
- ALM nabízí integraci s dalšími testovacími nástroji.
- Poskytuje jasný směr pro aplikaci před jejím vytvořením.
- Bez ALM je pro tým vývoje softwaru těžké produkovat software rychlostí a agilitou, která je potřebná k udržení konkurenceschopnosti.
- ALM dodává software efektivně s minimálními režijními náklady na tým.
Nástroje ALM
Zde jsou některé důležité nástroje ALM:
1) Kovair ALM Studio
Kovair je jeden z nejkomplexnějších produktů pro správu životního cyklu aplikací. Dokáže zvládnout komplexní fáze vývoje od požadavků až po vydání.
Funkce:
- Přijměte plně webové řešení bez klientského softwaru, což snižuje zátěž podpory.
- Praktikujte jakoukoli vývojovou metodologii: vodopádovou, agilní nebo hybridní
- Implementujte konfigurovatelný pracovní tok založený na úkolech pro zvýšení efektivity a produktivity
- Získejte oznámení v reálném čase v každé fázi akce
- Zajistěte kompletní pokrytí každého kroku vývoje a umožněte dodržování standardů
- Umožňují zobrazení stavu artefaktů v reálném čase, což zvyšuje transparentnost a předvídatelnost vydání.
Odkaz: https://www.kovair.com/alm-studio/
2) OpenText Řízení kvality aplikací (dříve Micro Focus ALM)
Tento nástroj podporuje štíhlé, agilní a DevOps implementace, helpping Organizace vydávají software rychleji. Umožňuje týmům všech velikostí dodávat vysoce kvalitní aplikace s větší rychlostí. Produkt několikrát změnil majitele: původně byl vyvinut společností Mercury, kterou získala společnost HP, převedla do společnosti Micro Focus a od té doby OpenText získala společnost Micro Focus v lednu 2023 bylo prodáno jako OpenText Řízení kvality aplikací.
Funkce:
- Nabízí aplikace s rychlostí, kvalitou a škálovatelností
- Umožňuje zúčastněným stranám interagovat a koordinovat úsilí o dosažení cílů projektu
- Poskytuje robustní trackrál a reporting a bezproblémová integrace úkolů souvisejících s projektem
- Umožňuje podrobnou analýzu projektu a efektivní řízení
- Připojuje se k e-mailovým systémům a informuje členy týmu o změnách
Odkaz: https://www.opentext.com/products/application-quality-management
3) Digital.ai Agility (dříve VersionOne)
Agilita zjednodušuje plánování produktů díky snadné správě nevyřízených objednávek. Je navržena pro devops a poskytuje komplexní nepřetržité doručování prostřednictvím rozhraní typu drag-and-drop. Produkt byl spuštěn jako VersionOne, přesunut do CollabNet a nyní se dodává jako Digital.ai Hbitost.
Funkce:
- Umožňuje uživatelům upřednostňovat příběhy a defekty pomocí přetahování
- Spravujte obchodní iniciativy pomocí položek portfolia
- Umožňuje seskupování položek podle tématu
- Poskytuje výsledky dle obchodních cílů
- Zachycuje všechny požadavky na funkce na jednom místě
- Pomáhá zajistit soulad mezi firemními cíli a výstupy produktů
- Poskytuje projektovému manažerovi přehled a komplexní přehled
Odkaz: https://digital.ai/products/agility/
Výběr nástroje je méně důležitý než to, jak se proces používá denně, což ilustrují dva níže uvedené scénáře.
Scénář použití ALM z pohledu vývojáře
- Vývojář zahájí práci a zkontroluje seznam úkolů, který mu byl přiřazen.
- Procházejí úkoly podle priority a jeden si vyberou.
- Změní stav úkolu na Probíhá.
- Kontrolují kód z repozitáře zdrojového kódu.
- Implementují jednotkový test s testovacím frameworkem.
- Test provedou pomocí standardního skriptu pro sestavení. Code inspekce hlásí nelegální konvence pojmenování nebo potenciální chyby.
- Opraví kód a znovu spusťí test.
- Jakmile míra pokrytí dosáhne cíle, potvrdí kód s ID úlohy.
- Pak si prohlédnou kód a spustí sestavovací skript.
- Kód je zkompilován a nasazen na testovací počítač.
- Testovací případ se spustí. Pokud dojde k jeho selhání, vývojáři a projektovému manažerovi se automaticky odešle oznámení.
- Vývojář vrátí zpět kód ve zdrojovém repozitáři a na testovacím počítači.
- Pokud test projde, spustí se inspekce kódu a analýza pokrytí. Jakýkoli problém je nahlášen; v opačném případě je vývojář upozorněn, že všechny implementace byly úspěšně dokončeny.
- Zaznamenávají svou pracovní historii v systému pro správu úkolů.
- Projektový manažer je informován o vyřešení úkolu a zkontroluje výsledek.
Scénář použití ALM z pohledu vedoucího projektu
- Vedoucí projektu otevře webový prohlížeč a přejde na stránku řídicího panelu ALM.
- Každý projekt má svou vlastní stránku s dashboardem.
- Zobrazuje počet otevřených úloh, počet čekajících úloh a všechny kritické úlohy, které jsou otevřené.
- Řídicí panel upozorňuje vedoucího projektu na potenciální rizika a zobrazuje celkový stav projektu.
- Každý commit a změna je automaticky hlášena.
- Proces ALM proto odstraňuje potřebu schůzky nebo telefonátu za účelem kontroly stavu průběžné integrace kritických úkolů.



