Propostas Submetidas MEI 2014/2015

DEI - FCTUC
Gerado a 2024-11-21 20:03:37 (Europe/Lisbon).
Voltar

Titulo Estágio

Metadata Server for Cloud

Áreas de especialidade

Engenharia de Software

Local do Estágio

Coimbra (Taveiro)

Enquadramento

Esta proposta integra-se no desenvolvimento de soluções na área de Cloud Computing.

No passado, os conteúdos digitais eram produzidos maioritariamente em computadores pessoais. Hoje, com a crescente adopção de dispositivos móveis ligados à Internet, é possível aos utilizadores criarem conteúdos a partir de várias fontes em qualquer lugar. Esta nova realidade requer novos métodos que facilitem a organização e o acesso à informação.

Uma estratégia possível é o recurso a metadata para descrever os dados. Alguns formatos de conteúdos como imagens ou vídeos, já contém algum deste tipo de informação. Neste estágio pretende-se prototipar uma plataforma online para armazenamento e inferência sobre metadata de conteúdos guardados na cloud.

Esta solução consiste num cliente cloud e num servidor de metadata. O primeiro é responsável pela gestão e pesquisa da metadata. O segundo é responsável pelo carregamento e consumo de conteúdos, bem como extracção da metadata associada aos mesmos.

Objetivo

O objectivo do estágio consiste na implementação de uma plataforma para gestão de metadata de dados guardados na cloud.

Exemplos de funcionalidades possíveis são:
- Pesquisa de conteúdos com base na metadata (ex. localização)
- Criação de smart albums de fotos (ex. reverse geotagging)
- Criação de smart playlists de músicas (ex. estilo de música)
- Biblioteca virtual (e-books)
- Criação automática de perfil (ex. recomendações de novos conteúdos)
- Rating de conteúdos (ex. livros, músicas, fotos)
- Tags

Este projeto requer a implementação de um servidor para gestão de metadata e de um cliente para interação com o mesmo.

O estagiário deverá começar por estudar diferentes tipos de metadata já existentes como o Exif ou XMP. Simultaneamente deverá também analisar formas de extrair automaticamente informação a partir de conteúdos, tais como:
- Detecção de faces em fotos (auto tagging)
- OCR de documentos (ex. facturas)
- Utilização de sensores (ex. GPS)

Segue-se a análise de requisitos do projeto. Nesta fase o aluno deverá avaliar através de prototipagem rápida a viabilidade dos casos de uso levantados. Em simultâneo será ainda estudada a forma como estes requisitos poderão ser concretizados na solução.

Posteriormente, o estagiário deverá avançar para o desenvolvimento das funcionalidades definidas. É desejável que a implementação possa ser validada através de testes automatizados.

Plano de Trabalhos - Semestre 1

Para o 1º semestre estão planeadas as seguintes tarefas:
- Estudo de formatos de metadata existentes;
- Estudo de formas automáticas de extração de informação a partir de conteúdos;
- Análise detalhada das funcionalidades propostas para o estágio bem como de outras motivadas pelo estudo anterior;
- Levantamento do estado da arte;
- Análise de viabilidade de requisitos (prototipagem rápida);
- Elaboração do plano de desenvolvimento;
- Definição da metadata e desenho do modelo de dados do servidor;
- Definição de uma interface REST para interação com o servidor;
- Implementação inicial do servidor;
- Documentação intermédia do estágio.

Plano de Trabalhos - Semestre 2

Para o 2º semestre estão planeadas as seguintes tarefas:
- Conclusão do desenvolvimento do servidor
- Desenvolvimento da aplicação cliente:
o Extração de metadata;
o Visualização de conteúdos;
- Testes;
- Preparação da solução para demonstrações internas;
- Documentação final do estágio.

Condições


O local de trabalho será na sede da WIT Software em Taveiro onde o estagiário terá ao seu dispor os equipamentos necessários para desempenhar as suas tarefas. O estágio será remunerado.

Além da remuneração, o estagiário poderá ser convidado para receber formação na WIT Academy (que inclui tópicos tais como: IMS, VoIP, SIP, iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software).

Apesar do estagiário ser acolhido pela equipa de desenvolvimento este trabalho de estágio não faz parte do roadmap do desenvolvimento de nenhum produto. É um investimento da empresa no treino de futuros profissionais. O que se pretende com estes estágios é fazer “training-on-job” de alunos finalistas e prepará-los para a área de software para telecomunicações, de modo a que no final do estágio o aluno esteja preparado para ser incluído na equipa de desenvolvimento.

O estagiário terá acesso aos recursos da equipa de desenvolvimento, e terá à sua disposição um conjunto de Engenheiros experientes que lhe poderão dar ajuda nas dificuldades técnicas.

No final do estágio, será feita uma avaliação do trabalho realizado. Se o resultado for positivo o estagiário será convidado para fazer parte da equipa de desenvolvimento.

Observações

- Toda a documentação de projecto será em Inglês.
- Será usado SCRUM, como metodologia de desenvolvimento.
- Existe um Scrum Master e um Project Owner. O Project Owner define os requisitos do estágio, define as prioridades do Backlog e acompanha os resultados parciais do projecto. O Scrum Master garante o cumprimento das tarefas, promove os Scrum meetings e acompanha o aluno com mais regularidade.

Orientador

Pedro Pinto
pedro.e.pinto@wit-software.com 📩