Propostas atribuídas ano letico 2025/2026

DEI - FCTUC
Gerado a 2025-12-09 07:34:17 (Europe/Lisbon).
Voltar

Titulo Estágio

Parallel Javascript

Área Tecnológica

Engenharia de Software

Local do Estágio

Laboratório de “Software and Systems Engineering – CISUC”, Departamento de Engenharia Informática da FCTUC

Enquadramento

Este estágio está integrado do projecto “AEminium – Freeing Programmers from the Shackles of Sequentially” financiado pelo programa CMU|Portugal. Este projecto tem por objectivo dotar os programadores de uma plataforma para o desenvolvimento de aplicações massivamente paralelas.

O projecto resulta de uma parceria entre a Universidade de Carnegie Mellon, a Universidade de Coimbra, a Universidade da Madeira e a Novabase. Os trabalhos em Coimbra centram-se no desenvolvimento do ambiente de execução (runtime) e das ferramentas necessárias para dar suporte a uma nova linguagem de programação.

Objetivo

O Javascript é actualmente uma das linguagens de programação mais utilizadas na Internet. É uma linguagem dinâmica e fracamente tipada, utilizada na maioria das vezes para escrever código a executar do lado dos clientes. A evolução da Web 2.0 e de tecnologias como o Ajax fomentou ainda mais a disseminação do Javascript. No entanto, um dos problemas apontados a esta linguagem é a sua fraca performance. Gigantes da indústria do software, como a Google, aperceberam-se disso mesmo e têm tentado colmatar esta falha através do desenvolvimento de novos motores e técnicas de interpretação/compilação. Surpreendentemente, uma das abordagens menos exploradas até hoje é a paralelização da execução. Tendo em conta que a grande maioria dos PCs actuais possui processadores Multicore, esta pode ser uma abordagem com elevado potencial. O objectivo deste estágio é projectar, desenvolver e explorar técnicas de paralelização da execução do Javascript.


Plano de Trabalhos - Semestre 1

(ID da tarefa / Identificação / Duração (horas) / Dependências)
(1 / Integração na equipa do projecto / 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 objectivos do projecto / 32 / 1)
(5 / Identificação de requisitos / 16 / 4)
(6 / Planeamento do desenvolvimento / 5 / 5)
(7 / Sprint 1 / 32 / 6)
(8 / Sprint 2 / 32 / 7)
(9 / Sprint 3 / 32 / 8)
(10 / Sprint 4 / 32 / 9)
(11 / Escrita do relatório intermédio e preparação da apresentação / 16 / 8)
(12 / Preparação de demonstração / 10 / 10)

Plano de Trabalhos - Semestre 2

(ID da tarefa / Identificação  / Duração (horas) / Dependências)
(13 / Integração dos dados recolhidos na apresentação intermédia no planeamento do estágio e na preparação do relatório final / 20 / -)
(14 / Sprint 5 / 80 / 10,13)
(15 / Sprint 6 / 80 / 14)
(16 / Escrita de documentação / 40 / 15)
(17 / Preparação de testes e demonstração / 40 / 15)
(18 / Sprint 7 / 80 / 15,16,17)
(19 / Sprint 8 / 80 / 18)
(20 / Escrita de documentação / 40 / 19)
(21 / Preparação de testes e demonstração / 40 / 19)
(22 / Sprint 9 / 80 / 19,20,21)
(23 / Sprint 10 / 80 / 22)
(24 / Escrita de documentação / 40 / 23)
(25 / Preparação de testes e demonstração / 40 / 23)
(26 / Escrita do relatório final e preparação da apresentação / 30 / 21)

Condições

Será atribuída uma Bolsa de Iniciação à Investigação ao aluno seleccionado para a duração do estágio. O subsídio de manutenção mensal tem o valor de €385, de acordo com a tabela da FCT para Bolsas de Iniciação Cientifica, pago por transferência bancária. 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 um bom currículo académico nas áreas relacionadas com o projecto. Nomeadamente: programação; scripting; programação concorrente; compiladores e runtimes; e engenharia de software. A aprovação final de um candidato será realizada pelo PI do projecto AEminium na Universidade de Coimbra.


Orientador

Prof. Bruno Cabral
bcabral@dei.uc.pt 📩