Essa é uma revisão anterior do documento!


Oportunidades: DengueME

Projeto: DengueME (1 vaga)


Clientes: Instituições de ensino e pesquisa
Tema: Ferramentas de suporte à Modelagem e Simulação Computacional.
Descrição: O DengueME (Dengue Modeling Environment) é um framework de software projetado para permitir a modelagem e simulação da dinâmica populacional do mosquito Aedes aegypti e da Dengue. Ele oferece aos usuários um conjunto de modelos (entomológicos e epidemiológicos) que podem ser utilizados na construção de cenários e realização de simulações para apoiar o processo de tomada de decisão em políticas públicas para intervenção e controle da dengue. Ela também pode ser utilizado como ferramenta de apoio ao ensino e pesquisa. A versão atual está disponível no github e a publicação mais recente sobre o projeto pode ser encontrada no IJERPH. Outras informações em link
Oportunidade: Estudante de Engenharia da Computação ou Sistemas de Informação. Trabalhar em um Projeto de Pesquisa e Desenvolvimento Tecnológico, atuando em atividades de desenvolvimento de software (especificação e análise de requisitos, projeto, implementação e testes). Atividades: (i) desenvolvimento de produtos baseados na plataforma Qt, desenvolvimento de testes automatizados.
Requisitos: Disponibilidade para trabalhar presencialmente no LEDS, saber e gostar de programar (essencial programação orientada a objetos), domínio da língua inglesa (leitura). Diferencial: conhecimento nas linguagens de programação C++ e Lua, padrões de projeto, desenvolvimento de aplicações baseadas em Qt.
Bolsa: Atualmente não há bolsas disponíveis. É possível tentarmos conseguir bolsa após o período de trainee (3 a 6 meses), com base nos resultados apresentados.
Carga Horária: 15 horas / semana.
Vagas: 1 vaga.

Processo de seleção

O processo de seleção será constituído das seguintes etapas:

  1. Realização de tarefas relacionadas às tecnologias envolvidas no projeto.
  2. Entrevista com membros do laboratório.

1. Estudo Dirigido

Esta etapa do processo de seleção envolve a realização de um estudo dirigido e o desenvolvimento de um projeto, visando a aquisição de conhecimentos básicos sobre alguns conceitos e ferramentas a serem utilizados no projeto. Os resultados desta etapa serão apresentados e avaliados durante a entrevista com a equipe.

Algumas referências:
http://doc.qt.io/
http://doc.qt.io/qt-5/qtexamplesandtutorials.html
http://www.cplusplus.com/doc/tutorial/
http://www.cplusplus.com/reference/

2. Desenvolvimento do Projeto

O projeto consiste em desenvolver uma aplicação utilizando o Qt Creator e a biblioteca Qt 5.7. A aplicação deve obrigatoriamente ter interface gráfica de usuário e ser desenvolvida em Qt/QtCreator. A especificação da aplicação é definida a seguir:

Protótipo de baixa fidelidade: Link externo

(1) Painel de navegação (painel a esqueda no protótipo). A aplicação deve oferecer como funcionalidade a visualização e seleção de elementos, organizados em uma estrutura hierárquica (árvore de diretórios/arquivos). Os elementos na árvore podem ser estáticos (definidos diretamente no código). Para exemplificar a aplicação, deve-se criar uma estrutura com pelo menos 6 elementos e 2 níveis hierárquicos. Ao selecionar um elemento (clicar duas vezes), um texto descritivo do item deve ser apresentado no editor (tópico 2). Os elementos dá arvore podem ser qualquer coisa, desde um diretório real do seu computador ou mesmo elementos fictícios (mas cuja natureza tenha alguma relação hierárquica).

(2) Editor (painel central superior). Na área central da aplicação, deve-se ter um editor capaz de exibir e atualizar as informações do elemento selecionado. Cada elemento deve ter um conjunto de informações (atributos). Os atributos podem ser somente de leitura, quando não é permitido alterar seu valor (ex. data de criação de um arquivo) ou edição, quando é possível alterar seu valor (ex. nome do arquivo). O armazenamento das alterações pode ser automático ou exigir alguma interação do usuário (ex. clicar em algum botão). Não é necessário persistir essas informações em disco.

(3) Console (painel central inferior). Na área de console, duas funcionalidades básicas devem ser oferecidas. A primeira consiste em exportar as propriedades do elemento (armazenar as informações em um arquivo texto). A segunda consiste em limpar o formulário (ou seja, apagar os valores daqueles campos que são editáveis - não são somente leitura). Nessa última, um mecanismo de segurança deve ser oferecido para prevenir erros - se o usuário selecionar “limpar” (ex. clicar em um botão), uma janela deve ser aberta e exigir que o usuário confirme a operação (semelhante ao que ocorre quando você tenta remover um arquivo em disco).

(4) Menu. A aplicação deve ter um menu principal, com as seguintes funcionalidades: about - informações sobre a aplicação (ex. quem desenvolveu); close - fecha a aplicação.


Embora seja relevante e importante lidar com questões acerca do layout, isso será considerado um diferencial. Ou seja, não adianta ter uma interface gráfica “bonita” (amigável, esteticamente agradável) que não funciona bem (não atende os requisitos funcionais).


Observação: Ainda que não tenha conseguido concluir todas as tarefas, recomendamos que não desista da seleção, pois resultados parciais também serão avaliados.

3. Apresentação dos Resultados

Esta etapa inclui:
- Apresentação dos resultados (10 minutos), a ser agendada por email
- Entrevista com a equipe

FAQ

Dúvidas sobre a vaga e o processo de seleção? Envie email para: saraivalucas12@gmail.com e tiago.lima.ufop@gmail.com

Idiomas