지난 4 22일부터 23일까지 중국 항저우에서 열린 ‘2017년 제10회 중국 녹색기업 총회연설 자리에서 마윈 알리바바 회장이 향후 30년간 인터넷을 잘 이용하지 못하는 기업에게는 끔찍한 상황이 펼쳐질 것이라는 의미심장한 예언을 했습니다. 이에 덧붙여 실물경제와 인터넷은 결합하고 있으며, 이것이 미래의 진정한 경제라며 앞으로 30년동안 보수적 사고방식을 가진 사람이나 기업, 인터넷에 익숙하지 못한 시대를 읽지 못한 사람들에게 다가올 지옥과도 같은 끔찍한 30년에 대해 직접적으로 경고했습니다.  

4차 산업혁명 시대를 앞두고 많은 비즈니스 리더들이 클라우드로의 전환을 계획하고 있는 요즘, SK C&C는 클라우드에 최적화된 애플리케이션 개발 방법론 ‘CNAPS’를 개발하여 기업들의 성공적인 디지털 전환(Digital Transformation)을 돕기 위해 박차를 가하고 있습니다. 기존의 전통적인 IT 시스템을 운영해온 기업들도 쉽고 빠르게 클라우드 네이티브기업으로 탈바꿈하여 향후 4차 산업혁명 시대에 다가올 디지털 혁명에 한 발 앞서 대응 할 수 있는 환경 조성을 위해 힘쓰고 있습니다.  ▶관련기사 자세히 보기http://skccblog.tistory.com/3301 

금융은 물론 통신·제조·유통 등 전() 산업 분야에서 국내 하이브리드 클라우드 시장 공략을 가속화 하기 위해 신규 클라우드 시스템 개발을 주도하며 서비스 도입에 앞장서고 있는 가운데 SK C&C 개발품질혁신팀의 한정헌 수석을 만나 PaaS(Platform as a Service)에서 적용 가능한 클라우드 네이티브(Cloud-native) 애플리케이션 개발방법론 CNAPS(씨냅스, Cloud Native Application development in PaaS)에 대해 좀 더 자세하게 알아보도록 하겠습니다


SK㈜ C&C 개발품질혁신팀의 한정헌 수석


개발 방법론에 기본 개념에 대해 간략하게 설명 부탁 드립니다.

개발방법론이란, SW 개발 사업의 납기 연체, 비용 초과, 품질 저하 등의 고질적인 문제를 해결하기 위하여 SW 개발 과정에서 적용할 수 있는 방법, 절차, 기법 등을 종합해 놓은 것으로 SW 품질과 생산성을 높이기 위한 해결방법입니다.

 

‘CNAPS’ 방법론은 무엇인가요?

‘CNAPS’ 방법론은 클라우드 환경에 최적화된 애플리케이션을 성공적으로 개발할 수 있도록 최신 글로벌 트렌드를 반영하고 자동화 기술을 활용하는 방법론으로 SW 설계, 개발 방식을 근본적으로 혁신하는  개발방법론입니다.

 

‘CNAPS’ 방법론이 필요한 이유는 무엇인가요?

전통적인 IT 시스템을 운영해온 기업들이클라우드 네이티브기업으로 탈바꿈하고 디지털 전환(Digital Transformation)을 성공적으로 달성하기 위해서는 클라우드 인프라 전환 뿐 아니라 클라우드에 최적화된 서비스 개발/운영까지 이루어내어야 합니다. ‘CNAPS’ 방법론은 이를 위한 방법들을 제공하고 있으며, 이를 활용하면  품질이 보장되는 기업용 클라우드 서비스를 빠르고 원활하게 개발할 수 있습니다.

‘CNAPS’ 방법론의 주목할 만한 주요 특징에 대해서 설명 부탁 드립니다.

  마이크로서비스 아키텍처

‘CNAPS’ 방법론의 주요 특징은 하나의 시스템을 각각의 역할을 담당하는 작고 독립된 서비스들로 구성하는 마이크로서비스 아키텍처(Microservice Architecture)를 기반으로 한다는 것입니다. 마이크로서비스 아키텍처는 클라우드 환경에서 서비스를 개발/운영하기 위해 최적화된 구조인데, 급변하는 기업의 비즈니스 변화를 실시간으로 반영하기 위해서는 필수적입니다. 클라우드 서비스를 마이크로서비스 구조를 가진 애플리케이션으로 개발, 운영을 하게되면, 시스템 중단 없이 실시간으로 서비스를 부분 변경, 대체, 배포, 확장을 할 수 있기 때문입니다. 기존의 일체형 구조로 시스템을 개발하는 방식은 단세포 생물에, 마이크로서비스 구조로 시스템을 개발하는 방식은 다세포 생물에 비유해서 설명할 수 있습니다. 하나의 세포안에 모든 기능이 들어있는 단세포 생물과 다르게, 다세포 생물은 특정 역할을 가진 세포들(신경세포, 근육세포, 적혈구 등)이 상호 작용하는 방식으로 하나의 개체를 구성합니다. 다세포 생물은 세포 분열과 소멸을 통해 기능이 다한 세포를 새로운 세포로 교체하거나, 필요에 따라 특정 세포의 개수를 증가시키거나 감소시키는 방식으로 생명을 유지합니다. 이러한 다세포 생물의 생존 특성은 마이크로서비스의 운영 특성과 동일하다고 볼 수 있습니다.

  도메인 주도 설계

마이크로서비스 아키텍처 구성을 위한 설계기법은 기술과 분리하여 비즈니스의 특성만을 그대로 담아내는 도메인 주도 설계(Domain Driven Design) 방식을 사용하여 소프트웨어의 복잡성을 줄이고 기술 종속성을 탈피하도록 했습니다. 이는 애플리케이션의 서비스 모델 설계 시 비즈니스 중심으로 설계를 하는 것으로 개발자와 고객 간의 이해와 소통이 원활해지고 유지보수가 용이해진다는 장점이 있습니다. 또한 기술영역과 비즈니스영역을 분리하였기 때문에 기술이 변화하는 경우 레고 블럭을 조립 하듯이 변화하는 기술영역만 대체할 수 있습니다. 

  자동화 도구 활용

이외에도 ‘CNAPS’ 방법론은 설계부터 구현테스트배포에 이르기까지 다양한 자동화 도구를 활용하여 개발 속도와 품질은 높이면서 비용은 낮출 수 있도록 합니다.

 

최근 ‘CNAPS’ 방법론 적용 사례가 있다면 어떤 것들이 있을까요?  

  Learning Portal 구축사례

SK C&C ‘16년도 7월부터 올해 3월까지 ‘CNAPS’ 방법론을 적용하여 사내 구성원의 주도적 역량개발 활동을 위한교육/지식 컨텐츠 통합 Learning Portal’ 서비스를 성공적으로 구축하였습니다. 클라우드에 최적화된 애플리케이션으로 개발된 ‘Learning Portal’ 서비스는 교육과정, 교육수강, 컨텐츠 등을 관리하는 교육서비스와 외국어, 자격증, 전문가 등의 활동을 관리하는 전문가 서비스, 그리고 설문, 시험, 피드백 등 보조적인 기능을 담당하는 보조업무 서비스 등 다수의 마이크로서비스로 개발되어 운영되고 있으며, 기존의 노후화되고 컨텐츠/기능 확장이 어려웠던 과거 시스템을 성공적으로 대체하였습니다.


‘CNAPS’ 방법론을 적용했을 때 기대 할 수 있는 효과가 있다면?

  빠른 비즈니스 서비스 런칭 가능

기존에는 비즈니스 변경사항을 적용할 때 전체 시스템을 중단해야만 했고, 부분을 수정하더라도 전체를 배포하므로 시스템 전체 장애가 발생할 수 있는 위험성이 있었습니다. 이로 인해 애플리케이션을 빠르고 즉각적으로 수정하고, 배포하기 어려웠습니다. 하지만 ‘CNAPS’ 방법론에서 제시하는 마이크로서비스 구조로 애플리케이션을 개발, 운영하면 비즈니스 변경사항을 적용할 때 전체 시스템을 중단하지 않고 부분적으로 배포가 가능하여 시스템 전체 장애 발생 위험성을 줄일 수 있습니다. 이로 인해 필요 시 빠르고 즉각적인 서비스 변경, 배포가 가능해집니다. 

  Learning Portal 구축사례

기존 일체형으로 시스템을 구축했을 때는 사용량이 많은 특정 기능만 성능 확장을 할 수 없었고, 일체형 구조 전체에 대해서 성능을 확장시켜야 했습니다. 이로 인해 성능확장에 비용이 많이 들어갔습니다. 하지만 클라우드에 최적화된 마이크로서비스 기반 애플리케이션으로 구축하여 사용량이 많은 특정 서비스만 선택적으로 성능 확장이 되도록 자원 사용을 최적화할 수 있는 데, 이를 통해 기존 대비 비용절감이 가능합니다.

  단순/독립적인 애플리케이션 구조로 유지보소 생산성 증대

기존 개발의 경우 기능들이 복잡하게 얽혀있고, 변경 영향도 파악이 쉽지 않아 분석 및 수정, 테스트 등에 많은 시간이 소요되었습니다. ‘CNAPS’ 방법론에서 제시하는 도메인 주도 설계를 통해 기술과 비즈니스를 분리시키고 비즈니스를 단순, 명료하게 설계하면 기능 및 영향도 파악이 쉬워져서 분석 및 수정, 테스트 등을 보다 용이하게 수행할 수 있습니다.


 앞으로의 계획에 대해 말씀해 주시기 바랍니다.

‘CNAPS’ 방법론을 활용하면 기업의 클라우드 서비스의 개발은 물론 애플리케이션 개발 최적화를 통해 클라우드 도입효과를 극대화 시킬 수 있습니다. 우선 ‘CNAPS’ 방법론의 사내확산을 통해 우리회사의 클라우드 최적화 애플리케이션 개발역량을 향상시키고, 국내 기업들이 빠르게 클라우드 네이티브 기업으로 변신할 수 있도록 성공적인 클라우드 서비스 개발을 지원하겠습니다





저작자 표시 비영리 변경 금지
신고

티스토리 툴바