The Next Generation of Integration Software

Ensemble is increasingly the technology of choice for IT projects aimed at creating cross-application functionality with integration software. These projects address the challenges of:

  •  Making applications and information more easily and more widely accessible through a variety of mobile/computing devices
  • Collecting and aggregating information from disparate sources (on a customer, patient, product, and so on) into a single, comprehensive view
  • Automating business processes, including easily modifiable business rules to control process execution, and human workflow
  • Achieving data consistency across disparate applications and databases

Unlike other products, Ensemble enables the rapid completion of such projects with advanced messaging and additional best-of-breed functionality for business process optimization, plus an embedded, high-performance object database.

Increasing the business value of integrated systems

With Ensemble’s industry-leading business process optimization functionality, IT is in a position to make its solutions much more valuable to the business, delivering them faster and without having to purchase additional software. These functions are fully integrated with Ensemble’s messaging capabilities and with each other in a unified technology architecture, and include:

  • Business process modelling and execution
  • Business rules processing
  • Workflow management
  • Business activity monitoring
  • A rapid development environment for composite applications
  • End-to-end management

Ensemble’s integrated blend of messaging technology and a rich array of business process optimization capabilities creates one consistent and powerful whole that is greater than the sum of its parts, and greater than competing offerings. Other products, taking the loosely coupled “suite” approach to providing messaging and business process optimization technology, cannot match Ensemble’s short and rapid learning curve, or its power and ease of use.

 Ensemble’s core database and abstraction technology

Unlike conventional messaging products, Ensemble has a high performance, highly scalable and SQL-compliant object database at its core. This database leverages the proven technology found in our Caché product, and scales easily to handle thousands of simultaneous users and terabytes of data. All elements of Ensemble itself are modelled as object classes in its database. This object model is extended, during solution development, by Ensemble’s advanced abstraction facility to all of the applications, services, data sources, business rules, and other components of an integrated solution.

For example, consider an integration project that connects an SAP application suite, a legacy mainframe application with an IMS database, a Windows application that exposes Web services, a Java application built using J2EE technologies, and a relational application with extensive stored procedures. Ensemble abstracts the functionality and data in these applications into a set of object classes with properties and methods, stores those classes in its database, and makes them available for use throughout the project. Ensemble can present these classes in any form needed by other parts of the integrated system, including COM, .NET, ODBC, Java, JDBC, EJB, XML, and Web services.

In addition, Ensemble’s database is a repository for every message generated by a working solution, and for the current state of every business process. With Ensemble, messages are never lost, and an interrupted business process can always restart from the point of interruption. Sophisticated transactional bitmap indexing enables real-time updating of, and access to, the message repository for business activity monitoring, auditing, and management.

Ensemble’s object model, shared repository, and development environment provide a consistent, unified view of the underlying systems, applications, and services in a solution – no matter what platforms, languages, data models, storage architectures, network protocols, or other technologies those underlying parts use. Ensemble reduces the complexity typically associated with integration projects, incorporates services and data as needed into different business processes, and drastically reduces time to solution.


Advanced messaging

The messaging capabilities inside Ensemble are one part of a whole that, like all other parts, takes advantage of Ensemble’s powerful object model and high-performance data and metadata storage to enable rapid development and ease of management. Ensemble messaging includes:

  •  High-speed, highly reliable messaging with publish/subscribe, event driven, and content-based routing via an extensible rules engine simple enough for non-programmers to use effectively
  • An extensive adapter library and framework for out-of-the-box connection to a wide range of applications, services, data sources, and technologies
  • Bi-directional support for XML, SOAP, Web services, and other standard messaging formats, including HL7 and X12 in healthcare, and standards for financial services, telecommunications, and other industries
  • Graphical creation of XML-based data transformations
  • End-to-end management, including Visual Trace for rapid troubleshooting and message inspection
  • A rapid development environment for easy extension of existing adapters to connect new sources

Rapid and reliable messaging engine

Speed of development, high performance, reliability of deployed solutions, and management efficiency are the primary benefits of the Ensemble messaging engine. This translates into significant time and money savings. But even more important, by using Ensemble IT can put more solutions into production use sooner, giving those solutions more time to deliver their intended value to the enterprise. In healthcare projects, for example, Ensemble users report that development is nearly three times as fast compared to development using other integration products, and message processing that is two times as fast.

The Ensemble messaging engine offers:

  • Guaranteed message delivery
  • Content-based routing
  • High-performance message transformation
  • Business rules processing
  • Support for synchronous and asynchronous interactions
  • Real-time access to live and previously processed messages for auditing and business activity monitoring (BAM)
  • High reliability and recoverability for long-running business processes

These reliable and robust messaging services ensure transparent integration of the activities generated by disparate application interfaces, services, technologies, and data sources.

 Extensive and extendible adapter library and framework

With its adapters providing out-of-the-box connectivity and data transformations for a wide array of packaged applications, databases, industry standards, and technologies — including SQL, HL7, TCP/IP, and SOAP – Ensemble gives integration projects a tremendous head start. Adapter code is maintained by InterSystems, further reducing the IT development burden, allowing Ensemble users to focus on business solutions. Ensemble delivers extremely rapid development of custom adapters by using object inheritance and SOAP services to minimize the effort required. Using Ensemble’s unit testing service, custom adapters can be tested without first having to complete the entire project, resulting in faster development and more reliable solutions.

The ability to use SOAP services as adapters immediately extends the environments to which Ensemble can connect, and provides the foundation for rapid integration with Web services provided by companies such as SAP, Siebel, Amazon, MapQuest, and others.

Broad-based standards support

Standards support within Ensemble allows developers to leverage skills gained from use of the same standards in other projects, and enables interoperability of completed systems with others supporting the same standards. Although standards do change over time, and new standards arise, developing solutions around industry standards provides a level of investment protection compared to development using proprietary technology.

Ensemble supports a wide range of standards relevant to a number of industries, including healthcare, financial services, and telecommunications. Ensemble also supports the latest Web services standards, including XML, XPATH, XSLT, SAX, SOAP (as a consumer or producer), and DTDs (document type definitions) and schemas. Ensemble’s object model and database enable a seamless fusion of XML and objects, without the processing overhead of mapping multidimensional XML structures into two-dimensional relational database tables.

 Visual and flexible data transformation

Ensemble eliminates barriers to project completion raised by the differences in semantics and data schemas between applications or services. For example, when trying to integrate the patient data inside a community physician’s practice management system with the electronic medical record used at the physician’s admitting hospital. Ensemble’s powerful graphical and code-based data transformation capabilities bridge these differences using simple formulas or lookups in data tables (internal or external), and can be extended to any degree of complexity by adding customized functions. Ensemble stores the mappings and calculations that govern data transformations as objects in its embedded database. Once stored, these mappings become as accessible, reliable, reusable, transformable, and scalable as any other piece of Ensemble data.

Ensemble also includes a unit testing service for transformations. In this way transformations can be tested as they are developed, without having to wait for completion of the entire project.

 Efficient and productive development environment

The power of Ensemble’s object model and database technology extends to its development environment as well. Ensemble’s consistent object representation of diverse programming models, programming interfaces, and data formats enables application of Ensemble’s single development environment across all aspects of Ensemble – from messaging to process orchestration to business activity monitoring. This unified graphical, XML, and code-based environment simplifies and accelerates modelling and automating of business processes for business analysts and developers. And it enables extremely rapid service-oriented development of composite applications.

Ensemble’s consistent, efficient object representation of disparate programming models and data formats enables use of the latest, most powerful development tools and technologies. Once resources (including legacy application functionality and data) are stored in the database as Ensemble objects, they can be automatically “projected” out to consumers of those resources in a wide variety of forms including COM, ODBC, Java, JDBC, EJB, XML,Web services, .NET, or J2EE components. The risk of lock-in to J2EE-specific or .NET-specific products is eliminated, insulation from changes in standards and technology is realized, and flexibility is maximized.

For service-oriented architectures (SOA), Ensemble can act as a producer or consumer of Web services. As a producer, Ensemble can present any of the functions stored in its database as a Web service. As a consumer, Ensemble identifies external Web services and stores their object representations in its database, where they’re available for incorporation into solutions as easily as local functionality.

Additional benefits of Ensemble’s development environment include:

  •  Support for rapid service-oriented development of composite applications by enabling transparent access to SOAP and other service-oriented technology.
  • Streamlined integration with third-party business process management tools by providing the Ensemble Business Processing Language (BPL), based on emerging specifications such as the Business Process Execution Language for Web Services (BPEL4WS or BPEL) and the Business Process Management Language (BPML or BPMI).
  • Full programmatic access to the Ensemble database in real time, via SQL and object views.
  • Support for components written in many programming languages, from Java to C#.
  • Familiarity for Microsoft Visual Basic (VB) programmers. A built-in VB-like scripting language ensures that any developer who knows VB will be able to integrate and develop with Ensemble.

End-to-end management

Integrated systems can be difficult to manage because they link disparate applications that were not designed to work together. Service-oriented architectures, composed of loosely coupled services, also present thorny management challenges. Ensemble’s repository stores a wealth of information for end-to-end monitoring and management of both types of systems. This information includes all messages, process state, and metadata captured from working systems.

Ensemble’s secure, browser-based management portal provides extremely powerful yet easy-to-use features that leverage this information to simplify management and monitoring:

  • Visual Trace gives administrators the power to trace messages, and examine their content, as they move through the system
  • Powerful analysis and reporting functions for real-time visibility into business processes and troubleshooting
  • Dashboard displays of key metrics
  • Customizable management interfaces enabling users to query, filter, select, and highlight the information of most interest
  • Alerts that automatically contact enterprise staff when a problem requires immediate attention, and initiate automated responses that operate in a feedback loop to address the problem

Developers can custom-code management elements into an Ensemble solution, or accept the rich set of default management tools that ship with the product.

Beyond messaging – Ensemble business process optimization functions

Ensemble business process optimization functions are integrated to the core with the rest of the product, drawing on the fundamental object and database technologies that give Ensemble so much of its power. When the business need arises, these functions are ready to go, accessed and used in the same way, from the same development and management environment, as the messaging technology.

Conceptually, Ensemble is a layered product, with a set of foundation technologies used by all features in layers above. Each upper layer uses the features of the layer immediately beneath it.

The benefits of Ensemble’s business process optimization functions go well beyond what conventional products can offer. They enable business analysts and software developers to collaborate on projects that can easily blend all four of the following integration types:

  •  Making applications and information more easily and more widely accessible through a variety of devices
  • Collecting and collating information from disparate sources (on a customer, patient, product, and so on) into a single, comprehensive view
  • Automating business processes, including easily modifiable business rules to direct process execution, and human workflow
  • Achieving data consistency across disparate applications and databases

Ensemble’s business process optimization functions leverage the product’s advanced object model, its comprehensive store of operational data and metadata about the integrated environment, its powerful messaging foundation, and its unified development environment to:

  • Orchestrate and maintain the state of business processes of any duration
  • Change behaviour of working business processes via rules, rather than coding
  • Incorporate human workflow into otherwise automated processes
  • Monitor activity and state of the entire system and key performance indicators

Harmonious business process orchestration

A business process is a sequence of tasks that must be performed in order to accomplish a business objective, such as processing a mortgage application or checking a patient into a hospital. Orchestration is a design process that focuses on business process, rather than technology. Taking this view, business analysts use Ensemble’s rich, graphical editor to:

  • Diagram processes and information flows
  • Include business rules and workflow tasks in the diagram
  • Focus on the logical interactions between systems without lower-level concerns about application interfaces, adapters, or middleware mechanisms

Ensemble automatically generates executable code for the process from the resulting model. The graphical model facilitates dialog and sound communication between analysts and developers, leading to faster development and systems that better match business requirements.

Developers can refine automatically generated code, if needed, with additional graphical modeling, written descriptions using the Ensemble Business Processing Language (BPL, a superset of the BPEL standard), XML documents, or code. The ability to “mix and match” these tools enables efficient addressing of the widest range of integration issues using the widest variety of development approaches.

Intelligent messaging and processes with business rules

Non-programmers, such as business analysts and support personnel, can use Ensemble’s business rules editor to quickly configure and change decision points in a business process. In financial services, for example, a business manager can use the business rules editor to configure changes in the loan origination process, instead of having a developer make changes to the application code. This reduces the cost of making such changes, and frees developers to focus work on new projects – reducing backlogs and getting applications and integrated systems into production use sooner. Administrators and developers also can use rules for intelligent routing of messages to specific business processes by message type, content, and subscription. Rules are stored as objects in Ensemble’s database, entirely separate from business process code, and can be reused, sub-classed, and modified as easily as any other Ensemble object.

 Adaptable workflow engine

With people obviously playing a major role in business processes, it’s ironic that most integration products, including those in the enterprise service bus (ESB) category, do not include fully integrated workflow functionality. A workflow management system automates the distribution of tasks among users automatically, according to a predefined strategy. Ensemble Workflow makes task assignment more efficient and task execution more accountable.

Ensemble’s integrated Workflow Engine takes full advantage of the product’s unified architecture. Workflow tasks, created using Ensemble’s graphical editor, are represented as objects and stored in Ensemble’s database. As a result, any automated business process can use the stored tasks as easily as it can use a Web service, enterprise application, data source, or other technology modeled in Ensemble’s database. Because the Workflow Engine is fully integrated within Ensemble:

  • Composite applications can easily incorporate complex manual interactions that reach across geographical, technological, and departmental divisions.
  • User-based process definitions can be separated from business logic, allowing developers and analysts to define each segment distinctly within a cohesive whole.
  • The workflow system is more versatile, more powerful, easier to construct, and simpler to maintain.

Insightful business activity monitoring

Ensemble possesses the performance, capacity, and reliability to store all messages and events passing between every component of an integrated system. And it makes that data, and metadata about the components and activities in the system, available in a consistent format to Ensemble’s Business Activity Monitoring (BAM) function. Ensemble BAM draws on this rich trove of data to provide managers with immediate awareness of business events and changing business conditions across the enterprise via graphical dashboards, email alerts, and other means. This clearly presented information enables appropriate and timely decisions by IT and business management. By providing managers with this kind of real-time information, Ensemble reduces costs and speeds the execution of business strategies.

Ensemble comes with features that speed the development of BAM solutions. Ensemble’s advanced object technology and wizard-driven development make it easy to define “business metrics” that gather, or calculate, key performance indicators and other information about an integrated system at developer-defined intervals. That information can be associated with meters displayed on a customizable browser-based dashboard. Business metrics also can contain logic that implements a feedback loop within the integrated system. For example, when a measured parameter (such as the stock level of a product in a warehouse) goes outside of its expected limits, a business metric can automatically take corrective action (such as re-order the product), provide notification, and so on.

 More valuable IT with Ensemble, more value for the business

Most other products lack support for the full range of application interfaces, data formats, and technologies typically found in all but the smallest IT environments. IT managers find themselves having to integrate multiple tools (sometimes from the same vendor!), to keep their integration projects rolling. But by working this way IT can’t roll fast enough, and the goals of IT agility and business agility keep slipping away.

Unlike other products, Ensemble covers the full spectrum of integration scenarios with tightly integrated technology that is easy to learn, use, and manage. The innovative technology in Ensemble, including its object model, advanced abstraction functionality, ultra-fast messaging engine, and its high-performance and highly reliable database, makes your IT environment more valuable and the business more agile by enabling you to:

  • Focus on improving business processes instead of which technology to use
  • Develop and deploy IT assets faster, natively or as services, in a flexible integrated architecture
  • Bring legacy application functionality into the integrated system
  • Align IT assets rapidly with frequently changing business requirements and processes
  • Integrate within your existing frameworks and methodologies
  • Move to a service oriented architecture at a lower cost and with less risk


So, What’s Your Next Step?

Call our office now on 1800 468478 (INTGR8) to Contact Us to discuss how we can assist you with your software development and integration challenges.