Transcript - Cloud Application Integration Beginner Implementation Course
Transcript - Cloud Application Integration Beginner Implementation Course
1. Welcome
1.1 Welcome
Notes:
1.2 Instructions
Notes:
Hello, I’m Christy, and I’ll be your instructor for this course.
In a moment I’ll review the objectives and outline for this course.
At the end of each module, there is a quiz that you will be required to complete. This quiz is
designed to provide direct feedback on your knowledge of the content presented. You are
always welcomed to go back and review any of the information presented in any section of this
course.
Up in the right-hand corner you’ll notice a Resources area. These resources will supplement and
support this training.
To complete this training, you are required to pass the final assessment with a score of 80% or
higher.
At the end of the course, you will be presented with a survey. Your feedback is critical to the
success and further improvement of our courses. Please take a moment to complete this very
important step.
Now let’s move on to the objectives for this course.
Notes:
Cloud Application Integration is the service in IDMC for real-time integration and process
orchestration.
The objectives of this course is to make you more familiar with the functionality within Cloud
Application Integration, to be able to deliver a successful project for a customer.
We will discuss:
· What is CAI, and what can it do to solve customers' requirements for integration
· What is a process, and what are its components
· What is a service connector, and how is it used in CAI processes
· How to access on-premise databases to read and write data.
· How to expose a process as an API for integration in external processes.
· And finally, what is Xquery, and where is it used in CAI.
1.4 Overview
Notes:
Notes:
Notes:
Cloud Application Integration will help businesses in these three main subject areas:
Real-time API and event-based integration. Integration in real-time with APIs, messaging and
publish/subscribe solutions.
Process Integration and orchestration. Automate and integrate multi-step processes that span
multiple applications on-premises and in the cloud. Automate user workflows with interactive
access to data.
API implementation and management. Expose APIs to improve business, composite and data
services. Create processes and expose as API to be used in other external software to ensure
consistency of data access and processing.
Let’s explore these subject areas in a bit more detail.
Notes:
CAI can integrate API-based applications in real-time using APIs and messaging. CAI can be called
using an API by external applications, or it can monitor message queues to process messages
placed there.
Bulk data integration is typically batch, running at scheduled intervals. CAI can supplement this
batch integration by processing data in real time, ensuring the consuming systems always have
the most up-to-date data available.
CAI can integrate with message-oriented middleware and ESB, fitting in possibly existing
messaging infrastructure. CAI can serve both as a publisher or consumer of messages, using JMS,
MQ, Kafka, or other messaging platforms.
Notes:
Cross-Application process integration addresses business processes where multiple actions need
to be executed in different application systems to complete the process. For example,
registering a customer on a website needs to validate whether the customer meets the credit
requirements in an internal system. Only when this is approved, the customer status is set to
active and he or she is able to place orders.
Another use case is to externalize and implement business rules across applications. Having
these in CAI and exposing them as API will ensure consistent implementation and application of
the rules across the enterprise.
CAI can application and business processes from various systems into one process. This will help
to ensure the correct process flow is always followed, like the customer validation process
mentioned earlier. CAI can include so-called guides; these are screen flows where the end-user
will perform the necessary actions. These can be integrated in a workflow process.
Notes:Many applications have APIs to enable external communication. Using these API can be
complicated, due to the usage requirements and the complexity of the data structures. And,
especially when these applications reside behind a firewall, exposure to external applications
can be complicated.
CAI can be used to call external API’s to retrieve or update data in third-party applications. For
example, CAI can call Salesforce.com to retrieve or update Account or other information.
CAI can also be used to expose Api’s from internal systems to the outside world and, if
necessary, simplify the interface. For example, when updating a master record in an MDM
system, CAI can do the search to find the record, followed by the update call. The necessary
validations and transformations can all be included in the CAI process.
And finally, all exposed APIs from CAI can have security configured to prevent unauthorized
access. Also, because CAI is doing the calls to the internal systems, you can ensure that no
unexpected calls will be executed. So CAI can act as a wrapper around applications, to ensure
secure access and only allow the required actions.
Notes: To build functionality in CAI, you need to understand the following building blocks:
Processes. A process is a set of steps in CAI, interacting with data and services
Process objects. These define the structure of the data
Application Connections. Connect to databases, files systems, or services
Service Connectors. Connections to third-party services using REST or SOAP API’s
Guides. A guide is a set of screens where the user can interact with the data. Guides are outside
the scope of this course
Besides these building blocks, two more essential pieces need mentioning:
Transformation functions, to transform data types, do calculations, string handling, etcetera
Xpath and xquery, to address specific fields within complex data structures
Xquery and the transformation functions are used throughout the CAI processes, but mainly in
service connectors and assignment steps.
Notes:
When you’re ready, please proceed to the next module, Invoice Reporting.
3. Invoice Reporting
Notes:
3.2 Requirements
Notes:
This is the first example of how you would approach the design and build of a CAI process.
The requirements are as follows.
The customer has a web application in which it can create invoices in a back-office application.
This application returns the invoice id to the web application.
The requirements are to store the invoice information in the customers' data warehouse within
1 minute of creation, for near real-time reporting and analysis.
The web application can also create invoices for a new customer that do not yet exist in the data
warehouse. The customer must be created first in the warehouse, before the invoice can be
stored.
The web application must receive a status message indicating whether the process was
successful.
Notes:
Notes:
Now, let’s build this process. The 5 steps to build the process are listed below:
· Create the service connector
· Build the base process
· Lookup customer in the data warehouse
· Set output messages
· Publish the process and test.
Click on each of the steps for an explanation and to watch a demo video of the activities. A
transcript of the demo videos can be found in the resources section.
3.10 Summary
Notes:
The process p_Invoice_Reporting highlights some of the basic capabilities of Cloud Application
Integration. Understanding these basics will help in implementing well-designed and well-
performing processes in CAI.
In the service connector, you define the calls you want to execute towards a web service. You
also define which fields from the service you will need in your process, and where to find them
in the output payload.
You can query a database table using an assignment step. The assignment uses a query
statement to filter the data you need. You use a temporary field to assign your query result.
The decision step adds if-then-else logic in the process to allow different actions in the process
based on the condition in the decision step.
The Create step creates a row in the database table. You specify the connection and the object
you want to create.
Based on the various actions executed in the process, you set an output message, returning the
status of the process execution to the caller.
And finally, catching errors and defining alternative processing in case of errors will ensure the
process always completes in a controlled way.
Notes:
When you’re ready, please proceed to the next module, Public Library.
4. Public Library
Notes:
4.2 Requirements
Notes:
A public library wants regular updates to its inventory system, triggered by purchases of new
books to add to the library.
When a new book is purchased, the worldwide book repository OpenLibrary is used to retrieve
the latest information about the author to ensure this information is up-to-date in the internal
system.
The complete list of books published by the author is retrieved to compare with the books in the
inventory.
The OpenLibrary interface differs from the API used to store data in the internal system, so the
information retrieved from OpenLibrary needs to be transformed. The required json message
must then be sent to the internal application for further processing.
Notes:
Notes:
Compared to the process built in the previous chapter, this process will use a list of objects
defined in the service connector and used in a loop. It will also dynamically create an output
payload based on the number of elements in the list.
The development consists of the following steps:
- Create the service connector
- Create the base process to get the author information and book list
- Create the process structure to walk through the list and read the individual elements
- Build the output payload
- Test the process using Postman to validate the output payload.
Click on each of the steps for an explanation and to watch a demo video of the activities. A
transcript of the videos can be found in the resoucces section.
This solution can also be built following an alternative design, using process objects and a
subprocess. Click here for details of this design.
--- Test
To test the process, we will use Postman. The postman request calls the CAI process with the
input parameters, and it will show the output payload created. The “Run As” option from the
previous demo does not show the output, so Postman is the preferred tool when the process
generates a more complex output.
4.11 Summary
Notes:
The OpenLibrary process showed how to work with more complex input and output.
First, the service connector configured the calls to the OpenLibrary web service. The GetBooks
call outputs a list of books, which we store in an Object List.
Using list functions like head and tail, the process reads through the list and processes the
individual elements in the list.
The jump step creates the loop in which we browse through the list.
The output payload is constructed using a set of assignments. The first assignment creates the
general author information; the assignment steps in the loop add one entry per book to the
5. Summary
Notes:Course Summary
5.2 Summary
· What is CAI, and what can it do to solve customers' requirements for integration
· What is a process, and what are its components
· What is a service connector, and how is it used in CAI processes
· How to access on-premise databases to read and write data.
· How to expose a process as an API for integration in external processes.
· And finally, what is Xquery, and where is it used in CAI.
If you want to have a detailed look at the processes used in this course, you can download them
from the resources section.
When you are ready, please proceed to the final assessment for this course.