EasyVIPER is a *generic workflow engine*. VIPER stands for *VIrtual Process Engine* with *Reconfiguration*.
Indeed its architecture is based on [*Frascati*|http://frascati.ow2.org/], a component-based framework following the [*SCA*|http://en.wikipedia.org/wiki/Service_component_architecture] standard allowing to reconfigure the engine and workflows at runtime.
It is mainly used in relationship with [*EasyBPEL*|easybpel:EasyBPEL Overview] but is able to accept any upper model managing processes execution.
The following SCA schema represents the main components and services provided by EasyVIPER.
{center}
!EasyVIPER_SCA_MODEL.png|align=center,width=800!
EasyVIPER main components SCA model.
{center}
The EasyVIPER main component is the [*Workflow engine component*|easyviper:Workflow engine] that receives and sends messages coming from and going to an *external environment*. The [*external environment component*|easyviper:Abstract External Environment] is an abstract component dedicated to external / internal messages conversion. The [*abstract model component*|easyviper:Abstract Model] is an abstract component dedicated to workflow model management (when there is one), that is to say, a model registry and a model compilation module.
*EasyVIPER* is a [SCA|http://www.osoa.org/display/Main/Service+Component+Architecture+Home]\-based application, using [Frascati|http://frascati.ow2.org/] implementation.
It's basically a library allowing to build services-oriented workflows where nodes of the execution graph are SCA components.
The main component that manages these workflows are the *Workflow engine*.
Moreover, as EasyVIPER is intended to be used in a concomitant way with a workflow model, a SCA component for an abstract model has been designed. This model component can be implemented by various specifications (BPEL, XPDL, BPMN, ...) provided that a registry of model instances and a compiler are developed.
Finally the external environment component is in charge of messages sending and arrival, and their conversion between internal (EasyVIPER) and external (JBI, SOAP, ...) environment.
{info}
Frascati is developped by the INRIA team [Adam|http://adam.lille.inria.fr/pmwiki.php/Adam/HomePage]. EasyVIPER and EasyBPEL have been made SCA-based thanks to their help and we would like to thank them.
Moreover, these libraries are used in the Frascati BPEL engine implementation.
!logo_adam_team.jpg|border=1!
{info}
If you want know how to use {report-info:page:space > space:name} library, please consult the list of [How-tos|How-tos].
If you have any questions, please use the \[{report-info:page:space > space:name} contact form\|Contact\].
Indeed its architecture is based on [*Frascati*|http://frascati.ow2.org/], a component-based framework following the [*SCA*|http://en.wikipedia.org/wiki/Service_component_architecture] standard allowing to reconfigure the engine and workflows at runtime.
It is mainly used in relationship with [*EasyBPEL*|easybpel:EasyBPEL Overview] but is able to accept any upper model managing processes execution.
The following SCA schema represents the main components and services provided by EasyVIPER.
{center}
!EasyVIPER_SCA_MODEL.png|align=center,width=800!
EasyVIPER main components SCA model.
{center}
The EasyVIPER main component is the [*Workflow engine component*|easyviper:Workflow engine] that receives and sends messages coming from and going to an *external environment*. The [*external environment component*|easyviper:Abstract External Environment] is an abstract component dedicated to external / internal messages conversion. The [*abstract model component*|easyviper:Abstract Model] is an abstract component dedicated to workflow model management (when there is one), that is to say, a model registry and a model compilation module.
*EasyVIPER* is a [SCA|http://www.osoa.org/display/Main/Service+Component+Architecture+Home]\-based application, using [Frascati|http://frascati.ow2.org/] implementation.
It's basically a library allowing to build services-oriented workflows where nodes of the execution graph are SCA components.
The main component that manages these workflows are the *Workflow engine*.
Moreover, as EasyVIPER is intended to be used in a concomitant way with a workflow model, a SCA component for an abstract model has been designed. This model component can be implemented by various specifications (BPEL, XPDL, BPMN, ...) provided that a registry of model instances and a compiler are developed.
Finally the external environment component is in charge of messages sending and arrival, and their conversion between internal (EasyVIPER) and external (JBI, SOAP, ...) environment.
{info}
Frascati is developped by the INRIA team [Adam|http://adam.lille.inria.fr/pmwiki.php/Adam/HomePage]. EasyVIPER and EasyBPEL have been made SCA-based thanks to their help and we would like to thank them.
Moreover, these libraries are used in the Frascati BPEL engine implementation.
!logo_adam_team.jpg|border=1!
{info}
If you want know how to use {report-info:page:space > space:name} library, please consult the list of [How-tos|How-tos].
If you have any questions, please use the \[{report-info:page:space > space:name} contact form\|Contact\].