This is the beginning of a series of articles focusing on how to identify and leverage value from defining and building mature system integration patterns.
Integration is an aspect of system engineering that defines the interaction between two or more different systems to share data and support business solutions across the enterprise, often using middleware or other supporting software.
In order to fully realize the benefits of Enterprise-grade integration options, it is necessary to define and underscore the value provided by mature integration services. The benefits of system integration often include incorporate support for common design principles, such as:
- Common application and data re-use,
- Implementation of consistent functionality, e.g. auditing, security controls,
- Distribution of responsibilities, e.g. a dedicated system for finance, document management,
- Compartmentalization, dedicated sources-of-truth – to reduce duplication of data, rules and process and increase flexibility,
- Auditing/non-repudiation of business activities,
- Improving the experience and performance of line of business systems,
- Maintaining a consistent state of business data across multiple systems,
- Streamlining data transformation/data loading scenarios
System integration is a necessary part of many IT solutions and can be complex to implement and to sustain. The business and technical requirements relating to integration often impose challenges and restrictions which make system development and maintenance difficult.
This series of Architecture articles will provide a solid foundation for technical teams to draw upon to rationalize current and future integration goals.
There will be a focus on defining some of the many benefits provided by applying integration in solution designs, and provides a clearly defined basis for the next generation of technical design work to incorporate and benefit from key integration values.
These articles will provide examples of the benefits provided by mature middleware and also defines the design principles which should be applied to any design work which incorporates any integration beyond basic system-to-system requirements.
If the aims and values of integration are not sustained and realized, system integration may become more burdensome and costly over time; countering the value and benefit it provides both to development work and to the Enterprise.
Solution design work which features the use of system integration should provide clear evidence of the value provided by any integration, leveraging the principles and patterns defined within this document as a starting point.
The objectives of this series of articles are to:
- Define key integration principles;
- Describe common integration design concepts for enterprise applications;
- Provide integration guidelines for technical solution designs.
What we’ll cover
- An overview of SOA, microservice and ESB architectures,
- Integration principles & patterns,
- Define some standard data models and formats, and
- Broadly define common technologies/approaches used with integration technologies
These series of articles are primarily intended for a technical audience. The document may also appeal to the following people or bodies:
- Solution architects/designers,
- Technical leads,
- System testers