The GUI page will essentially have to construct a TaskDocument to be submitted to the API to execute an analysis workflow. Users won't construct them, instead they will select from available templates that provide standard workflows
- pre-processing workflows, take the same set from V1 as starting point
- igblast workflow
- repcalc workflow
- everything together workflow
The TaskDocument is a partial order directed graph, though VDJServer analysis is essentially a 3-step pipeline where you might run each step multiple times before moving onto the next. Pre-processing -> VDJ annotation -> comparative analysis
In practice, the pre-processing is done until acceptable sequence quality, then rarely repeated again. Likewise for VDJ annotations. The majority of exploration is with comparative analysis, defining and redefining groups and running and rerunning analyses.
I want the GUI design to center around those 3 main steps. You never modify a workflows that has been executed, instead you click a button to create a new analysis, either a blank one, or a duplicate of an existing one, then modify and execute it.
A common operation is to add more samples, so you would want to rerun the pipeline with those new samples included. The simple way should be to duplicate a current workflow, add the samples (if necessary). If the user had "All Repertoires" then technically the new samples get automatically added, or the user might want to keep the repertoires fixed, so that sounds like a create option. Then there is the optimization to not rerun for the already run repertoires, only for new, or force rerun for all (i.e. force reproduction)
The GUI page will essentially have to construct a
TaskDocumentto be submitted to the API to execute an analysis workflow. Users won't construct them, instead they will select from available templates that provide standard workflowsThe
TaskDocumentis a partial order directed graph, though VDJServer analysis is essentially a 3-step pipeline where you might run each step multiple times before moving onto the next. Pre-processing -> VDJ annotation -> comparative analysisIn practice, the pre-processing is done until acceptable sequence quality, then rarely repeated again. Likewise for VDJ annotations. The majority of exploration is with comparative analysis, defining and redefining groups and running and rerunning analyses.
I want the GUI design to center around those 3 main steps. You never modify a workflows that has been executed, instead you click a button to create a new analysis, either a blank one, or a duplicate of an existing one, then modify and execute it.
A common operation is to add more samples, so you would want to rerun the pipeline with those new samples included. The simple way should be to duplicate a current workflow, add the samples (if necessary). If the user had "All Repertoires" then technically the new samples get automatically added, or the user might want to keep the repertoires fixed, so that sounds like a create option. Then there is the optimization to not rerun for the already run repertoires, only for new, or force rerun for all (i.e. force reproduction)