The third-year course Software Engineering is different from most courses. It has a group-project structure, where students take a semester to build a project, which is destined for actual clients. The company LUdev organises this entire process. Before the semester starts, they approach potential clients to obtain new projects. All those projects then must be added to the LUdev website so that the students can view them. During the semester, LUdev matches these projects to the students, which can take a lot of time. Besides this, some other parts of organising this course takes some time and effort to put together. Our final product, a website used by students, teachers and clients, solves this problem and helps every part of the course go more efficiently by centralizing all interaction. The application streamlines the process of the Software Engineering course in a few ways. Before the course starts, it provides clients with a simple form to submit their project. After approval, the project immediately gets displayed in an organized overview of all projects. During the course the students can form groups and submit a project bid to indicate their interests. The website then helps the teacher to more easily match student groups with a fitting project. Afterwards, the teacher has an option to create an archive of all the data of that year. These archives are accessible to the teacher for future reference. To summarise, by keeping all interaction within one application, our product organizes the course in a way that makes the lives of everyone involved in the course Software Engineering easier.
Our client was LUdev, the organiser of the course. We had contact with dr. Alfons Laarman, who was also our teacher for this course. This was a bit unusual at the beginning, but we got used to it pretty fast. The contact usually went smooth. We have had biweekly meetings, where we would show a demo of the project thus far. During the meetings the client could give feedback or talk about their specific wishes regarding the application. The client made really clear what they wanted the product to satisfy, which was very helpful. We ourselves follow this course, so it was a bit easier to understand what the client wanted, as we already knew a lot about how the course was structured.
Within our team we had people with different capabilities. We had to balance everyone’s skills and skill levels to get a good global idea who would be responsible for which part of the project. During the scrum meetings we divided the work based on what everyone was capable of and on what they wanted to learn. At the start of the project, only a few of us were familiar with the technologies used, but that quickly changed as the course went on. In our team we had a scrum master, who would make sure that the scrum process went well and to make sure everyone completed their issues. We also had a product owner who was responsible for the contact with the client. These group members did their roles really well. The communication within our group all went great. We have an active WhatsApp group where we discussed the project and kept each other up to date. Every two weeks we had a meeting where we would discuss how the last two weeks went and what we wanted to achieve before the next meeting. Using these retrospectives, we grew quickly as a team and improved in the way we performed both individually and together. We all have worked hard to hand in an application which we are all proud of.