BioWMS
Category Cross-Omics>Workflow Knowledge Bases/Systems/Tools
Abstract BioWMS is a web-based Workflow Management System (WMS) for bioinformatics.
It provides a web-based user interface for the definition, execution and results management of an in-silico experiment and it also exploits an agent-oriented technology to implement a Migrating Workflow Model.
BioWMS dynamically generates the workflow engine associated with a single user ‘workflow specification’.
The agent-based technology allows you to embed application domain features inside the agent’s knowledge, and proactiveness and mobility inside the agent’s behavior.
The resulting workflow engine is a multi-agent system - a distributed, concurrent system - typically open, flexible, adaptive and mobile.
Workflow Management Coalition --
The Workflow Management Coalition (WfMC) defines a WMS as a “system that defines, creates and manages the execution of workflows through the use of software, running on one or more workflow engines, which is able to interpret the process definition, interact with workflow participants and, where required, invoke the use of Information Technology (IT) tools and applications”.
According to this definition the manufacturer has developed BioWMS as an automated framework to define, create and manage the execution of an in-silico experiment defined as a workflow of user domain activities.
Process definition tools --
Process definition tools are used to create the process description of a workflow in a computer processable form.
The workflow editor is the program that supports the workflow specification by composing activities in a graphical environment.
BioWMS provides a web-based editor, called WebWFlow, which enables the definition of a workflow in the XML Process Definition Language (XPDL), a WfMC standard.
As a consequence, the workflow specification can be edited by other applications compliant to this standard, such as the JaWE editor.
[Enhydra JaWE (Java Workflow Editor) is one of the first open source graphical Java workflow process editors fully compliant, according to WfMC specifications supporting XPDL as its native file format.
It can be used to edit / view every XPDL file which conforms to WfMC XPDL specifications, does Not use any proprietary XPDL extensions and is available in English, German, French, Spanish, Portuguese and the Serbian language].
Workflow client applications --
Workflow client applications are used to execute existing or previous saved workflows, to check the workflow execution state and to manage the produced results.
WebWFlow, the web-based editor of BioWMS, also provides these facilities.
Another workflow client application developed for BioWMS is biowep (see G6G Abstract Number 20525), a web portal suitable for the ontology-based selection and enactment of predefined and annotated workflows.
Workflow enactment service --
The workflow enactment service provides the run-time environment in which process instantiation and activation occur, utilizing one or more workflow management engines, responsible for interpreting and activating part, or all, of the process definition and interacting with the external resources - invoked applications - necessary to process the various activities.
The workflow enactment in BioWMS is supported by Hermes agent- based middleware (see below...).
The XpdlCompiler is a Hermes special component that generates a mobile multi-agent system - workflow executors - from the user workflow specification.
The workflow specification is the coordination model that describes how the generated agents cooperate with each other to reach a particular goal.
The middleware provides the necessary software infrastructure, which allows the migration of workflow executors to different sites, and makes this process transparent to the user.
The Hermes Graphical User Interface (GUI) is an administrative and monitoring tool that allows checking, at any time, of the computational resources available, the memory consumption, and the agents that are running.
Hermes middleware --
Hermes is middleware that supports distributed applications and mobile computing.
Hermes has been developed by using a programming environment with the following methodology: a user can specify their distributed application as a workflow of activities which can be graphically described with Unified Modeling Language (UML) Activity Diagrams.
The activities are implemented as agents. Agents execute the activities and coordinate themselves by following a coordination model which describes the communication protocol suitable for the application.
Agents can be distributed (wrapping a remote service) and mobile (looking for a remote service).
Designing a workflow --
The activities used in a workflow can be configured with several parameters; in this way it is possible to reuse the same activity for different workflows.
Any workflow can be specified by using the graphical notation offered by the WebWFlow the BioWMS editor. A workflow can be started and ended by special graphical elements; in particular, the Workflow end element is the point in which the workflow has to be terminated.
Activity elements -
WebWFlow, enables the composition of both primitive and complex activities. A primitive activity is an activity that can be directly executed.
A complex activity is a user activity that must be specified before it can be used; the specification of a complex activity is a workflow of complex and simple activities.
By using complex activities the specification of workflows is simplified because they enhance both hierarchical specification and reuse: one can use an already existing complex activity without caring about its specification.
Moreover, large libraries of both domain specific primitives and complex activities can be loaded to the editor for a specific application domain.
Special control-flow patterns -
A user can specify the order of activities execution using special control- flow patterns:
1) The Sequence pattern allows you to execute one activity after another. It is generally used when the output of an activity must be piped as input to a subsequent activity.
2) The Concurrence pattern enables the parallel execution of two or more activities. It is possible to assign each of these concurrent activities to different performers corresponding to Workflow Executors.
The code mobility, supported by Hermes middleware (see above...), can be exploited to improve the computational load balancing of a workflow.
3) The If pattern defines a conditional routing where the choice of the activity to be executed is case-driven. An error or exception can be caught and considered as a special case, so that the workflow becomes fault tolerant and the execution can then select an alternate path when something goes wrong.
4) The Iteration pattern is a pattern enabling the cyclic execution of one or more activities. When a special case occurs the control-flow leaves the cycle and the workflow execution continues.
Loading and executing a workflow --
Workflows stored in BioWMS can be public or private. While a public workflow is provided by BioWMS and is visible to all users, a private one is available only to the user that has previously defined it.
The web-interface allows you to view workflows both with a graphical notation and with the corresponding XPDL workflow specification.
After a user has defined their workflow and has submitted it, BioWMS compiles it in a multi-agent system by exploiting the agent-based middleware. BioWMS supports long-running activities and the execution is independent of user control.
Managing results --
At any time, users can check the workflow execution state and the partial results produced. The interface provides the elapsed time for each workflow execution.
Partial results can be stored during the enactment in several formats applying XSLT style-sheets or using the Taverna format (see G6G Abstract Number 20514).
To do this, the user has to choose, during the workflow definition phase, the domain-specific activities from the “XML manipulation” or the “Taverna Output” libraries.
System Requirements
Web-based.
Manufacturer
- Complex Systems (CoSy) Research Group
- Laboratory for Interdisciplinary Technologies in Bioinformatics (LITBIO)
- University of Camerino
- Italy
Manufacturer Web Site BioWMS
Price Contact manufacturer.
G6G Abstract Number 20526
G6G Manufacturer Number 104143




