Building a Unified Scheduling Platform with React for UCLL

Reading time: ca.

As educational institutions keep growing and diversifying their courses, they have to account for an increasing number of parameters in their scheduling. Because of this complexity and the specifics for each institution, a custom solution is often the way to go. In this case study, we’ll take a look at how we helped a prominent university of applied sciences to design and implement a scheduling platform using React and a unique learning partnership for one of our junior developers. Let’s dive in!

Sculpting Schedules

UC Leuven-Limburg (UCLL) is a major Flemish university of applied sciences. Originally formed as a fusion of other educational institutions, they have more than 16.000 students across 8 campuses and dozens of courses. For an organisation of that size and complexity, scheduling assignments for its teachers is far from easy.  

Each programme had their own tool to divide teaching assignments between its teachers, ranging from Access to Excel and pen and paper. UCLL realised that they needed an overarching system so they could streamline this process and make it more visible throughout the organisation, but they ran into a lack of in-house development capacity in earlier attempts.

The school’s management board decided that additional resources would be needed to execute a project of this scope, so they started looking for external help. After gathering the functional requirements and other specifics in a thorough internal research phase, UCLL approached The Cronos Group. Cronos referred them to Optis because of our expertise in custom Java, JavaScript and React development, and we got to work.

A Trio of Technological Questions

UCLL’s new system needed to have a more elaborate user interface than the applications they had developed up to that point. Their developers had plenty of experience with both frontend and backend development in Java, but they realised that a satisfying UI would require a specialised library.

UCLL’s request was threefold: they needed someone to help them decide which library would be most suited for the task, train their developers in using this new technology, and provide a developer to code alongside them.  

We assigned Andy, one of our technical architects, to help UCLL with the first two tasks. They were especially happy with how thorough Andy took care of the decision-making process by actively listening to their requirements and concerns. They ended up choosing React relatively quickly, mainly because of its low barrier of entry for Java developers and market presence. Once the research and analysis phase had concluded, we were ready to start developing.

A Pedagogical Partnership

As part of this project, we agreed on a unique partnership with UCLL. Andy would help them with introductory React training, while Charlotte, a recently joined junior developer, would work alongside their development team. This had some clear benefits for both parties.  

Charlotte got a chance to sharpen her skills in an environment that focused on learning and had experience with interns, and UCLL could still rely on Andy’s guidance and expertise. Although Charlotte was a junior at the time, UCLL was quickly convinced by her in-depth technical knowledge, eagerness to learn, and ability to deal with feedback.

The development team, which also consisted of an analyst and a project manager, gathered in daily stand-up meetings to discuss their progress. Using a hybrid working model, they gathered on UCLL’s campus to work together once a week and otherwise worked from home. They started in September and managed to finish the predefined Minimum Viable Product (MVP) by the deadline in January.

They ended up choosing React relatively quickly, mainly because of its low barrier of entry for Java developers and market presence.

The Second Semester

After the MVP had been delivered, a pilot group started testing its limited set of features, such as modular FTE (Full-Time Equivalent) allocation. During the testing phase, they worked closely together with the development team to give feedback and finetune the system. At UCLL, developers are encouraged to actively participate in this process alongside the analyst.

After concluding their elaborate testing, UCLL contacted us for a second development phase to add the remaining features to their platform. Examples of these features include an interface for planners, individual schedules for lectors, and an import functionality to add context from previous years.

This second phase also helped to deepen the development team’s knowledge of React. Charlotte noticed that UCLL’s developer were experts in (Java) backend development, while she mainly focused on (React) frontend development. The team decided to switch things up, so they could learn from each other’s specialisation while becoming more familiar with the other side. By the end of the second development cycle, the team delivered the full set of features before its April deadline.

Lifelong Learning

Now that the project’s original scope has been accomplished, UCLL has a comprehensive scheduling platform that is already being put to good use. They are not only thrilled with their new platform, but also happy that they got a chance to participate in this unique partnership and let a junior developer learn on the job.

However, it’s only fitting for an institute of learning that they want to keep developing the platform on their own. Armed with new insights in React development, UCLL’s team can update and expand it for other teams with additional integrations.

In need of some custom development expertise in Java, JavaScript or React? We’ll be glad to help you out, just send us a message!

Keshia Niemegeerts

September 11, 2023

read our latest business cases

"Each project pushes our skills farther and expands our expertise"

Let's talk!

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
We value your privacy! We use cookies to enhance your browsing experience and analyse our traffic.
By clicking "Accept All", you consent to our use of cookies.