Interface System과 webMethods

찌글렛·2023년 11월 22일
0

CS

목록 보기
12/15
post-thumbnail

Interface System란?

서로 다른 두 개의 시스템 사이에서 데이터를 주고 받을 수 있게 지원하는 시스템입니다.
각기의 시스템이 서로 연동하기 위해서는 어떻게 데이터를 주고 받을 것인지(데이터의 정의),
어떤 방식으로 시스템에 접근할 것인지 ( 연계 방식 )에 대한 정의가 선행이 되어야 합니다.
그 외에도 인터페이스에 대한 명칭, 주기, 데이터를 주고 받기 위한 연계 내용 등을 고려해야 합니다.


* 번외.Java 의 Interface 
어라.. 내가 학원에서 배울때는 이렇게 안배웠는데 ... 
@Interface 는 내가 사용할 객체를 먼저 정의해놓고 이 객체가 무슨 행동을 할 수 있는지
상속 받아서 사용할 수 있다고했는데...

 1) 다중 상속 가능
 - class 를 생성할 때, implements {Interface1, Interface2 .... } 
 와 같이 여러개를 상속 받을 수 있음
 2) 추상 메서드(Abstract Method)로 선언
 - Interface와 Abstract 선언의 차이 
 ( Abstract는 무조건 상속(extends)받으면 해당 속성 및 행동을 해야됨 ,
 Interface 는 상속(Implements)받으면 할수도 있고 안할 수도 있고 수정 시 
 유연한 구조를 가짐)

결론적으로 System에서 말하는 인터페이스와 Java에서 의미하는 인터페이스는 차이가 존재 합니다.

// Main Company에 대한 Interface 생성
public interface Company {
	public String parentComName = "Main Company";
	public abstract void sales();
}

// Main Company에 대한 속성을 상속받은 ITCompany 생성
public class ITCompany implements Company {
	private String comName;
	ITCompany(String comName){
		this.comName = comName;
	}
//	속성이 상속받지 않았지만 ITCompany만의 Method 추가
    public void Programming() {
		System.out.println("do it programming");
	}
//	속성이 상속되어 무조건 사용해야되는 Method
	@Override
	public void sales() {
		System.out.println("Sales Solution");
	}
}

EAI (Enterprise Application Integration)

Interface System이 무엇을 의미하는지 이해하였다면, 어디에 사용하는지도 생각해보아야 합니다.

의미 : 기업 내에는 다양한 어플리케이션이 존재하는데 , 다양한 환경의 어플리케이션을 통합하여 관리하기 위한 개념입니다.

기업이 성장함에 따라 하나의 단일 조직내에서 ERP(전사적자원관리), CRM(고객관계관리), SCP(공급계획) 등과 같은 시스템과

데이터를 주고 받아야 하는 필요성이 생기게 됩니다.

기존에는 시스템과 시스템간의 직접 연계 방식을 채택(Point-to-Point방식) 하였다면 시스템의 복잡도가 증가됨에 따라

미들웨어가 중간에 추가됨으로써 단일 조직 내부의 업무 프로세스를 단순화 & 표준화하기 위하여 도입되었습니다.
(Hub & Spoke 방식)

한가지 예시를 드리자면, A 대기업에서는 국내법인이 있고 미국 법인이 신설되었다고 가정합니다.
국내 법인의 경우, WMS(창고관리시스템)에게 요청하는 인터페이스가 존재하며
신설된 미국 법인 또한 동일한 인터페이스를 사용하길 원합니다.
그렇다면 미국법인은 WMS 담당자에게 문의하여 새로운 인터페이스를 개발하여 사용해야되나요? (Point - To - Point 방식)
아닙니다.
신설된 미국법인을 식별할 수 있는 값을 담아 전송하면 국내 법인에서 사용하던 인터페이스를 재 활용 하여 사용할 수 있습니다.

[Point-To-Point 방식][Hub & Spoke 방식]

https://blog.naver.com/PostView.nhn?blogId=santalsm&logNo=110177658337

EAI Solution

EAI를 구축하기 위한 솔루션은 여러 벤더 사(판매 회사)에서 제공을 하고 있습니다.
대표적으로 IBM WebSphere MQ , Microsoft BizTalk Server, SoftwareAG webMethods 등이 있습니다

참고사항

일반적으로 EAI를 연계할때 , 데이터를 가공하는것은 Perfomance가 떨어지기 때문에 하지 않지만 ( ByPass 방식 ) ,
Source 나 Target 쪽에서 변환할 수 없을때 진행합니다.



ERP(Enterprise resource planning)시스템이란 ? 
전사 관리 시스템으로 기업 내부 자원을 관리할때 사용, 대표적으로 SAP이 있습니다.  
Legacy 시스템이란 ?  ERP, SCM, MES 등을 지칭할 때 사용합니다
Standard Alone란? 서버 1개를 의미합니다. 

webMethods Product suite란

Software사에서 제공하는 솔루션 중 하나로 비즈니스 프로세스 관리, 데이터 통합, API 관리 등을 지원 합니다.
webMethods Product suite는 아래와 같은 특징을 가지고 있습니다.

  • 서로 다른 데이터를 통합하는 솔루션 개발 및 실행
  • B2B(BusinessToBusiness)를 위한 통합 네트워크 생성 및 관리
  • 복합적인 어플리케이션 개발 및 실행
  • 비즈니스 프로세스 설계 및 실행
  • 비즈니스 성능과 효율성 모니터링 지원

1.Integration Server

Integration Server( 이하 IS) 는 다음과 같은 역할을 할 수 있습니다.

  • Client 응용 프로그램에서 요청을 수신하고 요청한 사용자를 인증합니다.
  • 서비스가 호출되게 되면 요청 Client 에서 입력한 데이터를 받아 목적지 까지 전달합니다.
  • 목적지에서 수신받은 데이터 등을 수신 받아 Client에게 반환합니다.

또한 Integration Server는 기존에 존재하는 표준 및 새로운 표준을 지원하고 있으며, 거의 모든 Client와 연결할 수 있습니다.

2.Broker(Universal Messaging) and JMS

Broker는 비 동기성 Publish/Subscribe 혹은 Point to Point 메시징을 사용할 수 있는 High Speed Message Router 입니다.
Publisher (데이터 제공자)가 Universal Messaging 으로 데이터를 전송하면 구독자에게 전달하는 역할도 하고, 특정 이벤트를 받으면 바로 서비스를 수행하는 역할(Event Driven Architecture)도 지원 합니다.
Publish/SubscribePublisher( 데이터 제공자 )는 데이터를 Broker에 전달해두면 Subscriber ( 데이터가 필요한 구독자 ) 는 Broker에 접근하여 데이터를 가져가 처리하는 방식입니다. webMethods 이외의 환경에서 다른 응용프로그램과 통신하기 위해서는 사용자 지정 Universal Messaging , JMS 클라이언트 개발 혹은 JMS 호환 이 되는 플랫폼에서 라이브러리를 통해 사용할 수 있습니다.

3.Adapters

SAP, JD Edwards, Oracle Applications 과 같은 어플리케이션 또는 Oracle , MS SQL, DB2 와 같은 데이터 베이스와의 연계하기 위하여 자체 프로토콜을 지원합니다.
예시로 webMethods JDBC Adapter는 데이터베이스에서 데이터를 수신하여 webMethods 형태으로 변환하여 Integration Server 내에서 처리할 수 있도록 지원 합니다. 또한 webMethods 형식으로 변환된 데이터를 데이터베이스에 필요한 형태로 변환하여 삽입하는 작업도 가능 합니다.

3.Designer(Developer)

Integration Server에서 수행하는 서비스를 개발할 수 있는 툴입니다.

Eclipse 기반으로 이뤄져 있으며 개발자 및 관리자의 개인 컴퓨터에 설치하여 실행하게 됩니다.

4.Trading Network

Trading Networks(이하 TN) Business Partner와 통신하기 위한 설정 및 관리를 지원하는 모듈입니다. Business Partner와는 XML , Flatfile 혹은 EDI 형태의 데이터를 주고 받을 수 있습니다. TradingNetwork는 별도의 서버가 아니라 IntegratioinServer에서 B2B를 구현하기 위한 확장팩으로 생각하시면 될 것 같습니다.

Trading Networks는 인터넷 브라우저 기반으로 실행되는 My webMethods 내에 관리되고 있습니다.
(webMethods의 버전이 8이하 였을때는 Trading Network Console 을 통하여 관리 및 제어되었습니다.)

5. My webMethods

My webMethods( 이하 MWS ) 는 webMethods 7.0 부터 나온 제품이고 모든 제품을 제어하고 관리하기 위해 나온 솔루션입니다.
MWS에서는 ESB 탭을 통하여 IntegrationServer Admin Page를 확인 할 수 있고, Trading Network 관련한 프로세스를 확인할 수 있습니다.
또한 Monitoring, Reporting 도구를 이용하여 webMethods 제품 군을 모아서 볼 수도 있습니다.

0개의 댓글