The CORA Model

A practical guide on using a COmmon Reference Architecture to design
and deliver integrated IT solutions successfully
  • Home
  • CORA Model
    • CORA Requirements
    • CORA Foundation
    • CORA and Business Logic
    • CORA Layers...
      • Overview
      • Channel Access
      • Presentation
      • Composition
      • Integration
      • Application
      • Data
      • Security & Compliance
      • IT Governance
    • Target Groups
    • Sitemap
  • Connections
    • Enterprise Architecture...
      • CORA and Technovision...
        • CORA and Application Lifecycles
        • Technology Trends...
          • Overview
          • You Experience
          • We Collaborate
          • Process on the Fly
          • Thriving on Data
          • Sector-as-a-Service
      • CORA and TOGAF
      • CORA and IAF
    • Sol./Softw. Architecture
    • Vendor Connection...
      • CORA and SAP
      • CORA and Oracle
      • CORA and Microsoft
      • CORA and IBM
    • Cloud Computing...
      • Overview
      • Static and Dynamic view
  • Methodology
  • Experiences
  • The Authors
  • The Book
    • Paper Version
    • eBook

The importance of an Integration layer

PostAuthorIconWritten by Léon Smiers | Print | E-mail

Introduction

The Integration View is the backbone for the CORA model. A couple of things are to consider when working on the Integration layer. What components are there to consider? What is the impact of the type of functionality needed in the Integration Layer on project execution? How special is Solution Design in the Integration Layer? And lastly, the communication between application is based on a common language, what aspects should be taken into consideration.

All communication internal and external runs through the Integration Layer.

sintegration_layer_detail

The CORA model identifies three main grouping of functionality:

  • synchronous Communication, which contains mediation type of functionality;
  • a-Synchronous Communication, with functionality like queueing, publish-subscribe, File Transfer;
  • common type, like transformation, validation, routing, adapters.

The main reason to make a distinction between synchronous and a-synchronous is that they have different requirements, different integration patterns and within a physical architecture they are often implemented differently at run-time (two different run-time components, or one product with multiple deployments).

The type of functionality needed in the Integration Layer has great impact on the execution of a project. The Integration Layer enables living in a hybrid environment and takes care of all the connections to external applications. Often the Integration Layer contains the most riskfull areas. Examples of risk situations are:
  • connections to Legacy systems: Legacy systems sometimes have the nasty habit not having 'Open standard' interfaces with the outside world. This can result in having to build your own adapter;
  • providing functionality for 'out-of-the-air' situations when a system, which needs to be connected, has gone down;
  • handling high volume and large data volume transactions;
  • Failover and Usage: Robustness and scalablity are keywords for the Integration layer. For each Integration layer component a Service Level Agreement (SLA) must be defined. Another important piece of information to know is a prediction of the changeability in functionality and the usage.
The Integration layer therefore has a tight connection to the Governance Layer. Application Management tooling is essential in order to check check the sanity of all Integration components. Governance tooling will be used to store the SLA and usage information.
Solution Design for the Integration layer is different then in other CORA horizontal layers.
In the solution design phase Integration layer components will only be identified indirectly. Whereas for instance in the Presentation layer a functional requirement clearly states that a set of UI pages is needed. Functional requirements indicate that information should be obtained from another system. But the what and how it ties into an Integration component can only be identified with extra technical investigation.
Integration between systems often results in discussions about the meaning of data. Elements in a message coming from one system are named and designed different then that in another system. In order to be able to map the data correctly from one system to another a standardized data model is needed, also known as the Canonical Data Model (CDM), see also [Thomas Erl definition]. This information is kept in the Integration Metadata component.
Examples of principles to be considered in designing the CDM are:
  • are industry standards or enterprise standards available;
  • design for reuse but not for change, changing CDM information could cause rework of interfaces. Adding extra information to the CDM will on average not cause disruptions in existing interfaces;
  • make a statement about the meaning of empty fields.

Comments

avatar Avishek Gorai
0
 
 
In our experience the Middleware also is one of the most important components and should be made highly available. A package system or a Legacy system going down has limited repercusions than the Middlware going down especially if there it has a Cental configuration.
Thursday 27 May 2010, 13:21
Post Reply
Name *
Email (For verification & Replies)
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
avatar raul vomisescu
0
 
 
Why do you only have Metadata in this Layer ? It is a pervasive capability, and I see it as part of the IT Governance vertical. Consider a business user who wants to trace the origin of data in a certain report. He/she will have to traverse all layers to get to the origin, and transformation rules applied.
Thursday 27 January 2011, 23:14
Post Reply
Name *
Email (For verification & Replies)
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
avatar Stephan Hendriks
0
 
 
Why is a data center Infrastructure layer not part of the CORA model? This would help to get the model accepted in an Infrastructure and applications department. I would suggest to include this layer with housing & LAN, data storage, database management, server management, technical Application management. In the integration layer I would add (network) connectivity.
Tuesday 22 February 2011, 21:33
Post Reply
Name *
Email (For verification & Replies)
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
Cancel
Name *
Email (For verification & Replies)
Code   
ChronoComments by Joomla Professional Solutions
Submit Comment
 
Follow Us on Twitter

    leon_klein

Latest Articles
  • CORA and Application Lifecycles
  • CORA Methodology, playing with Lego
  • The roadmap for Fusion Applications, CORA is there to help
  • Technovisions "Sector-as-a-Service" mapped
  • Business Logic and the CORA Model, Part II
  • CORA and Cloud Computing: Static versus Dynamic View
  • Technovisions "Thriving on Data" mapped
  • CORA Foundation
  • Business Logic and the CORA Model, Part I
  • CORA and IBM
  • CORA and Microsoft
  • CORA and Cloud Computing: Overview
  • Technovisions "Process-on-the-Fly" mapped onto CORA
  • Risk aware design: using CORA to investigate an IT solution
  • A ROA based iPhone App for SAP: Part II
  • A ROA based iPhone App for SAP: Part I
  • Technovisions "We Collaborate" mapped onto CORA
  • SAP platform decomposition with CORA: SOA/ROA style
  • 'Why' Driven Solution crafting
  • CORA and TOGAF
  • SAP platform decomposition with CORA: N-tier style
  • Requirements for CORA
  • CORA and Oracle
  • Technovisions "You Experience" mapped onto CORA
  • CORA and SAP
  • CORA in action: design guidelines to implement repositories
  • The basis of all, your data
  • CORA and IAF
  • Technovision and CORA - Overview
  • The importance of an Integration layer

Joomla template created with Artisteer.