Skip to contents

Introduction to Strategus

The Strategus package is a new approach for coordinating and executing analytics using HADES modules. The goal is to have OHDSI network sites install Strategus and exchange an analysis specification in JSON format to execute a network study. The analysis specification will capture all of the design choices that pertain to the methods used in a given study. The analysis specification format aims to allow for combining different HADES modules together as a pipeline to execute a study.

For more details on how Strategus is used as part of a network study, please see the Strategus Study Repo Template.

Using Strategus

The high-level steps in using Strategus consists of the following:

  1. Create the analysis specification for the study. This will include things like picking the cohorts for the study and to specify the analysis settings for each the HADES modules (i.e. Cohort Diagnostics, Comparative Cohort Study, etc). See the Creating Analysis Specification article for more details.
  2. Create the execution settings that specify how to connect to the OMOP CDM in your environment and execute your study. See the Execute Strategus for more details.
  3. Upload the results and use Shiny to view the results. See the Working with Results for more details.

What is a HADES module?

A HADES module aims to standardize the input and output produced by a HADES package. Each HADES module contains a function to create the settings to carry out the analytic tasks. These module settings are then added to the analysis specification to build a pipeline of analytic tasks that span one or more modules. Each HADES module is responsible for writing results as comma-separated value (.csv) files. CSV output was purposely chosen to provide transparency for the results generated so that users of Strategus can review their results before providing them to a network study coordinator. In addition to the CSV results, each module will produce a resultsDataModelSpecification.csv which describes the data-definition language (DDL) to store the CSV results in a PostgreSQL database. The definition of the resultsDataModelSpecification.csv is described in more details in the ResultModelManager documentation. Finally, each HADES module provides functions for creating the PostgreSQL results tables based on the resultsDataModelSpecification.csv and for uploading the CSV results to the results database.

From a technical perspective, a HADES module is an R6 class that accepts the Strategus JSON analysis specification to call one or more HADES packages to produce a standardized set of results. When used with renv, Strategus provides a reproducible way to execute each step in an analysis specification by ensuring the proper dependencies are available along with the code that was used to execute the analysis.