Project Description
Workflow Engine component developed in C#.NET. Workflow Engine is State Machine.

Workflow process scheme represented as XML. Includes a visual designer based HTML5, JavaScript.

Features:

  1. Process scheme generation in runtime.
  2. Designer of process scheme.
  3. Changing process scheme in runtime is possible.
  4. Pre-execution of process (executing of a process from initial activity to final activity without changing state) 
  5. Simple version control and upgrade of process scheme.
  6. Serialization and saving of parameters on demand.

Official web site - http://workflowenginenet.com

Documentation - http://workflowenginenet.com/Documentation

Demo - http://demo.workflowenginenet.com

Designer - http://workflowenginenet.com/Designer

For technical questions, please contact dmelnikov@optimajet.com

For commercial use, please contact sales@optimajet.com

 

SWOT Analysis - Workflow Engine NET

Workflow process scheme include:

  • Verification of the current status
  • Determine the authority of users
  • Executing condition script
  • Timers
  • Actors (Identities, Roles or Business Rules that can execute commands)
  • Parameters (That can be temporary or persistance)
  • Commands
  • Actions(external methods call)
  • Activities
  • Transitions

Workflow Engine NET includes a visual designer:

WorkfolowEngine NET Designer

 

Comparison with other engines:

Feature Workflow Engine .NET Microsoft WF 3.5 Microsoft WF 4 Objectflow
1 Supported types of workflow State machine State machine, sequential  Flowchart  Sequential 
2 Long-running operation support Yes  Yes  Yes  No 
3 Mechanisms of state persistence Only few workflow parameters are saved.  Type of serialization (xml, binary etc) is defined by Persistence Provider. The settings saving is easily controlled and changed. The entire process instance is saved (binary serialization).The complexity of changing the mechanism of saving: high. The process instance is saved in part.The complexity of change in the mechanism of saving: the average.  The state persistence is possible.Required to write an external logic. 
4 Versioning and upgrading running processes on the new version of the scheme

The engine supports the following types of versioning:

  1. If you change the schema of the process, the processes that were created before the schema change, working under the old scheme.
  2. The scheme of the specific process is updated after calling the appropriate command.
  3. The scheme of the process is automatically updated in the allowed statesThe engine supports the following types of versioning.
There's no ways of work with versioning schemas of processes.The complexity of realization the mechanism of scheme upgrading: high.(Updating scheme of process with maintaining its state) There's no ways of work with versioning schemas of processes.The complexity of realization the mechanism of scheme  upgrading: high.(Updating scheme of process with maintaining its state)  No 
5 Visual designer Yes Yes Yes No 
6 Human Readable XML format of the process scheme  Yes  No  No  No
7 Identification of the process
The ID of the process Guid 
The ID of the process Guid The ID of the process - any  Possible 
8 Possibility to install the process in an arbitrary state Yes. By the calling one method  Yes. The process requires the writing of the supplementary code.  No  No 
9 The possibility of obtaining a list of available states for the current process  Yes. By the calling one method  Yes. The process requires the writing of the supplementary code.  No  No 
10 Built-in authorization of access to external actions (commands) for the workflow  Yes  No. The complexity of the implementation depends on the complexity of the business logic.  No. The complexity of the implementation depends on the complexity of the business logic.  No. The complexity of the implementation depends on the complexity of the business logic. 
11 Timers / delays  The external timer implementation is possible. The functional of the internal timers are planned to be implemented. Yes. Possible internal and external implementation.  Yes. Possible internal and external implementation.  Yes. Possible internal and external implementation. 
12 The possibility of obtaining a list of available external actions (commands) for the current process  Yes. By the calling one method.  No. The complexity of the implementation depends on the complexity of the business logic.  No. The complexity of the implementation depends on the complexity of the business logic.  No. The complexity of the implementation depends on the complexity of the business logic. 
13 Library activity  All activities represent calls of external methods. In the short term plan to make a call to the stored procedures.  Yes  Yes  All activities represent realizations of the defined interface. 
14 The possibility of modifying the scheme of the process at runtime  It’s possible  No  No  No 
15 The possibility of modification the generation of process scheme, depending on the parameters of a controlled entity  Yes. The support is built into the engine.  No  No  It’s possible 

Last edited Sep 26 at 11:28 AM by dmelnikov, version 44