2024-05-19
작성
ProFrame 프레임워크에 대해 간단하게 정리해본다.
프로프레임 (ProFrame)
ProFrame은 티맥스소프트에서 개발한 애플리케이션 프레임워크
솔루션이다. 티맥스 홈페이지에서는 ProFrame을 "성능 및 안정성이 검증된 아키텍처와 표준화된 개발 및 운영 환경을 제공하는 통합 애플리케이션 프레임워크" 라고 설명하고 있다.
프로프레임 특징
비즈니스 중심의 개발 환경
- 거래 유형별 템플릿 이용이 가능하고, 표준 API를 통한 시스템 자원 접근 가능
- 개발자는 순수 업무 로직만 구현해도 비즈니스 목적에 맞는 애플리케이션을 구축할 수 있음
EMB 기반의 개발 생산성 향상
- ProFrame은 EMB(Enterprise Module Bus) 아키텍처 기반임
- 다양한 형태 모듈로 개발 환경에서 코딩 없이 디자인만으로 프로그래밍 가능
- 업무 단위별 모듈의 재사용이 가능해 모듈 간의 분해 및 조립을 통해 새로운 서비스 개발 가능
- 다소스코딩이 최소화되고 업무 로직의 재사용이 가능해 개발이 표준화되므로 개발의 효율성 대폭 향상
고성능 및 안정성 보장
- 고도의 기술이 필요한 메모리, DB 로깅 등의 시스템적인 기능들을 이미 검증된 기술로 제공
- 타사 대비 디버깅 기능을 강화하여 애플리케이션의 성능과 안정성 보장
아래 사진이 프로프레임 예시이다. 업무 단위별로 모듈이 분리되어 마치 flowChart처럼 보인다.
프로프레임 관련 내용 정리
구글링을 하면서 ProFrame 관련해서 알게된 내용을 정리해둔다.
- ProFrame 개발환경은 C 언어용과 Java 버전용이 있다.
- ProFrame은 전자정부프레임워크 또는 Spring은 전혀 무관하며, ProFrame은 TP(Transaction Processing)를 구현하기위한 프레임워크 환경이다.
- ProFrame 제품이 B2B (Business to Business) 제품이다보니 기업환경에서 프로젝트를 경험해보지 않는 이상
일반유저 입장에서 제품을 사용해볼 수 있는 기회가 거의 없다. - ProFrame은 Eclipse 툴을 기반으로 만들어져 있어서 개발자가 처음 접근할 때 친숙하게 접근할 수 있다.
- 하지만 ProFrame 스튜디오가 단순 이클립스 기반의 로컬 IDE 처럼 보이지만 클라이언트 PC 외에도 서버, DB서버가 구성되어야 한다. 다양한 설정들이 복잡하게 얽혀있기 때문에 티맥스소프트 엔지니어의 도움없이는 개발/테스트 환경 구축이 쉽지 않다.
- Proframe 업무개발자는 정말 순수 업무 로직만 개발하면 된다. 개발자 입장에선 편리하다는 장점이 있지만 너무 많은 편의로 인해 개발 실력을 쌓을 많은 기회를 놓치게 된다.
- 쉽게 말해서 입력구조체를 만들고 데이터를 받아 처리하는 업무로직을 구현하고 출력구조체로 가공된 데이터를 던져주기만 하면 된다. 인프라 레벨의 모든것을 프레임워크가 처리해주므로 편리하다.
- 개발된 시스템을 운영하는 운영자나 기업입장에서는 ProFrame이 정말 좋은 선택지가 된다. ProFrame를 이용해서 개발한 시스템은 EMB design이라는 방식으로 한눈에 업무 파악을 하기 쉽고, 업무 로직들이 모두 각각의 업무 모듈로 개발되어 동적링크로 구성되기 때문에 해당 업무모듈만 변경 후 테스트, Hot deploy로 간단하게 변경이 가능하다.
- 인프라 레벨은 개발자가 전혀 손대지 않기 때문에 업무 변경에 있어서 훨씬 안전하고 인프라 레벨의 문제는 티맥스소프트에서 기술지원을 받으면 되기 때문에 책임 소재의 부분에 있어서도 자유롭다.
- ProFrame은 철저하게 System Software의 영역과 Application의 영역을 구분하는것을 지향한다. 최대한 AP 개발자들에게 편의를 제공해 업무 로직 구현에만 집중하게 하고 인프라 레벨은 알아서 관리해준다. 익숙해지면 정말 편하고 생산성이 매우 높아진다.
- 현재 티맥스에서는 ProFrame 이후로 ProObject를 차세대 애플리케이션 프레임워크로 밀고 있는 것 같다.
옛날 자료이긴 해도 ProFrame 관련 가이드를 확인하고 싶다면 기술지식 메뉴를 참고하자.
References
'Software Engineering > 기타' 카테고리의 다른 글
키보드 한컴 입력기 삭제하는 방법 (키보드 자동 변환되어 불편할 때) (0) | 2024.04.11 |
---|---|
크롬 개발자도구 소스 붙여넣기 오류 해결하기 (Don’t paste code DevTools) (1) | 2024.03.26 |
Maven 외부 라이브러리를 maven local repository에 직접 추가하는 방법 (0) | 2024.03.22 |
postman json 형식으로 post 요청하는 법 (0) | 2023.12.01 |
카카오, 네이버 OpenAPI 앱 키 발급받는 방법 (0) | 2023.02.04 |