Monday, December 12, 2016

Oracle Process Cloud Service: new features!

During Oracle Open World 2016, the latest release of Oracle Process Cloud Service got presented. The product has been making huge progress in all aspects, so here’s an overview of all the new and improved features.

Oracle Process Cloud Service

For those of you unfamiliar with the product: Oracle Process Cloud Service (PCS) is Oracle’s BPM solution for the cloud. While development on Oracle BPM Suite has pretty much come to an end, Oracle Process Cloud Service is the way forward and the platform for all new features related to Business Process Management. This meant that the product that was originally positioned as BPM for the citizen developer had to improve and mature to a full-blown BPM solution. It needs to support long running processes, improve its integration strategy and support case management, to mention some important subjects. While case management is not there yet, it will certainly come to Oracle Process Cloud Service and many other features are already there with the latest release.


Modelling Processes

As it used to be, modelling processes is done in the browser. This makes it easy for business and IT to collaborate on processes, because you only need an internet connection to get access. No need for development tools, code repositories and a powerful work station to get started. The main improvement in the process modelling is that Oracle has abandoned the usage of Flash. This makes the process modeller faster and easier to use, creating a far more pleasant and performant development experience.
Selecting integrations
When creating a Service Call, whether it’s synchronous or asynchronous, you can now select an Integration from Oracle Integration Cloud Service. Obviously, this is much more practical than dealing with WSDL imports and all the technical stuff related to that, but it also has a bigger meaning. It’s clearly showing that Integration Cloud Service has been strategically positioned as the way to go for process integrations. It’s putting the technical know-how of integration where it belongs, so you will no longer feel tempted to take that kind of complexity into a business process. Therefore, I strongly recommend following this approach as suggested by Oracle, instead of trying to work out your own integrations in PCS. Use these products for their purpose.
Document workflows
Oracle Process Cloud Service is still closely connected to Oracle Documents Cloud Service. It was already possible to deal with documents in your processes very easily, but now processes can even be started by putting a document in a certain folder in Documents Cloud Service. It requires minimal configuration on the Documents side, while in PCS you can now use a “Document Start” event for your process.
One important missing feature in PCS was correlation. This feature is there now, so you don’t have to use BPM Suite anymore for your long running, asynchronous interactions with other processes and services. You can use the “Message Catch” event to catch messages with the related correlationId that you have defined. This can be especially handy in cases of migrating your long running processes to a newer version.


User Interface

Oracle has been working hard on consolidating its User Interfaces with Oracle JET. For PCS, this means that Frevvo WebForms have been replaced by a completely new user interface designer. The idea of drag and drop remains, but everything is faster and smoother, while quite some new features are available now. For example, you can preview your web form in different formats, so you know how it will look on  phones, tablets, laptops etc… and you can also use different presentation layers for your form if you want to reuse the form in different layouts for different purposes. On top of that, instead of having to code Rules in JavaScript, you can now declaratively add Events (new word for the same thing) to your form. This should make it considerably easier for the citizen developer to make meaningful web forms, although getting some real UI knowledge in never hurts.

Other Features

QuickStart Apps
If you want to start fast and you’re using relatively standard processes in your business, you can use QuickStart Apps. Currently, there are 6 of those available and I expect more to come in the future. It could also be nice if these could be purchased from the Marketplace.
Embeddable Apps
You can now embed your process forms in other applications, for example various SaaS products. This will help you to create a seamless integration between your processes and other apps.
BI Cloud Integration
PCS is now integrated with Oracle BI Cloud, where you can use your default or custom analytics. While PCS also has dashboards, they are more for operational information, so this is a nice and much needed extra functionality.
Actionable Emails
Just like in BPM Suite, you can take actions in your processes directly from e-mail messages now. Reusable e-mail templates can be created, in which you can embed process data and actions for users to be taken.

What does the future hold?

I think that september’s release has been the biggest one so far for Oracle Process Cloud Service. However, the development team isn’t nearly done yet. Most noticeably on the agenda, there are the new business rule component, as a microservice and based on DMN (Decision Model and Notation), as well as Case Management, which should logically be based on CMMN (Case Management Model and Notation) and hopefully be less complicated than Case Management in BPM Suite. I believe that PCS has grown to be a mature product that can tackle most of your BPM needs already and with the two mentioned additions, it will be ready to fully replace Oracle BPM Suite in a more business-friendly and less technical manner. While not being a trendsetter in the world of BPM, at least Oracle is catching up quickly with modern developments and adding value by seemless integration with other Oracle cloud products.

The Cloud Is The Future

If you've paid attention to IT news in the last couple of years, you will have noticed that cloud computing is all over the place. Major companies like Oracle, Amazon, IBM and Microsoft are rapidly developing a whole new cloud world for enterprises and most successful startups are embracing the new technologies that come with it. In the meantime, I'm noticing that many of my clients are nowhere near the cloud yet and there's also quite some skepticism among my peers.

Focusing more specifically on Oracle technology, which has been my core business for more than ten years, I think that the movement to the cloud is inevitable. On-premise products are still being supported, but when it comes to new developments, Oracle is taking a cloud-first approach, going as far as abandoning on-premise development altogether for certain products.

As a client, this gives you several options: you can keep moving on a dead end road, still happily run your applications for the next 10-15 years and nothing bad is going to happen. However, you'll be missing out on a lot of new features and business opportunities like that, so you need to be very clear that this on-premise software exactly fits your needs and you won't need anything new. Theoretically, this is possible, but in reality we will hardly see such situations.

So, what are the alternatives? If you really don't want to go into the cloud, you can start replacing your proprietary software with open-source software, because with that you can do whatever you want. No vendor will be telling you that a product will get deprecated, because in the very worst case you can still develop it further yourself if there's no community left to work on it. Obviously, such an approach means quite a lot for your organization: you need to re-educate your technical staff, deal with no or limited support in case of problems and the more modifications you make, the harder it will be to find developers who understand what you're doing.

So, I believe that in most cases it will be viable to develop a strategy for moving to the cloud, even if you decide to move to open source. Find out what's holding you back, check if your concerns are actually making sense (are you sure you can be more secure than Oracle, performing faster than Microsoft or guarantee high availability better than Amazon?) and make an action list to work out the remaining concerns. Maybe you'll end up having some kind of private cloud, either managed by yourself or the cloud provider. As long as you have access to the latest technology, these can be viable solutions, although maybe not optimal when you look at cost of ownership, security or availability.

On the other hand, one should also be mindful to not jump to the cloud without thought: many cloud products are not fully developed yet, so you might be missing some crucial features for your specific needs. Planning carefully is the way to go, but waiting too long might make you lose your competitive edge in the age of digital transformation.

If you're a software developer or admin, what can I say? I remember database developers who didn't believe in middleware and ended up in support roles or unemployed. I remember DBAs who found it unfair that databases got smarter, did nothing to adapt and ended up being pushed off the market. We continuously need to improve ourselves and look to the future.

Of course, if you're happy to do the same work for ten more years and end up being overtaken by those who did reinvent themselves, let it be your decision. But it will not be mine. The cloud is the inevitable future, so you can either jump on the train or be left behind. My decision has been made, what will be yours?