# 전자정부 프레임워크 5.0 (Beta) 표준사양서

### 전자정부 표준프레임워크 v5.0 표준 사양 요약

| **구분**                    | **주요 특징 및 역할**                                        | **핵심 기술 스펙 (v5.0 Beta 기준)**                          | **참조 URL**                                                 |
| --------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| **실행 환경** (Execution)   | 애플리케이션 실행을 위한 핵심 프레임워크 및 라이브러리 제공  | - **Spring Boot 3.5.6** <br> - **Spring Framework 6.2.11** <br> - **Jakarta EE 10** 적용 <br> - **Java 17 이상** 필수 (Java 21 권장) | [바로가기](https://www.egovframe.go.kr/home/sub.do?menuNo=32) |
| **개발 환경** (Development) | 개발 생산성 향상을 위한 IDE 및 도구(프로젝트 생성, 코드 생성 등) | - **Eclipse 2025-03 (4.35)** <br> - **VS Code Extension 5.0.0** 출시 - AI 기반 프로젝트/CRUD 코드 생성 지원 <br>- GitHub Copilot 연동 가이드 제공 | [바로가기](https://www.egovframe.go.kr/home/sub.do?menuNo=39) |
| **운영 환경** (Operation)   | 클라우드 네이티브 환경에서의 서비스 메시 및 관찰 가능성(Monitoring) 제공 | - **Kubernetes v1.32.5** / **Istio v1.25.3** <br> - **OpenTelemetry** 기반 관찰성 도구 <br>- Prometheus, Grafana, Loki, Jaeger 포함 | [바로가기](https://www.egovframe.go.kr/home/sub.do?menuNo=44) |
| **모바일 환경** (Mobile)    | 모바일 앱 및 웹 개발을 위한 Flutter 기반의 환경 및 API 제공  | - **Flutter 기반 전면 전환** (기존 하이브리드 대체) <br> - **디바이스 API 9종** (가이드 프로그램 포함) <br>- KRDS(국가 서비스 디자인 가이드) 반영 | [바로가기](https://www.egovframe.go.kr/home/sub.do?menuNo=99) |




### 전자정부 표준프레임워크 4.x → 5.0 마이그레이션 영향도 분석

| **구분**             | **4.x 버전 사양**             | **5.0 (Beta) 버전 사양**           | **마이그레이션 영향도 및 조치 사항**                         |
| -------------------- | ----------------------------- | ---------------------------------- | ------------------------------------------------------------ |
| **JDK 버전**         | Java 8 또는 11                | **Java 17 이상 (21 권장)**         | **[매우 높음]** 최소 사양이 Java 17로 상향됨에 따라 인프라 및 컴파일 환경 업그레이드 필수 |
| **Java EE 사양**     | Java EE (javax.*)             | **Jakarta EE 10 (jakarta.\*)**     | **[매우 높음]** 서블릿, JPA 등 모든 패키지명이 `javax`에서 `jakarta`로 변경됨. 전체 소스 코드의 import 구문 수정 필요 |
| **Spring Framework** | 5.3.x                         | **6.2.11**                         | **[높음]** Spring 6의 변경된 설정 방식 및 제거된 클래스(예: WebSecurityConfigurerAdapter 등) 대응 필요 |
| **Spring Boot**      | 2.7.x                         | **3.5.6**                          | **[높음]** Spring Boot 3 기반 설정 방식(Auto Configuration 등)으로의 마이그레이션 필요 |
| **Persistence (DB)** | Hibernate 5.6 / MyBatis 3.5.x | **Hibernate 6.6 / MyBatis 3.5.19** | **[중간]** Hibernate 6의 Query 방식 변경 대응 및 DB 드라이버 호환성 체크 필요 |
| **개발 도구 (IDE)**  | Eclipse 2022-12 이하          | **Eclipse 2025-03 / VS Code**      | **[중간]** 최신 이클립스 사용 필수. VS Code 사용 시 전용 확장 프로그램 설치 권장 |
| **모바일 기술**      | Hybrid (PhoneGap/Cordova)     | **Flutter (Native-like)**          | **[매우 높음]** 기존 하이브리드 소스 재사용 불가. Dart 언어 기반 Flutter로 전면 재개발 필요 |
| **운영/배포**        | WAS 중심 배포                 | **Cloud Native (k8s/Istio)**       | **[중간]** 컨테이너 기반 운영 시 OpenTelemetry 및 서비스 메시(Istio) 설정 반영 필요 |



### v5.0 핵심 변경 및 기술문서 작성 가이드 

##### 1. 언어 및 사양 현대화 (실행환경/개발환경)
   - Java 17(최소 실행환경) 도입과 Jakarta EE 10 전환은 기술문서 작성 시 중요한 변경 사항입니다. 기존 `javax.*` 패키지가 `jakarta.*`로 변경되는 내용을 기술 가이드에 반드시 명시해야 합니다.

##### 2. 멀티 IDE 지원 (개발환경)
   - 기존 이클립스 단일 체제에서 **VS Code 확장 프로그램**까지 공식 지원 범위가 확대되었습니다. 개발 환경 구축 섹션에서 이클립스 설치형과 VS Code 플러그인형을 구분하여 기술할 수 있습니다.

##### 3. 클라우드 네이티브 운영 강화 (운영환경)
   - 단순 배포를 넘어 **클라우드서비스 메시**(Kubernetes v1.32.5, Istio v1.25.3), **모니터링 도구** (OpenTelemetry v0.120.0,  Prometheus, Grafana, Loki, Jaeger, Kiali, Tempo 포함)가 표준 사양으로 들어왔습니다. 
  - 이는 MSA(마이크로서비스 아키텍처) 기반 프로젝트 시 운영 가이드의 핵심이 됩니다.
##### 4. Flutter 기반 개발 (모바일)
   - PhoneGap/Cordova 기반의 하이브리드 방식에서 벗어나 **Flutter 기반의 네이티브급 개발** 방식으로 기술 스택이 전면 개편되었습니다. 모바일 프로젝트 시 개발 언어를 Dart/Flutter로 정의해야 합니다.
   - KRDS 디자인 리소스 반영여부를 포함하여야합니다.
##### 5. AI 연동 기능 활용법 (공통)
   -  v5.0은 **AI 템플릿(RAG 등)** 과 **Spring AI** 활용이 포함되어 있습니다. 

### Reference

전자정부프레임워크 : https://www.egovframe.go.kr/home/sub.do?menuNo=39

발표영상 : https://youtu.be/crkDU3O7uf8?t=2333

AI-Gen 관련 영상 : https://youtu.be/crkDU3O7uf8?t=4451