현대화란 무엇을 의미하나요?
현대화란 조직의 프로세스, 시스템 및 도구를 최신 버전 또는 모범 사례로 업데이트하는 작업입니다. 클라우드 컴퓨팅 맥락에서 현대화란 조직의 애플리케이션, 프로세스 및 데이터 관리를 클라우드 중심 접근 방식으로 전환하는 프로세스입니다. 현대화의 목표는 조직 및 기술 차원의 성과를 개선하고, 고객 및 직원 환경의 품질을 향상하고, 새로운 제품 및 업데이트의 시장 출시 시간을 단축하는 것입니다.
애플리케이션 현대화란?
애플리케이션 현대화란 조직의 기존 앱을 클라우드 중심 모델로 업데이트하는 프로세스입니다. 이를 ‘레거시 현대화’라고도 합니다. 조직에서 온-프레미스 앱을 사용하는 경우, 현대화를 진행하는 과정에서 이러한 앱을 퍼블릭, 프라이빗 또는 하이브리드 클라우드로 마이그레이션하는 작업이 수반될 수 있습니다. 현대화되는 앱과 데이터의 대표적인 예는 다음과 같습니다.
- .NET 앱
- Linux 웹앱
- Java 앱
- SAP 앱
- SQL 데이터베이스
조직의 기존 소프트웨어 시스템 및 프로그램은 처음 구현되었을 때는 유용했을 테지만 최신(또는 미래의) 기술을 따라가지 못합니다. 이 문제를 해결하는 한 가지 방법은 처음부터 다시 시작하는 것입니다. 즉, 사용 가능한 최신 기술 스택과 호환되는 새로운 앱을 빌드하거나 구매하는 것입니다. (최신 스택은 항상 발전을 거듭하지만, 최근에 현대화를 견인하는 요소들로 새로운 보안 모범 사례, 확장성 요구 사항, AI, 가상화, IoT, 컨테이너의 발전을 들 수 있습니다.) 그러나 이 방법은 비용이 많이 들고 시간이 많이 걸릴 수 있습니다. 그리고 문제도 해결되지 않은 채로 유지됩니다. 가장 최신 앱도 기술 에코시스템의 속도를 따라잡기 어려울 수 있기 때문입니다.
조직에서는 완전히 새로운 앱을 빌드하여 처음부터 시작하는 대신, 이미 보유하고 있는 앱을 현대화할 수 있습니다. 때로는 앱 현대화를 단계별로 진행하는 것이 가능하며, 이 방식이 더 실용적이라는 점도 유의해야 합니다. 예를 들어, 많은 조직에서는 클라우드 컴퓨팅의 가장 기본적인 이점을 곧바로 활용하기 위해 "리프트 앤 시프트" 마이그레이션으로 온-프레미스 데이터 센터에서 클라우드로 앱을 이동하는 것부터 시작합니다. 그런 다음 최신 기능이나 모범 사례를 도입하기 위해 앱의 일부 또는 전부를 다시 빌드하는 등 보다 고급 현대화 기법을 적용합니다.
앱 현대화의 이점
- 혁신 및 시장 출시 시간 단축 조직에서 앱과 인프라를 유지 관리하는 데 많은 시간과 리소스를 투자할 필요가 없어지면 혁신에 더 많은 시간을 투자할 수 있습니다. 클라우드 기반 도구 및 서비스를 사용하면 개발 프로세스를 한층 간소화하여 시장 출시 시간을 단축할 수 있습니다.
- 보안 및 안정성. 클라우드 중심 접근 방식을 사용하면 기본 제공되는 업데이트 및 보안 기능을 통해 워크로드를 보호할 수 있습니다. 그 밖의 기본 제공 기능으로는 고가용성, 재해 복구, 백업, 성능 모니터링과 같은 중요한 작업의 자동화가 포함될 수 있습니다.
- 호환성 및 민첩성. 앱 현대화의 이점은 단지 최신 기술을 사용할 수 있다는 것에 그치지 않습니다. 기술이 발전해도 계속해서 앱을 사용할 수 있다는 것이 진정한 이점입니다. 이를 통해 업데이트 및 변경을 빠르게 적용하여 현재와 미래의 비즈니스 요구 사항을 충족할 수 있습니다. 또한 수요가 갑자기 증가할 경우 앱이 계속해서 제대로 작동할 수 있도록 자동 스케일링을 지원하며, 수요가 갑자기 감소할 경우 곧바로 비용을 줄일 수 있습니다.
- 효율성. 현대화를 신중하게 수행하면 새로운 앱을 처음부터 만드는 것보다 기존 앱을 현대화하는 것이 더 쉬울 수 있습니다. 조직에서는 새로운 앱을 개발하는 데 막대한 시간과 비용을 투자하는 대신 기존 투자를 기반으로 빌드할 수 있습니다. 앱 현대화는 완전히 새로운 앱을 기존 운영 환경에 연결하는 것에 비해 기존 프로세스를 그대로 사용하고 비즈니스 연속성을 유지하는 데 도움이 됩니다.
애플리케이션 현대화 단계 및 전략
현대화 핵심 요소
성공적인 앱 현대화를 위한 단계와 전략은 조직의 목표 프레임워크를 뒷받침해야 합니다. 예를 들어, Azure Well-Architected Framework는 조직의 목표에 맞게 구성된 5가지 아키텍처 핵심 요소로 이루어지는데, 이를 앱 현대화에도 사용할 수 있습니다.
- 안정성: 시스템이 오류를 복구하여 계속 작동하는 기능입니다.
- 보안: 위협으로부터 애플리케이션 및 데이터를 보호합니다.
- 비용 최적화: 비용을 관리하여 제공되는 가치를 극대화합니다.
- 뛰어난 운영: 프로덕션 환경에서 시스템이 계속 실행되도록 해 주는 운영 프로세스입니다.
- 성능 효율성: 시스템의 로드 변화에 따라 조정되는 기능입니다.
앱 현대화 단계
조직의 앱을 현대화하는 프로세스는 크게 세 단계로 정의할 수 있습니다.
- 계획. 이 첫 번째 단계를 수행하려면 앱 현대화 목표에 대해 신중하게 고민하고 조치를 취하기 전에 전략을 정의해야 합니다. 이 단계에서는 변화에 대비하여 기존 앱과 환경을 살펴보고 평가해야 합니다.
- 구현. 이 단계에서는 새로운 기술을 구축하고 앱의 반복적인 현대화를 시작합니다. 반복적인 현대화 접근 방식을 통해 필요에 따라 프로젝트 범위 또는 전략을 유연하게 변경할 수 있습니다.
- 운영. 앱 현대화는 일회성 작업이 아닙니다. 조직이 클라우드 중심 접근 방식으로 전환한 후에는 클라우드 플랫폼 서비스 및 도구를 사용하여 앱을 보호, 관리 및 최적화할 수 있습니다.
앱 현대화 전략
이러한 전략은 조직의 현대화 목표와 앱 자체에 필요한 코드 변경에 따라 달라집니다. 앱 현대화 전략은 계획 단계에서 정의되고 구현 단계에서 이행됩니다.
앱 개발 프로세스 현대화
앱 자체를 현대화하는 것 외에도 조직의 장기 전략에서 중요한 요소는 ‘개발자 속도’라고 하는 앱 개발 접근 방식을 현대화하는 것입니다. 여기에는 개발자 팀의 도구와 프로세스를 현대화하여 생산성, 공동 작업 및 작업 품질을 최대화하는 것이 포함됩니다. 조직에서 개발자 속도를 평가하고 개선하는 데 도움이 되는 도구, 애널리스트 연구 및 기타 리소스가 마련되어 있습니다.
도구 및 서비스
애플리케이션을 현대화하려는 조직은 다양한 방법을 이용할 수 있습니다. 조직에서 IT 자산을 최적화하도록 지원하는 기술은 다음과 같습니다.
클라우드 컴퓨팅
인터넷 기반 클라우드 서비스는 애플리케이션 성능, 효율성 및 규모를 높일 수 있습니다.
컨테이너
이러한 소프트웨어 패키지는 애플리케이션 코드를 하나의 번들로 묶어 여러 환경에서 원활한 배포를 가능하게 합니다.
마이크로 서비스
이 아키텍처 접근 방식을 사용하면 각 핵심 기능(서비스)을 독립적으로 빌드할 수 있으므로 애플리케이션 개발의 민첩성이 높아집니다.
Automation
일반적인 작업을 자동으로 수행하는 타사 서비스는 애플리케이션 배포, 관리 및 진단을 최적화하는 데 도움이 될 수 있습니다.
AI 및 기계 학습
지능형 서비스 및 솔루션은 기업에서 애플리케이션 및 데이터로부터 풍부한 인사이트를 얻을 수 있도록 도와줍니다.
애플리케이션 현대화 서비스
기업에서는 완전 관리형 서비스를 사용하여 애플리케이션 개발을 가속화하고, 고객 및 직원 환경을 향상하고, 애플리케이션 보안 및 안정성을 높일 수 있습니다.
애플리케이션 현대화 도구
처음에는 기존 IT 시스템을 현대화하는 것이 어려워 보일 수 있습니다. 하지만 기술 투자를 업데이트하려는 조직은 이를 혼자서 진행할 필요가 없습니다. 클라우드 공급자들은 기업에서 시스템을 업데이트하는 데 도움이 되도록 설계된 여러 평가 도구, 방법론과 프로그램을 제공합니다.
예를 들어, Microsoft Azure는 기업에서 자사 속도에 맞게 현대화를 시작하는 데 도움이 되는 다음과 같은 리소스를 제공합니다.
eBook: Microsoft Azure를 사용한 클라우드 마이그레이션 및 현대화
마이그레이션 및 현대화 인사이트, 전략, 시작 팁 개요.
Azure Migrate
거의 모든 현대화 시나리오를 위한 Azure 마이그레이션 도구 요약
Azure 마이그레이션 및 현대화 프로그램
기업에서 확신을 갖고 클라우드 환경을 설정하는 데 사용할 수 있는 전문가 도움말, 기술 교육 및 리소스
Azure용 Microsoft 클라우드 채택 프레임워크
클라우드 채택을 가속화하도록 설계된 검증된 설명서, 지침, 모범 사례 및 도구 모음.
Azure App Service 마이그레이션 도구
비즈니스에서 웹앱을 빠르게 평가하고 Azure로 마이그레이션하는 데 도움이 되는 직관적인 무료 도구.
설명서: ASP.NET 앱 컨테이너화 및 Azure App Service로의 마이그레이션
Azure Migrate 앱 컨테이너화 도구를 사용하여 ASP.NET 앱을 컨테이너화하고 Azure로 이동하는 방법에 대한 단계별 지침
SMART(전략적 마이그레이션 평가 및 준비 도구)
기업에서 애플리케이션을 Azure로 마이그레이션할 준비가 되었는지 측정하는 데 도움이 되는 평가 도구
애플리케이션 및 데이터 현대화 준비 도구
기업에서 앱 및 데이터 현대화를 위한 비즈니스 전략을 평가하는 데 도움이 되는 평가 도구
FAQ
-
애플리케이션 현대화를 진행하는 조직에서는 앱을 클라우드 중심 모델로 전환합니다. 온-프레미스 앱을 사용하는 경우 이 과정에서 마이그레이션이 수반될 수 있습니다.
-
"레거시 현대화"는 "애플리케이션 현대화"를 지칭하는 또 다른 용어입니다. 단, 기존 앱과 신규 앱 모두 클라우드 기술을 통해 현대화하여 민첩성, 안정성, 혁신을 늘릴 수 있습니다.
-
애플리케이션 현대화는 앱 자체와 이를 현대화하려는 조직 양쪽에 다양한 이점을 제공합니다. 주요 이점으로 향상된 효율성, 클라우드 기술과의 호환성, 향상된 보안, 고가용성, 시장 출시 시간 단축을 들 수 있습니다.
-
애플리케이션 현대화의 세 가지 단계는 계획, 구현, 운영입니다. 계획 단계에서는 현대화 전략을 정의합니다. 구현 단계에서는 기술을 구축하고 앱을 현대화합니다. 운영 단계에서는 지속적인 거버넌스, 관리 및 최적화를 진행합니다.
-
앱 현대화 전략은 조직의 현대화 목표를 지원하도록 설계되어야 합니다. Azure Well-Architected Framework는 이러한 목표를 달성하기 위한 5가지 핵심 요소인 안정성, 보안, 비용 최적화, 뛰어난 운영, 성능 효율성이라는 5가지 핵심 요소로 이루어져 있습니다.
현대화 전략에는 조직에서 앱에 적용하려는 코드 변경 수준을 기준으로 구분되는 4가지가 있습니다. 다시 호스트: 앱을 이전 환경에서 최신 환경으로 있는 그대로 이동합니다. 재배치: 앱을 클라우드에 연결하기 위해 일부 코드를 변경합니다. 리팩터링: 앱이 클라우드 중심 환경을 최대한 활용할 수 있도록 일부 코드를 변경합니다. 아키텍처 변경: 클라우드 확장성을 위해 앱을 크게 수정합니다. 다시 빌드: 클라우드 네이티브 솔루션을 사용하여 앱을 다시 만듭니다. 바꾸기: 현행 비즈니스 요구 사항을 충족하기 위해 조직의 앱을 완전히 다른 앱으로 바꿉니다.
-
조직에 필요한 사항에 따라 다양한 애플리케이션 현대화 도구 및 서비스를 사용할 수 있습니다. 예를 들어 조직에서 앱과 데이터를 클라우드로 가져와서 비용을 최적화하고 자신 있게 운영하며 기능을 더 빠르게 제공하려는 경우 Azure App Service와 같은 완전 관리형 서비스가 적합할 수 있습니다.