Monomo

What was originally planned to be a collection of Moodle plugins quickly turned into an entirely separate Learning Management System that we called Monomo. It was designed to be easier to use and maintain than alternative solutions.

Years
– 2015
Team
8 people
Client
Fachhochschule Nordwestschweiz
Tags
Web, App, PHP

This was the first year-long project I took part in at the FHNW. This meant that there was some uncertainty as to how we should progress inside our team of eight. Much of this came from us working with Moodle, a platform we were struggling to understand. After progress slowed down more and more we decided to approach our client with an alternative: a custom solution, developed completely from scratch.

We knew about the required functionality from the beginning of the year, we had prototypes designed to show how the interaction would work, both of which allowed us to get started with our new approach very quickly. Going for a Laravel-like setup helped a lot with initial complications so making up the time we lost working with Moodle was easily done.

planning
A general planning exercise that teaches students how to schedule work packages most efficiently and distribute the workload.

The LMS was to be used for teaching students at the FHNW about a set of project management tasks by offering them a combination of educational texts, practical examples and exercises. The most complicated part of this were the exercises, which included a multiple-choice task, a Belbin Test, SWOT analysis and a general planning test.

Despite the strict time window we managed to cover all requirements in a satisfying way and to create a maintainable, well-documented solution that would later be used by the FHNW.

Things I've learned

Instead of relying on one of the popular PHP frameworks we decided to pick the pieces we needed and create a custom solution. This was partially due to lack of experience in the field, but it turned out to not be a problem, combining parts of the various frameworks. Still, our solution ended up closely resembling a Laravel setup.

mctest
Administrators have an easy to use interface for creating and managing exercises.

It was important for us to have a well-documented solution that could be used as the base for a succeeding student project in a later year. This is why we spent a lot of time writing comments and general documentation for all the project disciplines. I learned a lot about automating documentation generation and how to write useful comments in code.

In the second half of the project I was responsible for Usability Testing. This meant I had to do testing with various participants, sometimes even in the Usability Lab at the FHNW, which offers eye tracking and other useful tools for the field. This experience showed me the importance of thinking about usability early on and how to assess the usability of an application.

Technologies I've used

The project was rather simple on the technological level. It is mostly written in PHP, along with some Twig templates and Sass for styling. The technological simplicity allowed us to spend more time learning more about the languages we used, instead of having to learn a framework from scratch.

Tasks
Team Work, Communication, Usability Testing, Design, Development, Documentation
Technologies
HTML, CSS, PHP, Sass

If you enjoyed reading this case study you might want to share it on Twitter, on Facebook, or on Pinboard.For comments and questions, contact me through e-mail.