📜 ⬆️ ⬇️

What does business process automation using IBM BPM and J2EE provide?


Overview based on corporate development experience using J2EE and IBM BPM 7.0 and 7.5.

This article, as we hope, and the following, will give an understanding of what business customers expect from using IBM BPM (Business Process Management) platforms and what they get as a result.

On the other hand, what developers get is the simplification or complication of work.

')
Introduction

Getting to know IBM BPM will start with a short preface. First, let's write that IBM BPM is a generic name that combines a range of IBM products from the WebSphere line of business process management.

The main ones are (see Figure 2):


What tasks BPM helps to solve?

Over the past few years, we have implemented various types of projects using BPM, mainly in the banking sector.
Based on experience, you can describe the main advantages of using ready-made solutions from IBM as compared to writing “your own solutions”:

  1. Visual modeling and execution of business processes.
  2. A set of ready-made components for building flexible business processes: conditions, parallel branches, expectations, events, etc.
  3. User interaction for performing manual actions (Human Tasks)
  4. Flexibility in reconfiguring business processes.
  5. Manageability of business processes. It is provided with built-in tools, for example, such a utility as Process Choreographer, which allows you to monitor running instances of a business process, change their state, and, if necessary, manually change data or even the progress of a specific instance.
  6. Transactional support for business tasks.
  7. Support for versioned business processes.
  8. Stability of work. It is provided by the appropriate configuration of servers in the form of a cluster with load balancing (load balancing). Minimal idle time is guaranteed by configuring the cluster with all the active nodes.
  9. Productivity. The organization of the BPM platform in the form of a cluster gives a good scalability of the system, by adding new servers to the system as cluster nodes.


Architecture


Architecturally, the interaction of the main components of BPM can be represented quite simply, see Figure 3:

1. WebSphere Process Server:

2. WebSphere Enterprise Service Bus:


Development

The main development is carried out in WebSphere Integration Developer (WID) - since version 7.5, it is already Designer . WID is designed based on Eclipse and allows you to create business processes and ESB services, and write and debug code, for example, in Java.

Additionally, you can use some other tools from IBM, such as:




Visual part

IBM BPM offers 3 main options for building the visual part of systems for working with business processes, see Figure 5:

  1. Use another solution from IBM - WebSphere Portal. Developers can create portlets for this portal, using part of the already “ready” functionality, such as integration with Process Server, ready task management controls (Task List), etc.
    This option is most appropriate for building a “single corporate portal”, in which all the workplaces of the company's users will be implemented.
  2. Use WebSphere Business Space. This IBM solution is part of Process Server and is a web application with a set of ready-made widgets for managing business processes. To add new functionality, you can either configure “standard widgets” or create new ones.
    This option is convenient for a quick start at the beginning of working with BPM, but it has a number of limitations and shortcomings in actual operation, such as: slow work of JavaScript in Internet Explorer, design of forms only in the form of widgets, etc.
  3. Use the Process Sever external interface (API). The visual part can be developed in any language, framework, platform, and integration with BPM can be implemented through the connection of the ready and accessible API of the Process Server itself.
    This option is most appropriate when adding new forms for managing business processes in the already developed system of the company with a custom graphical interface.



Conclusion

As a conclusion, I would like to write under what basic conditions, from our point of view, the use of IBM BPM is the most effective:

  1. Using IBM BPM as a unified platform for automating company business processes. Note: partial use of BPM can result in large overhead for both deployment and support of the platform itself.
  2. Creation and development of a corporate data bus (ESB) of a company for hosting business logic services. An important aspect of building an ESB with a service-oriented architecture (SOA).
  3. The presence of highly qualified system administrators who can both deploy and support BPM platform with the necessary level of scalability, resiliency and security.
  4. Availability of highly skilled developers and architects of Java and J2EE. Unfortunately or fortunately, BPM cannot solve all the company's business problems by simply configuring or using ready-made components. Therefore, Java developers are needed to create high-performance and reliable solutions with the required functionality and in the required time frame.

Source: https://habr.com/ru/post/190268/


All Articles