2 Core concepts

Tercen modules

There are three main types of Tercen modules:

  • Templates
  • Apps
  • Operators

A researcher wanting a complete workflow data analysis (e.g. RNA-seq, flow cyto, etc.) chooses one of the workflows expressed as a list of template. A template therefore represents the highest level app because it defines a set of many steps in sequence to achieve the complete analysis. There would be a template for each of the high-level workflow (e.g. RNA-seq, flow cyto, etc.).

A researcher wanting a specific statistical process (e.g. quality control, two group analysis, or enrichment analysis, etc.) chooses from a list of apps. A app therefore represents the second highest level app because it defines a focused set of steps and visuals to achieve one particular statistical objective.

A researcher wanting a specific operator function (e.g. scale, log, multiplication, addition and subtraction, etc.) chooses from a list of operators. An operator therefore represents a single computational step. It is a typically a single R or Python function.

In summary a researcher wishing a full end-to-end workflow chooses a template, a specific data process chooses a workflow, a specific computation chooses an operator.

Once an app is built, it may be added to the app library where it can be accessed by researchers.

Deciding on which to build is determined by what you would like the app to achieve. The first two, template and workflow, do not need programming experience, the operator does.

The building of each type of module is explained in the following chapters.

Template

No programming knowledge is required to build a template. These are built by using the Tercen user interface and deployed within Tercen.

App

No programming knowledge is required to build an app. These are built by using the Tercen user interface and deployed within Tercen.

Operator

Programming knowledge is required to build an operator using any number of programming languages (R, Python, Rust, etc.). The code is put on Github for the app library to find.

Currently Tercen has made a convenient R package for working with the Tercen API, we aim to quickly cater for the other programming languages (Python, Matlab etc.) during our final release.

A command line function can also be deployed as an operator. This is done using a docker concept.