It is recommended that you approach the development of a business integration system in stages. The exact details and the nature and timing of deliverables produced in each stage may vary according to the organization that is performing the implementation. Typically, however, the development of a business integration system involves the following stages:
This stage begins the implementation process by identifying the business goals for the project, the system requirements, and the overall scope of the development effort.
Discovery starts at a high level and proceeds to lower levels of detail. It should begin with the following high-level questions:
The answer to this question is important, because it establishes the functional requirements for interfaces during the testing stages. If testing reveals that the business problem has not been solved then the interfaces were not designed or developed properly.
Ask the following questions and others that might be relevant:
Determine the characteristics of the technology environment. Examine each of the following:
To identify the interfaces needed for the implementation and the components that will be used, you must research information in lower levels of detail, identifying and describing the specific business processes that you intend to implement, the business logic and data transformations that are required, and details of the applications and databases that will interact. Your research may include the following information-gathering tasks:
This stage is not described extensively in the IBM WebSphere InterChange Server documentation. Although some questions were presented in this section, the process of requirements elicitation is very specific to different consulting organizations. You should follow whatever method is appropriate. Other stages are less dependent on specific consulting practices and more dependent on the software.
In this stage, you prepare the environments that are required to provide the customer with a business process integration solution.
Each developer typically prepares their own development environment to develop their interface.
It is recommended that a system architect prepare and manage the development integration, stress-testing, and production environments.
For more information on preparing environments, see Preparing environments.
Evaluation and design are dependent upon the detailed information gathered during discovery.
When you have determined the detailed requirements of an interface and the integration components that it comprises, you are ready to evaluate existing components to see if any will meet your needs. You may find that for some requirements, components already exist and can be used as is, that for other requirements existing components need to be extended (revised according to your needs), and that for other requirements you will need to create new (custom) integration components.
Evaluate each component both individually and in terms of how it relates to other components in the overall interface. You cannot complete the design of one component until you have also begun the design of the components with which it interacts in the interface.
For detailed information about designing components, see the following guides:
In this stage you develop integration components according to the specifications that were derived in the Design stage.
To develop the interface, you modify existing components that are available, such as collaboration templates and business objects, and create new components that are environment-specific (such as maps).
The development and configuration stage is iterative and you may have to re-develop components and modify configurations as you progress.
It is recommended that you unit test components as you develop them to ensure that they satisfy their roles in the interface as you have designed it. When you have developed and unit-tested all of the components in the interface, you perform string tests to validate that the interface as a whole works as designed (at least in your local development environment).
Development and configuration is typically performed in a prescribed sequence of steps, as described in Developing business process interfaces.
For detailed information about developing components, see the following guides:
During the validation stage, you perform system testing in a controlled test environment to ensure that all the interfaces satisfy the requirements produced during the Discovery and assessment of requirements stage, as they have been developed. You perform functional, performance, and regression testing as required:
You perform functional testing to ensure that the interfaces in the business integration system satisfy the business process automation and integration goals of the project.
You perform performance testing to ensure that the throughput, response time, and latency are within the expectations of the customer.
If you modify any components as a result of the functional or performance testing (for instance, you modify a collaboration template that did not satisfy the business requirement, or modify a connector that did not perform adequately), then you must perform regression testing to ensure that the changes made did not cause the component to violate requirements in some new way.
During the validation stage you do the following:
For more information on testing components and interfaces, see the following:
The objective of the deployment stage is to migrate the business integration system into the production environment and start the production InterChange Server instance.
During the deployment stage you do the following:
For more information on migrating to production, see the following: