NBCUniversal
대규모 다중 속도 IT 엔터프라이즈 전반에 걸쳐 DevOps 확장

NBCUniversal은 IBM Cloud for Skytap Solutions와 함께 IBM UrbanCode Build 및 IBM UrbanCode Deploy 소프트웨어를 DevOps의 엔진으로 활용하여 지속적인 통합, 제공, 테스트, 피드백 및 모니터링을 하나의 자동화된 워크플로로 결합하여 조직 전체에서 프로세스, 문화 및 기술을 연결합니다.

비즈니스 과제

NBCUniversal은 코드 품질을 개선하고 개발을 간소화하며 비용을 절감하기 위해 17개 사업부로 구성된 복잡한 기업 전반에서 애플리케이션 개발에 DevOps 접근 방식을 채택하고자 했습니다.

변환

NBCUniversal은 IBM UrbanCode 소프트웨어 및 IBM Cloud for Skytap Solutions를 활용하여 DevOps를 추진함으로써 지속적인 통합, 제공, 테스트, 피드백 및 모니터링을 하나의 자동화된 워크플로로 결합합니다.

결과 75% 감소
새로운 애플리케이션 릴리스에 필요한 시간 단축
회귀 테스트 시간 단축
몇 주에서 몇 시간으로 단축
가속화
새로운 요구 사항에 대한 대응
비즈니스 도전 스토리
사일로 통합

최근까지 시장의 혁신자로 여겨지고 빠른 혁신을 위해 구축된 차세대 클라우드 네이티브 조직만이 DevOps 여정에 착수했다는 인식이 일반적이었습니다. 그렇지 않습니다. Etsy, Uber 또는 Netflix를 비롯하여 NBCUniversal과 같은 많은 기업들이 DevOps를 통해 새로운 애플리케이션의 출시 기간을 지속적으로 간소화하고 애플리케이션 코드 품질을 높이며 개발, 테스트 및 배포 비용을 절감하기 위해 노력합니다.

이러한 기업들은 다양한 산업 분야를 대표합니다. 그리고 혁신을 가속화하고 변화하는 비즈니스 요구 사항에 더 빠르게 대응하는 능력인 민첩성이 중요하기 때문에 조직과 IT의 복잡성에 관계없이 이들은 DevOps 접근 방식을 채택하고 있습니다.

대기업이 택하는 DevOps의 길은 클라우드 기반 비즈니스가 택하는 길과는 확실히 다를 수 있습니다. 가장 중요한 것은 광범위한 문화적 변화를 이끌고 오랜 프로세스와 패러다임을 혁신하는 최선의 방법이 무엇인지 파악하는 것입니다.


NBCUniversal은 인수를 통해 크게 성장했으며, 현재 그 국제적인 입지를 비롯해 17개의 개별 회사 및 사업부로 구성되어 있습니다. 대부분의 대규모 조직의 특징인 애플리케이션 환경은 온프레미스, 프라이빗 및 퍼블릭 클라우드 환경이 혼합되어 있으며 핵심 비즈니스 애플리케이션이 새로운 웹 및 모바일 애플리케이션과 통합되어 다양하고 속도가 빠릅니다. 이 회사의 DevOps 팀은 System of Record(주로 메인프레임) 개발자와 System of Engagement(클라우드 기반의 고객 대면 애플리케이션) 개발자 간 속도, 프로세스, 도구, 기술 및 문화에 있어 광범위한 변동성을 해소하여 이러한 시스템 간의 통합을 달성해야 했습니다.

NBCUniversal의 플랫폼 DevOps 관리자인 존 코마스(John Comas)는 NBCUniversal에서 DevOps 소프트웨어 개발 수명 주기(SDLC)를 뒷받침하는 프로세스와 도구를 담당하고 있습니다. "우리는 여러 가지 이유로 애플리케이션 고객에게 표준화된 단일 SDLC를 제공해야 했습니다. 첫째는, 여러 인스턴스를 제거하여 애플리케이션 라이선스 비용을 절감하기 위해서였습니다. 둘째로는, 엔터프라이즈급 표준 온프레미스 시스템을 제공하고 가능한 한 많은 사용자를 이 시스템으로 마이그레이션하여 지원 및 교육을 표준화하고자 했기 때문입니다. 또한 개발된 코드의 품질을 개선하고 싶었고 더 빠르고 효율적이며 더 낮은 비용으로 개발하기를 원했습니다"라고 그는 말합니다. "빌드 및 배포의 실패율이 높았고, 애플리케이션 팀이 테스트를 거의 또는 전혀 수행하지 않았기 때문에 프로덕션에 들어가지 말았어야 할 릴리스가 많아 중단이 너무 많이 발생했습니다."

DevOps 여정은 기존에 잘 통합되지 않았던 네 개 그룹(개발, QA, 실행 및 SDLC 팀)에 걸쳐 워크플로우를 구축하는 원동력이 되었습니다. 이 여정은 기술뿐 아니라 사고방식을 아우르며, 복잡한 프로세스를 가장 작은 작업 단위로 나누고 가능할 때마다 병렬로 실행하여 혁신을 가속화합니다.

우리는 애플리케이션 고객에게 표준화된 단일 SDLC를 제공해야 했습니다. 또한 개발된 코드의 품질을 개선하고 싶었고, 더 빠르고 효율적이며 저렴한 비용으로 개발하고 싶었습니다. John Comas 플랫폼 DevOps 관리자 NBCUniversal
혁신 스토리
더 빠른 혁신 제공

Comas와 NBCUniversal의 서비스 전략 및 협업 담당 수석 이사인 Charles Williams는 DevOps를 혁신을 더 빠르게 제공하기 위한 공유 플랫폼/프레임워크로 내부적으로 포지셔닝했습니다. UrbanCode Build(애플리케이션 빌드 자동화 소프트웨어) 및 UrbanCode Deploy(애플리케이션 릴리스 자동화 소프트웨어)인 IBM UrbanCode 플랫폼은 DevOps의 엔진 역할을 합니다. 이를 통해 NBCUniversal은 지속적인 통합, 지속적인 전달, 지속적인 테스트, 지속적인 피드백 및 지속적인 모니터링을 하나의 자동화된 워크플로로 결합하여 조직 전체의 프로세스, 문화 및 기술을 연결합니다.

UrbanCode 플랫폼은 다양한 IT 환경을 지원하고 NBCUniversal과 같은 복잡한 기업에 중요한 포괄적인 감사 기능을 제공합니다. “UrbanCode 제품을 사용하여 조직에 서비스형 빌드를 제공할 수 있게 되었습니다. 버튼 클릭 한 번으로 UrbanCode에 포함된 모든 빌드를 재현할 수 있습니다"라고 Comas는 말합니다. "우리는 모든 활동을 볼 수 있는 단일 통합 대시보드를 가지고 있습니다. 또한 무엇을 빌드했는지, 해당 빌드와 관련된 바이너리가 무엇인지, 어떤 작업을 수행했는지, 어떻게 테스트되었는지, 어떤 환경에 배포되었는지에 대한 명확한 기록이 있습니다. 날짜를 알려주시면 해당 날짜에 프로덕션에 배포된 내용을 모두 알려드릴 수 있습니다."

NBCUniversal은 IBM 비즈니스 파트너인 Skytap이 개발한 IBM Cloud for Skytap Solutions(ICSS)를 IBM UrbanCode Deploy 소프트웨어와 함께 사용하여 소프트웨어 개발 라이프사이클 전반에 걸쳐 테스트 환경 구성 및 관리를 자동화하고 QA 자동화의 일환으로 회귀 테스트를 병렬화합니다.

한 예로, NBCUniversal의 텔레비전 그룹은 TV 프로그램 스케줄링에 사용되는 대규모 애플리케이션인 Compass의 회귀 테스트를 ICSS를 사용하여 6~8주에서 3시간으로 단축했습니다. Compass와 연결된 것은 1,000개의 테스트 케이스로 구성된 방대한 회귀 테스트 제품군입니다. ICSS를 활용하기 전에 조직의 QA 팀은 이러한 테스트를 로컬에서 실행했으며 각 테스트는 순차적으로 실행되었습니다. 현재 이들은 50대의 테스트 머신으로 구성된 환경을 설정했으며, 모두 온프레미스 Compass QA 환경을 가리키고 머신당 20개의 테스트가 병렬로 실행됩니다.

NBCUniversal은 DevOps를 통해 이전의 모놀리식 프로세스를 구성 요소 부분으로 분할했으며, Comas의 DevOps 팀은 DevOps 도구를 지원하는 인프라를 제공하고, 도구 자체를 관리하고, 해당 도구 사용에 대한 모범 사례를 관리함으로써 주도적인 역할을 담당하고 있습니다. 또한 팀은 개발 팀을 위한 자동화를 생성합니다.

처음에는 DevOps를 옹호하는 것이 쉽지 않았습니다. 모든 사람이 이를 받아들이는 것은 아니었기 때문에 Comas와 Williams는 극복해야 할 문화적 장애물이 있었습니다. "John과 저는 DevOps에 대해 한동안 이야기를 나눴지만 귀에 들어오지 않았어요. 기능에 대해 논의하고 앱 소유자에게 기능을 보여준 후 QA 환경에 접어들면서 비로소 관심을 갖기 시작했습니다.”라고 Williams는 말합니다. "한때 John과 저는 'DevOps'라는 단어를 사용하지 않기로 결심하기도 했습니다. 왜냐하면 대부분의 사람들에게 이 단어는 아무런 의미가 없었기 때문입니다. 오히려 '애플리케이션 개발의 전달 속도를 개선하고 테스트를 반복적이고 일관되게 실행하고 결과를 빠르게 얻을 수 있는 것이 중요하다'는 식으로 이야기를 나눴을 때 우리는 문화를 바꿀 수 있었습니다. 그리고 민첩한 개발 기능을 시연할 기회가 몇 번 있었을 때, 이런 말을 듣기 시작했습니다. '아, 이것이 바로 DevOps구나. 이게 바로 제가 원하던 거예요.'"

그런 의미에서 UrbanCode 소프트웨어와 같은 도구와 기술은 문화와 프로세스의 변화를 주도했습니다. Williams는 “저는 이 도구가 민첩한 개발, 시프트 레프트 테스트 등 문화가 변화하고 있는 방향에 힘을 더해주었다고 생각합니다.”라고 말합니다. "이 도구는 우리가 구상한 엔드투엔드 워크플로인 DevOps 프로세스의 기반이 되었습니다."
 

민첩한 개발 기능을 시연할 기회가 몇 번 있었을 때, 이런 말을 듣기 시작했습니다. '아, 이것이 바로 DevOps이구나. 이것이 바로 내가 원하던 것이구나.' 찰스 윌리엄스(Charles Williams) 서비스 전략 및 협업 담당 선임 이사 NBCUniversal
결과 스토리
속도와 품질을 위한 자동화

뉴욕에 있는 NBCUniversal의 텔레비전 그룹은 조직의 DevOps 여정이 어떻게 형성되었는지를 보여주는 예입니다. 이 특정 사업부는 NBCUniversal의 텔레비전 배포 부문으로, NBCUniversal이 소유한 모든 방송국의 방송 콘텐츠 일정을 부분적으로 담당하고 있습니다. 앞서 언급했듯이 Compass 애플리케이션은 이러한 작업의 핵심입니다.

Comas와 그의 팀은 대규모 .net 기반 앱인 Compass의 개발을 약 18개월 전에 UrbanCode 플랫폼으로 마이그레이션했습니다. "이전의 Compass 프로세스는 'manu-matic' 프로세스와 같다고 설명할 수 있습니다. 코드를 리포지토리에 커밋하고 빌드 버튼을 수동으로 클릭한 다음 환경에 배포하는 식입니다. 환경에 배포한 후에는 기본적으로 QA 팀이 처리해야 했습니다."라고 그는 말합니다. "그래서 일주일 정도가 지나고 결과가 나오면 또 다른 빌드를 하고 QA로 다시 보내는 식이었습니다. 따라서 애플리케이션의 출시 시간이 매우 길어 릴리스하는 데 20주가 걸렸습니다. 그렇게 오래 걸린 이유 중 하나는 QA 팀이 비즈니스 요구 사항을 충족하거나 충족하지 못할 수 있는 릴리스에 대해 본격적인 테스트를 수행했기 때문입니다."

Compass 애플리케이션 팀의 목표는 이 시간을 75% 단축하여 5주로 단축하는 것이었습니다. "UrbanCode 플랫폼으로 이전한 후 목표를 달성할 수 있었습니다. 실제로 우리는 출시 기간을 2주까지 단축할 수 있을 것으로 기대하고 있습니다."라고 Comas는 말합니다. 먼저, 팀은 QA 자동화를 Compass 워크플로와 통합하여 배포할 때마다 수많은 QA 테스트를 수동으로 실행할 필요가 없게 되었습니다. "우리는 시프트 레프트 테스트부터 시작했습니다. 애플리케이션 릴리스를 단위 테스트하고 코드 커버리지 분석을 수행하는 동시에 다양한 비즈니스 요구 사항을 관찰하고 이를 실행하는 테스트를 만드는 소규모 기능 테스트를 시작했습니다. 따라서 릴리스가 QA 팀에 도착하여 완전히 작동하고 회귀 테스트를 진행하기 전에 릴리스가 좋은지 아닌지 즉각적인 피드백을 받을 수 있었습니다. 그 자체로 작업 속도가 크게 빨라졌습니다."

NBCUniversal의 DevOps 접근 방식은 또한 배포의 사일로를 무너뜨렸습니다. "이전에는 주로 화요일과 목요일 저녁과 같은 특정 요일에만 릴리스가 가능했고, 이 기간을 놓치면 다음 기간까지 릴리스를 할 수 없었습니다."라고 Comas는 말합니다. "이제 Compass Run 팀과 협력하여 프로덕션에 훨씬 더 자주 배포할 수 있게 되었고, 그 결과 더 작은 규모의 릴리스를 더 자주 수행할 수 있게 되었습니다. 따라서 민첩성이 훨씬 뛰어나고 비즈니스 요구 사항을 훨씬 더 빠르게 충족할 수 있습니다. 한마디로, 코드 품질이 향상되고 속도가 빨라졌으며 비즈니스 요구 사항을 훨씬 더 빠르게 충족할 수 있게 되었습니다."

기술적 관점에서 Comas는 UrbanCode 플랫폼을 통해 다양한 도구를 하나의 자동화된 워크플로에 통합할 수 있어 개발자에 대한 과도한 의존도를 없앨 수 있다고 말합니다. "UrbanCode를 사용하면 개발자가 적절한 단위 테스트 없이 코드를 커밋하면 플래그가 지정됩니다. 개발자가 워크플로의 일부로 이를 가지고 있지 않았다면 알 수 없는 일입니다. 애플리케이션 상태를 알려주는 프로세스에 대한 피드백도 없었을 것입니다. Compass 워크플로는 아마도 우리가 가진 가장 포괄적인 자동화 기술일 것이며, 이 기술은 애플리케이션 품질을 높이고 빌드 품질을 크게 개선하는 데 도움이 됩니다. 뿐만 아니라 비즈니스가 원하는 변화를 훨씬 더 빠르게 제공하고 있습니다. 이것이 바로 우리가 이 DevOps 여정을 하는 궁극적인 목표이자 이유입니다."

Williams와 Comas에게 DevOps는 신뢰와 확신을 구축하고 소프트웨어 제공 라이프사이클에서 예측 가능성, 속도 및 품질을 확립할 수 있게 해주는 기술입니다. "우리는 애플리케이션 팀에 품질 수준과 서비스 수준을 보장하는 강력한 인프라를 제공하고 있습니다."라고 Comas는 말합니다. 실제로 DevOps 팀은 이제 사업부에서 더 큰 프로젝트를 도와달라고 요청할 만큼 충분한 신뢰를 얻고 있습니다. "기능이 유연하고 확장 가능하며 매우 촉박한 일정에 맞춰 제공할 수 있다는 것을 입증한 후, 프로젝트 볼륨이 10개에서 60개 이상으로 6배 증가했습니다. 우리는 이전에는 경험하지 못했던 수준의 자신감을 가지고 애플리케이션 제작 경로를 제공하고 있습니다."
 

… 코드 품질이 향상되고 속도가 빨라졌으며 비즈니스 요구 사항을 훨씬 더 빠르게 충족할 수 있습니다. John Comas 플랫폼 DevOps 관리자 NBCUniversal
NBCUniversal

NBCUniversal은 뉴욕시에 본사를 둔 다국적 멀티미디어 대기업입니다. 약 300억 달러의 매출을 올리는 이 회사는 주로 미디어 및 엔터테인먼트 산업에 종사하고 있습니다. 가장 중요한 부서 중에는 NBC 텔레비전 네트워크와 주요 영화 스튜디오인 Universal Studios가 있습니다. Universal Parks & Resorts 사업부를 가진 세계에서 세 번째로 큰 놀이 공원 운영업체이기도 합니다.
 

다음 단계 안내

IBM UrbanCode 소프트웨어 또는 IBM Cloud for Skytap Solutions에 대해 자세히 알아보려면 IBM 영업 담당자 또는 IBM 비즈니스 파트너에게 문의하거나 다음 웹사이트를 방문하세요. 


더 많은 고객 사례 보기 또는 IBM Cloud에 대해 자세히 알아보기

PDF 보기 동영상 보기: 대규모 다중 속도 엔터프라이즈 전반에서 DevOps를 확장하는 NBCUniversal
각주

© Copyright IBM Corporation 2016. IBM Cloud, Route 100, Somers, NY 10589 2016년 11월 미국에서 제작. IBM, IBM 로고, ibm.com 및 UrbanCode는 전 세계 여러 국가에 등록된 International Business Machines Corp.의 상표입니다. 기타 제품 및 서비스 이름은 IBM 또는 다른 회사의 상표일 수 있습니다. 최신 IBM 상표 목록은 ibm.com/legal/copytrade.shtml의 '저작권 및 상표 정보'에서 확인하세요. 이 문서는 최초 발행일을 기준으로 최신 상태로 업데이트된 문서로, 내용은 언제든지 IBM에 의해 변경될 수 있습니다. IBM이 현재 영업 중인 모든 국가에서 모든 제품이 제공되는 것은 아닙니다. IBM 제품 및 프로그램으로 다른 제품 또는 프로그램의 작동을 평가하고 확인하는 것은 사용자의 책임입니다. 본 문서의 정보는 상품성, 특정 목적에의 적합성, 비침해성 보증 또는 조건을 포함하여 명시적 또는 묵시적 보증 없이 '있는 그대로' 제공됩니다. 제품 제공 시의 계약 조건에 따라 해당 IBM 제품을 보증합니다. IBM의 향후 향방 및 의도와 관련된 진술은 사전 통보 없이 변경 또는 철회될 수 있으며, 목표와 목적만을 나타냅니다.