CALMS란 무엇인가?
CALMS는 Culture(문화), Automation(자동화), Lean(간소화), Measurement(측정), Sharing(공유)의 약자로, 소프트웨어 제공 및 운영 개선을 위한 여정을 안내하는 데 널리 인정받는 데브옵스(DevOps) 커뮤니티의 프레임워크이다.
CALMS의 원칙을 통합함으로써 기업들은 지속적인 개선, 효율성, 및 협업을 장려하는 것뿐 아니라 팀의 작업 방식에 깊이 뿌리내릴 수 있도록 하는 환경을 조성하고자 한다.
CALMS라는 약어의 기원은 소프트웨어 개발(Dev)과 소프트웨어 운영(Ops)의 통합을 목표로 하는 일련의 관행인 데브옵스에 대한 초기 논의로 거슬러 올라간다.
테코피디아가 설명하는 CALMS의 의미
CALMS라는 약어는 기업이 데브옵스 방법론을 성공적으로 구현하기 위해 해결해야 할 주요 요소들을 포괄하기 위해 만들어졌다.
시간이 지남에 따라 CALMS의 정의는 기술 프로세스뿐만 아니라 문화적 변화를 강조하면서 조직 혁신을 위한 포괄적인 가이드로 발전했다.
CALMS의 다섯 가지 원칙
CALMS 프레임워크는 데브옵스 관행을 구현하기 위한 기본 가이드를 제공하며, 문화, 자동화, 간소화, 측정, 공유에 중점을 둔다. 각 원칙은 IT 운영 및 소프트웨어 개발의 효율성과 효과성을 향상시키는 응집력 있는 전략을 구축하는 데 중요한 역할을 한다.
문화 (Culture)
문화는 개발팀과 운영팀 간의 전통적인 사일로를 허무는 협업 환경의 필요성을 강조하는 CALMS 프레임워크의 초석이다.
데브옵스의 맥락에서 문화란 열린 소통, 책임 공유, 실패로부터의 학습이 가치 있게 여겨지는 분위기를 조성하는 것을 의미한다. 이러한 문화적 변화는 조직의 변화를 촉진하고 협업을 장려하며, 모든 구성원이 공통의 목표를 향해 나아갈 수 있도록 하는 데 필요하다.
강력한 데브옵스 문화는 더 혁신적인 솔루션, 더 빠른 문제 해결, 그리고 보다 동기 부여된 인력을 이끌어낸다.
자동화 (Automation)
자동화는 수동 개입을 최소화하여 소프트웨어 개발 및 배포 프로세스의 효율성과 안정성을 높이는 데 중점을 둔다. 여기에는 코드 통합, 테스트, 배포, 인프라 프로비저닝과 같은 반복적인 작업을 자동화하기 위한 도구와 관행을 사용하는 것이 포함된다.
데브옵스에서 자동화는 프로세스를 가속화할 뿐만 아니라 오류 발생 가능성을 줄여 소프트웨어가 더 빠르고 일관되게 전달될 수 있도록 보장한다.
데브옵스 관행 내에서 자동화를 촉진하기 위해 Jenkins, Ansible, Docker와 같은 인기 있는 도구들이 자주 사용된다.
간소화, 린 (Lean)
제조업에서 채택한 린 방법론은 낭비를 최소화하면서 고객의 가치를 극대화하기 위해 IT 운영에 적용된다. 여기에는 부가가치가 없는 활동을 식별 및 제거하고, 프로세스를 간소화하며 지속적인 개선 관행을 구현하는 것이 포함된다.
데브옵스의 맥락에서 린 원칙을 적용하면 소프트웨어 제공 속도를 높이고 제품 품질을 향상시키며 운영 효율성을 개선할 수 있다.
린 방법론을 채택하면 주기 시간 단축, 비용 절감, 고객 만족도 향상 등의 이점을 얻을 수 있다.
측정 (Measurement)
측정은 데브옵스 관행의 성과를 객관적으로 평가하기 위해 메트릭 및 핵심 성과 지표(KPI)를 사용하는 것을 의미한다. 이는 소프트웨어 개발 및 배포 프로세스의 다양한 측면을 추적하여 개선할 영역을 식별하고, 정보에 기반한 결정을 내리며, 변화의 영향을 측정하는 것을 포함한다.
효과적인 측정 방법에는 배포 빈도, 변경 리드 타임, 실패율 및 복구 시간 모니터링이 포함된다. 데이터 기반 통찰에 집중함으로써 조직은 데브옵스 프로세스를 지속적으로 개선하고 더 높은 효율성과 효과성을 추구할 수 있다.
공유 (Sharing)
공유 원칙은 조직 내에서 지식, 경험 및 관행을 퍼뜨리는 것의 중요성을 강조한다. 공유를 장려하는 것은 투명성, 혁신 및 지속적인 학습의 문화를 구축하는 데 도움이 된다.
여기에는 팀원들이 서로 통찰, 학습한 교훈 및 모범 사례를 공유할 수 있는 플랫폼과 기회를 만드는 것이 포함된다.
위키, 내부 블로그, 정기적인 모임과 같은 도구, 그리고 페어 프로그래밍, 교차 기능 교육과 같은 전략이 효과적인 공유를 촉진할 수 있다.
공유를 통해 팀은 도전 과제를 더 효율적으로 극복할 수 있고, 공동체 의식과 공통의 목적 의식을 키울 수 있다.
CALMS는 어떻게 작동하는가?
데브옵스 환경 내에서 CALMS 프레임워크를 구현하려면 소프트웨어 개발과 IT 운영의 모든 측면을 고려한 신중한 접근 방식이 필요하다.
조직은 문화, 자동화, 린, 측정, 공유의 다섯 가지 요소에 집중함으로써 지속적인 개선과 운영 효율성에 도움이 되는 협업 환경을 조성할 수 있다.
각 원칙을 구현하는 방법과 도구 및 관행의 예, 성공적인 조직 혁신에 대한 인사이트는 다음과 같다.
원칙 | 데브옵스 환경에서의 구현 | 도구 및 관행
|
예시 |
문화
|
|
|
스포티파이의 “길드(Guilds)” 및 “스쿼드(Squads)” 모델은 자율성과 협업을 촉진하여 효과적인 지식 공유와 팀워크를 가능하게 한다. |
자동화
|
|
|
넷플릭스는 CD에는 Spinnaker를, 인프라 관리에는 Terraform을 사용하여 배포 안정성과 속도를 향상시킨다. |
린
|
|
|
토요타는 IT에 린 방법론을 도입하여 소프트웨어 제공 속도와 운영 효율성을 개선하였다. |
측정 |
|
|
구글은 DORA 메트릭을 사용하여 데브옵스 효과성을 측정하고 데이터 기반의 개선을 이루어낸다. |
공유
|
|
|
깃허브는 내부 문서화와 오픈 소스 기여를 통해 공유를 촉진하고 투명하고 협력적인 문화를 만든다. |
CALMS 사례 연구
미국 연방총무청(GSA)의 혁신은 CALMS 프레임워크의 효과적인 구현을 통해 IT 운영 및 소프트웨어 개발 프로세스를 크게 개선할 수 있음을 보여주는 강력한 사례 연구이다.
배경
연방총무청은 연방 기관의 기본 기능을 관리하고 지원하기 위해 설립된 미국 정부의 독립 기관이다.
CALMS 프레임워크를 채택하기 전, GSA는 느린 배포 시간, 부서 간의 경직된 분리, 비효율적인 프로세스, 변화에 저항하는 문화 등 대규모 정부 기관에서 흔히 발생하는 여러 가지 문제에 직면해 있었다.
목표
GSA는 IT 운영을 혁신하여 효율성, 민첩성, 공공 및 기타 정부 기관의 요구에 대한 대응력을 향상하는 것을 목표로 삼았다.
주요 목표는 배포 시간을 줄이고, 협업과 혁신의 문화를 조성하며, 디지털 서비스의 신뢰성과 보안을 개선하는 것이었다.
구현
- 문화: GSA는 여러 부서로 구성된 팀이 함께 일하고 성공과 실패를 공유하도록 장려함으로써 개방과 협업의 문화를 조성하는 데 중점을 두었습니다. 리더십은 신뢰, 투명성, 지속적인 학습의 가치를 장려하여 이러한 문화적 변화를 주도하는 데 중요한 역할을 했다.
- 자동화: 프로세스를 간소화하고 배포 시간을 줄이기 위해 GSA는 지속적인 통합 및 배포(CI/CD)와 인프라 관리에 다양한 자동화 도구를 도입했다. 이를 통해 수작업을 줄이고 오류 위험을 낮추면서, 더 빈번하고 신뢰할 수 있는 배포가 가능해졌다.
- 린: GSA는 린 원칙을 적용하여 낭비를 식별하고 제거함으로써 프로세스를 최적화하는 작업을 했다. 이는 작업 흐름을 매핑하고 불필요한 단계를 제거하며, 부가가치가 높은 활동에 집중하는 것이 포함되었다. 린 접근 방식은 서비스 제공 속도를 높이고 비용을 절감하는 데 도움을 주었다.
- 측정: GSA는 프로세스의 효과와 변화의 영향을 측정하기 위해 강력한 메트릭 및 KPI 시스템을 구현했다. 이러한 데이터 기반 접근 방식을 통해 정보에 기반한 결정을 내리고, 개선이 필요한 영역에 집중하며, 데브옵스 이니셔티브의 가치를 입증할 수 있었다.
- 공유: 지식 공유는 내부 기술 세미나, 워크숍 및 문서와 모범 사례를 위한 공유 저장소 생성을 포함한 다양한 이니셔티브를 통해 장려되었다. 이는 집단 지식 기반을 구축하고 지속적인 개선과 혁신의 문화를 조성하는 데 기여했다.
결과
CALMS 프레임워크의 도입으로 GSA는 다음과 같은 주목할 만한 성과를 거두었다:
- 배포 시간이 몇 개월에서 며칠로 단축되어 혁신의 속도와 변화에 대한 대응력이 크게 향상되었다.
- 팀 간 협업과 소통이 강화되어 경직된 분위기를 허물고 전체 효율성을 개선하였다.
- 디지털 서비스의 신뢰성과 보안이 향상되어 공공 및 다른 정부 기관 모두에 혜택이 돌아갔다.
어떻게 CALMS가 데브옵스의 성공을 이끄는가
CALMS 프레임워크는 데브옵스에서 더 빠른 배포, 향상된 신뢰성 및 더 높은 소프트웨어 품질을 달성하는 데 기여한다. 다음은 CALMS가 이러한 결과를 가져오는 방법과 이러한 목표를 달성하는 데 있어 상호 의존적인 요소의 중요성에 대해 설명한다.
더 빠른 배포
- 자동화는 배포 프로세스를 가속화하는 데 핵심적인 역할을 한다. 코드 통합, 테스트 및 배포와 같은 작업을 자동화함으로써 CALMS는 수동 병목 현상을 없애고 개발에서 프로덕션으로 이동하는 데 필요한 시간을 줄인다.
- 린 원칙은 프로세스를 더욱 간소화하여 가치를 창출하는 작업에만 집중할 수 있도록 함으로써 자연스럽게 개발 주기를 단축한다.
신뢰성 향상
- 측정은 신뢰성을 향상시키는 데 중요한 역할을 한다. 팀은 성능을 지속적으로 모니터링하고 주요 지표를 추적함으로써 사용자에게 영향을 미치기 전에 선제적으로 문제를 파악하고 해결하여 시스템의 안정성과 신뢰성을 높일 수 있다.문화는 최종 제품의 안정성에 대한 공동 책임 의식을 장려하며, 일상적인 작업 흐름의 일환으로 사전 모니터링 및 사건 대응과 같은 관행을 조성한다.
소프트웨어 품질 향상
- 조직 전반에 걸친 지식 및 모범 사례의 공유는 소프트웨어 품질을 향상시킨다. 팀이 코드 품질, 테스트 전략 및 효과적인 문제 해결에 대한 통찰을 공유할 때, 집단적인 전문성이 더 나은 소프트웨어 구축에 기여한다.
- 자동화는 테스트가 일관되게 수행되고 철저하게 진행되어 개발 주기 초기에 버그를 잡아낼 수 있도록 보장하며, 이는 소프트웨어의 전반적인 품질에 직접적으로 기여한다.
CALMS 원칙의 상호 의존성
CALMS의 원칙들은 깊게 연결되어 있으며, 각 원칙은 다른 원칙을 지원하고 강화하는 역할을 한다:
- 협업과 개방의 문화는 지식과 모범 사례의 효과적인 공유에 필수적이다.
- 프로세스의 자동화는 가장 가치 있는 영역을 식별하는 린 관행에 의해 더욱 효과적으로 이루어진다.
- 성과의 측정은 데이터 기반 결정을 중시하는 문화에 의존하며, 측정을 통해 얻은 통찰은 모든 영역에서 지속적인 개선을 위한 정보를 제공한다.
팀 역동성, 협업 및 조직 문화에 미치는 영향
- 문화 원칙은 협업이 개인의 성취보다 중요시되는 환경을 조성함으로써 팀 역학에 직접적인 영향을 미친다. 이는 강한 팀 결속력과 공유된 목적 의식을 촉진한다.
- 공유는 협업의 기반을 마련하여 팀들이 도움을 주고받는 데 더 기꺼이 나서게 하며, 이는 혁신과 문제 해결을 촉진한다.
-
CALMS의 장점 및 단점
CALMS 프레임워크를 채택하면 조직의 데브옵스 접근 방식에 영향을 미쳐 다양한 이점을 가져다주기도 하고, 몇 가지 도전 과제를 가져오기도 한다. 이를 이해하면 조직이 데브옵스 여정을 보다 효과적으로 탐색하는 데 도움이 될 수 있다.
CALMS 프레임워크 측면
|
장점
|
단점
|
운영 효율성
|
|
|
제품 품질
|
|
품질에 대한 효과적인 지표를 파악하는 것이 어려울 수 있다. |
직원 만족도
|
|
문화적 변화에 대한 저항이 채택 과정을 더디게 할 수 있다. |
협업 및 소통
|
|
기존의 경직된 구조와 소통 장벽이 초기에는 진행을 방해할 수 있다. |
프로세스 최적화
|
|
낭비를 식별하고 해결하기 위한 지속적인 노력이 필요하다. |
적응력과 탄력성
|
|
새로운 프로세스와 도구에 적응하는 데 회의적인 반응이 있을 수 있다. |
지식 공유
|
|
공유를 위한 효과적인 플랫폼과 관행을 구축하는 데 시간이 소요될 수 있다. |
결론
CALMS 프레임워크는 데브옵스의 핵심으로, 문화 자동화, 린, 측정, 공유라는 원칙을 통해 소프트웨어 개발 및 운영을 간소화한다. 이는 협업 문화를 강화하고, 전달 속도를 가속화하며, 품질을 보장하고, 조직의 요구와 산업 트렌드에 맞춰 지속적인 개선을 도모할 수 있도록 지원한다.
자주 묻는 질문
CALMS란 무엇인가요? 간단히 설명해 주세요.
CALMS 방법론이란 무엇인가요?
CALMS 프레임워크는 누가 만들었나요?
참고 자료
- Jenkins (Jenkins)
- Automation for everyone (Ansible)
- Discover the Spotify model (Atlassian)
- Automate infrastructure on any cloud with Terraform (Terraform)
- From metrics to insight (Prometheus)
- Delivering effective and efficient government services for the American people (U.S. General Services Administration)
- Fiscal Year 2024 Annual Performance Plan and Fiscal Year 2022 Annual Performance Report (U.S. General Services Administration)