ENGLISH / MAGYAR
Kövess
minket

Re-designing and re-implementing a monolithic application as cloud-native microservices

2025-2026/II.
Nagy Roland

A recent trend in software design is the rise of microservice architecture. Instead of implementing complex systems as one monolithic software component, a so-called microservice architecture is used. In this case, complex systems are decomposed into small, independent software components. Each of these components implement a specific business capability and provides its functionality to other microservices through a well-defined API (often implemented by a message queue or an HTTP/REST API). Despite the additional complexity in designing such systems, microservice architectures are popular, as they offer flexibility and scalability.

In this project, the student must re-design and partially re-implement a complex, monolithic system as microservices. The student must describe the old system and determine the set of functionalities that must be transferred to the new system. The new system must be split into small, microservice-like components, with well-defined responsibilities and APIs. A subset of these microservices must be re-implemented as cloud-native components. The student must create a project template, where the code of the microservice is organized in such a way that it supports automatic testing by continuous integration solutions.

Tasks to be performed by the student will include:

  • Providing an overview of microservice-based architecture design
  • Decomposing an existing monolithic application into independent components
  • Identifying components that will be included in the new system
  • Designing a microservice-based application
  • Implementing a subset of these microservices

1
1