#11 Release management a aktualizace MMS

Přehled principů release managementu platformy MMS, způsobu uvolňování nových verzí MMS CORE a řízeného převzetí, ověření a nasazení aktualizací do jednotlivých provozovaných řešení.

Úvod

MMS je průběžně rozvíjená aplikační platforma. Nové obecně využitelné funkce, optimalizace a opravy jsou součástí společného produktového vývoje MMS CORE a prostřednictvím nových verzí jsou postupně uvolňovány do provozovaných řešení.

Aktualizace konkrétního řešení probíhá řízeným procesem, který zohledňuje jeho provozní model, konfiguraci, zákaznická rozšíření a integrační vazby.

Základní principy

MMS odděluje produktové uvolnění nové verze MMS CORE od jejího nasazení do konkrétního zákaznického řešení. Každá aktualizace tak před produkčním nasazením prochází odpovídajícím ověřením kompatibility a testováním.

Tento princip umožňuje průběžně rozvíjet společný produktový základ a současně řídit způsob a termín převzetí změn jednotlivými provozovanými řešeními.

Produktový vývoj MMS CORE

MMS CORE představuje společný produktový základ platformy. Jeho vývoj není vázán na jeden konkrétní APP Tenant, podnikovou agendu nebo zákaznické řešení.

Obsah nové verze

Nová verze MMS CORE může obsahovat například:

  • nové společné funkce,
  • rozšíření existujících funkcí,
  • optimalizace,
  • změny uživatelského prostředí,
  • technologické a bezpečnostní úpravy,
  • opravy chyb.

Obecně využitelné změny jsou realizovány v produktové vrstvě tak, aby mohly být následně využívány jednotlivými APP Tenanty, aplikacemi a agendami.

Release cyklus

MMS CORE je průběžně rozvíjeno a standardně jsou nové verze připravovány v týdenním release cyklu.

Release cyklus určuje rytmus produktového vývoje a dostupnosti nových balíčků. Neznamená automatické produkční nasazení každé nové verze do každého provozovaného řešení.

Release balíček

Výstupem produktového release procesu je release balíček MMS CORE, který představuje definovanou verzi produktové vrstvy určenou k převzetí a následnému nasazení do odpovídajících prostředí.

Release informace

K nové verzi jsou vedeny informace o realizovaných změnách umožňující identifikovat zejména:

  • nové funkce,
  • změny existující funkcionality,
  • optimalizace,
  • opravy,
  • případné dopady relevantní pro nasazení.

Release informace tvoří podklad pro vyhodnocení nové verze a její převzetí do konkrétního řešení. MMS - Vydané balíčky MMS CORE – přehled a stav řešení | EMRIS

Životní cyklus nové verze

Nová verze MMS CORE před uvolněním prochází produktovým vývojem a ověřením.

Vývoj 
Nové funkce, změny a opravy vznikají ve vývojovém prostředí produktové vrstvy.
V této fázi probíhá jejich implementace a vývojové ověření.

Produktové testování
Připravené změny jsou následně ověřovány v testovacích prostředí MMS CORE.

Testování může probíhat v několika úrovních a zahrnovat funkční, integrační, regresní nebo zátěžové ověření podle charakteru připravovaných změn.

V průběhu této fáze mohou být vybrané verze nebo změny současně poskytnuty k ověření v prostředích konkrétních zákaznických řešení. Produktové a zákaznické ověřování proto nemusí probíhat jako dvě striktně navazující fáze.

Uvolnění verze
Po dokončení požadovaného produktového ověření je vytvořen release balíček MMS CORE určený k převzetí do provozovaných řešení.

Uvolněním release balíčku končí produktová část release procesu. Jeho následné převzetí, ověření a nasazení do konkrétního prostředí řešení se řídí samostatným aktualizačním procesem.

Aktualizace konkrétního řešení

Uvolněním nové verze MMS CORE začíná proces jejího převzetí a nasazení do konkrétního provozovaného řešení. Nová produktová verze není automaticky nasazena přímo do produkčního prostředí.

Aktualizace je řízený proces zahrnující převzetí nové verze, plánování jejího nasazení, ověření kompatibility provozovaného řešení, provedení odpovídajících validačních testů a koordinaci uvolnění do následného stupně prostředí.

Rozsah a způsob těchto činností vychází z provozního modelu a architektury konkrétního řešení, jeho konfigurace, používaných funkcí, integračních vazeb a případných zákaznických rozšíření.

Je-li součástí řešení MMS CLIENT, zahrnuje proces také ověření kompatibility zákaznické vrstvy s novou verzí MMS CORE a související testování před produkčním nasazením.

Převzetí verze

Nový release MMS CORE je převzat pro konkrétní provozované řešení a jsou vyhodnoceny změny relevantní pro danou implementaci.

Na jejich základě je plánován další postup ověření a nasazení s ohledem na provozní prostředí, charakter změn a případné závislosti konkrétního řešení.

Ověření kompatibility

Před produkčním nasazením se podle charakteru aktualizace ověřuje kompatibilita nové verze s provozovaným řešením.

Ověření může zahrnovat zejména konfiguraci APP Tenantů, používané moduly a společné služby, procesy, integrační vazby a případná zákaznická rozšíření MMS CLIENT.

Validační testy

Před uvolněním nové verze do produkčního prostředí jsou podle charakteru aktualizace provedeny odpovídající validační testy v konkrétních prostředí.

Jejich cílem je ověřit funkčnost scénářů relevantních pro konkrétní řešení a případné dopady nové verze na jeho konfiguraci, integrace nebo zákaznická rozšíření.

Koordinace produkčního nasazení

Po úspěšném ověření je aktualizace připravena k uvolnění do produkčního prostředí.

Termín a způsob nasazení jsou koordinovány podle provozního režimu konkrétního řešení a poskytovaných služeb. Týdenní release cyklus MMS CORE proto neurčuje automaticky termín produkčního nasazení konkrétního zákaznického řešení.

MMS CLIENT a aktualizace CORE

Pokud zákaznické řešení využívá MMS CLIENT, je při aktualizaci MMS CORE ověřována také kompatibilita zákaznické vrstvy.

Podle charakteru změn mohou být ověřeny relevantní zákaznické funkce, business logika a integrace. Nová verze MMS CORE standardně nevyžaduje změnu MMS CLIENT.

Oddělení produktové a zákaznické vrstvy umožňuje průběžně aktualizovat MMS CORE při zachování kompatibility existujících zákaznických rozšíření.

Konfigurace a aktualizace

Konfigurace APP Tenantů je oddělena od produktového kódu MMS CORE. Aktualizace CORE proto sama o sobě nemění konfiguraci konkrétní aplikace nebo agendy.

Při ověřování nové verze je však zohledněno, jak konkrétní konfigurace využívá aktualizované funkce a společné služby platformy.

Tento princip umožňuje průběžně rozvíjet produktovou vrstvu a současně zachovat konfiguraci jednotlivých zákaznických řešení.

Zákaznický rozvoj a release

Zákaznické změny mohou mít vlastní vývojový a release cyklus nezávislý na pravidelném produktovém release MMS CORE.

Může se jednat například o

  • změny MMS CLIENT,
  • specifické integrace,
  • zákaznickou business logiku,
  • významnější změny konfigurace,
  • rozvoj konkrétní podnikové aplikace nebo agendy.

Takové změny mohou před produkčním nasazením procházet vlastním vývojovým, testovacím a UAT procesem.

Produktový a zákaznický rozvoj mohou probíhat souběžně. Konkrétní řešení tak využívá společný rozvoj MMS CORE a současně může být rozvíjeno prostřednictvím konfigurace a MMS CLIENT. Před produkčním nasazením musí jednotlivé vrstvy vytvářet kompatibilní výsledné řešení.

Provozní prostředí

Pro vývoj, testování a následné uvolňování verzí MMS CORE jsou využívána oddělená produktová prostředí provozovaná společností EMRIS. Vedle nich mohou být podle provozního modelu a rozsahu konkrétního řešení využívána také samostatná zákaznická prostředí.

Produktová prostředí MMS CORE

DEV vývojové prostředí

Vývojové prostředí MMS CORE je určeno pro implementaci nových funkcí, změn a oprav produktové vrstvy a jejich prvotní vývojové ověření.

TEST - testovací prostředí

Testovací prostředí MMS CORE slouží k ověřování připravovaných produktových změn před jejich dalším uvolněním. Testování může podle charakteru změny zahrnovat funkční, integrační a regresní testy a další potřebné scénáře ověření.

Validace MMS CORE

Po dokončení produktového testování je připravovaná verze MMS CORE nasazena do produkčního prostředí provozovaného společností EMRIS, kde probíhá další ověřování v reálném provozu.

Tato fáze umožňuje ověřit novou verzi při skutečném provozním zatížení a uživatelské práci a doplňuje předchozí funkční a integrační testování. Teprve následně je verze uvolňována pro další provozovaná řešení podle jejich aktualizačního procesu.

Zákaznická prostředí

Podle rozsahu a provozního modelu konkrétního řešení mohou být pro vývoj, ověřování a provoz využívána oddělená zákaznická prostředí. Jejich počet, účel a způsob oddělení nejsou platformou MMS pevně stanoveny a vycházejí z charakteru konkrétního řešení a způsobu řízení jeho změn.

Vývojové prostředí  

Samostatné vývojové prostředí může být vytvořeno pro konkrétní zákaznické řešení, zejména při jeho rozsáhlejším nebo průběžném rozvoji.

Oddělení vývojového a testovacího prostředí umožňuje bezpečnou a paralelní realizaci rozvojových požadavků bez ovlivnění probíhajícího testování a UAT. Přispívá tak ke zrychlení vývojového cyklu, zvýšení kvality dodávek a snížení rizika regresních chyb při nasazování změn.

Zákaznické DEV prostředí není povinnou součástí řešení a jeho využití vychází z rozsahu a charakteru

TEST / UAT prostředí

Testovací prostředí slouží k ověřování připravovaných verzí a změn v kontextu konkrétního zákaznického řešení. Může být využíváno pro testování, UAT, ověřování konkrétních scénářů nebo školení uživatelů.

Produkční prostředí 

Produkční prostředí je určeno pro běžný provoz aplikací a agend konkrétního zákaznického řešení.  Nová verze je do něj nasazována po dokončení odpovídajícího ověření a podle aktualizačního procesu daného řešení.

Hotfix

Vedle standardního release cyklu může vzniknout potřeba uvolnit opravu mimo běžný plánovaný postup.

Oprava mimo standardní release

Hotfix je určen pro situace, kdy je potřeba reagovat na chybu nebo jiný problém, jehož řešení není vhodné odložit do následujícího standardního release.

Zařazení do produktového vývoje

Oprava realizovaná prostřednictvím hotfixu je následně zahrnuta do odpovídající verze MMS CORE nebo MMS CLIENT, aby byla zachována kontinuita dalšího vývoje a následujících release.

Hotfix je před nasazením ověřen v rozsahu odpovídajícím charakteru a naléhavosti změny v příslušném porstředí

Aktualizace podle modelu poskytování

Základní princip řízených aktualizací je společný, způsob jejich realizace se však může lišit podle modelu poskytování MMS.

MMS SaaS

Ve společném prostředí Multi zajišťuje aktualizace produktové platformy EMRIS. Jednotlivé pronajaté APP Tenanty využívají společnou aktualizovanou produktovou vrstvu. Tento provozní model neobsahuje zákaznické prostředí TEST / UAT.

MMS Online

Ve Standalone prostředí provozovaném společností EMRIS lze aktualizace plánovat a ověřovat v kontextu konkrétního zákaznického řešení a jeho případných rozšíření. Tento provozní model nemá standardně zákaznické prostředí TEST / UAT.

MMS Customer

Ve Standalone prostředí provozovaném v infrastruktuře zákazníka vyžaduje aktualizace koordinaci nasazení do zákaznického prostředí a odpovídající provozní součinnost.

Zjednodušený pohled

PRODUKTOVÝ VÝVOJ MMS
MMS CORE ↓
vývoj a testování ↓
NOVÁ VERZE ↓
release balíček MMS CORE ↓
CORE CORE + CLIENT
ověření kompatibility ověření kompatibility
CORE + CLIENT
validační testy validační testy
  PRODUKČNÍ NASAZENÍ

Uvolnění nové verze MMS CORE a její produkční nasazení jsou dvě samostatné fáze. Před nasazením do prostředí konkrétního řešení probíhají validační testování a ověření kompatibility pro MMS CLIENT - kontrola zákaznických rozšíření.

Vymezení release managementu

  • MMS CORE je průběžně produktově rozvíjeno.

  • Nové verze jsou standardně připravovány v týdenním release cyklu.

  • Produktový release není totožný s produkčním nasazením konkrétního řešení.

  • Release balíček představuje definovanou verzi MMS CORE.

  • Před produkčním nasazením probíhá validační testování a ověření kompatibility.

  • Konfigurace APP Tenantu je oddělena od produktového kódu MMS CORE.

  • U řešení využívajících MMS CLIENT je ověřována kompatibilita CORE a CLIENT.

  • Zákaznický rozvoj může mít vlastní release a UAT proces.

  • Hotfix umožňuje uvolnit potřebnou opravu mimo standardní release cyklus.

  • Způsob nasazování se může lišit podle provozního modelu poskytování MMS.

  • Pravidelné aktualizace přenášejí společný produktový rozvoj do provozovaných řešení.



Klíčové principy

  • Průběžný produktový rozvoj

  • Týdenní release cyklus

  • Release balíček MMS CORE

  • Release ≠ produkční nasazení

  • Ověření kompatibility

  • Validační testování

  • CORE + CLIENT

  • Oddělení konfigurace

  • DEV / TEST / UAT / PROD

  • Hotfix

  • Řízené produkční nasazení



Galerie