EAI(Enterprise Application Integration, 엔터프라이즈 애플리케이션 통합) 솔루션은 데이터 수준과 비즈니스 모델 수준의 통합을 동시에 지원하는 기술을 포괄합니다. 디자인 패턴을 활용하여 인터페이스를 인식하고 분류한 뒤 재사용함으로써, 애플리케이션 간 통신 방식이 최적의 선택이 되도록 보장합니다.
효과적인 EAI 솔루션은 도입 초기 비용을 절감할 수 있게 해주며, 어떠한 기술 프레임워크와도 비즈니스 프로세스를 개방적이고 매끄럽게 통합할 수 있도록 지원합니다. 이러한 특성은 실시간으로 정보가 공유되는 제로 레이턴시 엔터프라이즈(Zero Latency Enterprise) 환경 구현에도 그대로 적용됩니다.
효과적인 EAI 솔루션을 위한 필수 요건
IT 기술은 반드시 비즈니스 전략과 목표에 맞춰 체계적으로 설계되어야 합니다.
비즈니스 프로세스, 데이터 모델, 그리고 현재 운영 중인 시스템과 소프트웨어에 대한 전반적인 이해가 선행되어야 합니다.
EAI 도구와 벤더를 객관적으로 비교·평가하는 데 활용될 수 있어야 합니다.
책임 소재와 소유권이 명확하게 설정되어야 합니다.
솔루션이 다루는 통합 범위와 기술의 적용 한계를 평가할 수 있어야 합니다.
시스템 관리 및 운영(administration) 기능을 충분히 제공해야 합니다.
EAI 소프트웨어의 유연성: 5대 핵심 계층
EAI 소프트웨어는 높은 적응성을 확보하기 위해 여러 계층의 기술로 구성됩니다. 주요 계층은 다음과 같습니다.
1. 비즈니스 프로세스 지원(Business Process Support)
EAI 솔루션은 사용자가 비즈니스 프로세스를 시각적으로 다이어그램으로 작성하고, 메시지마다 규칙을 정의할 수 있는 도구를 제공합니다. 이를 통해 비즈니스 프로세스를 사전에 예측하고, 다양한 활동을 통합적으로 제어하며 데이터 흐름을 원활하게 만들 수 있습니다. 또한 메시지 내용을 분석해 다음 단계의 행동을 스스로 판단하는 지능형 라우팅(Intelligent Routing) 기능은 EAI 솔루션의 필수 요건입니다.
2. 전송(Transportation)
데이터는 지점 간 직접 연결 방식(Point-to-Point) 또는 발행/구독(Publish/Subscribe) 구조로 전송될 수 있습니다. 발행/구독 방식에서는 애플리케이션이 메시지 중개자에게 관심을 등록한 다른 애플리케이션들에게 메시지를 전달하며, 데이터를 보내는 쪽을 퍼블리셔(Publisher), 받는 쪽을 서브스크라이버(Subscriber)라고 부릅니다. 애플리케이션이 실행되는 네트워크와 플랫폼에 따라 데이터베이스 드라이버, 컴포넌트 오브젝트 모델(COM), 메시징 미들웨어 등 다양한 미들웨어를 통해 구현됩니다.
3. 인터페이스(Interfaces)
애플리케이션에 접근하는 통로는 바로 인터페이스입니다. 인터페이스는 플랫폼의 컴포넌트 모델이 지원하는 정의를 통해 연결되거나, 애플리케이션이 제공하는 API(Application Programming Interface)를 활용하여 연결됩니다. 따라서 통합 작업 시 코딩을 최소화하거나 아예 불필요하게 만들 수 있어야 하기 때문에, 인터페이스는 EAI 도구 선택에 있어 매우 중요한 판단 기준이 됩니다.
4. 변환(Transformation)
모든 애플리케이션이 동일한 데이터 형식을 사용하지 않기 때문에, 사용자가 두 애플리케이션의 데이터 형식을 시각적으로 매핑하고 필요에 따라 데이터를 변환할 수 있는 도구가 반드시 필요합니다.