Imixs-Workflow
Imixs Workflow is an Open-Source-Project, providing technologies for building Business Process Management solutions. The project focus on human based workflows used to execute and control workflows in organisations and enterprises. The goal of the open source project is to reduce the complexity of business applications by providing a flexible framework to implement business logic based on the BPMN 2.0 standard.
Naming
The name Imixs is derived from the word Imix. Imix means the first day in the so-called Tzolkin calendar from Aztecs and Mayas. In this respect the word Imix is also used for the terms Earth, abundance, water lily and alligator.
Project Structure
The open source project provides a framework for various aspects of workflow technology. It aims to provide a flexible architecture for the general requirements of workflow management systems. Overall the project is separated into the following areas:
- imixs-core – a java API to manage dataobjects and workflow models, supporting BPMN 2.0[1]
- imixs-engine – a Workflow-Engine based on the Java-Enterprise-Technology JEE
- imixs-jax-rs – a WebService API for platform independent integration into external IT systems
- imixs-faces – a JSF component library for web applications
- imixs-bpmn - a BPMN modelling tool [2] based on Eclipse
The project uses the configuration and build framework Apache Maven and publishes all artifacts into the Central Maven repository.
Technology
The project is based on the Java Enterprise Architecture (JEE) and represents a scalable and transactional framework for workflow management solutions. A major goal of the technology is to simplify the software build process in modern business applications. The project takes advantage of the JEE component model, and allows to reuse all components without limiting the capabilities of the Java EE architecture.
The technologies used includes:
- EJB 3.1 – technology for a transactional business process management
- Java Persistence API vendor independent database access
- Java Authentication and Authorization Service for security
- BPMN 2.0 for modelling business workflows. [3] [4]
The reference implementation is based on the GlassFish application server. JBoss and WildFly application servers are supported. By Using the Java Persistence API (JPA), the workflo wengine is database independent and can be used with any relational SQL database.
Philosophy
The Imixs-Workflow project focuses on Human task-centric workflows. This means that a business process is typically controlled by the user (actor). Imixs-Workflow manages the state of business objects and provides the user with information during a business process. For Example:
- The current Status and Process Owner for each business object
- A Process History & Documentation for each business object
- Read- and Write Access (ACL) for each business object
A Human task-centric workflow system assists users in starting a new process, finding and processing open tasks and helps users to complete current jobs in the defined way. The Workflow Engine automatically routes processed tasks to the next actor and notifies users about new tasks depending on the current process definition. The following illustration demonstrates the typical flow of a document or datasheet from one user to another controlled by a Workflow Management System.
Licence
Imixs-Workflow provides the results of the project under the GPL with a dual-license model, to meet the usage and distribution requirements of different types of users.
History
The Imxis workflow project was founded in 2005 by Imixs software solutions GmbH.
References
External Links
- Project-Website
- Code Repository – GitHub
- Imixs at Java.net
- Imixs BPMN – Eclipse Plugin
- Imixs Modeller – Eclipse Plugin
- BPM Tools Review
- Oracle Human based workflow