Please use this identifier to cite or link to this item:
https://hdl.handle.net/1822/84498
Title: | Synthetic data generation from JSON/XML schemas |
Author(s): | Cardoso, Hugo André Coelho |
Advisor(s): | Ramalho, José Carlos |
Keywords: | Schemas JSON XML Data generation Synthetic data DataGen DSL Dataset Grammar Randomization Open source Data science REST API PEG.js Geração de Dados Dados sintéticos Gramática Aleatoriedade Ciência de dados |
Issue date: | 19-Dec-2022 |
Abstract(s): | The objective of this dissertation is the development of an application capable of automatically
generating synthetic datasets that are representative and, possibly, very large, directly from
JSON and XML schemas, in order to facilitate the testing of software applications and
scientific endeavors in areas such as Data Science or Application Development.
For this purpose, it is intended to develop a new version of DataGen, an online open-source
application that allows the quick prototyping of datasets through its own Domain Specific
Language (DSL) of specification of data models. DataGen is able to parse these models and
generate synthetic datasets according to the structural and semantic restrictions stipulated,
automating the whole process of data generation with spontaneous values created in runtime
and/or from a library of support datasets.
The objective of this new product, DataGen From Schemas, is to expand DataGen’s use
cases and raise the datasets specification’s abstraction level, making it possible to generate
synthetic datasets directly from schemas. This new platform builds upon its prior version
and acts as its complement, operating jointly and sharing the same data layer, in order to
assure the compatibility of both platforms and the portability of the created DSL models
between them. Its purpose is to parse schema files and generate corresponding DSL models,
effectively translating the JSON or XML specification to a DataGen model, then using the
original application as a middleware to generate the final datasets.
The present dissertation details the entire creative process behind the development of this
application: firstly, it frames the topic of study and its initial phase of investigation, debating
relevant technologies and existing related work; then, the ideation phase of the product is
addressed, projecting an adequate arquitecture and the reasons behind its design choices,
as well as surveying technical requirements for DataGen From Schemas, while taking into
account the conclusions reached through prior research; afterwards, the development phase
is covered, carefully explaining the elaborated components, their properties and the data flow
between them, for both the JSON and XML modules; finally, the reader is presented with
conclusions taken from this project’s development and possible future work to implement,
in order to improve the current solution. O objetivo desta dissertação é o desenvolvimento de uma aplicação que permita gerar auto maticamente datasets sintéticos representativos e possivelmente extensos, a partir de schemas de JSON e XML, de forma a facilitar a testagem de aplicações de software e empreendimentos científicos em áreas como a Ciência de Dados e o Desenvolvimento de Aplicações. Para esta finalidade, pretende-se desenvolver uma plataforma assente sobre o DataGen, uma aplicação que permite a prototipagem rápida de datasets através da sua própria Domain Specific Language (DSL) de especificação de modelos de dados. O DataGen é capaz de processar estes modelos e gerar posteriormente datasets sintéticos que obedeçam às restrições estruturais e semânticas estabelecidas, automatizando todo o processo de geração de dados com valores espontâneos gerados em tempo de execução e/ou provenientes de bancos de dados de suporte. O objetivo deste novo produto, DataGen From Schemas, é expandir os casos de aplicação do DataGen e aumentar o nível de abstração da especificação de modelos de dados, tornando possível a geração de datasets sintéticos diretamente a partir de schemas. Esta nova plataforma estará assente sobre a sua versão anterior e agirá como seu complemento, operando conjun tamente e partilhando a mesma camada de dados, de forma a assegurar a compatibilidade das plataformas e a portabilidade dos modelos criados entre ambas. O seu propósito é processar ficheiros schema e gerar modelos correspondentes na DSL, efetivamente traduzindo a especificação em JSON ou XML para um modelo do DataGen, para depois usar a aplicação original como um middleware para gerar os datasets finais. A presente dissertação detalha todo o processo creativo por detrás do desenvolvimento desta aplicação: começa por enquadrar o tema de estudo e a sua fase inicial de investigação, debatendo tecnologias relevantes e trabalho relacionado existente; de seguida, é abordada a fase de ideação do produto, projetando uma arquitetura adequada para a solução e as razões por detrás das suas escolhas de design, e realizado um levantamento de requisitos técnicos para o DataGen From Schemas, tendo sempre em conta as conclusões alcançadas através de investigação prévia; depois, é relatada a fase de desenvolvimento do produto, explicando minuciosamente os componentes elaborados, as suas propriedades e o fluxo de dados entre eles, para ambos os módulos de JSON e XML; finalmente, são apresentadas ao leitor as conclusões retiradas do desenvolvimento deste projeto e possível trabalho futuro a implementar, de forma a melhorar a solução atual. |
Type: | Master thesis |
Description: | Dissertação de mestrado integrado em Informatics Engineering |
URI: | https://hdl.handle.net/1822/84498 |
Access: | Open access |
Appears in Collections: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Hugo Andre Coelho Cardoso.pdf | 4,61 MB | Adobe PDF | View/Open |
This item is licensed under a Creative Commons License