Features: Difference between revisions

From Alida
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
__NOTOC__
__NOTOC__
Alida provides a framework for easy development and usage of data analysis procedures.<br/><br/>
Alida provides a framework for easy development and usage of data analysis procedures.<br/>
Below an overview of its main features is given.<br/><br/>


'''Operators'''<br/>
'''Operator Concept'''<br/>
The operator concept is the main ingredient of Alida. It defines a common interface for all operators by which their input and output parameters can be accessed,<br> and which also defines a standardized operator invocation procedure. Moreover, different processing steps of an analysis procedure, i.e. different operator calls,<br> can be linked to a directed graph structure, which allows '''self-documentation''' of the entire analysis process.<br>
* common interface for all implemented operators: unified access to all operator parameters, standardized operator invocation procedures
Each resulting data object in Alida, being the result of a certain operator or sequence of operations, is associated with a '''history graph''' in XML format documenting its origins and manipulative actions having been performed on it.<br/><br/>
* various parameter types: input, output and combined input/output parameters
* support for operator class inheritance and operators as parameters
* dynamic addition and removal of parameters at runtime
* callback functions attached to parameters and invoked in case of parameter value changes
* support for ''controllable operators'' which can be paused/continued and stopped by the user
* extensible provider framework for data type I/O with built-in support for native data types, enumerations, collections, ...
* simple definition of new user-defined I/O data types by ''parameterized classes''
<br/><br/>
 
'''Automatic Process Documentation'''<br/>
* inherent '''self-documentation''' of all calls to operators, i.e. of entire analysis procedures
* result data objects accompanied by individual '''history graphs''' in XML format
* history graph exploration tool: '''Chipory'''<br/>Chipory is a comfortable graph visualization tool for exploring graph data structures. It is based on [http://www.cs.bilkent.edu.tr/~ivis/chisio.html Chisio], however,<br/>extended to meet the special requirements of Alida's history graphs.<br/><br/>


'''User Interfaces'''<br>
'''User Interfaces'''<br>
The clearly defined operator interface and the unified invocation mechanism allows for generic execution of operators based on Alida.<br>
* automatic generation of user interfaces for command line and graphical applications
In particular, generic user interfaces, like GUIs or commandline interfaces, can be generated in a fully automatic way and are well-suited for interaction<br> with arbitrary operators. Alida already includes user interfaces for graphical interaction based on Swing and for executing operators from commandline.<br/><br/>
* flexible command line parser supporting regular expressions and various I/O channels (file, console)
 
* handy configuration and control windows for graphical user interfaces
'''History Graphs'''<br/>
* support for saving/loading operators configuration parameters in XML format
Analysis procedures inherently define an acyclic directed graph data structure which Alida make explicit in terms of<br/>
* batch mode option in GUIs to apply operators to sets of input data objects
history graphs. They define visual representations of data analysis procedures subsuming operators, their order of<br/>
<br/><br/>
invocation and their parameters. The graphs allow for easy archival and later reconstruction of analysis procedure and<br/>
can be visualized in a comfortable manor with '''Chipory'''.<br/><br/>


'''Chipory'''<br/>
'''Grappa - The Graphical Workflow Editor'''<br>
Chipory is a comfortable graph visualization tool for exploring graph data structures. It is based on [http://www.cs.bilkent.edu.tr/~ivis/chisio.html Chisio], however,<br/>
* graphical combination of operator nodes into workflows
extended to meet the special requirements of Alida's history graphs.<br/><br/>
* built-in compatibility checks on dragging edges
* provider framework for automatic data type conversions
* user-friendly visual feedback about node states (unconfigured, ready to run, terminated, etc.)
* different workflow execution modes (complete workflows, sub-workflows, individual nodes)

Revision as of 19:18, 10 March 2016

Alida provides a framework for easy development and usage of data analysis procedures.
Below an overview of its main features is given.

Operator Concept

  • common interface for all implemented operators: unified access to all operator parameters, standardized operator invocation procedures
  • various parameter types: input, output and combined input/output parameters
  • support for operator class inheritance and operators as parameters
  • dynamic addition and removal of parameters at runtime
  • callback functions attached to parameters and invoked in case of parameter value changes
  • support for controllable operators which can be paused/continued and stopped by the user
  • extensible provider framework for data type I/O with built-in support for native data types, enumerations, collections, ...
  • simple definition of new user-defined I/O data types by parameterized classes



Automatic Process Documentation

  • inherent self-documentation of all calls to operators, i.e. of entire analysis procedures
  • result data objects accompanied by individual history graphs in XML format
  • history graph exploration tool: Chipory
    Chipory is a comfortable graph visualization tool for exploring graph data structures. It is based on Chisio, however,
    extended to meet the special requirements of Alida's history graphs.

User Interfaces

  • automatic generation of user interfaces for command line and graphical applications
  • flexible command line parser supporting regular expressions and various I/O channels (file, console)
  • handy configuration and control windows for graphical user interfaces
  • support for saving/loading operators configuration parameters in XML format
  • batch mode option in GUIs to apply operators to sets of input data objects



Grappa - The Graphical Workflow Editor

  • graphical combination of operator nodes into workflows
  • built-in compatibility checks on dragging edges
  • provider framework for automatic data type conversions
  • user-friendly visual feedback about node states (unconfigured, ready to run, terminated, etc.)
  • different workflow execution modes (complete workflows, sub-workflows, individual nodes)