Magnolia's workflow engine is built upon the jBPM Business Process Management Suite.
jBPM is a flexible Business Process Management (BPM) Suite. It is light-weight, fully open-source (distributed under Apache license) and written in Java. It allows you to model, execute, and monitor business processes throughout their life cycle. [...] The core of jBPM is a light-weight, extensible workflow engine written in pure Java that allows you to execute business processes using the latest BPMN 2.0 specification. It can run in any Java environment, embedded in your application or as a service. – What is jBPM
The Magnolia Workflow module provides a standard four eye content approval workflow preconfigured on the Pages app. The name "four eye" comes from the fact that first an editor will create the content and then a publisher will approve the content. In the standard workflow, the publisher has the ability to approve or reject based on his review of the content. In the event of a rejection, the workflow will move into a revision cycle where comments can be passed to the editor about reasons for rejection.
The four eye workflow can best be understood using a diagram.
Workflow is only configured on the Pages app. However, you can configure it on the Assets app or any content app.
You can also disable Workflow in your installation of Magnolia if you do not need it. Disabling the workflow may be appropriate for a simple site workforce where there are no separate editor and publisher roles. When the approval workflow is disabled, content will be published to public instances immediately when activation is launched. Removing the Workflow module disables all workflows, not only the content approval workflow. Don't remove the module if you have custom workflows used for some other purpose.
Custom workflow processes
You can create custom workflow processes to suit your requirements. We recommend you use the Eclipse BPMN2 Modeler plugin available in the Eclipse marketplace.
You can implement a simple 4-eye publishing workflow with tasks. You don't need the Workflow module or jBPM unless your workflow is more complex, involving three participants or rejection.