Jsme tu pro vás PO - PÁ 9:00 - 17:00 info@systeum.cz +420 608 408 716

Jsme tu pro vás PO - PÁ 9:00 - 17:00 obchod@systeum.cz +420 608 408 716

Přechod z Java 8 na Java 11: postřehy a zkušenosti (2. díl)

Update z Java 8 na Java 11. Je to bezproblémová rychlovka nebo proces, který vám připraví nejednu překážku? Náš kolega Standa Keppert měl možnost se do tohoto přechodu zapojit a již v minulém článku s námi sdílel několik zajímavých zkušeností, které na projektu vypozoroval.

Co ze zákulisí nám ještě může prozradit a jak by celý přechod shrnul?

V minulé části se můžete dočíst, co konkrétně se upgradovalo a jak. Nyní se mrkneme, jak byl celý přechod zorganizovaný, kolik času zabral a jak bychom ho celkově zhodnotili.

Upgrade byl rozdělen v rámci dvou sprintů do několika fází. V první fázi se přepisoval kód a připravovaly se kontejnery v Dockeru, časový odhad byl 7 MD, nakonec fáze zabrala 11 MD a pracovali na ní dva vývojáři. Hlavní důvod jejího prodloužení byl problém se stabilitou vytvořených Docker kontejnerů. Použitá starší verze Dockeru byla dostačující pro JAVA 8 avšak s přechodem na JAVA 11 už nestačila a způsobovala zmíněnou nestabilitu. Přešli jsme tedy na novější verzi a pak vše již šlapalo jako švýcarské hodinky.

Když vývojáři dokončili úpravy kódu na všech modulech, začalo se postupně nasazovat. Jak jsem ale psal již v první části, tyto updaty nebyly ze začátku úplně v pořádku.

(pozn. redakce: Upravili jsme jednu část kódu (jeden modul) a předpokládali, že jeho druhá část (druhý modul) nebude mít problémy se zpracováním dat. Bohužel spolu obě části kódu přestaly dobře komunikovat. Z toho důvodu se prováděl následný downgrade aby vše začalo zase pracovat. Úplně se oddělila nová Branch a celý kód jsme přepsali a upravili na jiném serveru, kde se zároveň i vše testovalo pomoci automatického testovacího frameworku.)

Do úprav, které vývojář ladil, bylo začleněno i testování pomocí automatického testovacího frameworku. Měli jsme upravený automatický testovací nástroj pro BE volání. Vytvořil jsem i konfigurovatelný Jenkins job, díky kterému si mohl vývojář testovat konkrétní modul.

Tato akce se nestihla v plánovaném časovém úseku, bylo tedy potřeba ji přesunout na nové speciálně vytvořené vývojové prostředí, kam se všechny moduly přesunuly a upravovaly se. Jakmile se každý z modulů upravil, byl nasazen a nahradil předchozí verzi, která běžela v Java 8. Vše zabralo dalších 5 MD, a tak celý přechod trval dva sprinty.

Není přechod jako přechod

V našem případě jsme se při přechodu potýkali hned s několika problémy, to ale neznamená, že se musí objevit vždy. Četl jsem o případech, kdy byl přechod rychlý bez větších komplikací i naopak o takových, kdy se problémy nakupily a přechod zabral ještě více času než nám.

Na našem projektu byl přechod o něco složitější i díky tomu, že se na kódu pracovalo hodně dlouho a střídali se různé týmy. Nakonec jsme se ale dobrali zdárnému konci a vše, včetně automatizovaného testovacího frameworku (zatím ale pouze backend testy, frontend jsou zatím odložené na neurčito) již plně funguje na Java 11. Ještě bude potřeba udělat pár úprav v rámci Selenium webdriver, ale to už nebude tak náročné, jako to měli například vývojáři, když museli předělávat celou rozsáhlou aplikaci.

Celý přechod byl v našem případě zakončen na Sprint Review, kde jsme sdíleli problémy, se kterými jsme se potýkali a obecně lessons learned v celém týmu. Nakonec se informoval business, že vše již běží na Java 11 a mohli jsme se pustit zase do další práce 😊.

Máte i vy konkrétní zkušenosti s přechodem na nové verze Java? Podělte se s námi, budeme rádi.

Chcete dostávat naše články pravidelně do schránky? Nechte nám tady svůj email a my si rádi zahrajeme na poštovní sovy.

Mohlo by vás také zajímat

Zlatá pravidla emailové etikety

čtení na 3 minuty 29.7.2020
Číst dál

GPT-3 speaks at a human degree

čtení na 4 minuty 30.12.2020
Číst dál

Jakou cestu urazil vývoj her?

čtení na 3 minuty 1.10.2021
Číst dál

Pohovor v IT: Jak se obléct?

čtení na 3 minuty 4.11.2020
Číst dál

Jak začít jako junior SW developer

čtení na 5 minut 21.10.2020
Číst dál

Pád a vzestup AMD

čtení na 3 minuty 12.8.2021
Číst dál

Když prezentuje introvert

čtení na 2 minuty 7.10.2020
Číst dál

IT konference a online kurzy

čtení na 3 minuty 16.6.2020
Číst dál

Bitcoin is on the rise

čtení na 3 minuty 19.1.2021
Číst dál

Podporujeme ženy v IT

čtení na 2 minuty 23.9.2020
Číst dál

11 tipů na online pohovor

čtení na 2 minuty 8.6.2020
Číst dál

Jaká byla React Girls Academie?

čtení na 3 minuty 26.11.2020
Číst dál

Take Control (DualSense vs Xbox One)

čtení na 4 minuty 3.12.2020
Číst dál

Jak se o nás mluví?
Zeptejte se našich klientů…

Systeum
Systeum

„Systeum je jedním z největších dodavatelů našich testerských kapacit. Můžu říct, že kvalita uchazečů je vysoko nad průměrem. Také oceňuji velkou ochotu vyjít vstříc všem našim požadavkům.“

Head of test execution

„Na spolupráci nejvíce oceňuji individuální přístup. Systeum nám zajišťuje tým testerů, C/C++ a Java developery. Specialisté odpovídají našim požadavkům na znalosti síťových protokolů i cloud řešení.“

Chief Technology Officer

„Systeum je dlouhodobý partner, u kterého máme jistotu, že kandidáti jsou kvalitní a prověření. Od roku 2015 máme díky nim fungující kvalitní seniorní týmy C++ embedded vývojářů a auto testerů.“

Head of Payment Application

Partneři, se kterými spolupracujeme

Aevi Raiffeisenbank 2N TELEKOMUNIKACE Komerční banka Monster

Náš web využívá soubory cookies. Prohlížením našich stránek souhlasíte s pravidly jejich používání.

Souhlasím