Back to portfolio

IMUNA Portal 2

1 / 4

The project

Our client uses a custom online portal for registration and organization of the annual IMUNA event, a student International Model United Nations conference in Alkmaar (IMUNA). The current IMUNA portal is highly outdated and hard to maintain, and the current workflow also requires external programs such as Excel and Access. Therefore our project rebuilt this portal with python and added a number of extra features, allowing for easier organisation and better integration of the database. This database is also rebuilt to comply with 3NF and is expanded to allow for more data to be stored. Our product thus gives the client a more compact portal with more features, which they can operate and update more easily. For non-staff users the product is improved upon in smaller ways, such as being able to search up participant information or see a live badge preview when entering participant information. The website is built using Django and is connected to MariaDB. It allows for institutions to register the participating students, and for staff to assign institutions to delegations and their committees as well as manage housing, and the printing of badges.

The customer

Our clients were Sten Bakker and Jort van Leenen, representing the board of the IMUNA Foundation, managed by the Murmellius College in Alkmaar. We had biweekly meetings where our team was mostly physically present in the Gorleaus building and the client either also in person or online through Microsoft Teams. Outside of these meetings we also communicated through WhatsApp for interim questions and feedback.

The team

Victor Ruesink and Sami Fesenko. This team has Victor as product owner, Kaya managing client communication and Hugo as Scrum master. The work was divided by splitting the team into different groups. These groups were created or changed at the start of each sprint and were meant to allow people to help each other when working on the project. Examples of what some groups focussed on were recreating pages of the old portal, creating new web pages, redesigning the database and making the badge creation on the portal possible. To collaborate with each other on these tasks we held multiple in-person meetings a week to work together, along with frequent contact via WhatsApp and Discord.

The biggest challenge we had to overcome was a teammate who stopped responding to us and stopped participating in the development of the product in the middle of the project. To solve this, we picked up his work and ultimately had to drop some of the less important goals of the project. What we are most proud of as a team is our end product, despite the issues with 1 teammate. We are happy with the portal that we eventually created and all the features we added to it.

The technologies

Languages:

  • Python: backend of the application
  • HTML, CSS, JavaScript: frontend of the application

Important frameworks:

  • Django

Database:

  • MariaDB

Tooling:

  • Ruff (also used in CI)
  • Pytest (also used in CI)

Deployment:

  • Test portal for the clients on PythonAnywhere