Anyframe이란?
Submitted by sooyeon.park on 목, 05/15/2008 - 08:42
![]() |
Anyframe은 업무용 프로그램 개발을 효과적으로 진행하기 위해 기본 아키텍처, 기술 공통 서비스, 템플릿 등을 제공하는 어플리케이션 프레임워크로써 이를 활용 시 설계 및 개발 기간을 단축하고 유지보수를 용이하게 진행할 수 있다. Anyframe은 자바 기반의 어플리케이션 프레임워크로써 업계 표준으로 활용되는 다양한 오픈 소스를 활용하여 구성되어 있다. 또한 오픈 소스를 활용하여 비즈니스 어플리케이션을 개발하는 과정에서 어려움을 느끼게 되는 오픈 소스의 선택, 활용 방법, 테스트 등에 대한 솔루션을 정형화된 가이드와 사례를 통해 제공하고 있다. |
배경
최근에 소프트웨어 발전과 함께 매우 빠른 속도로 복잡성이 증가하고 있는데 이러한 개발 환경 위에서 서로 다른 역량을 가지고 있는 개발자들을 통해 일정 수준의 균일한 품질을 갖는 어플리케이션을 적절한 납기내에 개발하기 위해서는 표준화된 프레임워크 요구는 필수적이다. 자세한 배경에 대한 설명 및 프레임워크에 대한 내용은 이곳을 참고하도록 한다.
특징
Anyframe은 업계 표준으로 사용되는 Spring, Hibernate, Apache Commons PJT 등을 채택함으로써 오픈 소스 기반의 글로벌 스탠더드를 지향하며 Java EE, Servlet, JMX, JMS, Web Service 등의 국제 표준을 준수한다. 다음은 Anyframe의 특징을 목록으로 정리한 것이다.
- 오픈 스탠더드 아키텍처: 업계 표준으로 사용되는 오픈 소스 및 상용 툴과의 연계를 통해 벤더에 독립적이고 기술 환경 변화에 대응이 용이한 표준 아키텍처 및 개발 기반을 제공합니다.
- 재사용 리파지토리 및 플러그인 조립 환경 제공: 다양한 오픈 소스, 상용툴 연계, 공통 기능 모듈 등을 플러그인으로 제공하고 있으며 프로젝트에서는 필요한 기능을 리파지토리에서 찾아 조립하여 활용할 수 있도록 최적화된 환경을 제공합니다.
- 최적화된 프로젝트 통합 빌드 및 배포 환경 제공: 개발 라이프 사이클 전체에 걸쳐 사용되는 서버 중심의 프로젝트 통합 빌드 및 테스트, Health Check, 배포 관리를 제공합니다.
- 개발 생산성 향상을 위한 다양한 툴 세트 제공: 프로젝트 구성 및 단위 테이블 중심의 CRUD/테스트 코드 생성, 빌드 자동화, 일원화된 인증/권한관리, 배포관리, 어플리케이션 모니터링 등의 다양한 툴들을 제공합니다.
Anyframe의 자세한 구성 요소를 살펴보려면 이곳을 참고하도록 한다.
적용 효과
다수의 개발자들이 참여하는 대규모 프로젝트에서 표준 프레임워크 없이 어플리케이션을 개발하는 경우, 개발자들이 동일한 기능의 유사한 코드들을 반복해서 만들어 냄으로써 중복 코드가 생성될 수 있다. 개발자간 의사소통할 수 있는 표준 도구로 활용되는 Anyframe 사용 시, 개발자마다 중복해서 만드는 공통 기능과 기본 아키텍처, 개발 표준 패턴을 제공하고, 개발 템플릿 및 개발 지원 툴을 활용하여 개발자 간 일관된 코드 개발이 가능하고 유지보수성이 증가하게 된다.
- 개발 표준화: 프리젠테션/비즈니스/데이터 접근 레이어가 엄격하게 분리된 아키텍처에 따라, 각 레이어별 개발을 수행함으로써 개발자간 표준화된 코드 개발을 가능하게 한다.
- 개발 생산성 향상: 공통 서비스를 재사용함으로써 개발 중복을 최소화하고 레이어 및 공통 영역 분리를 통해 개발자는 비즈니스 로직에만 집중할 수 있으며 프로젝트 및 코드 생성 기능을 제공하는 IDE, Query Manager 등의 개발 지원 툴을 활용하여 개발함으로써 오류 발생을 미리 감지하여 수정할 수 있으므로 개발 생산성 향상을 기대할 수 있다.
- 유지보수성 증가: 표준 아키텍처를 기반으로 수직 및 수평 확장에 유연한 구조를 제공함으로써 잦은 비즈니스 환경 변화에 민첩하게 대응할 수 있다.
- 품질 및 안정성 보장: 다년간의 프로젝트 수행 경험을 통해 검증된 공통 서비스를 활용하고 DB 리소스 반납 및 오류 처리 등과 같은 공통 전후처리 로직의 일괄 적용을 통해 어플리케이션의 품질 및 안정적인 운영을 보장한다.


