전자정부 표준프레임워크
더 많은 작업
- eGovFrame; eGovernment Standard Framework; 전자정부 표준프레임워크
- 공공 정보화사업에 적용되는 Java 기반 개발 프레임워크의 표준으로, 응용 SW 표준화, 품질 및 재사용성 향상을 목표로 행정안전부와 한국지능정보사회진흥원(NIA)이 무상 제공하는 개발·운영 표준 환경
전자정부 표준프레임워크는 스프링 프레임워크 등 검증된 오픈소스를 기반으로 웹 기반 정보시스템 구축에 필요한 애플리케이션 아키텍처, 기본 기능, 공통컴포넌트를 제공한다. 2009년 6월 처음 공개되었고, 2010년 11월 NIA에 표준프레임워크센터가 설립되어 기능 개선, 기술지원, 교육, 호환성 확인을 맡고 있다. Apache 2.0 라이선스의 오픈소스로 배포된다. 기존 .NET, PHP 등 다른 플랫폼을 대체하기 위한 표준은 아니며 Java 기반 정보시스템에 활용하는 표준 환경이다.
공식 포털은 도입 전후를 다음과 같이 비교한다.
| 적용 전 문제 | 적용 후 효과 |
|---|---|
| 정보화사업별 동일 기능의 중복 개발 | 공통컴포넌트 재사용으로 중복 예산 절감 |
| 기술 종속으로 선행 사업자 의존도가 높음 | 표준화된 개발 기반으로 사업자 종속성 해소 |
| 프레임워크를 보유하지 않은 업체는 경쟁에 불리 | 프레임워크 무상 제공으로 중소기업 경쟁력 향상 |
| 시스템 간 연계에 많은 기간과 인력 소요 | 표준화된 연계 모듈로 상호운용성 향상 |
| 개발 표준 미흡으로 유지보수가 어려움 | 개발 표준에 의한 모듈화로 유지보수 용이 |
이를 통해 전자정부 서비스 품질 향상과 정보화 투자 효율성 향상을 달성하고, 대·중소기업이 동일한 개발 기반 위에서 공정하게 경쟁하도록 하는 것이 목적이다.
| 구성 요소 | 역할 |
|---|---|
| 실행환경 | 업무 프로그램 실행에 필요한 공통 모듈을 제공하는 응용 프로그램 환경. 화면처리, 업무처리, 데이터처리, 연계통합, 공통기반, 배치처리, 모바일 화면처리, 모바일 디바이스 API 등 8개 서비스 그룹으로 구성 |
| 개발환경 | 업무 프로그램 개발 도구. Eclipse 기반의 구현·테스트·배포·형상관리 도구, 템플릿 프로젝트 생성, 공통컴포넌트 조립, 코드 검사 도구 등 |
| 운영환경 | 실행환경에서 운영되는 서비스와 배치 작업을 운영하기 위한 모니터링·운영관리·배치운영 도구 |
| 관리환경 | 개발 프레임워크와 공통 서비스를 각 개발 프로젝트에 배포·관리하기 위한 모듈(서비스 요청, 변경, 현황, 표준 관리) |
| 공통컴포넌트 | 전자정부 사업의 응용 SW 개발 시 공통으로 활용하도록 재사용 가능하게 개발한 애플리케이션의 집합 |
실행환경의 데이터처리 계층은 Data Access, Data Source, ORM, Transaction 서비스를, 화면처리 계층은 MVC, Ajax 지원, 국제화, 보안(XSS·SQL 인젝션 대응), UI 어댑터 서비스를 제공한다. 핵심 서비스는 기본 설치되고 나머지는 사업별로 선택 설치하는 경량화 구조를 취한다.
공통컴포넌트는 요소기술과 공통기술 서비스로 나뉘며 보안, 사용자 디렉토리·통합인증, 사용자 지원, 협업, 시스템 관리, 시스템·서비스 연계, 통계·리포팅, 디지털 자산관리 등의 분야를 포함한다. 5.0 버전 기준 253종이며, KISA와 국가보안기술연구소(NSR)의 보안 점검 결과를 반영한 시큐어 코딩이 적용되어 있다.
| 버전 | 공개 | 주요 기반 기술 |
|---|---|---|
| 4.0 | 2022년 3월 | Spring Framework 5.3.6, Spring Boot 2.4.5 지원. 패키지 경로 변경(egovframework.rte → org.egovframe.rte) |
| 4.3 | 2025년 3월 | Spring Framework 5.3.37, Spring Boot 2.7.18 지원 |
| 5.0 | 2026년 3월 | Spring Framework 6.2.11, Spring Boot 3.5.6, Spring Security 6.5.5, Spring Batch 5.2.3. Jakarta EE, JDK 17 이상(개발환경은 JDK 21) |
5.0에서는 개발환경 VS Code 확장, Spring AI 기반 RAG 예제, Istio·OpenTelemetry 기반 운영환경 가이드, Flutter 기반 모바일 디바이스 API 가이드 프로그램 등이 추가되었다. 적용 가능 조건은 Java 기반 웹 응용 시스템(WAS 존재)이면서 신규 개발 시스템으로 기존 시스템과 구분되는 경우이다.
표준프레임워크센터는 상용 솔루션이 표준프레임워크와 연동되는지 확인하는 호환성 확인 서비스를 운영하여, 상용 솔루션과의 상호운용성을 보장하고 특정 사업자 종속을 줄인다.
- 구성: 실행환경, 개발환경, 운영환경, 관리환경, 공통컴포넌트의 역할 구분
- 스프링 프레임워크(IoC/DI, AOP, MVC) 기반이며 오픈소스로 무상 제공된다는 점
- 도입 목적: 표준화, 재사용성, 사업자 종속성 해소, 중소기업 경쟁력 향상, 상호운용성
- 주관 기관: 행정안전부, 한국지능정보사회진흥원(표준프레임워크센터)