This section describes some of the key concepts of Infinity Process Platform (IPP) in the context of its use for integration purposes.
IPP allows you to model Structures Data Types to represent e.g.
Figure: Structured Data Type Definition
Structured Data Types can be either
Structured Data Types can be defined manually or by importing XSD files.
IPP also has a pluggable mechanism for adding additional properties to all fields of a data structure, e.g. to control
IPP allows you to create Process Models and execute these at runtime.
Process Models define graphically how Activities like
are executed - either sequentially or in parallel. In IPP process models are defined using the Business Process Modeling Notation (BPMN).
The control flow via BPMN allows to model sequential execution
Figure: Sequential Execution
decisions or parallel execution
Figure: Parallel Execution
Process modeling for integration purposes mainly deals with the invocation of services, e.g.
However, human intervention may also be used for cases where the straight-through processing via service orchestration fails, e.g. because of
IPP allows the definition of Services and Application building blocks to be invoked by Activities during the execution of a Process. IPP provides a set of standard technology connector e.g. for
An important role plays the integration with Apache Camel: arbitrary Camel routes can be invoked directly from within an IPP Process Model and this way ensure connectivity via simple XML configurations leveraging the Connectivity capabilities of Apache Camel.
Figure: Camel application type
Once Application building blocks are configured, these can be reused across different Process Models. Hence, sets of these Applications can be shipped as a library specific e.g. for a certain product connectivity needs to be provided for.
In addition to describing the control flow of performing Activities sequentially or in parallel, Process Models also define the Data being used during the execution of a Process as well as the Data Flow between Activities.
The conversion of one or more source data structures into one or more target data structures can be modeled as a Message Transformation Application. Message Transformation Application can be reused like services wherever a specific transformation needs to be performed.
Figure: Message Transformation
Sometimes, it is useful to view the execution of a complex process as the execution of a single, composite service to perform a business function. IPP allows you to expose Process Definitions as Process Interfaces with a well defined API with input and output parameters. Process Interfaces can be directly invoked as Web Services or REST Services with a corresponding parameter set.
Figure: Process Interface definition