dc.contributor.advisor | Parízek, Pavel | |
dc.creator | Riedel, Lukáš | |
dc.date.accessioned | 2021-07-20T09:10:46Z | |
dc.date.available | 2021-07-20T09:10:46Z | |
dc.date.issued | 2021 | |
dc.identifier.uri | http://hdl.handle.net/20.500.11956/127818 | |
dc.description.abstract | Datové toky tvoří důležitý aspekt dnešního podnikového prostředí. MANTA Flow je platforma pro analýzu datových toků, která již má základní podporu pro analýzu Java programů poskytovanou jednou z jejích komponent zvaných Bytecode Scanner. Přesto je v dnešním podnikovém prostředí jen velmi málo aplikací, které nepoužívají vkládání závis- lostí alespoň ve velmi omezené míře. Proto představujeme rozšíření komponenty Bytecode Scanner v platformě MANTA Flow, abychom také umožnili automatickou analýzu da- tových toků v aplikacích, které využívají vkládání závislostí. Rozšíření dokáže zpracovat i složité definice standardních kontejnerů pro vkládání závislostí. Vzhledem k tomu, že vkládání závislostí ovlivňuje výběr cílů volání metody, popisujeme také strukturu grafu volání a jeho modifikace pro podporu vkládání závislostí. Nakonec použijeme tuto infras- trukturu k návrhu a implementaci pluginu do komponenty Bytecode Scanner pro Spring Framework, populární knihovnu pro vkládání závislostí pro platformu Java. Plugin byl úspěšně testován na malém, ale realistickém softwarovém systému, který umí číst data ze souboru, transformovat je a zapisovat do databáze. 1 | cs_CZ |
dc.description.abstract | Data lineage forms an important aspect of today's enterprise environment. MANTA Flow is a data lineage analysis platform that already has basic support for analysis of Java programs, provided by one of its components called Bytecode Scanner. Neverthe- less, there are very few applications in today's enterprise environment that do not use dependency injection at least in a very limited way. Therefore, we present an extension of Bytecode Scanner in the MANTA Flow platform to support data lineage analysis of dependency injection frameworks as well. The extension is able to process even complex definitions of standard dependency injection containers. Since the dependency injec- tion influences a selection of method call targets, we also provide a description of call graph structure and its modification to support dependency injection. Last, we use this infrastructure to design and implement a plugin into Bytecode Scanner for the Spring Framework, a popular dependency injection framework targeting Java Platform. The plugin has been successfully tested on a small but realistic software system that can read data from a file, transform them, and write them into a database. 1 | en_US |
dc.language | English | cs_CZ |
dc.language.iso | en_US | |
dc.publisher | Univerzita Karlova, Matematicko-fyzikální fakulta | cs_CZ |
dc.subject | vkládání závislostí|graf volání|Spring Framework|statická analýza|datové toky | cs_CZ |
dc.subject | data lineage|dependency injection|call graph|Spring Framework|static analysis | en_US |
dc.title | Extending Data Lineage Analysis Platform with Support for Dependency Injection Frameworks | en_US |
dc.type | diplomová práce | cs_CZ |
dcterms.created | 2021 | |
dcterms.dateAccepted | 2021-06-29 | |
dc.description.department | Department of Distributed and Dependable Systems | en_US |
dc.description.department | Katedra distribuovaných a spolehlivých systémů | cs_CZ |
dc.description.faculty | Matematicko-fyzikální fakulta | cs_CZ |
dc.description.faculty | Faculty of Mathematics and Physics | en_US |
dc.identifier.repId | 230748 | |
dc.title.translated | Rozšíření platformy pro analýzu datových toků o podporu knihoven na vkládání závislostí | cs_CZ |
dc.contributor.referee | Hnětynka, Petr | |
thesis.degree.name | Mgr. | |
thesis.degree.level | navazující magisterské | cs_CZ |
thesis.degree.discipline | Software and Data Engineering | en_US |
thesis.degree.discipline | Softwarové a datové inženýrství | cs_CZ |
thesis.degree.program | Informatika | cs_CZ |
thesis.degree.program | Computer Science | en_US |
uk.thesis.type | diplomová práce | cs_CZ |
uk.taxonomy.organization-cs | Matematicko-fyzikální fakulta::Katedra distribuovaných a spolehlivých systémů | cs_CZ |
uk.taxonomy.organization-en | Faculty of Mathematics and Physics::Department of Distributed and Dependable Systems | en_US |
uk.faculty-name.cs | Matematicko-fyzikální fakulta | cs_CZ |
uk.faculty-name.en | Faculty of Mathematics and Physics | en_US |
uk.faculty-abbr.cs | MFF | cs_CZ |
uk.degree-discipline.cs | Softwarové a datové inženýrství | cs_CZ |
uk.degree-discipline.en | Software and Data Engineering | en_US |
uk.degree-program.cs | Informatika | cs_CZ |
uk.degree-program.en | Computer Science | en_US |
thesis.grade.cs | Výborně | cs_CZ |
thesis.grade.en | Excellent | en_US |
uk.abstract.cs | Datové toky tvoří důležitý aspekt dnešního podnikového prostředí. MANTA Flow je platforma pro analýzu datových toků, která již má základní podporu pro analýzu Java programů poskytovanou jednou z jejích komponent zvaných Bytecode Scanner. Přesto je v dnešním podnikovém prostředí jen velmi málo aplikací, které nepoužívají vkládání závis- lostí alespoň ve velmi omezené míře. Proto představujeme rozšíření komponenty Bytecode Scanner v platformě MANTA Flow, abychom také umožnili automatickou analýzu da- tových toků v aplikacích, které využívají vkládání závislostí. Rozšíření dokáže zpracovat i složité definice standardních kontejnerů pro vkládání závislostí. Vzhledem k tomu, že vkládání závislostí ovlivňuje výběr cílů volání metody, popisujeme také strukturu grafu volání a jeho modifikace pro podporu vkládání závislostí. Nakonec použijeme tuto infras- trukturu k návrhu a implementaci pluginu do komponenty Bytecode Scanner pro Spring Framework, populární knihovnu pro vkládání závislostí pro platformu Java. Plugin byl úspěšně testován na malém, ale realistickém softwarovém systému, který umí číst data ze souboru, transformovat je a zapisovat do databáze. 1 | cs_CZ |
uk.abstract.en | Data lineage forms an important aspect of today's enterprise environment. MANTA Flow is a data lineage analysis platform that already has basic support for analysis of Java programs, provided by one of its components called Bytecode Scanner. Neverthe- less, there are very few applications in today's enterprise environment that do not use dependency injection at least in a very limited way. Therefore, we present an extension of Bytecode Scanner in the MANTA Flow platform to support data lineage analysis of dependency injection frameworks as well. The extension is able to process even complex definitions of standard dependency injection containers. Since the dependency injec- tion influences a selection of method call targets, we also provide a description of call graph structure and its modification to support dependency injection. Last, we use this infrastructure to design and implement a plugin into Bytecode Scanner for the Spring Framework, a popular dependency injection framework targeting Java Platform. The plugin has been successfully tested on a small but realistic software system that can read data from a file, transform them, and write them into a database. 1 | en_US |
uk.file-availability | V | |
uk.grantor | Univerzita Karlova, Matematicko-fyzikální fakulta, Katedra distribuovaných a spolehlivých systémů | cs_CZ |
thesis.grade.code | 1 | |
uk.publication-place | Praha | cs_CZ |
uk.thesis.defenceStatus | O | |