1 Introduction to SAP Process Orchestration
If you can’t describe what you are doing as a process, you don’t know what you’re doing.
—W. Edwards Deming
As part of the SAP NetWeaver family, SAP provides a combo product called SAP Process Orchestration (SAP PO), which helps businesses and their IT organizations achieve most of their integration needs. SAP PO is composed of three different components, formed into a comprehensive installation package: SAP Process Integration (SAP PI), SAP Business Rules Management (SAP BRM), and SAP Business Process Management (SAP BPM).
Note
From this point on, we’ll refer to SAP Process Orchestration or SAP PO whenever we’re talking about the packaging of Advanced Adapter Engine Extended (AEX or SAP PI), SAP BRM, and SAP BPM.
This chapter will first explore how SAP PO came to be, what it is, and what it does. We’ll then discuss the different components that make up the SAP PO platform, explore why these components are needed, and how they make SAP PO an essential piece in an organization’s technology portfolio.
1.1 Historical Overview and Evolution
The three main components (SAP PI, SAP BPM, and SAP BRM) that make up the SAP PO software originate from SAP PI and SAP Composition Environment. In this part of the book, we’ll explore the product’s history and the way it evolved over the past years. Instead of focusing on every aspect of the evolution of the products, we’ll focus on the highlights. We’ll break the evolution history into three sections: SAP PI, SAP Composition Environment, and SAP PO. We’ll then highlight some of the new functionality introduced with SAP PO release 7.5.
1.1.1 SAP Process Integration
In 2002, SAP Exchange Infrastructure (SAP XI) was launched as part of the SAP NetWeaver suite. SAP XI version 1.0 evolved into SAP XI 2.0 and SAP XI 3.0 in 2004. SAP XI was built on top of a dual-stack architecture, which includes SAP NetWeaver Application Server ABAP (SAP NetWeaver AS ABAP) and SAP NetWeaver Application Server Java (SAP NetWeaver AS Java).
After a few improvements and new features, the product was renamed from SAP Exchange Infrastructure to SAP NetWeaver Process Integration (SAP PI) in 2005. The initial SAP PI version 7.0 evolved to SAP PI 7.01, SAP PI 7.1, and SAP PI 7.11. The SAP PI 7.11 version included a more prominent Java stack. This was called the Advanced Adapter Engine (AAE) with which you could choose to build an entire interface in the Java stack. Not all types of connections and functionalities were supported at this point. For some scenarios, you still needed to use the ABAP stack.
Figure 1.1 shows a visual representation of the history time line.
In 2010, SAP PI 7.3 was released with a more productively equipped Java stack: Advanced Adapter Engine Extended (AEX). This is a robust Java-only enterprise service bus (ESB) that can pretty much cover all the functionalities of the old dual stack, except that the processes previously implemented using cross-component Business Process Management (ccBPM) in a dual stack aren’t supported. The functionality to support the automation of a process is now provided in the SAP Composition Environment product. SAP PI 7.3 was later enhanced with SAP PI 7.31 in 2012. We’ll discuss SAP Composition Environment in the next section and provide a quick review of SAP PO in Section 1.1.3.
1.1.2 SAP Composition Environment
SAP Composition Environment is a platform that enables the building and running of applications based on service-oriented architecture (SOA). SAP Composition Environment comes equipped with tools that facilitate the development and composition of services and user interfaces (UIs) via a model-driven approach. With SAP Composition Environment, you can orchestrate new and existing services with the use of tools such as SAP BPM, SAP BRM, and SAP Composite Application Framework (CAF), among others. All of these tools facilitate the development of robust composite applications that leverage existing services.
SAP Composition Environment is part of the SAP NetWeaver suite and was first realized in 2007 with version 7.1 (see Figure 1.2). This release included tools such as Composite Application Framework, Guided Procedures, Visual Composer, Voice, Portal Content Modeling, Portal, and the universal work list (UWL). In this version, SAP BPM and SAP BRM did not yet exist.
SAP Composition Environment 7.11 was released in 2008 and included the early versions of both SAP BPM and SAP BRM.
After that, all included components were improved and enhanced in later releases, which included SAP Composition Environment 7.2, SAP Composition Environment 7.3, and SAP Composition Environment 7.31.
From the release of SAP NetWeaver 7.31 in 2012, it became possible to install SAP Composition Environment as a standalone application or as part of the SAP PO package. At the time of writing (2017), SAP Composition Environment version 7.4 is the current release.
1.1.3 SAP Process Orchestration
SAP Process Orchestration (SAP PO) was introduced in 2012. SAP PO is a comprehensive installation package that includes an ESB, business rules engine (BRE), and a BPE (BPE) in one piece of software, which runs on a Java-only stack.
It provides a combo and consolidation package that includes SAP PI and SAP Composition Environment and therefore encapsulates their combined set of features. With SAP PO, organizations can easily deliver reliable messages across the different internal and external systems using a well-established set of integration standards and protocols.
Furthermore, SAP PO provides a complete suite of business process management (BPM) and business rules management (BRM) development and administration tools to help organizations design, model, execute, monitor, manage, and analyze business processes and rules using one platform. This consolidation improves performance, increases efficiency, and reduces total cost of ownership (TCO), among other things.
It’s also important to note that because SAP PO is a Java-only installation, ABAP functionalities do not exist and have been replaced by equivalent Java alternatives.
As Figure 1.3 shows, SAP PO was introduced from SAP NetWeaver 7.3 EHP 1 (7.31), and, in 2013, SAP PO 7.4 was released and has evolved since then to the recent SAP PO 7.5.
Now that you’re familiar with the evolution of the different components that make up SAP PO, we can dive into the details of the motivation for each of these components and how they can help meet your organization’s integration needs. Before that, however, let’s look into the highlights that SAP PO introduced or improved since SAP NetWeaver 7.5.
1.1.4 SAP Process Orchestration 7.5 Highlights
After the launch of the first edition of this book, around October 2015, SAP released SAP NetWeaver 7.5, which is a collection of several on-premise technology components, including SAP PO. New features and important improvements were introduced in different areas of SAP PO. Following are some of the important features introduced in that version of SAP PO:
-
SAP Java Virtual Machine 8 (SAP JVM 8)
To stay on top of the last technology and new functionality delivered by the Java platform, Standard Edition 8 (Java SE 8), SAP NetWeaver Application Server and thus SAP PO run on SAP JVM 8. This means that you can take advantage of new Java features, for instance, in the areas of Java mappings, custom-built adapter modules, custom adapters, and third-party drivers (i.e., Java Database Connectivity [JDBC], Java Message Service [JMS]) needed by some SAP PI adapters. -
SAP NetWeaver Developer Studio (often shortened to NWDS) support for Eclipse 4.4 (Luna)
SAP NetWeaver Developer Studio supports Eclipse 4.4 Luna. You can use the same Eclipse version to build and manage the development of different technology platforms, including SAP PO, SAP Cloud Platform Integration, and SAP Cloud Platform. -
SAP NetWeaver Developer Studio SAP PO perspectives extended
Many enhancements and new capabilities have been added to the SAP NetWeaver Developer Studio Eclipse perspectives available for SAP PO. We’ll elaborate further on some of these new features in the next sections. -
SAP BPM application programming interface (API) enhancements
The SAP BPM API was previously introduced to give programmatically and flexible access into the SAP BPM layer. In SAP NetWeaver 7.5, the API has been extended to enable subscription to lifecycle events triggered by processes and tasks. When an application subscribes to a certain type of event, for example, tasks created, task completed, and so on, it gets notified when that event occurs. -
Running and reusing SAP Cloud Platform content on SAP PO
The adoption of SAP Cloud Platform Integration is increasing, which means that the gap between on premise and cloud is becoming blurry. To cope with that trend, SAP has enabled a new feature called hybrid scenarios. This feature allows reusing and running SAP Cloud Platform Integration prepackaged integration scenarios on SAP PO. Section 1.3.1 provides a quick reference and URL to the online repository of available hybrid scenarios.