Enterprise Information Systems (Summer semester 2025)

Microservice

You are expected to implement 1 microservice supporting 1 or more business processes in your selected domain.

The overall architecture looks as follows:
architecture

Your microservices must expose REST-like APIs which will be called by a BPMS (SpiffWorkflow). You will also develop the BPMN process models of the respective business processes, including forms, which provide a necessary user interface to your microservices. You may additionally implement your own UI if you want. To facilitate both process analytics and debugging, your microservice will also send logs to respective Kafka topics (more information will follow).

Please use the course’s BPMS to develop and deploy your BPMN buisness process models. You can always test the same environment locally by following this guide.

Code

Please manage your group’s code with git and publish it as a repository in the course’s Gitea. Create a repository called GroupN (replace N with your group number, group 9+11 please use group 9) in the EIS2025 organization and use the same CI/CD pipeline as your individual microservice.
Your microservice should expose exactly one port, being 80XX, where XX is your group nubmer (from 01 to 12).
In contrast to the individual microservice, you may want to deploy multiple containers (e.g. separate containers for database), please add more services to the docker-compose.yml file but do not expose additional ports! Example file will be provided later.

Tools

You can create your initial process models using BPMN.io, SpiffWorkflow’s built-in modeler (see above) or Camunda modeler.
For models like UML or ER, you can use any modeling tool you prefer, e.g. draw.io.
You can use Dillinger as your Markdown editor.
You will need to use the course’s git repository for your microservice (more details will follow).