X-UP이란?
X-UP의 정의
X-UP은 Java 기반의 로우코드(low-code) 플랫폼으로, Spring 등 웹 애플리케이션 프레임워크 위에서 동작하며 다양한 데이터 소스에 대해 서버 사이드 비즈니스 로직을 손쉽게 생성할 수 있습니다. 또한, 넥사크로 플랫폼과 연계하여 애플리케이션 개발에 최적화된 환경을 제공합니다.
이 플랫폼은 데이터의 수집, 가공, 저장을 위한 논리 구조를 정의하고, 다양한 데이터 소스로부터 데이터를 효율적으로 처리할 수 있는 컴포넌트를 제공합니다. 아울러, 서비스 개발 및 실행을 지원하는 개발 도구, API, 라이브러리 등을 함께 제공하여 보다 쉽고 빠른 애플리케이션 개발을 가능하게 합니다.
X-UP의 기능 및 특징
X-UP은 다양한 서비스를 결합하여 새로운 서비스를 제공하는 Enterprise Mashup 기능을 지원합니다. 이를 통해 여러 데이터 소스에서 다양한 형식의 데이터를 수집하고 융합하여, 다양한 방식으로 서비스를 제공할 수 있습니다.
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 빌더를 통해 개발된 하나의 서비스 단위