Diplomová práce

Contract Testing in Heterogeneous Distributed Systems

Bc. Dominik Labuda
Anotace

Táto diplomová práca je zameraná na architektúru a možnosti kontraktového testovania heterogénnych distribuovaných aplikácií v spoločnosti GoodData a vo všeobecnosti. Cieľom práce je poskytnúť odporúčania ako implementovať kontraktové testy distribuovaných systémov, ktoré sú vyvíjané vo viacerých programovacích jazykoch a ktoré môžu byť kontinuálne nasadzované. Implementácie kontraktových testov sú predvedené na príkladoch.

Abstract

This diploma thesis is focused on architecture and possibilities of the contract testing of heterogeneous distributed applications in GoodData company and in general. The aim of this thesis is to provide guidelines on how to implement contract tests in distributed systems that are written in several programming languages and could be continually deployed. Implementations of contract tests are demonstrated on examples.

Zadání práce
GoodData company builds an Enterprise Insights Platform-as-a-Service. This platform is composed of components with high complexity which are developed using various programming languages. Such a distributed system is being delivered to multiple data-centers with heavy delivery process where the application is being delivered as a monolithic application.
We are considering the continuous deployment approach. It would deliver isolated microservices as soon as possible, whilst it would also maintain the highest quality and lowest risk for any kind of regression.
The goal of this thesis is to study the concepts of microservices, contract-based testing and continuous delivery/deployment. Demonstrate this knowledge by designing a testing approach for microservices implemented in different languages and integrate it in automated test-and-build pipelines. It should be demonstrated on non-trivial demo applications and the same approach should be ready to be adapted to internal GoodData components and internal delivery pipelines. The student should not limit the thesis only to the HTTP protocol, but they shall consider also binary protocols like gRPC.
Progress on the thesis will be continuously evaluated by GoodData stakeholders and the thesis will provide an extracted "best-practice" document for engineering teams.
The thesis will document the concepts of microservices, the proposed demo application and its automated deployment.
Práce zkontrolována:
21. 5. 2019 08:40, doc. RNDr. Vlastislav Dohnal, Ph.D., učo 2952
Jazyk práce
angličtina angličtina
Termín obhajoby
19. 6. 2019
Práce byla úspěšně obhájena

Vedoucí

doc. RNDr. Vlastislav Dohnal, Ph.D., učo 2952
KSUZD FI MU

Oponent

Ing. Jakub Plichta
GoodData, s.r.o.

Konzultant

Mgr. Michal Vančo
abs FI MU

Literatura

  • ROSEN, Michael. Applied SOA : service-oriented architecture and design strategies. Indianapolis: Wiley Publishing, 2008, xxxiii, 66. ISBN 9780470223659.

  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.