Propostas atribuídas ano letico 2025/2026

DEI - FCTUC
Gerado a 2025-12-06 22:31:47 (Europe/Lisbon).
Voltar

Titulo Estágio

WikiModels: controlo de versões para modelos de processos bioquímicos

Área Tecnológica

Engenharia de Software

Local do Estágio

Departamento de Química - Universidade de Coimbra

Enquadramento

O que é a plataforma WikiModels?

O WikiModels é uma plataforma web de desenvolvimento colaborativo de modelos matemáticos de processos bioquímicos.

 

Qual o propósito da plataforma?

A engenharia biológica e a pesquisa de novos fármacos são cada vez mais guiadas por modelos matemáticos dos processos biológicos. O desenvolvimento destes modelos requer a colaboração intensa entre múltiplas equipas de investigação que podem estar geograficamente separadas e a revisão dos modelos por peritos de várias áreas de especialidade. A plataforma WikiModels visa facilitar essa colaboração permitindo a documentação e discussão online dos vários aspectos dos modelos, documentando ainda automaticamente a evolução dos mesmos. Pretende-se que a plataforma seja utilizada tanto em ambiente de investigação académica, através de um servidor centralizado acessível a toda a comunidade científica, como em ambientes  industriais de investigação e desenvolvimento (por exemplo indústria, farmacêutica e biotecnológica), através de implementações em domínio privado.

 

Como foi construído?

Esta plataforma foi desenvolvida em dois módulos distintos. O módulo de servidor tem como propósito disponibilizar toda a informação relacionada com o conteúdo da KnowledgeBase, assim como validar a informação que nela dá entrada. O módulo cliente é uma aplicação Web que permite manipular, pelo utilizador, os modelos bioquímicos. Ambos os módulos comunicam entre si por uma API REST.

 

Que tecnologias foram empregues?

A plataforma é desenvolvida sobre a JVM em linguagem Scala que mistura os paradigmas funcional e orientado a objectos. A KnowledgeBase é uma triple store pelo que saber usar ou querer aprender  tecnologias de Web Semântica é importante.

 

O que se pretende para o estágio?

Construír um solução de controlo de versões para o WikiModels. O facto de estarmos a usar um KnowledgeBase Semântica implica um conjunto de problemas que outros sistemas de controlo de versões não têm. A solução desenvolvida para o WikiModels poderá também ter aplicações em áreas distintas. Uma área possível é a de sistemas de Informação .

Objetivo

Objectivos do estágio para o WikiModels são:

-        idealizar, desenvolver uma solução de controlo de versões para a KnowledgeBase Semântica que está por detrás do projecto WikiModels. Isto implica as seguintes features, já ordenadas por prioridade:

-        visualização das alterações feitas ao longo do tempo

-        recuperação do estado da KnowledgeBase em qualquer ponto no passado

-        criação de “branches” de um modelo bioquímico para que se possa trabalhar isoladamente em determinadas features sem afectar os restantes colaboradores

-        merge dos branches de um modelo

-        integrar essa solução desenvolvida com o módulo web que interage directamente com o utilizador

Pretende-se que , ao fim do estágio, seja possível interagir com o sistema de controlo de versões  através da plataforma WikiModels.

Pretende-se também que o estagiário fique dotado de competências nas áreas de Biologia Computacional e Web Semântica.

Plano de Trabalhos - Semestre 1

Etapa 1 – Definição de requisitos

Período – 1 de Setembro a 15 de Outubro

Objectivos: Levantamento das necessidades a que a plataforma deverá responder e planificação do modelo de dados.

Tarefas:

E1.T1 - Análise de requisitos

E1.T2 – Estado de arte

E1.T4 – Definição do modelo de dados

E1.T5 – Encontros com pessoas da área para discutir o planeado e receber feedback

E1.T7 – Revisão da análise de requisitos

 

Etapa 2 – Definição da Arquitectura

Período – 16 de Outubro a 30 de Dezembro

Objectivos: Desenho da arquitectura da plataforma

Tarefas:

E2.T1 – Arquitectura e design da plataforma

E2.T2 – Definição dos testes

E2.T3 – Compilação de toda a informação obtida e documentação produzida.

 

Etapa 3 – Proof of Concept

Período – 1 de Dezembro a 7 de Janeiro

Objectivos: Demonstrar a exequibilidade da do planeado para a arquitectura e design

E3.T1 – Implementação de um primeiro Protótipo Funcional

E3.T2 – Melhorar a arquitectura e design de acordo com a informação reunida nesta etapa

 

Etapa 4 – Defesa intermédia

Período – 8 de Janeiro a 5 de Fevereiro

Objectivos: Escrever relatório intermédio e preparar a defesa

Resultados: Relatório intermédio de Estágio e apresentação.

Plano de Trabalhos - Semestre 2

Etapa 5 – Implementação do histórico

Período – 6 de Fevereiro a 30 de Março

Objectivos: Implementação do histórico da plataforma WikiModels.

Tarefas:

E5.T1 – Implementação do suporte de dados

E5.T2 – Implementação da recuo no tempo

E5.T3 – Implementação dos branches

E5.T4 – Implementação do algoritmo de merge

E5.T5 – Execução de testes

 

Etapa 6 – Integração com o WikiModels

Período – 1 de Abril a 31 de Maio

Objectivos: Integração do histórico com o resto da plataforma

Tarefas:

E6.T1 – Implementação da REST API do lado do servidor

E6.T2 – Implementação do Interface Web

E6.T4 – Integração das várias partes

E6.T5 – Execução de testes

 

Etapa 7 – Defesa final

Período – 1 de Junho a 14 de Junho

Objectivos: Escrever relatório final de estágio e preparar a defesa

Resultados: Relatório final do Estágio, apresentação final e possível escrita de um paper

Condições

Oferece-se formação inicial nos aspectos de biologia computacional relevantes para o projecto: Modelos matemáticos, SBML, standards de publicação de modelos.

Remuneração condicional.

Observações

Este projecto apresenta uma boa oportunidade de adquirir formação em Biologia Computacional -- uma área em grande expansão. Uma vez que a WikiModels ficará disponível online para utilização por toda a comunidade científica, o projecto dará grande visibilidade internacional à equipa de desenvolvimento, o que poderá abrir portas ao estagiário para uma carreira fora do país.

Orientador

Armindo Salvador
salvador@cnc.uc.pt 📩