In this article, and for the sake of simplicity, we will use the term “On-Premise” to mean
 a deployment where you have design-time development access to the 
instance, including administration of the technology components, the 
applications filesystem, and the database. In reality this might be a 
local development instance that is then supported by a team who can 
deploy your customizations to the restricted production instance 
equivalents.
  
  
  
  Tools Overview 
  Firstly let’s look at the Design-Time tools within JDeveloper for customizing and extending the artifacts of a Business Process. In essence this falls into two buckets; SOA Composite Editor for working with BPEL processes, and the BPM Studio. 
  The SOA Composite Editor 
  As a standard extension to JDeveloper, this graphical design tool 
should be familiar to anyone previously worked with Oracle SOA Server. 
With easy-to-use modeling capability, backed-up by full XML source-view 
(for read-only), it provides everything that is needed to implement the 
technical design. In simple terms, once deployed to the remote SOA 
Server the composite components (like Mediator) leverage the Event 
Delivery Network (EDN) for interaction with the application logic. 
  If you are customizing an existing Fusion Applications BPEL process 
then be aware that it does support MDS-based customization layers just 
like Page Composer
 where different customizations are used based on the run-time context, 
like for a specific Product or Business Unit. This also makes them safe 
from patching and upgrades, although only a single active 
version of the composite is available at run-time. This is defined by a 
field on the composite record, available in Enterprise Manager. 
Obviously if you wish to fire different activities and tasks based on 
the user context then you can should include switches to fork the flows 
in your custom BPEL process. 
   
    
  Figure 1 – A BPEL process in Composite Editor 
  The following describes the simplified steps for making 
customizations to BPEL processes. This is the most common method of 
changing the business processes of Fusion Applications, as over 400 
BPEL-based composite applications are provided out-of-the-box. 
   
    Setup your local Fusion Applications JDeveloper environment. 
    The SOA Composite Editor should be installed as part of the
 Fusion Applications extension. If there are problems you can also find 
it under the ‘Check for Updates’ help menu option. 
    Since SOA Server is not part of the JDeveloper integrated WebLogic Server, setup a standalone WebLogic environment for deploying and testing. Obviously you might use a Fusion Applications development instance also. 
    Package
 the existing standard Fusion Applications SOA Composite using 
Enterprise Manager and export it as a complete SOA Archive (SAR) file, 
resulting in a local .jar file. You may need to ask your system 
administrator for this. 
    Import the exported SAR .jar file into JDeveloper using the File menu, under the option ‘SOA Archive into SOA Project’. 
    In JDeveloper set the appropriate customization layer values, and then change from the default role to the Fusion Applications Customization Developer role. 
    Make the customizations and save the application project. 
    Finally redeploy the composite application, either to a direct 
Application Server connection, or as a fresh SAR (jar) file that can 
then be re-imported and deployed via Enterprise Manager. 
   
  The Business Process Management (BPM) Suite 
  In addition to the relatively low-level development environment 
associated with BPEL process creation, Oracle provides a suite of 
products that allow business process adjustments to be made without the 
need for some of the programming skills.  The aim is to abstract much of
 the technical implementation and to provide a Business Analyst tools 
for immediately implementing organization changes. Obviously there are 
some limitations on what they can do, however the BPM Suite 
functionality increases with each release and for the majority of the 
cases the tools remains as applicable as its developer-orientated 
sister. 
  At the current time business processes must be explicitly coded to 
support just one of these use-cases, either BPEL for developer use or 
BPM for business analyst use. That said, they both run on the same SOA 
Server in much the same way. The components bundled in each SOA 
Composite Application can be verified by inspection through Enterprise 
Manager. 
   
    
  Figure 2 – A BPM Process in JDeveloper BPM Suite. 
  BPM processes are written in a standard notation (BPMN) and the 
modeling tools are very similar to that of BPEL. The steps to deploy a 
custom BPM process are also essentially much the same, since the BPM 
process is bundled into a SOA Composite just like a BPEL process. As 
such the SOA Composite Editor  actually has support for both artifacts 
and even allows use of them together, such as a calling a BPM process as
 a partnerlink from a BPEL process. For more details see the references 
below. 
  Business Analyst Tooling 
  In addition to using JDeveloper extensions for BPM development, there
 are run-time tools that Business Analysts can use to make adjustments, 
so that without high costs of an IT project the system can be tuned to 
match changes to the business operation. 
  The first tool to consider is the BPM Composer, deployed 
with the middleware SOA Server and accessible online, and for Fusion 
Applications it is under the Business Process icon on the homepage of 
the Application Composer. 
   
    
  Figure 3 – Business Process Composer showing a CRM process flow. 
  The key difference between this and using JDeveloper is that the BPM Composer has a Business Catalog
 prepopulated with features and functions that can be used, mostly 
through registered WebServices. This means no coding or complex 
interface development is required, simply drag-drop-configure. The items
 in the business catalog are seeded by either Oracle (as a BPM Template)
 or added to by your own custom development. You cannot create or 
generate catalog content from BPM Composer directly. As per the 
screenshot you can see the Business Catalog content in the BPM Project 
browser region. 
  In addition, other online tools for use by Business Analysts include the BPM Worklist application for editing business rules and approval management configuration, plus the SOA Composer which focuses on non-approval business rules and domain value maps. 
  At the current time there are only a handful of BPM processes shipped
 with Fusion Applications HCM and CRM, including on-boarding workers and 
processing customer registrations.  This also means a limited number of 
associated BPM Templates provided out-of-the-box, therefore a limited 
Business Catalog. That said, BPM-based extension is a powerful 
capability to leverage and will most likely develop going forwards, 
especially for use in SaaS deployments where full design-time JDeveloper
 access is not available. 
  Further Reading 
   
    For BPEL – Fusion Applications Extensibility Guide – Section 12 
    For BPM – Fusion Applications Extensibility Guide – Section 7 
    The product-specific documentation and implementation guides for Fusion Applications 
    Fusion Middleware Developers Guide for SOA Suite 
    Modeling and Implementation Guide for Oracle Business Process Management 
    User’s Guide for Oracle Business Process Composer 
    Oracle University courses on BPM Suite and SOA Development