Old architecture was hard to maintain and develop.
Code for analysis was spread across multiple packages, fixes involved changing multiple code repos
Shiny app broken into 2 docker containers into 2 code repos, laborious to update on production
Repos using renv to fix packages instead of latest packages, missing improvements
Repos missing automatic testing, (except for HadesExtras), catch errors before the go to production
New Architecture
One docker image with all the apps, in a separate repo
Modular analysis: CohortOperations2 code is only to connect to a database, get and operate cohorts. Analyses based on the created cohorts are build in other repos, at the moment CO2AnalysisModules, visualisation can be done using other than shiny
Motivation
Old architecture was hard to maintain and develop.
New Architecture
Implementation