Once a company logs into their account on the Boomi AtomSphere web site, integration processes can be designed and built using a visual designer that includes access to a library of pre-built connectors and process maps. Using familiar point-and-click, drag-and-drop techniques, users can build very simple to very sophisticated integration processes with exceptional speed. No coding is required.
Since its inception, Boomi has focused on simplifying the creation of integration processes for application integration, data integration, and B2B integration. By identifying the common steps needed to automate complex integration scenarios, a series of common integration components have been created and are available to all Boomi users. When developing an integration process, these components are connected to create an end-to-end integration workflow.
Standard Boomi Integration Components include:
connect to any application or data source
Always the first and last steps of an integration workflow, the Connector enables access to another application or data source. The connector sends/receives data and converts it into a normalized XML format. A Connector’s primary role is to "operationalize an API" by abstracting the technical details of an API and providing a wizard-based approach to configuring access to the associated application. Connectors are also configurable to capture only new or changed data, based on the last successful run date of an integration process.
transform data from one format to another
While core to any integration, the data stored in various applications is rarely, if ever, semantically consistent. For example, a Customer represented in one application will have different fields and formats from that of another application. Using Boomi's Data Transformation components, users can map data from one format to another.
Any structured data format is supported, included XML, EDI, flat file, and database formats. While transforming data, the user can also invoke a variety of field-level transformations as well to transform, augment, or compute data fields. Over 50 standard functions are provided. Users can also create their own functions and re-use them in subsequent projects.
execute business logic and data integrity checks
Boomi’s Decision components enable true/false data validation that enables users to explicitly handle a result based on the programmed logic. For example, an order can be checked against the target system to see if it has already been processed. Based upon the outcome of the data check, the request will be routed down either the 'true' or 'false' path. Other examples include checking products referenced in an invoice to ensure they exist before processing the invoice, etc.
data cleansing and validation
Integrations are only as successful as the quality of data that gets exchanged. Boomi’s Cleanse components allow users to validate and "clean" data on a field-by-field, row-by-row basis to ensure that fields are the right data type, the right length, and the right numeric format (e.g. currency). Users have an option of specifying whether they wish to attempt to auto-repair bad data or simply reject rows that are “dirty”. All validation results are routed through a “clean” or “rejected” path which allows users to explicitly handle either scenario.
user-defined dynamic notifications
For any step of the integration workflow, Message components can be used to create dynamic notifications that make use of content from the actual data being integrated. This allows the creation of messages like "Invoice 1234 was successfully processed for customer ABC Inc." Connectors are then used to deliver the message to the appropriate end point.
dynamic, content based routing
Route components examine any of the content in the actual data being processed or use numerous other properties available to the user (such as directory, file name, etc.) and route the extracted data down specific paths of execution.
intelligent data splitting and aggregation
Split components re-organize data into logical representations, such as business transactions. For example, you can take incoming invoice headers and details, and create logical invoice documents to ensure the applications being integrated process or reject the entire invoice vs. discrete pieces.
To further simplify and shorten the integration development cycle, users can test their integrations directly in the Build environment. Integration testing includes watching as the data moves through the integration process, viewing the actual data, monitoring exactly where the integration fails, and click-thru on the failed step to examine error messages.
Configuring Integration Automation
Integration processes can be configured for “hands off” execution. AtomSphere provides both real-time as well as batch-style automation options depending on the requirements of the integration, as defined below:
Event-based Invocation - direct Atom invocation.
Included in every Boomi Atom is a lightweight HTTP Server. Data can be HTTP-posted to a specific Atom, and that data will be processed in real-time.
Event-based Invocation - remote Atom invocation.
Boomi also provides a Trigger API, which allows you to securely invoke an integration process that is running inside an Atom, regardless of where that Atom may be running, without opening any holes in the firewall. This is a very powerful option when you wish to provide external access to integration processes or trigger an integration based on some event in another application.
Included in every Boomi Atom is a schedule manager, capable of invoking integration processes based on a schedule configured by the user. Invocations can be scheduled to run as frequently as every minute. Schedule-based invocation option requires no changes to external applications.
Once your integration processes are built, they are deployed into lightweight runtime engines known as Boomi Atoms. The Boomi Atom is the "secret sauce" to Boomi's technology, and allows your integration processes to run wherever needed and as many times as needed, enabling nearly infinite scalability. The Boomi Atom contains within it one or more complete end-to-end integration processes, and executes those integration processes with absolutely no dependency on Boomi's platform. This allows for several deployment options to accommodate any integration requirement.
SaaS to On-premise
On-premise applications are typically kept behind a firewall, with no direct access via the Internet, and no access even via a DMZ. To handle this requirement, the Boomi Atom can be deployed on-premise to directly connect the on-premise applications with one or more SaaS/Cloud applications. No changes to the firewall are required, and the Atom supports a full bi-directional movement of data between the applications being integrated. In this deployment style, your data does not enter Boomi's data center at any point.
SaaS to SaaS
When all the applications being integrated can be accessed via a secure Internet connection, the Boomi Atom can run in Boomi's cloud for a zero-footprint deployment. Boomi manages the uptime of the Atom in this configuration. Your data is completely isolated from any other tenants in Boomi's platform.
Cloud to SaaS/Cloud
If you are hosting your own applications either as an ISV or for internal use, you can deploy the Boomi Atom into any cloud infrastructure that supports Java, such as Amazon, Rackspace, OpSource, etc. This offers direct connectivity between your application and the applications you wish to connect. In this deployment style, your data does not enter Boomi's data center.
Managing Changes to Integration Processes
Because applications are inherently dynamic in nature, so are the integrations that connect them. AtomSphere provides significant capabilities for managing integration changes in a very simple, non-disruptive, and auditable manner. Using a “Test Mode”, integration changes can be tested and verified without impacting any integrations currently running in production. Once tested, the new integration process can be deployed to production to replace the outdated process.
For more advanced testing requirements, AtomSphere provides Environments functionality. Environments are distinct and persistent collections of Atoms, enabling you to separate integration elements such as test versus production login credentials. Environments are the recommended approach when the applications being integrated have dedicated test/qa environments. Once defined and tested, processes can easily be promoted from one environment to another, with a full audit trail of what was promoted, when it was changed, and by whom.
Addressing Enterprise-Class Integration
Business critical integration processes demand a different level of reliability and scalability. To ensure that your key integration processes are reliable and highly available, the Enterprise Edition of AtomSphere features Molecules, an enterprise-grade version of Boomi’s patent-pending Atom™ technology. When deployed across multiple physical servers, Molecules enhance load balancing and ensure the reliability of mission critical integration processes.
Regardless of where Boomi Atom's are deployed or how many processes are deployed, the Atom’s unique architecture enables the centralized management of ALL integrations from the Boomi AtomSphere platform. The Manage functionality of the Boomi platform enables users to monitor the health and activity of all Atom's, review detailed logs of what processes ran and when, how long they took to run, the result, how many objects were processed, etc.
Reviewing Overall Integration Performance
The Process Execution view allows users to filter by date every integration process that ran in their account. Users can track individual integrations by status, which Atom ran the integration, how much data was processed, and how long the integration took to run. On demand, users can click-thru to a detailed log of the execution and the Atom will temporarily serve this log up to the browser session.
Reviewing Individual Process Executions
For each execution of an individual integration process, users can view the details of that execution, including each individual data set that was processed, both inbound and outbound. After viewing the execution details, there are several options:
- View the actual data that was sent or received with an external application (dependent on security permissions.) This data will be retrieved dynamically because data sets are never stored in Boomi's data center.
- Retry the data, which will request that the Atom to retry the data sets you have selected, and pass them to a new process execution.
- View the link between inbound and outbound data sets. When processing large amounts of data, users can click on an individual data set to view the resulting data that was created from it.
Regardless of where Atoms are deployed, the Atom Explorer is the central location to view the status of the Atoms, see where they are running, and set rules on how much history the Atom should retain. An Atom will appear offline when it has not communicated with our platform in a within a 5-minute window. You can use the Atom Explorer to access and manually execute the integration process in a specific Atom.
Subscribing to Process Alerts
For proactive notification of failures, users can subscribe to Alerts that broadcast via RSS any failed integration process, or any unresponsive Atom. For a simple view of all integration activity in an account, users can also subscribe to a monitor feed, and embed this into any another application that supports RSS. Alerts provide the process name, the Atom, the status (success or failure), and the date/time of the execution. By using this alert, users can quickly pinpoint the execution history for detailed diagnostic activity. Atom Alerts will also send notifications when an Atom goes offline, or comes back online, specifying the Atom name, the status, and the date/time of the status change.
Productize Integration Functionality
Boomi AtomSphere makes it possible to pre-package an Integration Widget that can be embedded into any website with a few lines of code. For partner ISV’s and System Integrators, this means you can now enable your customers to setup their integration processes right from your website.
Integration Widgets consist of a simple web-based user interface with a wizard-style approach that allows your customers to step through the configuration and deployment of an integration that you built for them. Customers configure only the options you want them to control, such as their login information, how often they would like the integration to run, specific options about the integration (run customer sync, but turn off opportunity conversion), etc. Design, setup and deployment of the Widget remain completely within your control.
Use the Widget Designer to create your Widget and define its content. During the design process you link your Widget to an Integration Process, and declare which properties you would like to expose in your Widget. This can include everything from login credentials to properties whose logical values can be acted on in the actual integration process. For example, let’s say you want to include a check box in your widget that says "Allow Invoices to be updated if they are open.” The choice (true/false) made by your customer during Widget-driven configuration will be stored in a process property, and then utilized as part of the integration workflow. This allows for very complex business processes to be easily configured by business analysts who understand the requirements of your customer the best.
Once your Widget is connected to an integration process, you can create each screen in the Widget (or choose from pre-built examples) and decide which content appears on each screen. The result is a wizard-style user interface that makes the configuration and deployment of integrations to your applications a self-service experience for your customers.
The Widget Manager is a collection of individual Widgets and the actual component that is embedded in your application. The Widget Manager is tied to your multi-tenancy and simply and securely links the deployment of a Widget to a specific tenant within your application. Therefore, when you specify a key that links a Widget to a tenant in your application, Boomi AtomSphere will link a particular Widget to the customer who deployed it. The “look and feel” of your Widget can also be configured to match all widgets linked to your Manager with your application style, layout, fonts, and overall branding.
Once embedded, the Widget Manager houses any widgets you choose to link to it. This allows you to increase your library of available Widgets, as needed. Your customers will use the Widget Manager to not only deploy a new widget, but also to change their settings and view the activity of the integrations they have deployed. This activity is packaged in "business friendly" logs that detail what processes have run, the results, how many records have been processed, etc.
Developing and Maintaining Your Own Connectors
One of the benefits of Boomi AtomSphere is the network of interconnected SaaS, PaaS, cloud, and on-premise applications. Connectors allow access to this “ecosystem” of applications and are one of the key components behind Boomi's Visual Integration technology. Boomi provides an SDK that enables anyone to build and publish new Connectors to application. The SDK also enables ISV's to incorporate their connectors as part of their internal R&D processes.
The SDK helps developers to write code that describes and "wraps" an API so that it can be browsed at design time and invoked at run-time for the purpose of creating, reading, updating, or deleting application data during a Boomi AtomSphere integration process.
Register for a free Boomi AtomSphere account today to get access to our SDK.