Propostas atribuídas ano lectivo 2021/2022

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

Titulo Estágio

Implementation of an Event Sourcing Application

Áreas de especialidade

Engenharia de Software

Local do Estágio

DEI/FCTUC

Enquadramento

Event Sourcing (ES) is a state storage format that uses events as the source of truth in the system. Instead of storing only the current snapshot of the data, ES systems keep track of all the changes to the state. In other words, while most current systems use a database to keep data and the database only has the last and current state of data, the ES system keeps all the history of changes. While ES systems take a larger space and make queries slower, systems are auditable and can be rebuilt and changed on the fly. For example, if a component crashes due to some faulty event, one can correct the event and re-run the component to ensure that it reaches a correct state. For more information check Martin Fowler's blog: [url=https://martinfowler.com/eaaDev/EventSourcing.html]https://martinfowler.com/eaaDev/EventSourcing.html[/url]. ES is particularly useful in banking systems. Banks need to keep the entire history of transactions, because the current balance is not enough.

Objetivo

In this internship we will develop a sample ES application in the context of a project with Altice. This application should reach production-ready level, with testing monitoring, and CI/CD pipelines. The overall goal is to explore ES development techniques and bring expertise about these technologies and their interaction to the project.

Plano de Trabalhos - Semestre 1

- Define the application to build. By default this should be a simple banking application (1 month).
- Study state-of-the-art frameworks and tools that can be used to build ES systems, CI/CD, testing, etc. (1 month).
- Define the application requirements (0.5 months).
- Define the architecture (1 month).
- Define testing process (0.5 months).
- Write intermediate report (1 month).

Plano de Trabalhos - Semestre 2

- Prepare the test-driven development environment (2 months).
- Implement the system (3 months).
- Write final report (1 month).

Condições

The work should take place at the Centre for Informatics and Systems of the University of Coimbra (CISUC) at the Department of Informatics Engineering of the University of Coimbra in the scope of the Power research project.

A 745 euros per month scholarship is foreseen for 3 months. The attribution of the scholarship is subject to a public application.

Orientador

Filipe Araújo e Jaime Correia
filipius@uc.pt 📩