Svět IT je plný prostředí, které mají plno různých významů. Tady jsou ty základní.
Prostředí může být určitá verze aplikace, web na určité URL, celý počítač, na který se uživatelé připojují a pracují na něm, či celá infrastruktura HW a SW vybavení (případně kombinace všeho možného). Ke každému prostředí se přistupuje jinak, je na něm jiné HW a SW vybavení a pracují na něm různé role.
- Vývojové (development)
- Slouží k “výrobě”. Zde se vše připravuje, zkouší a vyvíjí. Je to taková bitevní zóna, která musí vykazovat určitou míru “dokonalosti” a stability, aby na nich vyvíjené objekty byly použitelné, nasaditelné a provozovatelné na produkčním prostředí.
- Personál: developeři
- Míra stability: 6/10
- Míra volnosti: 8/10
- Míra zabezpečení: 6/10
- Data: vývojová, anonymizovaná, fejková, smyšlená, účelově připravená
- Slouží k “výrobě”. Zde se vše připravuje, zkouší a vyvíjí. Je to taková bitevní zóna, která musí vykazovat určitou míru “dokonalosti” a stability, aby na nich vyvíjené objekty byly použitelné, nasaditelné a provozovatelné na produkčním prostředí.
- Testovací (test)
- Zde se testují/zkouší vytvořené objekty z vývojového prostředí. Prostředí je již stabilní a kopíruje podobu produkčního prostředí. Většinou až na data, která jsou testovací (anonymizovaná) a slouží k testování. Zjišťuje se tu jak se objekty chovají v interakci se vším co v produkčním prostředí mohou potkat. Tady se debuguje a je možné zde ještě chyby opravovat (v rámci ladění a hledání chyb). Opravy pak však musí projít opět přes vývojové prostředí (klasickým deploymentem, popřípadě CI/CD procesem).
Deployment na toto prostředí je už stejný jako na produkční.- Personál: developeři, testeři
- Míra stability: 8/10
- Míra volnosti: 6/10
- Míra zabezpečení: 7/10
- Data: testovací, anonymizovaná, účelově připravená
- Zde se testují/zkouší vytvořené objekty z vývojového prostředí. Prostředí je již stabilní a kopíruje podobu produkčního prostředí. Většinou až na data, která jsou testovací (anonymizovaná) a slouží k testování. Zjišťuje se tu jak se objekty chovají v interakci se vším co v produkčním prostředí mohou potkat. Tady se debuguje a je možné zde ještě chyby opravovat (v rámci ladění a hledání chyb). Opravy pak však musí projít opět přes vývojové prostředí (klasickým deploymentem, popřípadě CI/CD procesem).
- Akceptační (acceptance)
- Tady už se pomalu blížíme k finálnímu stavu. Jde o klon produkčního prostředí se vším všudy, i s ostrými daty. Zde se dělají finální testy a probíhají i testy ze strany finálních konzumentů (zákazník). Na toto prostředí se už nedostane každý developer.
Jakmile je zde testování dokončeno a je “podepsán” akceptační protokol, tak se jde na produkci.- Personál: určení developeři a testeři, zástupci finálních konzumentů (zákazník)
- Míra stability: 9/10
- Míra volnosti: 3/10
- Míra zabezpečení: 10/10
- Data: akceptační, produkční data (většinou neaktuální verze dat, případně aktuální snapshot)
- Tady už se pomalu blížíme k finálnímu stavu. Jde o klon produkčního prostředí se vším všudy, i s ostrými daty. Zde se dělají finální testy a probíhají i testy ze strany finálních konzumentů (zákazník). Na toto prostředí se už nedostane každý developer.
- Produkční (production)
- Kvůli tomuto prostředí se všechno vlastně děje. Jde o místo kde pracují koneční uživatelé (zákazníci). Jsou tam produkční data (například reálné finanční transakce, skladové operace, zákaznické informace, atd.). Prostředí má nejlepší zabezpečení a developer ani tester se tam většinou nedostane. Výjimkou může být zákaznická podpora, která řeší provozní zákaznické problémy a případně analytici pro možnost plánování dalšího rozvoje.
- Personál: koneční konzumenti (zákazníci), zákaznická podpora (L1,L2), analytici
- Míra stability: 10/10
- Míra volnosti: 1/10
- Míra zabezpečení: 10/10
- Data: aktuální produkční data
- Kvůli tomuto prostředí se všechno vlastně děje. Jde o místo kde pracují koneční uživatelé (zákazníci). Jsou tam produkční data (například reálné finanční transakce, skladové operace, zákaznické informace, atd.). Prostředí má nejlepší zabezpečení a developer ani tester se tam většinou nedostane. Výjimkou může být zákaznická podpora, která řeší provozní zákaznické problémy a případně analytici pro možnost plánování dalšího rozvoje.
Pro reálnější představu je níže diagram, který ukazuje vztah mezi prostředími a mezi základními rolemi, které se po prostředích pohybují. Role jsou hodně zjednodušené a zobecněné.
Developer – vývojář, který připravuje uživatelskou aplikaci, vlastně ji vyrábí
Tester – kontrolor kvality, testuje vyvíjenou aplikaci a nahlašuje chyby k řešení developerovy
Zákazník – konzument aplikace a zároveň rozhoduje o akceptaci předaného díla
Pár dalších souvisejících termínů: pre-produkční prostředí, sandbox, mfa