Browse Prior Art Database

System for injecting dependencies between components into a sample application

IP.com Disclosure Number: IPCOM000199489D
Publication Date: 2010-Sep-06
Document File: 4 page(s) / 167K

Publishing Venue

The IP.com Prior Art Database

Abstract

Our disclosure "System for injecting dependencies between components into a sample application" addressed the need of integrating non-connected components into a sample application.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 4

System for injecting dependencies between components into a sample application

Introduction

    Our disclosure "System for injecting dependencies between components into a sample application" addressed the need of integrating non-connected components into a sample application.

    When working with sample applications, it is desirable to demonstrate the possible integration between pairs of components in a system, especially when the value of this integration is a key selling point for the set of proposed products. For example, a technical salesperson wants to sell a business process software product and an events monitoring software product. He has two sample components with him, one is a sample business process and another is a sample monitor model. However he faces two problems:
1. The sample business process is not enabled to fire business process events for monitoring.

2. The sample monitor model is not enabled to monitor the business process events fired by his sample business process.

Instead of spending a significant amount of development cost to modify these

two samples, our disclosure is able to inject the required interactions into these two components.

How it works

    First consider the concept of a capability that can be provided or consumed by a sample application part. Then for the identified capability, there is an associated provider template and a consumer template. A set of capability templates is made available for enhancing the input so that it is able to provide/consume the identified capability.

    Using the example above, the identified capability is business process events and the questions are:
1. How to enable the sample business process to provide business process events ?

2. How to enable the sample monitor model to consume business process events ?

Figure 1.

    The disclosed solution uses a repository of capability provider and consumer templates. Each template defines the steps required to inject that capability into either a provider or a consumer part. Each template contains a pattern to match a filename, and instructions for the required transformation to that file.

    For example: a monitor model needs to consume business events, which are provided by a business process. The capability here is "business events", and there are two templates defined:
§ a provider template to make a business process emit business process events
§ a consumer template to make a monitor model consume business process events that are fired by the subject provider

1

[This page contains 1 picture or other non-text object]

Page 2 of 4

Figure 2.

    In this example, the required steps involve changes to XML files and can be expressed using XSL transforms. However, where changes to other types of file (e.g. Java source files) are required, these will be expressed in a language-specific manner.

    The provider template takes any business process as input, and transforms the BPEL file underneath to enable the capability of providing business events. And t...