Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Mastering jBPM 5

You're reading from   Mastering jBPM 5 Design, build, and deploy business process-centric applications using the cutting-edge jBPM technology stack

Arrow left icon
Product type Paperback
Published in Jun 2015
Publisher
ISBN-13 9781783289578
Length 326 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Simone Fiorini Simone Fiorini
Author Profile Icon Simone Fiorini
Simone Fiorini
Arun V Gopalakrishnan Arun V Gopalakrishnan
Author Profile Icon Arun V Gopalakrishnan
Arun V Gopalakrishnan
Arrow right icon
View More author details
Toc

Table of Contents (13) Chapters Close

Preface 1. Business Process Modeling – Bridging Business and Technology FREE CHAPTER 2. Building Your First BPM Application 3. Working with the Process Designer 4. Operation Management 5. BPMN Constructs 6. Core Architecture 7. Customizing and Extending jBPM 8. Integrating jBPM with Enterprise Architecture 9. jBPM in Production A. The Future B. jBPM BPMN Constructs Reference Index

Introducing jBPM

jBPM is an open source BPM suite with a complete tool stack supporting everything right from the modeling and execution to the management and maintenance of business processes. It was released under Apache License 2.0, and was developed and is actively supported by the JBoss community.

The tool stack focuses on serving the following two types of users:

  • Business users who model the application and use the application
  • Technologists who assist the business users to make the models executable and the application completely functional

The following diagram will give you an overall view of the jBPM tool stack and the set of functionalities that it provides. We will discuss in brief the functional components. Detailed discussions of each of these components will be presented in subsequent chapters.

Introducing jBPM

The KIE workbench

Kie is the abbreviated form of "Knowledge is Everything," and the Kie workbench is a combination of every tool in the Drools world for capturing and managing knowledge. It combines capabilities such as authoring of projects, data models, rules, decision tables, test services, process authoring, process runtime execution, process simulation, and human task management.

The Kie workbench provides a web frontend and a complete integrated environment for doing all BPM-related activities. It makes it easier for the user to manage the large set of tools. The underlying architecture is highly modular, and you can integrate each part of this functionality independently to your web application, provided it is UberFire-compliant.

Note

UberFire is a web-based workbench framework inspired by Eclipse RPC. It is plugin-based, and the runtime is a composition of UberFire-compliant plugins.

For more information, see http://www.uberfireframework.org/docs/.

The importance of Kie workbench is that it also provides a philosophy, a guideline, and a process, in developing knowledge-based systems. It guides you through developing a knowledge-based system in a structured manner.

The knowledge life cycle, as the community calls it, is a cycle consisting of the following steps:

  1. Discover: The business knowledge required to drive your company.
  2. Author: Formalize your business knowledge.
  3. Deploy: Learn how to configure your environment.
  4. Work: Reduce the paperwork.
  5. Improve: Enhance your business performance.

The knowledge life cycle shows the maturity of the JBoss community in providing ready-to-use, knowledge-based application development environments.

Process Designer

Process Designer is a web-based rich user interface that allows us to model BPMN2-compliant business processes. Its aim is to provide an intuitive workbench where both business and technical users can model and simulate executable business processes.

Operation management

The output of modeling is executable business processes. Management tooling enables users to manage the execution of processes, monitor the execution, and report it.

jBPM provides web-based tooling for process management, monitoring, and reporting. Web-based tooling in fact uses the core engine APIs. These APIs are exposed via Representational State Transfer (REST), Java Message Service (JMS), and Contexts and Dependency Injection (CDI) interfaces so that they can be integrated with other enterprise software systems.

Eclipse tooling

Although as a BPM suite, jBPM focuses on business users with a large set of web-based tooling for business users, the community firmly keeps their feet on the ground, with explicit tooling for technical users who are relied upon to build complex business functionalities.

Eclipse-based tooling is a set of plugins to the Eclipse IDE and allows technical users to integrate the jBPM environment to the software development environment. The Eclipse tooling provides features such as the following:

  • Wizard for creating a new jBPM project
  • Graphical modeler for BPMN 2.0 processes
  • Runtime support (for selecting the jBPM runtime to use)
  • Debugging, the current states of the running processes can be inspected and visualized during execution
  • Process instance view, providing information showing all running process instances and their state
  • Audit view showing the audit log
  • Synchronizing with the Kie workbench repositories, enabling collaboration between eclipse tooling users and the web-based users

Core engine

The core of jBPM is a business process execution engine built in Java. It is lightweight and is easily embeddable in any Java application as a dependency (as dependent libraries). The core engine is designed as a standard-based, pluggable, and highly extensible component. It supports the native BPMN 2.0 specification.

The knowledge repository

The knowledge repository is where we store all the process definitions and related artifacts. BPM is a continuous process; business processes continuously evolve, and it is important to keep track of the updated processes and provide multiple versions of the processes. jBPM uses Drools Guvnor as the knowledge repository and provides the following:

  • Persistence storage for processes and related artifacts such as processes, rules, data models, and forms
  • Deploying selected processes
  • Authentication and authorization
  • Categorization and searching of knowledge artifacts
  • Scenario testing to make sure you don't break anything when we update processes
  • Features for collaborative development of business processes, such as comments and change notifications
You have been reading a chapter from
Mastering jBPM 5
Published in: Jun 2015
Publisher:
ISBN-13: 9781783289578
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image