Offcanvas

디지털 트랜스포메이션 / 애플리케이션 / 클라우드

클라우드 전환 지름길··· 레거시 앱 현대화 요령 10가지

2023.08.07 John Edwards  |  CIO
클라우드 네이티브 기능은 클라우드를 최대한 활용하기 위해 필수적이다. 레거시 앱에 새로운 클라우드 기능을 결합하는 방법은 다음과 같다.
 
ⓒ Getty Images Bank

클라우드의 확장성과 유연성을 적극 활용하기 위해 대부분의 기업들은 단순한 리프트 앤 시프트 접근방식을 넘어 클라우드 네이티브 기능을 추가한다. 단순해 보이는 전략이지만 순식간에 복잡해질 수 있다. 겉으로는 쉬워 보이지만 세부적으로 살펴보면 문제가 발생할 수 있기 때문이다. 

다행히도 클라우드에 맞춰 레거시 앱을 현대화하는 것은 길고 고통스러운 과정만 있는 것은 아니다. 다만 현실적인 기대치가 있고 작업을 실제로 수행할 수준으로 충분히 준비해야 한다. 불필요한 고통과 불만을 피하기 위해 클라우드 현대화 전문가는 다음과 같이 조언한다. 

1. 목적을 갖고 현대화하라
IBM 컨설팅의 하이브리드 클라우드 서비스 경영 파트너 아파르나 샤르마는 “시작하기에 앞서 앱 현대화 프로젝트를 통해 특별히 해결하려는 비즈니스 목표를 설정하는 것이 중요하다”라고 설명했다. 비용 절감, 보안 개선, 기능 강화 등의 사전에 달성하고자 목표를 알고 있을 경우에만 앱 현대화도 성공할 수 있다는 것이다. 

현대화 이니셔티브는 최신 혁신을 이루겠다는 목표하에서 진행되곤 한다. 하지만 샤르마는 이런 태도는 미래 더 큰 복잡성을 만들 수 있다고 경고했다. 샤르마는 “명확한 결과와 ‘이유’에 대한 이해가 있어야만 비즈니스적 목표를 성취하고 특정 문제를 해결하기 위한 선택을 이어 나갈 수 있다”라고 말했다.

2. 필요에 따라 리소스와 파트너를 평가하라
성공적인 레거시 앱 현대화는 클라우드로 이동하려는 워크로드와 자산을 확인하기 위해 필요한 초기 작업뿐 아니라 의존성, 라이선스 영향, 비즈니스 사용 사례 및 이점을 해결하는 것부터 시작된다.

관리형 클라우드 서비스 업체 내비사이트(Navisite)의 전략 고문 스티브 우드게이트는 “IT뿐만 아니라 조직 전반에 걸쳐 이해관계자들을 참여시키고 레거시 애플리케이션 및 이동하는 클라우드에 대한 전문가가 있어야 한다. 이를 통해 기업을 위한 최적의 마이그레이션 및 현대화 경로를 정의, 개발, 실행할 수 있다”라고 설명했다.

우드게이트는 앱을 클라우드로 마이그레이션하는 기업들이 원활한 이전을 위해 필요한 내부 전문지식이 없어 스킬 부족으로 분투하는 경우가 많다고 지적했다. 앱 현대화는 복잡성이 어느 정도 수반된다. 그런 면에서 우드게이트는 “전환 과정에서 발생하는 부정적 영향력을 최소화하기 위해 외부 파트너를 고려할 만한 가치가 있다”라고 조언했다.

3. 앱 아키텍처를 꼼꼼하게 분석하라
앱을 현대화하려면 앱 자체를 미리 신중하게 평가하여 아키텍처, 의존성, 요건을 파악해야 한다. 영국의 IT 보안 기업 NCC 그룹의 클라우드 보안 서비스 글로벌 활동 책임자 난도르 쏭카는 “클라우드로 마이그레이션할 수 있는 구성요소를 확인하고 필요한 변경사항을 평가하라”라고 말했다.

다음으로, 리프트 앤 시프트, 리플랫포밍(Re-platforming), 리팩토링(Refactoring), 애플리케이션 리빌딩(Rebuilding) 등 가장 적합한 애플리케이션 마이그레이션 전략을 결정하면 좋다. 쏭카는 “목표, 시한, 리소스에 가장 적합한 전략을 선택하라”라고 조언했다.

4. 리호스팅, 리팩토링, 리아키텍팅, 리빌딩, 교체 등 맞춤형 접근방식을 적용하라
컨설팅 기업 PwC의 미국 클라우드 혁신 및 엔지니어링 책임자 윌 페리는 “리호스팅(Rehosting), 리팩토링, 리아키텍팅(Rearchitecting), 리빌딩, 교체 등 앱 현대화에는 많은 기법과 옵션이 존재한다”라고 설명했다. 올바른 접근방식을 선택하려면 최종 선택 전 가능한 모든 옵션을 신중하게 조사해야 한다.

페리는 “성공적인 애플리케이션 현대화는 비즈니스 및 IT 민첩성과 확장성을 높여줄 것”이라며 “리플랫포밍과 리팩토링은 클라우드 서비스와 솔루션 패턴을 활용하기 때문에 가장 효과적인 접근방식인 경우가 많다”라고 설명했다. 

5. 관련된 프로세스를 현대화하라
딜로이트 컨설팅의 수석 아모드 바바레는 사용자 경험과 민첩성 등 근본적인 비즈니스 프로세스도 현대화하라고 조언했다. 그는 “이런 필요를 염두에 두면 비즈니스 현대화와 함께 애플리케이션 아키텍처, 기술 스택, AI/ML, 모빌리티, 마이크로서비스 등의 클라우드 네이티브 서비스를 활용할 수 있는 능력을 현대화할 수 있다”라고 설명했다.

바바레는 해당 접근방식이 매우 효과적이라고 표현했다. 바바레는 “비즈니스 사용자가 비전과 목표를 달성도록 도울 뿐 아니라 생산성과 시장에서의 경쟁력을 높여줄 수 있다”라고 밝혔다.

6. 모듈식으로 개선하자 
기술 컨설팅 기업 LTI마인드트리(LTIMindtree)의 클라우드 활동 책임자 바시시 바레르카르는 부분적으로 나눠서 진행하는 모듈식 접근방식이 현대화 과정에서 더 적합한다고 설명했다. 실제로 업계에서는 한 번에 앱 현대화에 필요한 모든 작업을 끝내면서 비즈니스 및 기술 목표를 달성하려고 시도가 이뤄지고 있다. 바레르카르는 획일화된 가이드라인을 만들고 모든 앱을 해당 가이드라인에 맞춰서 같은 방식으로 현대화는 것은 효과적이지 못하다고 경고했다.

바레르카르는 또한 앱을 처음부터 다시 개발하는 것에 대해서도 경고했다. 그러한 접근방식은 목표를 달성하는 경우가 거의 없고 예산 절감, 과도한 지출, 관심 상실 등으로 인해 손쉽게 포기할 수 있기 때문이다. 바레르카르는 “훌륭한 접근방식은 미리 설정된 목표와 KPI에 맞춰 리스크 제거 및 새로운 기능이 추가될 수 있도록 지속적인 현대화 과정을 거쳐야 한다”라고 설명했다. 

7. 통합적인 관점을 갖자
기술 컨설팅 기업 캡제미니 아메리카의 클라우드 및 맞춤형 애플리케이션 수석 무쿤드 스리니바산은 “앱 현대화에는 다양한 선택지가 존재하기 때문에 전체적인 기술을 통합적으로 보면서 최신 앱 현대화뿐 아니라 미래 문제 대응책을 함께 고려해야 한다”라고 설명했다. 

스리니바산은 “CIO는 특히 데브섹옵스(DevSecOps), 클라우드 네이티브 가속기, 코드형 인사이트, 기타 기법과 도구를 통해 클라우드 전환에 대한 심층적인 인사이트가 있는 파트너를 활용해야 한다”라며 “파트너를 통해 신속한 소프트웨어 제공과 다면적인 현대화 접근방식을 살펴볼 수 있다”라고 설명했다. 

스리니바산에 따르면, 통합적인 접근방식으로 앱 현대화 담당자는 애플리케이션 전환, 배치, 검증을 진행하는 데 필요한전략을 확보할 수 있다. 특히 소프트웨어 배포 주기 전반에 걸쳐 조합된 패턴을 활용해 앱 현대화를 더욱 빠르게 진행할 수 있다.

8. 성숙도 평가 프레임워크를 구축하라
글로벌 경영 컨설팅 기업 지노브(Zinnov)의 파트너 라자트 콜리는 3단계 성숙도 평가 프레임워크 구축의 중요성을 강조했다.

콜리에 따르면, 첫 번째 단계인 발견과 평가는 기존의 문제와 최종 결과 필요에 대한 인사이트를 형성하며 기존 기술 스택과 아키텍처에 대한 전반적인 평가를 제공한다. 2단계인 로드맵 생성은 최종 목표 시나리오로 이어지는 정의된 경로를 구축하는 청사진을 구축해야 한다. 3단계인 역할 할당에는 다수의 중요한 작업의 실행을 위해 특정 이해관계자에게 책임을 할당하는 것이 포함된다. 콜리는  관련된 당사자들에 내부 및 외부 팀, 기술 제공자, 애플리케이션 테스트 그룹이 포함되어야 한다고 조언했다.

콜리는 “평가 프레임워크를 구축하면 ROI가 개선되고 개발에 속도가 붙고 기업들이 현대화된 앱에 새로운 기능을 추가할 수 있다”라며 “다수의 애플리케이션을 동시에 구동하고 기존의 애플리케이션과 원활하게 연결하기도 쉽다. 또한 생산성과 통합을 제한하는 장벽을 없애 새로운 사용자 경험과 개선된 성과를 달성할 수 있다”라고 설명했다.

9. 독립적 구성요소로 분리하라
소프트웨어 개발 기업 리엔빗(Reenbit)의 공동 설립자 겸 CTO 바실 마고메타는 “체계적인 접근방식을 따르는 것이 중요하다”라며 “우선 앱의 아키텍처를 분석하고 개선할 수 있는 영역을 확인하라. 그리고 앱을 개별적으로 배치 및 확장할 수 있는 작고 독립적인 구성요소로 분리하라”라고 조언했다.

다음으로 마고메타는 컨테이너와 서버리스 컴퓨팅 등 클라우드 네이티브 서비스와 기술을 활용하여 앱 성능과 확장성을 최적화하라고 조언했다. 그는 “마지막으로 앱을 클라우드로 점진적으로 마이그레이션하고 꼼꼼히 테스트하여 원활한 이전을 가능하게 하라”라고 덧붙였다.

10. 컨테이너 및 마이크로서비스의 장점을 활용하라
앱 현대화는 까다롭다. 이런 일을 처음 접하는 IT 리더와 팀에게는 더욱 까다롭게 느껴질 것이다. 소프트웨어 개발사 에자일(Agilie)의 설립자 겸 CEO 세르게이 글라둔은 과거 직접 핵심 앱을 현대화한 경험을 공유했다. 글라둔은 “해당 현대화 작업은 중대한 리팩토링이 수반된 중요한 프로젝트였다”라며 “우리는 하나의 애플리케이션을 작고 관리성이 높은 마이크로서비스로 나누기로 선택했다”라고 설명했다. 

당시 글라둔이 진행한 현대화 과정은 많은 시간을 필요했지만 덕분에 애플리케이션의 확장성과 클라우드 친화성은 높아졌다고 한다. 그는 “마이크로서비스 덕분에 우리는 구성요소를 독립적으로 개발, 테스트, 배치, 확장하여 전반적인 개발 프로세스의 효율성을 높일 수 있었다”라고 설명했다.

또한, 도커(Docker)와 쿠버네티스(Kubernetes) 등의 도구를 통한 컨테이너화는 확장성과 이식성을 더욱 높여 애플리케이션이 플랫폼과 별개로 독립성을 가졌다고 한다. 글라둔은 “우리의 현대화 프로세스는 앱의 성능을 높일 뿐 아니라 유지보수 및 업데이트를 간소화했다”라고 설명했다.
ciokr@idg.co.kr
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
Sponsored
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.