Titulo Estágio
PoPer: desenvolvimento de um sistema “Polyglot Persistance” para bases de dados NoSQL
Área Tecnológica
Bases de Dados
Local do Estágio
DEI-FCTUC
Enquadramento
As bases de dados NoSQL vieram introduzir novos modelos e paradigmas para o armazenamento, acesso e manipulação de dados, nomeadamente em ambientes distribuídos de grande escala, propondo múltiplas soluções que se adequam a diferentes tipos de dados e necessidades das aplicações. A máxima “one-size-fits-all”, associada às bases de dados relacionais, há muito que deixou de ser viável. No entanto, a escolha de qual a melhor solução de bases de dados para um determinado sistema não é trivial. Esta situação é ainda mais complexa quando o mesmo sistema apresenta necessidades dispares. Assim, o conceito de “Polyglot Persistance” ganha especial relevância pois permite desenvolver sistemas de uma forma independente da solução de bases de dados escolhida e permite trabalhar com múltiplas soluções em simultâneo sem modificação do código das aplicações cliente
Objetivo
O objetivo deste estágio é desenvolver um COTS de midleware para disponibilização de “Polyglot Persistance” em sistemas de manipulação de dados. Este trabalho irá centrar-se especialmente na seleção automática de soluções de armazenamento de dados através da análise de custo/performance associada a cada sistema, da natureza dos dados e das queries a executar. O estagiário irá seguir processos de engenharia de software bem estruturados e adequados ao projeto e à equipa. Irá também trabalhar com múltiplas tecnologias, entre as quais se destacam: diversas bases de dados NoSQL e relacionais, JAVA, Javascript, REST, Linux, etc.
Plano de Trabalhos - Semestre 1
(ID da tarefa / Identificação / Duração (horas) / Dependências)
(1 / Integração na equipa do projeto / 5 / -)
(2 / Aprendizagem das metodologias de desenvolvimentos e processos relacionados / 16 / 1)
(3 / Aprendizagem das tecnologias e ferramentas a utilizar / 16 / 1,2)
(4 / Estudo da literatura, enquadramento e objetivos do projeto / 32 / 1)
(5 / Identificação de requisitos / 16 / 4)
(6 / Planeamento do desenvolvimento / 5 / 5)
(7 / Sprints de desenvolvimento / 128 / 6)
(8 / Escrita do relatório intermédio e preparação da apresentação / 16 / 7)
(9 / Preparação de demonstração / 10 / 8)
Plano de Trabalhos - Semestre 2
(ID da tarefa / Identificação / Duração (horas) / Dependências)
(10 / Integração dos dados recolhidos na apresentação intermédia no planeamento do estágio e na preparação do relatório final / 20 / -)
(11 / Sprints de desenvolvimento / 380 / 7,10)
(12 / Escrita de documentação / 25 / 11)
(13 / Preparação de testes e demonstração / 25 / 11)
(14 / Sprints de desenvolvimento / 80 / 7,13)
(15 / Escrita do relatório final e preparação da apresentação / 30 / 14)
Condições
O aluno seleccionado beneficiará de uma bolsa de 3000 Euros, paga em 4 prestações mensais de 750 Euros, atribuída pelo CISUC. A atribuição da bolsa não gera nem titula uma relação de natureza jurídico-laboral, é exercida em regime de dedicação exclusiva e atribuído ao Bolseiro o Estatuto de Bolseiro da UC conforme disposto no Regulamento de Bolsas de Investigação da Universidade de Coimbra (Despacho n.º 5120/2005 (2.ª), DR. n.º 48, de 9 de Março, Deliberação n.º 23/2005, de 5 de Janeiro do senado da Universidade Coimbra).
Observações
Os candidatos deverão apresentar (preferencialmente) um bom currículo académico nas áreas relacionadas com o projeto. Nomeadamente: programação; bases de dados; e engenharia de software. A aprovação final de um candidato será realizada pelo orientadores da Universidade de Coimbra sendo obrigatória a realização de entrevistas com os candidatos.
Orientadores:
- Bruno Cabral
Email: bcabral@dei.uc.pt
Tel: 239790013
- Pedro Furtado
Email: pnf@dei.uc.pt
Tel: 239790007
Orientador
Bruno Cabral e Pedro Furtado
bcabral@dei.uc.pt 📩