인시던트 관리 프로세스의 숨겨진 집단행동 분석
- 작성일2021/12/29 15:53
- 조회 852
2017년에 진행된 프로세스 마이닝 캠프(Process Mining Camp)의 마무리 단계에서 우리는 매년 개최하고 있는 ‘Process Miner of the Year’ 시상식을 두 번째로 열게 되었습니다.
이 상의 목적은 고무적이고 매력적이며 흥미로운 프로세스 마이닝 사례를 발굴하여 확산하는 것입니다. 이러한 사례는 프로세스 마이닝의 강력함을 증명하고, 조직 전반에 혁신적인 변화를 가져왔던 프로젝트를 말하는 것입니다. 이러한 훌륭한 프로세스 마이닝 프로젝트에서 배운 통찰력이 여러분 모두와 프로세스 마이닝을 새롭게 접하는 분들에게 영감을 주기를 기대합니다.
우리는 ‘Process Miner of the Year’ 상의 수상자로 중남미 최대의 이동통신회사인 ‘텔레포니카(Telefónica)’를 선정하였습니다. 그들은 프로세스 마이닝을 활용하여 ‘운영관행(operational drifts)’을 다룰 수 있는 강력한 방법을 증명했습니다 예상치 못한 시나리오를 맞닥뜨릴 때 사람들은 해당 문제를 해결하기 위해 기존 작업방식이나 문화를 조정합니다. 만약 이러한 조정이 표준 프로토콜로 고착화되면 그것은 프로세스 자체에서 보이지 않게 됩니다. 텔레포니카는 프로세스 마이닝을 활용하여 발생한 문제에 대한 우회적인 해결방법과 이로 인해 발생하는 비효율을 시각화하는 방법을 발견했습니다.
텔레포니카의 수상을 진심으로 축하합니다.
프로세스 마이닝을 활용한 인시던트 관리 프로세스의 숨겨진 집단행동 분석
요약
텔레포니카는 21개국, 3억 명 이상의 고객을 보유하고 있는 글로벌 통신 회사이다. 이 회사의 다양한 팀들은 디지털 서비스들로 구성된 포트폴리오를 관리하고 있다. 이 팀들은 전 세계에서 24시간 운영되는 복잡한 조직이다. 이들은 일련의 규칙과 프로토콜을 따라야 한다. 해당 팀들의 컴플라이언스 준수가 프로세스 마이닝을 포함한 데이터 기반의 기법으로 분석될 수 있었다.
운영관행(operational drift)[1]을 찾아내는 작업은 매우 도전적인 과제이다. 왜냐하면 관련 팀들의 비공식 작업 문화로 발생하는 더딘 변화는 처음에는 서비스 품질에 심각한 영향을 줄 정도로 극적이지 않기 때문이다. 일반적으로 운영관행은 전체 프로세스 맵을 변화시키지 않기 때문에 숙달된 분석가라도 이 문제점을 쉽게 발견할 수 없다. 게다가 분석 팀은 수십 개의 서로 다른 서비스를 조사해야했기에 신뢰할 수 있는 초기 이상 징후가 필요했다. 이런 이유로 운영관행을 찾아 내는 것은 매우 힘든 작업이 되었다.
“인시던트 관리의 숨겨진 운영관행이 고착화되어 있었습니다. 이러한 관행은 해당 서비스의 실제 상태를 숨기고 있었습니다.”
– 텔레포니카의 Javier García Algarra
이 사례 아티클에서 우리는 잘못된 운영관행의 발견과 해결에 도움이 되는 전략을 설명할 것이다. ‘심각도(severity)’는 인시던트 관리[2]에서 ‘인시던트(사고)가 얼마나 심각한가’를 나타내는 중요한 지표(변수)이다. 특정 인시던트의 ‘심각도’를 설정하고 수정하는 데에는 명시적인 규칙이 있다. 이 ‘심각도’ 변화의 비정상적인 비율들과 이러한 비율들이 예기치 않게 집중되는 지점을 탐색하는 것이 운영관행을 발견하기 위한 탁월한 대용방법(proxy)임이 증명되었다.
이제부터 하나의 핵심 서비스에서 운영관행의 근본적인 원인을 탐색하는 과정을 설명할 것이다. 결론부터 말하면, 인시던트 관리 프로세스의 예기치 않았던 운영관행이 결국 고쳐졌다.
분석 기업
텔레포니카 I+D는 텔레포니카 그룹의 R&D를 담당하고 있는 자회사이다. 이 회사는 1988년에 설립되었으며, 그 미션은 기술 혁신을 통해 텔레포니카 그룹의 경쟁력과 최신화에 기여하는 것이다. 이런 목표에 부합하기 위해 텔레포니카 I+D는 관련 제품과 향상된 서비스를 개발하는 것뿐만 아니라 새로운 아이디어와 개념, 사례 등을 적극적으로 적용하고 있다.
프로세스 마이닝을 수행한 그룹(팀)은 텔레포니카 I+D의 운영과 효율적인 배치에 관한 모범사례를 정의하거나 감사하는 일을 담당하고 있다. 우리는 이러한 활동에 의해 생성된 데이터의 품질을 보증하며, 각 지역의 분석 전략을 정의하고 있다. 또한 정의된 분석 전략을 실행하기 위한 분석역량과 조언을 회사 내의 다른 부서들에게 제공하고 있다.
분석 근거
순응도 검사(conformance checking)는 프로세스 분석에서 가장 중요한 작업 중 하나로 꼽힌다. 어떤 비즈니스라도 품질기준을 충족하기 위해 올바른 프로토콜을 따라야 한다. 그러나 때때로 이것만으로는 충분하지 않을 수 있다. 예를 들어, 문제의 해결방안에 일부 불확실성이 존재한다면 직원들로 구성된 팀들은 발생한 문제를 해결하려고 할 때 그들의 비공식 작업방식을 일부 수정해서 예기치 못한 시나리오들을 해결할 수도 있다. 비록 그들이 프로토콜을 위반한 것은 아니지만 약간의 창의적인 우회 해결책이 비효율적인 행동을 야기할 수 있는 것이다.
2016년 동안 우리는 수십 가지 디지털 서비스에서 발생하고 있는 운영관행의 초기 징후를 자동으로 탐지하기 위해 노력해왔다. 시계열 분석 결과, 트래픽(traffic)이나 고객 수의 급격한 증가와 같은 중요한 변화를 반영하는 좋은 지표가 발견되었다. 그러나 그러한 중요한 변화 외에도 조용하고 눈에 띄지 않게 일어나는 일상적인 행동의 작은 변화가 있었다. 이러한 행동 변화는 기록되지는 않으면서도 조직의 비공식 관행의 일부가 되고 있었다. 이러한 변화들은 포착하기가 매우 어렵다. 왜냐하면 그러한 변화가 규칙을 명백하게 어긴 것이 아니기 때문이다. 또한 현업 팀들은 이러한 우회 해결책이 잠재적으로 위험성을 가지고 있다고 느끼지도 않고 있기 때문이다.
“프로세스 마이닝 분석을 수행한 결과, 이미 기록된 정보를 ‘조작’할 필요 없이 실질적인 가용성을 반영할 수 있도록 운영 보고서가 수정되었다.”
- 텔레포니카의 Javier García Algarra
인시던트 관리 시스템에 등록된 문제 티켓[3]의 속성들 중의 하나인 ‘심각도(severity)’의 변화 패턴을 분석함으로써 우리는 비정상적인 비율을 가진 서비스를 찾아낼 수 있었다. 우리는 먼저 ‘심각도(Severity)’ 속성의 변화 패턴을 분석한 것이 디지털 서비스들 중의 하나에 어떻게 영향을 끼쳤는가를 설명할 것이다. 다음으로, 프로세스 마이닝의 도움을 받아 관련 문제를 해결한 방법을 설명할 것이다.
인시던트 수명주기와 ‘심각도’ 속성의 변화
우리의 접근법을 설명하는데 사용되는 서비스는 텔레포니카가 개발한 ‘IoT 관리의 연결 서비스(IoT Managed Connectivity Service)’이다. 2017년 5월경, 자동차와 전자상거래 부문의 100만명 이상의 사용자가 독일, 스페인, 브라질, 아르헨티나, 칠레, 멕시코에서 연결되고 있었다.
해당 서비스는 일주일 내내, 24시간 동안 운영 지원을 제공한다. 현업 팀들은 ‘중대(critical)’ 등급의 장애에 대해서는 최대 5시간 이내에, ‘중요(major)’ 등급의 결함에 대해서는 12시간 이내에 제공하고 있는 서비스를 복구해야 한다. 그리고 가용성 목표는 99.5%이다.
‘인시던트’는 계획되지 않은 중단이나 서비스 품질의 저하로 정의된다. 인시던트 관리 프로세스는 최대한 빠르게 장애가 발생한 서비스가 정상적으로 운영되도록 복구하는 것을 보장한다.
전형적인 인시던트 수명주기는 [그림 1]에 표시되어 있다. 일부 예외적인 인시던트는 취소되거나 지연될 수 있다.
[그림 1] 전형적인 인시던트 수명주기
ITIL(IT Infrastructure Library)에 정의된 대로, ‘심각도’는 인시던트의 심각한 정도를 의미하며 다음과 같이 4개의 등급으로 정의했다.
- ‘중대(critical)’: 서비스 중단이 발생했으며 즉각적인 시정 조치가 필요함.
- ‘중요(major)’: 서비스가 부분적으로 손상된 상태. 긴급 수정이 필요함.
- ‘사소(minor)’: 인시던트가 발생하여 서비스가 손상되었으나 그렇게 심각하지는 않은 상태
- ‘경미(slight)’: 인시던트가 아직까진 서비스를 손상시키지 않았으나, 더 심해지기 전에 조치해야 하는 상태
‘심각도’ 속성은 인시던트의 수명주기 동안에 고정된 값이 아니다. 인시던트 발행 그룹이 이 속성의 값을 설정하나, 운영 팀이 잘 정의된 규칙에 따라 중간에 이 값을 수정할 수도 있다. 여기서 우리는 ‘이 속성값이 높은 비율로 변경되는 것은 초기에 잘못된 등급을 해당 인시던트에 부여했거나 숨겨진 경영실수에서 기인한다’라고 가정했다.
데이터
우리는 사내의 케이스 관리 도구인 UDO에서 분석에 활용된 데이터를 수집했다. 정보는 네이티브 API(native API)를 사용하여 수집되었다. 이 시스템은 사람간 모든 상호작용을 기록하고 있다. 그러므로 이 시스템에 기록된 데이터를 분석하면 유용한 정보를 얻을 수 있다.
다운받은 원시 데이터에서 프로세스 마이닝을 위한 적절한 필드를 선택하기 위해 ‘R’을 이용하여 정제되었다. 이러한 사전처리는 ‘Shiny’ 패키지로 구축된 웹 인터페이스로 출시되었다([그림 2] 참조). 그 결과, 선택한 필드들을 포함하는 데이터가 Disco 처리에 사용될 수 있었다.
[그림 2] 분석을 위한 데이터 필드를 선택하는 웹 인터페이스
분석결과
2015년과 2016년에 진행된 이전의 프로세스 마이닝 분석 덕분에 우리는 ‘중요’ 인시던트의 수를 줄였고, 복구시간을 절반으로 줄이는 성과를 달성했다. 2017년에도 기록된 ‘중요’ 인시던트의 수도 2016년만큼 낮게 기록되고 있다.
2016년 말에 우리는 ‘심각도’ 속성의 변화를 지표로 삼아 명백히 드러나지 않는 운영관행을 탐색하기 시작했다. 여기서 ‘IoT 관리의 연결 서비스’는 이러한 변화가 많이 일어난 서비스들 중의 하나였다.
[그림 3]의 프로세스 맵은 2017년에 해당 서비스의 인시던트 관리 동안에 발생한 ‘심각도’ 속성의 변화들을 보여주고 있다. 이 맵은 초기와 최종 ‘심각도’ 값들을 포함한 모든 변화들을 반영한 복잡한 흐름을 보여주고 있다.
[그림 3] 2017년에 일어난 모든 ‘심각도’의 변화(케이스 빈도와 수행시간 중간값)
대체로 서비스 가용성은 ‘중대’와 ‘중요’ 인시던트에 달려 있다. 따라서 우리는 먼저 Disco의 필터링 기능을 사용하여 이러한 ‘심각도’ 속성 값들을 가진 인시던트의 수명주기와 해당 속성 값들의 변화에 초점을 맞췄다. [그림 4]는 ‘중대’ 등급의 ‘심각도’로 시작한 인시던트들의 ‘심각도’ 변화를 보여주고 있다.
[그림 4] ‘중대’ 심각도로 시작한 인시던트들의 ‘심각도’ 변화(케이스 빈도와 수행시간 중간값)
2017년 동안 ‘중대’ 등급의 심각도로 시작한 6개의 인시던트가 있었지만 최종 단계까지 해당 심각도 등급을 가지는 경우는 없었다. 해당 인시던트들은 5분 이내에 ‘중요’ 심각도 등급으로 낮추어졌다. 이는 일반적인 시나리오이다. 인시던트 발행 그룹은 심각한 손상을 발견하여 이를 이슈화한다. 정의에 따르면 ‘중대’ 인시던트는 전 세계적인 영향을 가진다. 운영 그룹은 해당 손상이 이러한 조건을 충족하는지 확인한다. 예를 들어, A 국가에서 연결 문제가 있을 수도 있지만 나머지 국가들에서는 해당 서비스가 정상 작동할 수 있다. 이런 상황이라면 발생한 연결 문제는 글로벌 서비스의 붕괴가 아니다. 따라서 해당 문제는 ‘중요’ 심각도로 재분류된다.
이러한 재분류는 프로토콜에 따른 것이므로 우리는 6개의 인시던트에 대한 ‘심각도’ 관리는 올바르다고 판단했다.
‘중요’ 인시던트는 글로벌 서비스의 붕괴를 야기하지 않는다. 그러나 운영 팀은 이러한 인시던트를 매우 심각한 문제로 간주한다. 예를 들어, 분석 대상 서비스의 ‘중요’ 인시던트는 고객의 업무수행을 방해할 수 있으므로 이 서비스에 대한 SLA(Service Level Agreement) 시간은 매우 엄격하다.
2016년에 수행된 분석에서 우리는 ‘중요’ 인시던트의 수가 2015년에 비해 획기적으로 감소했음을 확인했다. 여기에 2017년의 데이터를 더해도 이 낮은 수준이 유지된다는 것을 확인할 수 있다([표 1] 참조).
[표 1] 2015 ~ 2017년에 등록된 ‘중요’ 인시던트의 수
언뜻 보기에 이 결과는 해당 서비스 운영의 주목할 만한 개선을 나타내는 것처럼 보인다. 그러나 ‘심각도’ 속성의 변경 비율이 높기 때문에 이 경우에 어떤 일이 발생하는가에 대한 상세한 분석이 요구되었다([표 2] 참조).
다른 서비스들(10 ~ 20% 수준)에 비해 ‘IoT 관리의 연결 서비스’의 ‘심각도’ 변화 비율이 비정상적으로 높았다(80% 이상). 그 차이가 분명했기 때문에 우리는 가설 검증을 수행하지 않았다. 그러나 이러한 탐지를 자동화하기 위해서 향후에는 카이제곱 검정이 적용될 것이다.
[표 2] 2016, 2017년에 ‘중요’ 심각도 등급으로 시작되고 종료된 인시던트의 수
인시던트 수명주기의 어떤 지점에서 ‘심각도’ 변경이 발생하였는지 찾아내기 위해 우리는 Disco를 이용한 구체화된 분석을 수행했다. 이를 위해 우리는 ‘갱신된 심각도’와 ‘상태’ 필드를 액티비티로 결합했다([그림 5] 참조).
[그림 5] 2016, 2017년에 발생한 ‘중요’ 인시던트에서 발생한 심각도 변경 동안의 상태 변화 (케이스 빈도와 수행시간 중간값)
2016년 동안 ‘중요’ 등급의 심각도로 시작된 177건의 인시던트가 있었다. 그 중 144건의 인시던트에서 ‘심각도’ 속성의 등급이 ‘사소’로 변경되었다.
좀 더 상세하게 분석해본 결과, 우리는 80건의 인시던트가 ‘Active’ 상태에서 발생한지 겨우 20분(수행시간 중간값 기준)만에 ‘심각도’ 속성의 값을 변경했다는 것을 알 수 있었다. 이것은 잘못 분류된 인시던트의 ‘심각도’ 속성값을 낮추는 것이다. 이러한 행위는 정상적인 것이며 프로토콜에 잘 기재되어 있다.
그러나 인시던트의 복구 이후에 발생한 64번의 ‘심각도’ 속성 값의 변경에 3.8일(수행시간 중간값)이 걸렸다는 것은 주목할만한 사실이다. 이것은 예상하지 못한 발견이다. 왜냐하면 운영 자원들이 ‘중요’ 등급의 인시던트들을 고치는데 투입되기 때문이다. 인시던트의 심각도가 실제로 ‘중요’가 아니었다면 이것은 부족한 인력을 낭비하는 셈이다. 전체 변경의 44%가 이 지점에서 발생했다([그림 5]의 왼쪽 참조).
2017년에도 ‘중요’ 인시던트의 관리에서 발생한 행동이 2016년에 목격된 것과 유사했다. 71건의 ‘중요’ 인시던트가 등록되었으며 이들 중 인시던트 복구 후에 발생한 35건의 ‘심각도’ 속성 값의 변경에 4.6일(수행시간 중간값 기준)이 걸렸다. 이는 전체 변경의 56%를 차지하고 있다([그림 5]의 오른쪽 참조).
이 시점에서 ‘심각도’ 속성의 등급을 낮춘 운영자는 거의 모든 경우에 숙련된 글로벌 ‘서비스 관리 그룹’에 소속되어 있었다([그림 6] 참조).
[그림 6] 2017년에 ‘중요’ 인시던트의 ‘심각도’ 변경을 책임진 운영자
서비스 수준협약(SLA)에 따르면 분석 대상 서비스의 ‘중요’ 인시던트는 12시간 이내에 조치되어야 한다. 위에서 설명한 행동의 원인에 대한 단서를 찾기 위해 우리는 복구된 이후에 심각도 속성의 값을 ‘중요’에서 ‘사소’로 변경한 인시던트의 수명주기를 더 자세히 분석했다(이러한 변화가 발생했던 2017년의 인시던트들을 [그림 7]에서 볼 수 있음).
이러한 인시던트들의 복구를 위한 시간의 중간값은 89.7분이었다. 이 시간은 고객과의 협약에 명시된 12시간보다 훨씬 짧았다([그림 7] 참조). 그렇다면 “이러한 예상치 못한 심각도 속성의 값을 변경하는 행동을 야기한 원인은 무엇일까?” 운영 그룹은 높은 수준의 전문 지식을 가지고 있다. 그러므로 정보나 교육의 부족으로 그러한 행동이 나타났다는 것은 합리적인 설명이 되지 못한다.
운영 팀과 함께 우리는 이러한 행동의 원인을 발견할 수 있었다. 그 원인은 다음과 같다. 고객에게 직접적인 영향을 미치지 않는 ‘중요’ 인시던트들이 존재한다. 잠재적으로 더 큰 문제를 피하기 위해서는 이러한 인시던트들은 긴급히 복구되어야 한다. 예를 들어, 사전 감시(proactive surveillance)는 CPU 사용량이 위험 수준에 도달하거나 하드디스크가 꽉 차고 있는 장비를 포착한다. 이런 상황들은 고객에게 즉각적으로 영향을 미치지 않지만 일단 발견되면 가능한 한 빨리 수정되어야 할 문제들이다.
[그림 7] 2017년에 ‘복구됨’ 상태에서 ‘심각도’ 속성을 변경한 ‘중요’ 인시던트의 수명주기
이러한 인시던트들이 ‘중요’ 심각도로 마감되면 비록 최종 고객에게 어떤 영향도 주지 않았지만 월별 보고서에 ‘중요’ 인시던트로 기록되었을 것이다. 관리 팀들은 이런 보고서를 받았을 것이고, 고객들을 방해할 수 있는 다수의 인시던트들에 대해 우려를 제기했을 것이다.
(인시던트들은 고객들에게 어떠한 실제적인 영향도 주지 않았기 때문에) 이러한 우려는 정당화되지 않는다. 그러므로 해당 인시던트들의 부작용을 보고하는 것을 피하기 위해서 운영 팀들은 복구된 인시던트들의 ‘심각도’ 등급을 ‘중요’에서 ‘사소’로 낮추기 시작했다. 이것은 비공식적이며 숨겨진 업무관행에 해당하는 좋은 예이다.
효과
지금까지의 분석과 예기치 않은 행동이 발생하는 원인에 대한 새로운 이해를 바탕으로 우리는 다음과 같은 두 가지 주요 문제점을 확인했다.
- 인시던트가 해당 도구에 정확하게 등록되지 않았다.
- 비공식적인 해결방법을 통해 고객과 공유된 정보는 신뢰할 수 있지만 내부 정보는 불완전했다. 왜냐하면 실제로는 많은 ‘중요’ 인시던트들이 그렇게 간주되지 않았기 때문이다.
이에 대한 우리의 프로세스 마이닝 분석 결과는 다음과 같다.
- 인시던트 관리에서의 숨겨진 운영관행이 고쳐졌다. 이러한 관행은 서비스의 실제 상태를 숨기고 있었다.
- 운영 보고서는 기록된 정보를 ‘조작’할 필요가 없이 실제적인 가용성을 반영하도록 수정되고 있다.
- 우리는 좀 더 정확하고 신뢰할 수 있는 정보를 리포트에 제공함으로써 고객과의 관계를 개선할 수 있었다.
이제 ‘심각도’ 변화 분석은 매달 작성되는 운영 보고서의 일부가 되었다. 서비스 관리자들이 심각도 변화 비율의 비정상적인 변동을 발견한다면 그들은 Disco를 활용하는 추가 분석을 요청할 수 있다.
저자
Javier García Algarra, 운영데이터 분석 리더
Carmen Lasa Gómez, 데이터 분석가
Fluxicon제공 | PMIG 번역 ( e-mail: info@pmig.co.kr website: http://www.pmig.co.kr/)
[1] 표준 업무절차를 벗어나지 않으나 비공식적으로 수행되고 있는 숨겨진 집단행동을 운영관행이라고 번역함.
[2] 인시던트 관리(IcM: Incident Management)는 인시던트(사고) 발생 후에 기업에 부정적인 영향이 발생하지 않는 방식으로 가능한 한 빨리 서비스를 정상 상태로 복구하는 것과 관련된 IT 서비스 관리(IT Service Management) 분야를 말한다. 실무에서 인시던트 관리는 종종 인시던트 발생의 근본원인을 발견하여 영구 해결책을 적용하기 전에 관련 서비스가 작동하도록 일시적인 우회 해결책(예, 인시던트가 발생한 시스템을 껐다가 다시 켬)에 의존하는 방식으로 진행되는 경우가 많다.
[3] 하나의 인시던트(사고)가 발생되어 해당 인시던트를 인시던트 관리 시스템에 등록하면 이 인시던트의 처리를 관리하기 위한 티켓(ticket)이 발급됨.