Propostas Atribuidas 2023/2024

DEI - FCTUC
Gerado a 2024-05-17 10:53:37 (Europe/Lisbon).
Voltar

Titulo Estágio

Framework de Desenvolvimento de Mini-Apps recorrendo a Generative AI

Áreas de especialidade

Engenharia de Software

Sistemas Inteligentes

Local do Estágio

Coimbra (Taveiro)

Enquadramento

Nos últimos meses verificaram-se avanços significativos na tecnologia de Generative AI, graças a progressos notáveis nos Large Language Models (LLMs), e na capacidade computacional que está disponível para treinar esses modelos.

Achamos que a tecnologia de Generative AI vai potenciar imenso a inovação, e abre caminho a novas aplicações e modelos de negócio. É neste contexto que lançamos este desafio, que consiste no estudo de tecnologias de Generative AI para criação de uma plataforma de geração de Mini-Apps para serem integradas Apps Mobile.

As plataformas de Generative AI da OpenAI, Stability AI, DeepMind, Bard, GitHub Copilot, entre outras, estão a revolucionar a forma podemos criar conteúdo texto, documentos, processar dados, escrever código de software, analisar código para detectar bugs e problemas de segurança. Outras ferramentas como o MidJourney, Stable e o Dall-E permitem criar imagens através de uma simples prompt de texto. Em breve algumas destas plataformas irão permitir a geração de vídeo, também através uma simples prompt de texto.

O objectivo deste estágio insere-se neste trend: criar uma plataforma de geração automática de Mini-Apps através de um simples prompt interactivo de texto.

As Mini-Apps correspondem a simples programas de software e executam uma determinada função de negócio. Essas Mini-Apps podem ser incluídas em aplicativos de messaging (como no caso do WeChat), em aplicativos de pagamentos móveis (como no caso do M-Pesa), em aplicações bancárias ou em aplicações de redes sociais.

Esta plataforma irá fazer uso de uma das tools: GitHub CoPilot ou Amazon Code Whisperer. Vai ser necessário alimentar estas tools com alguns Templates pré-definidos de algumas Mini-Apps. Do ponto de vista do utilizador todo o código será gerado por uma simples prompt de texto, e o utilizador nem precisa de ter skills de programação de software. A expectativa da plataforma é que permita a criação automática de simples Mini-Apps, segmentadas em duas categorias: M-Commerce e Travel.

Sobre a Empresa:
A WIT tem 20 anos de experiência na área das telecomunicações e é uma empresa francamente exportadora. Prova disso é o facto do software que desenvolve já ter sido exportado para 40 países. A empresa conta com os seguintes clientes: Grupo Vodafone, Deutsche Telekom, NTT DoCoMo, KDDI, Softbank, AT&T, Verizon, Safaricom, Vodacom, Unitel, entre outros. O software desenvolvido pela WIT está presente em 42 países. A WIT tem escritórios em Portugal e Reino Unido e os seus centros de desenvolvimentos estão localizados em Coimbra, Porto, Lisboa, Leiria, Aveiro e Belmonte.

Objetivo

O objectivo do estágio é conseguir compreender o estado actual das ferramentas de Generative AI para geração automática de código e avaliar essas capacidades para a criação de Mini-Apps, que podem ser incluídas dentro de Apps Mobile.

Os seguintes pontos descrevem o que se espera que seja alcançado no final do estágio:
1. Estudo detalhado das ferramentas GitHub CoPilot e Amazon CodeWhisperer, benchmarking e análise.
2. Criação de um demonstrador que permita a um utilizador criar Mini-Apps através uma simples prompt de texto.
3. Enriquecer esse demonstrador com a capacidade de definir elementos gráficos para a UI da Mini-App (logotipos, imagens, texto) através do prompt de texto.
4. Usar esse demonstrador para criar uma Mini-App de M-Commerce e outra de Travel.
5. Avaliação da qualidade do código gerado através de testes funcionais, não-funcionais e de usabilidade.
6. Realizar testes de usabilidade com utilizadores finais que irão interagir com o demonstrador para demonstrar a viabilidade da plataforma.
7. Produção de documentação com o conhecimento adquirido durante o estágio

Plano de Trabalhos - Semestre 1

Para o 1º semestre estão planeadas as seguintes tarefas:

Estudo das ferramentas de Generative AI para geração de código (GitHub CoPilot e Amazon Code Whisperer).

Levantamento de requisitos de aplicações de categorias específicas:
O foco será nos requisitos mais comuns para Mini-Apps nas categorias de M-Commerce e Travel.

Planeamento da implementação de templates de código para os requisitos levantados.

Criação de uma prompt interactiva para apoiar o utilizador na definição da Mini-App.

Evolução da prompt para que o utilizador possa fazer upload de conteúdo para o UI da Mini-App (logotipos, imagens, banners, texto intro).

Preparação de um protótipo que demonstre alguns dos requisitos.

Documentação intermédia do estágio.

Plano de Trabalhos - Semestre 2

Para o 2º semestre estão planeadas as seguintes tarefas:

Criação de um demonstrador de um Mini-App de M-Commerce, onde se demonstra, end-to-end, a criação de uma Mini-App através de um simples prompt de texto.

Setup da Mini-App e preview da aplicação.

Integração da Mini-Apps com backends funcionais de M-Commerce.

Criação de um demonstrador de um Mini-App de Travel.

Setup da Mini-App e preview da aplicação.

Refinamento dos protótipos para serem validados num estudo de usabilidade.

Avaliação de qualidade do código do ponto de vista funcional, usabilidade e performance.

Condução de um estudo de usabilidade com outros utilizadores.

Documentação final de estágio.

Condições

O horário será a tempo completo.

Durante o estágio o aluno terá ao seu dispor todos os equipamentos necessários para desempenhar as suas tarefas.

O estágio é remunerado. Se o desempenho do aluno ao longo do mês for positivo, terá direito a receber uma bolsa mensal.

Terá ainda acesso às formações da WIT Academy.

Será feita uma avaliação do desempenho no final do estágio. Se esta avaliação for positiva será feita uma proposta ao aluno para que possa vir a fazer parte da empresa.

Observações

Toda a documentação de projecto será em Inglês.

Será usada uma metodologia de desenvolvimento agile

Existe um Tutor e um Orientador. O Orientador define os requisitos do estágio, define as prioridades do Backlog e acompanha os resultados parciais do projecto. O Tutor garante o cumprimento das tarefas, promove as meetings e acompanha o aluno com mais regularidade.

Orientador

João Francisco Silva e Sousa
joao.sousa@wit-software.com 📩