What is our primary use case?
Our primary use case for this solution is an ordering system that captures orders. The orders are made in XML, which keeps track of everything that you did from the ordering to having the information of the order. But not everything is in the ordering because you have to consult, for example, the address system, the availability system, the visibility system, and the facility system. We are a telecommunications company and to provide a service, you need to know which facilities you have for that. For that, you need a BPEL that received XML from the ordering that tried to consult the external internal system to try to retrieve the information needed to put the order and then deliver it to the OSS.
The OSS receives the order through the SOA with BPEL and, for example, after that, the same OSS tries to send it to ADOBE, the workforce management system, to try to deliver it to our technician.
We have two types of integrations, one that comes from the north and one that comes from the south. Ultimately, we answer the ordering when everything is okay from the west end. Everything is in SOA. Midway, we use SOA and try to interact with many systems that are needed to provide information to the OSS, the workforce management system, and giving answers and responses to the ordering.
What is most valuable?
What I find the most valuable about Oracle BPEL is that it saves me time. For example, when I use a language like Java, I have to generate clients if I am also using SOA. I lose time doing that because I am interacting with a third party or a third service. The goal is to avoid having to implement from a scratch a logic of integration based on the service. If I want to carry out multiple integrations, I don't have to implement the protocol itself, because BPEL implements it for me. This in effect means that I avoid doing a lot of work and am operating in a more friendly environment. With BPEL, you can track everything: every variable that is filled and every result related to integration with another service. It gives you more facility to try to track the course of your integrations.
What needs improvement?
Our biggest issue with Oracle BPEL is that it is a monolith. Because it's a monolith, everybody tries to consume its services in a shared infrastructure. Because of this, some companies are trying to migrate to a microservice architecture. We use API gateways to get around these issues. If you want an orchestrator with BPEL and you have an API gateway with a layer of services, you can combine both technologies and try to get the best of both worlds.
In the next release, I would like to see REST improved and new technologies for microservices. I'd like to see more containers for separating containers.
For how long have I used the solution?
I have been using Oracle BPEL for about 10 years.
What do I think about the stability of the solution?
I think that this is quite a stable product for the most part. We have been working with it since 2009. Issues come up, in my experience, only when you have many congruences with many clients that don't know how to implement things. However, if you know how to implement things and how to avoid overloading your infrastructure and have a plan for growing your company, you are going to have the stability that you need.
How are customer service and support?
I would rate their technical support a nine, on a scale from one to 10, with one being the worst and 10 being the best.
How would you rate customer service and support?
How was the initial setup?
My opinion is that it isn't a difficult setup because you have a server on which you install the SOA that is your container in Weblogic. There you have everything that you need. For example, if you need GUIs, data sources, or a database, and you have someone to install everything, I don't think that you will have a hard time. If you need to deploy from scratch, what you need is an application server or database server. From there, you can try to configure an API manager.
With Weblogic in 12C and 11G, it's way easier to install everything.
The deployment usually takes around a week, depending on if you have everything needed for the setup.
What other advice do I have?
The reason we decided to use Oracle BPEL is that we have a lot of systems. We have 3,300 systems because we are a big company that has telephone services, mobile services, cable services, and many products related to that. That is why we need to have something that has business logic that tries to orchestrate between systems that we need. Ultimately, we have SOA as a service internally that has a purpose and a business logic that interacts with many things.
Currently, we have a team of 10 developers using this solution.
This product can be a good use case depending on what you need. If you have many systems and you want to have the logic of integration, I think that is a good idea because in the end, you are saving time, you are trying to reduce cost in infrastructure to have many layers between your company.
Which deployment model are you using for this solution?
On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.