X-UP이란?
X-UP의 정의
X-UP은 Java 기반의 low code platform 으로써 Spring 등의 Web Application Framework위에서 , 다양한 자원들(Data Source)을 대상으로 Server-Side Business Logic을 쉽게 생성할 수 있으며, 넥사크로플랫폼을 이용해 애플리케이션 개발 시 최적화된 개발 환경을 제공합니다.
데이터를 수집, 가공, 저장하기 위한 논리 구조를 결정하고, 다양한 자원들로부터 데이터를 쉽게 수집 및 가공, 저장할 수 있는 컴포넌트들을 제공하며, 서비스를 개발하고 실행하기 위한 개발 도구와 API, 라이브러리 등을 제공합니다.
X-UP의 기능 및 특징
X-UP은 다양한 서비스를 혼합하여 새로운 서비스를 제공하는 Enterprise Mashup 기능을 제공합니다. X-UP은 다양한 데이터소스에서 다양한 포맷의 데이터를 수집하고 융합하여 다양한 방법으로 서비스할 수 있는 기능을 제공합니다.
X-UP의 개발은 X-UP Builder라는 개발 도구를 사용하고, 다양한 데이터소스에서의 수집 로직과 다양한 데이터 포맷의 구분 분석 로직을 개발합니다. 단순한 마우스 클릭, 드래그 앤 드롭 및 단순 값 입력만으로 로직 개발이 가능합니다.
일반적인 매쉬업 애플리케이션들이 해당 자원으로부터 데이터를 가져오기만 하는 기능에 특화된 것과 비교하여, X-UP은 다른 자원으로부터 데이터를 획득하고 가공하여 새로운 데이터를 생성하는 기능과, 해당 자원에 생성된 데이터를 업데이트할 수 있는 기능을 동시에 지원합니다.
다양한 데이터 소스
다양한 데이터 소스 지원 (DBMS, SAP, OData, COBOL, OpenAPI, WebService)
강력한 개발 생산성
이클립스 기반 위지위그(WYSIWYG) 방식의 GUI 도구 제공 (X-UP 빌더)
다양한 DataSource Invoker 및 Function 제공
실 데이터를 기반으로 쉽고 빠른 모델 개발
다양한 Event Interface 제공 및 커스텀 로직 추가 기능
Debug 기능 제공
코드 자동 생성 및 Wizard 지원
테스트 자동화를 위한 JUnit Test Case 생성 지원
데이터 융합 및 재사용
다양한 데이터 소스에서 Data Merge 지원
데이터 소스별 서비스 생성을 위한 Invoke 및 Function 제공
개발된 서비스 모델을 다른 모델에서 재사용
X-UP의 구성
X-UP은 X-UP 모델, X-UP 빌더, X-UP 서버 라이브러리로 구성됩니다.
X-UP 모델: 수집/융합하는 로직 단위
X-UP 빌더: 수집/융합하기 위한 X-UP 모델을 개발하는 개발도구
X-UP 서버 라이브러리: web application project에서 X-UP 모델을 구동하기 위한 라이브러리
시스템 구성도
X-UP은 Web Application Server에서 구동되며, X-UP Builder를 통해 서비스를 개발합니다.
Architecture
X-UP은 X-UP Core를 기반으로 한 OSGI의 Bundle 형태로 구성되어 있습니다.
X-UP Core - X-UP 의 Bundle, Resource, Transaction 관리 등을 지원합니다.
X-UP Global Event(AOP) - AOP(Aspect Oriented Programming) 사상을 적용하여 Method 실행에 대한 Join Point를 제공합니다. 실행되는 대상의 경우 개발되어지는 X-UP Model의 Event 항목에 대해 설정 가능합니다.
System Manager - X-UP을 제어할 수 관리 환경을 제공합니다.
Data Source - Legacy와의 Connection을 처리하며, 일관된 형태의 Connection Pool 형태로 구성되어 있습니다.
Type Control - Nexacro 통신 스펙에 대한 입출력 처리 및 Legacy 데이터 변환 처리
Invoke - 정해진 규칙에 의해 Data Source를 이용하여 Legacy 데이터를 처리
Function - X-UP Model에서 자주 사용되는 형태의 기능 모듈
X-UP Model - X-UP 빌더를 통해 개발된 하나의 서비스 단위