Skip to content

POGS Architecture

Carlos Botelho edited this page Dec 19, 2019 · 2 revisions

Introduction

The POGS web application is build using Spring Boot. It consists of one monolithic application composed of several modules that could be later on extracted to microservices, and the backoffice and workspace.

The platform enables researchers to conduct studies, composed of sessions of tasks that subjects are invited to join. This tasks are better described in the next section.

Extension points

POGS comes with the core functionality to run studies, sessions and tasks. This tasks are implemented using a plugin architecture, that is better described at: Working with Plugins

Other extension points that a researcher can use are the executable scripts. They provide simple ways to extend some basic functionality of the system, without any change to the actual core system. This is better explained at: Working with executable scripts

Database

We access the underlying MySQL database using jOOQ. jOOQ generates models from the database and allows us to use an intuitive Java DSL to write SQL queries. Each model layer only accesses its own tables in the database to keep the data separate.

Get Started

Now it's time to improve POGS! To get started with developing, follow the Development Environment Setup.