Reálné příklady automatizace od Think Easy 3. díl

Automatizaci vyvíjíme primárně pro naše klienty a jejich projekty. Ovšem abychom při práci pro ně dosahovali co nejvyšší efektivity, využíváme automatizaci procesů i my sami. Plynou však z toho výhody i pro klienty – zrychlí se, zjednoduší a tím i zlevní celkový vývoj, ulehčí a zpřístupní se testovací servery a dlouhodobě se zlepší kvalita a udržitelnost kódu. Jak můžete vidět, automatizace vytváří efektivní řetězec od vývojářů až po zákazníky. Co všechno automatizujeme?

Vlastní interní automatizace

Jednotlivé typy automatizace, s nimiž pracujeme:

Continuous Integration (CI)

  • Automatická kontrola kvality kódu
  • Automatizovaná kontrola bezpečnostních rizik
  • Automatická kontrola kompatibility licence

V případě, že proběhne změna v repozitáři zdrojových kódů, systém dle určitých metrik automaticky zkontroluje kvalitu kódu. Pokud je nedostačující, dostaneme upozornění, že je třeba zdrojový kód změny upravit. Stejným způsobem probíhá automatická kontrola také u bezpečnostních rizik a kompatibility licence.

Continuous Delivery (CD)

  • Automatické sestavení prostředí s nově nahraným kódem – v okamžiku, kdy vydáme novou verzi aplikace ze zdrojových kódů, automaticky nám to aplikaci ze zdrojových kódů zkompiluje (přetvoří do počítačem spustitelné podoby) a nahraje na vývojové prostředí k otestování.
  • Automatické sestavení mobilních aplikací – u mobilních aplikací funguje proces obdobným způsobem, jen s tím rozdílem, že se nová verze nahrává pro interní testování Google Play a na AppStore Testflight. V tomto případě přijde ihned klientovi notifikace o nové verzi.
  • Nasazení na produkční prostředí nebo do platformních obchodů – i zde se jedná o aktualizaci a nahrazení původní verze aplikace. Nová verze je po kompilaci, testování a potvrzení nahrána na produkční server s tím, že zneplatní záznamy na CDN (invaliduje CDN neboli Content Delivery Network).

Díky tomu se nová verze aplikace dostane také ke klientům. V případě mobilních aplikací se verze nahraje na Google Play a AppStore a pošle se do „Review“ – schvalovacího procesu. Je možné také nastavit, kdy má proběhnout vypuštění produkce na obchodech a jakým způsobem proběhne aktualizace. Například lze nastavit, že dojde k aktualizaci pouze u 10 % klientů týdně.

Výhoda postupného uveřejňování nové verze spočívá v tom, že kdyby se objevil problém, nepostihne všechny klienty najednou.

Automatizované testy

Při změně zdrojového kódu také mohou být naprogramované automatizované testy, které průběžně procházejí aplikaci a kontrolují, zda-li nedošlo v rámci nové verze k nějaké regresní vadě (ke zhoršení). Díky tomu se veškeré chyby odchytí již v zárodku.

Další praktické příklady automatizace z naší dílny

Automatizované řešení nemusí být vždy robustní. Hodí se i v takových případech, kdy potřebujete automatizovat tvorbu písemných dokumentů nebo uzávěrek. Je jen na vás, v jakém směru si chcete ulehčit život. Níže uvádíme několik příkladů:

Nástroj na psaní smluv

Co systém umí:

  • Automatické řádkování
  • Formátování dle potřeby
  • Odkazování na paragrafy

Naše prvotní projekty Simple Store a Chytrá Hospoda

Co systém umí:

  • Automatizace uzávěrek 
  • Plánování směn
  • Skladové hospodářství

Něco dalšího?

Napadá vás situace, kde by vám automatizace pomohla a kde byste ušetřili čas, peníze a mohli se naplno věnovat důležitějším činnostem včetně rozvoje svého podnikání? Kontaktujte nás ► info@thinkeasy.cz.

Případně si přečtěte předchozí díly blogových článků, které jsme o automatizaci vydali (díl 1, díl 2).