Systems Analysis & Design

  • Single page app
  • Firebase chat
  • Markdown module wiki
  • Student Q & A

A single page app built with Vuejs to aid students' studies

Student web application portal
  • Vue JS logo


  • PHP language logo


  • Firebase logo


  • MySQL logo



The two assignments for this module were a progression of sorts, with the first being our consideration and solution to the requirements of a real-life system, and the second designing and building a system for a client as part of a team.

For the second assignment, I was given the opportunity to lead a team of 4, as the person that brings together the developer and researchers. It was a role I really enjoyed to be honest as I was able to apportion my time to help and communicate among other members in areas most pressing. Either getting hands-on and helping to develop the software or designing and documenting the system as we made progress through our MoSCoW prioritisation analysis.

Our choice of system was one that helps students conveniently and quickly interact and gain the information they require in a single unified space/app. Although our initial thoughts were to build an alternative to Twitter where the user could only use emoji's, we quickly realised that that wouldn't really work other than being a fun experiment. The lectures also didn't seem too enthused either 😅.

After using Blackboard (a learning tool used by the University) for the best part of 2 years, the team collated our difficulties with it, its encumbrances and lack of consistencies between modules, into a wish list on how to provide a better experience.

We decided that our key requirements for the system were:

  • An editable module Wikipedia. To include key assignment information such as a shorthand summary of each assignment, times, dates, word limits, etc.
  • Each module to include a Question and Answer section. Here registered users can post a question on the module, allowing other users to post answers, which can then be rated by other students.
  • And finally, an instant messenger chat section for each module, built with a NoSQL backend from Firebase.
A web application showing the user profile panel and a list of bookmarked modules

First Place 🏆

What we ended up with was a feature complete system, one that was voted the best in the year by our lecturers! As the team leader, I'm proud of what we collectively achieved, hitting all our key targets and the majority of our MoSCoW priorities.

We would've liked to have incorporated a few more features of course, adding an admin level access and management would have been our next step, as would the inclusion of a state management system. However, the deadline grew ever closer and we prioritised key functionality to produce a working system.