What is Oracle Policy Automation?
Oracle Policy Automation is the name given to a family of applications concerned with the design, development and deployment of business rules. The solution aims to decrease the time it takes to write rules, as well as the effort it takes to update and deploy them.
At the time of writing, in December 2016, Oracle Policy Automation is available in the following versions.
Oracle Policy Automation version 12
This is the latest major version of OPA. It offers essentially the same modelling interface for both public cloud and private cloud customers. OPA version 12 also provides the Policy Automation Hub application for visual management of the repository, external data source connections, deployments and Project collaboration. This version is the subject of this book. The product is available in Public and Private Cloud. You will discover both in this book. The Private Cloud version is currently v18.104.22.1684.
Oracle Policy Automation version 10.4.x
Version 10.4.x includes a Windows-based modelling tool and is offered with a number of application-specific connectors (Siebel Connector, Connector for Oracle CRM On Demand, SAP Connector for Java). The majority of the examples of how to write rules will also work with this version. The latest version available is 10.4.7 (10.4 Update 7).
Oracle Policy Modeling
Ultimately, whatever OPA version you are working with, the modelling interface is the primary point of contact for most consultants. In both guises it is Windows-based and provides the visual framework for the conception and delivery of rules, visual interviews and logic that can be shared across applications.
This book concentrates on version 12 for public and private cloud, as for most consultants, this is the easiest platform to install in order to create policy models. Consultants looking to work in a private cloud installation that includes the Oracle Policy Automation Hub can find installation instructions on the Oracle website.
NB: A complete guide to setting up a Virtual Machine for Oracle Policy Automation can be found at https://theopahub.com/main/creating-an-opa-hub-self-study-platform-part-one/
The following screenshot shows the version 10 user interface upon running the program from the Start Menu in Windows. Notice the Project Explorer window on the left.
The next screenshot shows the version 12 application window. Notice the changed visual style more reminiscent of modern Microsoft Office applications, and the welcome pane of the Project tab displaying the version information, as well as some useful links.
Although this book focuses on version 12, a fairly large percentage of the content relating to rule writing and Modeling usage will work, mostly without changes, in the earlier version. The Oracle OPA Website offers good advice for customers upgrading rule Projects from 10 to 12. In many cases, the process is without incident. In this book, Chapter 16 looks at the process of migration through the use of a command line tool called OPMMigrator.
Finally, although this book is focused on using Oracle Policy Modeling in English, there will be, where appropriate, both examples and commentary regarding potential differences that may occur when writing rules in other languages. Chapter 15 looks at languages and regions from a modeling perspective.
Oracle Policy Automation
The Oracle Policy Automation family of applications is made up of tools that get deployed in either the Private or Public Cloud (The Oracle Policy Automation Hub and the executable applications such as Web Determinations) and applications that are deployed on client computers (Oracle Policy Modeling) or mobile devices (The OPA Mobile App for Android or Apple).
Oracle Policy Automation Hub
The family now includes a web application that is called the Oracle Policy Automation Hub. As the name implies, it is a central location for the management of rule Projects, their versions, and the roles of different users of the application suite. It is also used to manage the availability of these rule Projects to end users or applications:
The Oracle Policy Automation Hub contains practical features such as logging statistics of rule usage and tracking versions of a rule Project, as well as more technical functions such as managing connectivity and data models obtained through integrations with other applications. This book looks at the management of users, deployments, the repository and all the associated management tasks.
Depending on the version of the Oracle Policy Automation Hub you encounter, and the licensing conditions of the purchase, you may find that you see:
- Different Names for Icons.
- Permissions being used instead of Users (starting in November 2016).
- Missing Icons or Non-functioning Icons.
For example, buying the Oracle Policy Automation Cloud Service without the Collaboration features will cause the Repository Icon to be non-functioning, and all functionality related to it in the Oracle Policy Modeler will be deactivated. Attempting to use this functionality will display a message to that effect:
Buying the Oracle Policy Automation Private Cloud solution without the Oracle In-Memory Policy Analytics option will cause the Workspaces icon to not be visible in the Oracle Policy Automation Hub, and relating functionality will be unusable:
NB: The Oracle In-Memory Policy Analytics option is outside the scope of this book. You will, however, discover the Batch Processor which is part of the Oracle In-Memory Policy Analytics solution, in Chapter 16.
Oracle Policy Automation – Web Determinations
The Web Determination web application is a big part of end-user deployment of Oracle Policy Modelling rule Projects. Users access a URL that displays the series of screens that make up your rule Project, and displays other features such as the final summary screen and links to any documents that may be made available by the rule designer.
Interviews are often accompanied with PDF output (which are called Forms in Oracle Policy Automation) and you will learn how to enrich your web determination experience with these in Chapter 11.
Oracle Policy Automation – Web Services
Web Services provide access to your rule Projects in a different way to the Web Determination; the difference being that the Server provides an XML-based access. Communication with the Server is in the form of a SOAP request and response mechanism, making it practical for integration with software which needs to leverage a Policy Automation project’s rules. At the time of deployment, the URL to access the Project is provided, for the purpose of downloading the web service definition (WSDL).
Although writing application code to take advantage of the XML-based interface is beyond the scope of this book, you will get a good understanding of the deployment process in Chapter 14. There are several different ways to access Web Services depending on your requirement:
If you are looking to use Oracle Policy Automation as a back-end, zero user interface platform, then the Assess Service is going to probably be one of your chosen solutions. It has methods dedicated to passing in data and simply receiving the response. Of course, it is up to you to provide the mechanism (coded as a process or library) that is going to actually handle the input and output. This is pretty much the same service as exists in version 10.
Newer than the Assess Service, the Answer Service has methods relating to the use of Connection objects in Oracle Policy Automation. In short, if you have used Oracle Policy Modeller to map inputs or outputs to another application and you want to access this policy using a Web Service, then you will need to know the data model that your Oracle Policy Automation web service is expecting, so that you can build the right input. Some examples are the GetInputDataDefinition Action, followed in all probability by the GetAnswer action. This is fundamentally a “zero user interface” integration, the consumer of the service does not use any Interview created in Oracle Policy Modeller.
As the name shows, this service allows us to work though the Interview Screens in your Policy Model, and to handle all the different interactions (back, forward, save, close, and so on) that can occur. This service can then be connected to, for example Siebel CRM, and fancy techniques used to generate the user interface natively in Siebel Open UI, but based on the structure and logic of the UI built in Oracle Policy Automation. Look out for GetInputDataDefinition, StartInterview, Investigate, EndInterview, GetFiles and SnapshotSession actions. If you see them, then you are looking at the Interview Service.
Last but by no means least, the Server service gives access to things like Timezone settings as well as a list of deployed Rulebases. This can be useful to understand what a particular server is providing. The WSDL file can be accessed through the Oracle Policy Automation Hub web application, and the file can be simply downloaded from your Web Browser, as shown for example below.
Oracle Policy Automation – Mobile Application
Again starting with version 12, Oracle Policy Automation Projects can be deployed to a mobile device that uses Apple or Google Android as its operating system. The rules that are viewed on the mobile device are retrieved from the Oracle Policy Automation Hub. The use of the mobile application is not, however, a pre-requisite for using Oracle Policy Automation on a mobile device – if the web determination URL is accessible, then it can be reached on your tablet or phone.
However, the mobile application offers a mobile-optimized user interface for both phones and tablets. This application is available for download from both the Apple Store and Google Play sites. An example screen is reproduced below. In chapter 10, you will learn how to give a user access to a policy on their mobile app.
The exact visual interface of the app changes according to the version of the application, however the goal is, in any case, to provide an optimized experience to the user of the mobile device. Potential developers should be aware that policies deployed on the Mobile App cannot access data sources such as Oracle Service Cloud.
Another major advantage of the use of the mobile app is that the Oracle Policy Automation Hub provides permission and access-management functionality to better control mobile deployment, as you will discover in Chapters 13 and 14.
An important note about licenses
Oracle Policy Automation products are available for download from the Oracle Software Delivery Cloud, currently at the web address https://edelivery.oracle.com. As a user of this site you are required to agree to the terms of the Oracle Trial License Agreement, if you are not already in possession of valid licenses for the software. Remember that is it always your responsibility to make sure you respect the Trial Term (30 Days, for example) and the conditions attached.
In addition, as already mentioned, some functionality is licence-based. You may not have access to all the features and functionality described in this book.