Our team is composed of five students from the Intelligent Connected Environment speciality of the IUT Informatique de la Rochelle. The team was naturally formed around the Koala LMS project motivated by our desire to acquire new skills and to participate in the realisation of a project useful to students.
We were accompanied by :
- Philippe Coulaud, teacher at the University Institute of Technology in computer science of La Rochelle and tutor of our project.
- Guillaume Bernard, engineer and coordinator of Koala LMS. He guided us through the whole process, helped us to understand Django and Python and to get familiar with the development tools. He taught us about using GitLab and the best practices we can adopt to keep our workflow clean. He helped us understand the importance and power of versioning tools.
During our last year of formation at La Rochelle Université we had to carry out a project with a partner outside the IUT.
Following the presentation of the different projects, we naturally formed a team of five members interested in the Agora project of Koala LMS. The team, serious, motivated and wishing to acquire skills in Python was mainly motivated by the idea that this project could be useful to other students.
During our project, we were able to count on the help of our coordinator Guillaume Bernard. We thus defined the expectations of our project: “development of an open discussion system” in the
django-learning application of Koala LMS. Indeed, Koala LMS being a teaching platform that aims to focus on pedagogy, the addition of an open discussion platform was a key point in this objective.
Implementation of a simple discussion system
The implemented functionality are as follows:
- First of all, we deployed a system that allows us to interact with courses by asking questions and being able to answer them. This first brick of the agora was also the most important one.
- Development of the question page with voting and question editing system.
- Question page related to a course. Each course has its own dedicated agora.
- Creation of a question follow up system with a page containing all the questions followed up.
- Connect the notification system with the Agora. When an answer is given, the followers are notified.
The Koala LMS project has brought us a lot, especially concerning the Python language and the Django framework.
The conception and realisation stages were extremely enriching, moreover, working in a professional context with delivery deadlines was a real contribution since it requires autonomy and initiative.
In addition to being our first concrete project with professional partners, these many months of work will have allowed us to acquire good project management practices using the principles of the Agile manifest.
The overall feeling of the team at the end of the project was the pride of having been able to participate in a useful and concrete project as well as to see the result of our work on the demonstration site.
The Agora project have been carried out in 2 parts : a phase of research and study and a phase of realisation and implementation of the features.
The research and study part was carried out between November and December 2020. During these few months, the team made a study of the different features to implement. Once defined, the team took the time to define which one would be the most important using the MoSCoW method. Once this prioritisation was done, the team was able to establish a provisional calendar of the different sprints to be performed in order to develop the Agora.
The development part took place over the period from January to April 2020. The first weeks of development were particularly difficult since it was a matter of learning a new framework as well as absorbing the work already done. Once this adaptation time was over we were able to start working productively during 4 sprints. After the fourth sprint, we became official collaborators of Koalas LMS and started a continuous integration directly on the official repository.
The future of the project
At the time of final delivery, the agora is functional and equipped with several features. However, not all of the functionality we wanted to integrate could be integrated. There is still a handful of functionality to implement such as “question removal” or a “filtering” system.