From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle...

6
Oracle Scene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional Cheshire Shared Services From Systems Integration to Employee Self-Service Jonathan Lewis Shares on Star Transformations in Standard Edition www.ukoug.org An independent publication not affiliated with Oracle Corporation The Road Ahead For BI Apps This edition’s sponsors:

Transcript of From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle...

Page 1: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

OracleSceneServing the Oracle Community

Autumn 12 Issue 48Confused by UPK?Tim Poynter sheds some light on UPK Professional

Cheshire Shared ServicesFrom Systems Integration to Employee Self-Service

Jonathan LewisShares on Star Transformations in Standard Edition

www.ukoug.org An independent publication

not affiliated with Oracle Corporation

The Road Ahead For BI Apps

This edition’s sponsors:

Page 2: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

AUTUMN 12

Technology

56 www.ukoug.org

Next Generation Service Patterns using Oracle Fusion Middleware Traditionally Enterprise Application Integration is done using specialised middleware that can connect through Message Queues, Network File Shares, FTP, SFTP and etc. in few extreme cases they use specialised custom protocols as well, that inherit UDP or TCP characteristics. Kathiravan Udayakumar, Senior Architect – Technology, Cognizant Technology Solutions

These techniques have always enforced the producer and consumer of the message to know the meta-data information about the exchange up front and imposed various constraints to both parties. Change has never been easy and it always requires complex, specialised skills to work on them. Service Orientation is breakthrough in this segment which provides key features that will enable next generation integration patterns. The snapshot below shows the features in next generation integration patterns that will redefine the application integration style and consumption of information by various parties involved in the Enterprise Business Transaction. This article will provide more insight into below list of Next Gen Service Patterns

OracleSceneD I G I T A L

additionalcontent

The snapshot below shows the features of Service based patterns of application integration and Oracle SOA Component Map.

Service Virtualisation Virtualisation is not a new technique in software development. It is long known to the software development community right from Mainframe era in form of VSAM. Virtualisation has inherent benefits around which capabilities on encapsulation are created in Object Oriented Programming models. With the

OracleSceneD I G I T A L

Page 3: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

Technology: Kathiravan Udayakumar

www.ukoug.org 57

advent of Hyper-threading at Microprocessors and Desktop Virtualisation, it is literally possible to virtualise all components of computing resources such as Memory, CPU and etc. Hope this gives confidence that we are about to discuss a well known topic. In Enterprise Business Application context; Virtualising data through services can be achieved through SOA Standards, but achieving location transparency and ability to govern the service enablement is still a key challenge with SOA Standards alone. An Enterprise should host an Enterprise Service Bus to virtualise services hosted across different business domains to allow transparency in data access mechanisms and to govern the service enablement. Creating Services at every application end or exposing services at every business domain level will not solve the larger business application integration issues. An ESB Layer allows the Service hosting, Service Enablement, Information Location transparency and transformation of information to multiple message formats and Protocol transformation.

Service Virtualisation can be explained very easily using the example below. Customer Information Services is a common Core Information Service that is required in all Enterprises, It is essential to make this information available to all departments. SOA and ESB could be used enable the information to be available through service enablement layer by aggregating the customer master information from different sources and provide a single view of the customer master information to different systems in an Enterprise. Consumers of the application will make use of the services hosted in the ESB layer to interact with the Master information system. By exposing the Core Information Service in the Service Bus Layer, the consuming application and producer of the Core Customer Information are sealed from each other to allow them to change independently by which they are producer of the service are virtualised and encapsulated to clients.

Process OrchestrationFrom paper-based forms; computer application forms were created, workflow was used as a key technology in the late 90s to connect the business process across different applications. This was done predominately through email communication. With SOA Standards in place, application features, data and functionality can be exposed as a service. This has enabled to integrate interrelated services through a common programming model to orchestrate the business process. Prior to Orchestration similar results were achieved through Chronographic style communication between different business applications. Chronographic style of application integration and communication leads to redundant exchange of information and storage of meta-data and application data across different

business application. To enable data validation in the message exchange the key data is most often exchanged across different applications, which lead to additional application maintenance overhead and poor management of the business applications.

Orchestration might have sounded like a big jargon, is it so? Yes, languages to communicate with computers are always complex, till today software industry has not created a programming language that does all the required computing functionality. Having known this limitation, we have very interesting area that has been growing for years and still growing; DSL (Domain Specific Languages). Then you could imagine how complex it would be for a language to talk to multiple platform and application that are evolved using different languages even with single common standard (Web Services), BPEL is the one that would help to achieve this. BPEL is a coordinator that can talk to multiple technologies and accomplish the required business process functionality that cuts across different Enterprise Business Application. As any communication technology, BPEL also supports both synchronous and asynchronous communication.

Business Process Execution Language (BPEL) is very essential tool in SOA world to achieve the Business Process Orchestration. It is very thin and light weight XML-based language that can used to accomplish the Process Orchestration. BPEL uses web Services exposed from different Business Applications and Information Systems (through technology adapters). In Oracle SOA Suite 11g, Oracle BPEL Process Manager is integrated to Oracle SCA Runtime. Oracle BPEL Process Manager introduced in 10g is now integrated into Oracle SCA Runtime Components as a Process Engine along with Mediator, Business Rule and Human Workflow Engines.

BPasS (Business Process as Service) is another buzzword in the industry today and it is all set to take its position in the cloud-based computing. BPEL will be tool that will be predominately used to achieve this. BPEL is first of its kind technology/programming Language that uses database to hydrate the state of the process.

This feature is clear differentiator from other persistent technology that is currently know, this feature helps in executing long running Business Process in the organisation and maintain the Process state without hitting the in-memory constraints. Below diagram illustrates the Chronographic style of Information Integration. Information exchange between different systems happens though batch jobs and file exchange in chronographic style which is illustrated in below diagram

ORCHESTRATION CHOREOGRAPHY

Page 4: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

AUTUMN 12

Technology: Kathiravan Udayakumar

58 www.ukoug.org

The diagram on the previous page illustrates the Orchestration Style of Information Integration. Information exchange between different systems happens through a centralised controller (BPEL in this case) through the service exposed from different application.Business Processes managed across different application can be orchestrated through an Orchestration Layer; this can be achieved through BPEL (Business Process Execution Language). Application Functionalities and Data can be integrated through WebService calls and Adapters.

Process Orchestration can be explained very easily through the below example. Ordering is very common Orchestration scenario in most of the organisation. Ordering a Service or Product is managed through Order Management, Warehouse Management, Billing & Invoice Management, Shipping/Travel Management and etc. All the above specified business process processes cannot be achieved through one single monolithic application. All the business processes specified above are required to be managed in specialised computer applications and technologies inside and outside the organisations. Complex human interaction is also required for the processes to be completed to handle exceptional scenarios.

As most of you are aware, order requires complex flow in which it goes through a number of steps and processes.

A few are listed here for the benefit of the readers to recollect, Receive Order, Validate the Order, Check the inventory, full-fill the Order, ship the product or services, update the inventory, inform the manufacturing division to produce more, inform the billing department to send the bills and invoices. Process the payment. Shipping the Order requires working with different suppliers/partners which in turn requires complex interaction in tracking the products shipped across the divisions. Confirm the recipient of the Product or Service by the customer; register the product or service for customer support. Hope you are now able to comprehend what Orchestration layer is required and helpful. BPEL would help in orchestrating the above specified scenario. Where it could connect to different Business Application Modules and achieve the required results.

Process Orchestration is another key feature that would enable organisation to adopt and benefit from SOA. Orchestrating the Business Process provides some of the key benefits such as Process Monitoring and Centralised Control of Business Process enablement.

Event ProcessingEvent Driven Architecture is a way to design enterprise application integration using the events generated from the applications. Event is the information generated from the business application for the business event that occurred. Events generated from the application will be the driver for business process completion or for notification of the information regarding the flow of event in the enterprise.

Event driven architecture is the way by which the applications are integrated in asynchronous fashion. Provider and Consumer of the event need not know the location of the service as in Service Oriented Architecture. Event Manager will take care of publishing

and subscribing the events generated by the application. Provider and Consumer of the application need to know only the Event Name and Event Data to be published. From the above discuss it may hit upon some of us like this can be achieved using the Queues based architecture, the major different between the EDA and Queue Integration based architecture is the degree of decoupling provided by EDA vs Queue. As specified earlier, EDA doesn’t force the provider and consumer of the data to know the location, environment that supports this style of integration has coordinator that takes care of the location transparency.

Change is inevitable in all parts of life and business is no exception. In a highly dynamic world in which we deal with these days, change is a norm. Change Producer, Change propagator and Change consumers are not synchronised at equal rate in all the business application that host different information services, which creates disparities in the information being available to different business users/ The initiator of the change has to take care of updating all the required systems, but addition and removal of system keep happening round-the-clock in larger enterprises.

For the systems to asynchronously send information to various systems an integration layer is required for the information propagation information. EDA provides the required specifications, tools and technique to achieve this.

For example, if you like to send some personal information updated in a self-service application to various applications, EDA is choice for it. Events are defined and published using the tools available in the system.

Oracle SOA Suite 11g as an additional engine/ layer called Business Event which takes care of supporting EDA. From Business Event Layer, Publication and Subscription of the events can happen. This is done through EDN (Event Delivery Network). Oracle SOA Suite 11g supports publishing and subscribing to events for below list of components.

S.No Component Publish Events

SubscribingEvents

1 Mediator Yes Yes

2 BPEL Yes Yes

3 Business Rules N/A N/A

4 Oracle Service Bus N/A N/A

5 Human Workflow N/A N/A

OracleSceneD I G I T A L

Page 5: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

Technology: Kathiravan Udayakumar

www.ukoug.org 59

What is the difference between Events and Queue Based Communication?Queue Based Communication requires infrastructure setup, adapter definition, adapter configuration and etc where as event based communication is very thin lite weight communication that requires definition of the event definitions and event publications in a simple, easy and nimble fashion.

Rule CentralisationRules and policies are part of all Business Process defined in different zones of Business. Defining business rules and policies helps in effective execution of business and it creates a reliable business environment. Business rules are defined by the organisation as well as by the governments to conduct business in an ethical and moral way. Business rules are also created to be more competitive as well as identify the right customers and serve them with more care. Below are some of examples of business rules defined in different zones of business environment.

• If a traveller account has total miles for the year greater than 500K, then change the Customer Status to Platinum.

• If Customer Payment History is Excellent and rated as Gold provide 5% additional discount on the new services subscribed by the customer for next 9 months.

Demand for Transparency in Business from Customer, Employee, Partners, Governments and External Auditing Firms are increasing every day due to globalisation of organisations. These demands call for centralising the business rules to create healthy and valuable competitions in conducting Business. Standardised Business Rules help the customers to understand the business practices across different zones of life and chose the right product and services that suites the need. Competition in Business environment demands the organisation to have agile business process definition and it opens the doors for innovative thinking and calls for swift implementation of new business process definition through right agile business technology.

It is important to define the centralised business rules centralised which will enable global process to access them seamlessly and provide required results that will help the organisation to take informed right decision. Oracle Business Rules Framework provides the required features to enable agility and transparency in conducting the business.

Process RepositoryBusiness Application Development Models are in cross roads: where the Monolithic Applications are moving towards Composite Application Development Patterns. These composite applications would directly represent and reflect the business view of the interactions extracted from the Business Process Charts. Composite Applications would interact with the services exposed from different business applications to accomplish the required task. This is the key driver to manage business processes accessible through repositories. Traditionally, Business Process charts were managed in Visio Diagrams, Power Point Presentation or Specialised Modelling Tools due to lack of standards around representation of business process, with advent of BPMN (Business Process Management Notations) Business Process can be created and stored in a standard fashion that can be accessed by desperate applications and software components. Executables Business Process can also be extracted from BPMN (Business Process Management Notations).

Enterprise Level Business Processes can be created and managed using Oracle BPM Suite. Oracle BPMN tool allows modeling and stimulations of Business Processes. Oracle Stimulation Module is quite sophisticated that can used to calculate the ROI and cost associated with the change in the business process.

Meta Data CentralisationTo centralize the business process, meta-data information required to design the business process need to be centralized. Meta-Data include Computable Business Objects representations (XSD), Process Definitions (BPMN), Executables Process (BPEL), Application Definitions (JSF, ADF Components), Rule (Business Rules), Policies (WS-Policies, Fault Handling Policies), Transformations Definition (XSL) and Routing Rules for Application Integration (Mediator Definitions), Service Definition (WSDL), Runtime Configurations and etc.

Meta Data Centralisation provides some key benefits highlighted overleaf.

Page 6: From Systems Integration to on UPK Professional Employee ... · OracleScene Serving the Oracle Community Autumn 12 Issue 48 Confused by UPK? Tim Poynter sheds some light on UPK Professional

AUTUMN 12

Technology: Kathiravan Udayakumar

60 www.ukoug.org

• Better Performance and Caching• Shortened Application Life Cycle• Runtime Customisations made easier

Process MonitoringMonitoring the Business Process has not been an easy task with distributed business and distributed computing architecture to support them. The Global Business Processes has to cut across different horizons to full fill the needs of all customers and business partners. Most, multi-national companies have adopted global business execution model in recent times, but they also require regional applications to support the local needs. It is the key and need to monitor of the business process across the horizon. Centralised Process definition and execution of business process through BPEL has enabled to monitor these processes through a technique called sensors. BAM Sensor would help organisation to monitor the business process very keenly and built analytics around this.

Service Registry & DiscoveryService Registry and Discovery are divine patterns in SOA domain. Adopting this pattern in the organisation requires

greater level of commitment and agreements between different business domains. It will be more ambitious pattern to adopt in the initial stages of SOA Implementation and enabling Process based computing. But never the less it is good to have high aims to attain these patterns adopted in the organisation.

Service Registry and Discovery can be achieved through Oracle Service Registry (OSR) and Oracle Enterprise Repository. Service Registry enables organisation to registry the services centrally and govern the life cycle management of the services. This is an important objective that needs to be adopted during SOA Program Planning and Initiation. Discovery Services through Service Keys can also be achieved through OSR. Below snapshot shows the Service Registry Architecture.

Service Requestor/Provider registers the services to Service Registry for Service Consumer to discover it. On discovering the services, service consumer and service provider bind together through custom protocol. WSDL, UDDI and SOAP Protocols are used to achieve this.

ABOUTTHEAUTHOR

Kathiravan UdayakumarSenior Architect – Technology, Cognizant Technology Solutions

Kathiravan has 9 years of IT experience. He has extensive experience in architecting and designing solutions using various Oracle Fusion Middleware and PeopleSoft Products. Kathir works for a highly reputed IT Consulting organisation and is a key member of the Fusion COE team. He is the author of the world’s first book for Oracle SOA Certification, entitled “Oracle SOA Infrastructure Implementation Certification Handbook” (1Z0-451). Two other books on Oracle SOA, “Oracle SOA Patterns” and “Oracle SOA Frameworks” were published recently and the next Big Book, “Hello World to Oracle SOA - A Complete Guide to Oracle SOA Suite 11g” is due for release in the next few days.

OracleSceneD I G I T A L