마이그레이션·현대화

나이키 애플리케이션 현대화

보안 및 품질 강화를 통한 레거시 애플리케이션 현대화

프로젝트 수행 기간: 2023–2026.05

프로젝트 개요

Nike 레거시 애플리케이션 현대화 프로젝트는 10년이 넘은 Spring 4.2에서 Spring Boot 3.5로, Java 8에서 Java 21로의 업그레이드를 중심으로, 보안 취약점 검사, 이미지 스캔, 코드 커버리지 분석, 자동화된 테스트 등 포괄적인 보안 및 품질 개선을 구현했습니다.

해결 과제

주요 과제는 비즈니스 연속성을 유지하면서 10년 된 Spring Framework 애플리케이션을 현대화하고, 무중단 마이그레이션을 보장하며, 현대적인 보안 관행을 구현하고, 진행 중인 운영을 방해하지 않으면서 품질 게이트를 설정하는 것이었습니다.

구현과 설계

프레임워크 및 런타임 현대화

프로세스 전반에 걸쳐 하위 호환성을 유지하면서 핵심 프레임워크와 런타임 환경을 체계적으로 업그레이드했습니다.

  • Spring 4.2 → Spring Boot 3.5: 자동 구성을 통한 완전한 프레임워크 마이그레이션
  • Java 8 → Java 21: 성능 최적화와 새로운 언어 기능을 활용한 JVM 업그레이드
  • 레거시 XML 구성 → Java 기반 구성으로 마이그레이션
  • Spring Boot Starter 패키지로 의존성 관리 현대화

보안 및 품질 강화

CI/CD 파이프라인에 통합된 포괄적인 보안 스캐닝 및 품질 보증 프로세스를 구현했습니다.

  • SAST (정적 애플리케이션 보안 테스트) 통합
  • 자동 보고서가 포함된 컨테이너 이미지 취약점 스캐닝
  • nike.net 현대화 범위 테스트 및 코드 커버리지 85%+ 달성
  • SonarQube를 활용한 자동 버그 감지 및 코드 품질 게이트

주요 결과

  • 10년+ 레거시 소스 리팩토링 및 현대화 추진
  • 여러 차수의 현대화 작업을 통해 레거시 코드 구조와 운영 기준을 단계적으로 정비
  • nike.net 현대화 범위 코드 커버리지 85%+ 달성; 다른 서비스 전체로 확대하지 않음
  • 운영 이전에 품질/보안 리스크를 선제적으로 식별할 수 있는 기반 마련
  • 프레임워크와 런타임 업그레이드를 지속 적용할 수 있는 기준 정립

사용 기술

Spring Boot 3.5
최신 Spring Boot 프레임워크 업그레이드
Java 21
성능 향상을 제공하는 최신 LTS Java 버전
SonarQube
코드 품질 분석 및 보안 스캐닝
JUnit 5
고급 기능을 갖춘 최신 테스트 프레임워크
Container
컨테이너 기반 배포
ECS
AWS 컨테이너 서비스
Jenkins
CI/CD 파이프라인 자동화
Terraform
Terraform 인프라 관리

배운 점

  • 레거시 현대화는 비즈니스 영향을 최소화하기 위한 신중한 계획과 단계적 접근이 필요
  • 자동화된 테스트와 CI/CD 통합은 안전한 프레임워크 마이그레이션에 필수
  • 보안 설계 접근법은 배포 후 취약점을 크게 감소시킴
  • 모던 Spring Boot는 상용구 코드와 구성 오버헤드를 크게 줄임
← 프로젝트 목록이메일로 연락하기 ↗