Towards Process Mining Use Case Map Models with PM4Py-UCM
이 논문은 이벤트 로그로부터 계층적 유스케이스 맵(UCM) 모델의 발견을 가능하게 하여 프로세스 마이닝과 증거 기반 모델 주도 개발을 위한 초기 요구사항 공학 사이의 가교 역할을 하는 PM4Py 라이브러리의 오픈 소스 확장 기능인 PM4Py-UCM을 소개한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
당신이 아주 바쁜 레스토랑을 운영하고 있다고 상상해 보세요. 당신에게는 누가 요리했는지, 얼마나 걸렸는지, 누가 서빙했는지 등 모든 주문을 기록한 거대한 디지털 장부가 있습니다. 수년간 당신은 이 장부를 통해 주방의 '있는 그대로의(as-is)' 흐름을 볼 수 있었습니다. "먼저 주문이 들어오고, 그다음 셰프가 재료를 다듬고, 그다음 그릴에서 요리한다"와 같은 식이죠. 이것을 **프로세스 마이닝(Process Mining)**이라고 부릅니다. 이는 데이터라는 단서를 바탕로 실제로 어떤 일이 일어나는지를 밝혀내는 탐정과 같습니다. 즉, 당신이 '생각하는 방식'이 아니라, 일이 '실제로 어떻게 진행되는지'를 보고 지도를 그리는 것입니다.
보통 이러한 탐정들은 BPMN(플로우차트 스타일)이나 페트리 넷(Petri Nets)(수학적 스타일)과 같은 표준 기호를 사용하여 지도를 그립니다. 하지만 만약 당신이 다른 언어, 즉 **기획 및 요구사항(planning and requirements)**에 특화된 언어를 사용하여 이 지도를 그리고 싶다면 어떨까요? 단순히 단계만을 보여주는 것이 아니라, "이 단계의 책임자는 누구인가?" 그리고 *"이 큰 작업이 어떻게 더 작은 하위 작업들로 나뉘는가?"*라는 질문에 명확히 답할 수 있는 언어 말입니다.
이 논문은 바로 이 역할을 수행하는 PM4Py-UCM이라는 새로운 도구를 소개합니다. 이 도구는 이벤트 로그(raw data)를 가져와서, 시스템을 구축하기 전 엔지니어들이 사용하는 전문적인 표기법인 **유스 케이스 맵(Use Case Maps, UCM)**으로 변환합니다.
다음은 이 논문이 무엇을 하는지 쉬운 비유를 들어 설명한 내용입니다.
1. 번역기 (디스커버리 파이프라인)
기존의 프로세스 마이닝 도구들을 '데이터'와 '플로우차트'를 말하는 번역기라고 생각해 보세요. 이 새로운 도구인 PM4Py-UCM은 이 번역기에 UCM이라는 새로운 언어를 추가합니다.
- 작동 방식: 이 도구는 가공되지 않은 이벤트 로그(데이터)를 가져와서, 스마트한 알고리즘("유도적 마이너(inductive miner)")을 사용하여 '프로세스 트리'를 구축합니다. 그런 다음 이 트리를 UCM 지도로 변환합니다.
- 결과: 단순히 작업 목록을 보는 대신, 시작부터 끝까지의 여정을 보여주는 로드맵 형태의 시각적 지도를 얻게 됩니다.
2. 마트료시카 인형 (계층적 분해)
거대하고 복잡한 도시 지도를 가지고 있다고 상상해 보세요. 너무 상세해서 읽기가 불가능합니다. 당신은 주요 고속도로를 보기 위해 줌 아웃(zoom out)했다가, 다시 동네 골목길을 보기 위해 줌 인(zoom in)해야 합니다.
- 문제점: 프로세스 로그는 매우 방대할 수 있습니다. 단 하나의 지도가 88개의 단계를 포함하고 있다면 너무 복잡해서 이해하기 어렵습니다.
- 해결책: 이 도구는 큰 지도를 작고 중첩된 지도들(마치 러시아 인형인 마트료시카처럼)로 자동 분해합니다.
- "루트(Root)" 지도: 주요 단계들을 보여줍니다 (예: "주문 접수", "요리", "서빙").
- "플러그인(Plug-in)" 지도: 특정 단계를 클릭하면, 해당 단계 내부의 구체적인 과정을 보여주는 더 단순한 새 지도가 열립니다.
- 중요성: 이는 엔지니어가 복잡성을 관리하는 데 도움을 줍니다. 사용자는 필요한 세부 수준에 따라 지도를 아주 잘게 나누거나(aggressive), 혹은 큼직하게 유지하도록(loose) 선택할 수 있습니다.
3. 지도 위의 "누구" (수행자 매핑)
표준 플로우차트에는 "재고 확인"이라는 박스가 있을 수 있습니다. 하지만 실제로 누가 이 일을 할까요? 이 도구는 "누구"라는 레이어를 추가합니다.
- 마법 같은 기능: 이 도구는 누가 행동을 수행했는지 데이터를 살펴봅니다. "앨리스"가 5번 했나요? 아니면 "밥"이 3번 했나요?
- 출력 결과: 도구는 각 단계에 "컴포넌트"(사람, 역할 또는 시스템을 나타내는 색칠된 박스)를 연결하여 지도를 그립니다.
- 비유: 이는 마치 줄거리뿐만 아니라 매 장면마다 어떤 배우가 어떤 역할을 맡았는지 적혀 있는 연극 프로그램 책자와 같습니다.
- 유연성: 사용자는 "역할"(예: "트리아지 팀") 또는 "개인"(예: "트리아지 담당자 티나")별로 그룹화하는 것을 선택할 수 있습니다. 이를 통해 "누가, 무엇을, 언제 하는가?"라는 질문에 답할 수 있습니다.
4. 양방향 통행 (라운드 트립 엔지니어링)
보통 한 파일 형식을 다른 형식으로 변환할 때 정보의 손실이 발생합니다. 이는 영어로 된 책을 프랑스어로 번역했다가 다시 영어로 번역할 때 이야기가 왜곡되는 것과 같습니다.
- 혁신: 이 도구는 **라운드 트립 엔지니어링(Round-Trip Engineering)**을 가능하게 합니다.
- 데이터 로그 UCM 지도로 변환 전문가용 도구인 jUCMNav(여기서 전문가가 내용을 수정하거나, 목표를 추가하거나, 오류를 점검할 수 있음)로 내보내기 할 수 있습니다.
- 그 후, 편집된 지도를 다시 이 도구로 가져와서 변경 사항을 확인하거나 다르게 시각화할 수 있습니다.
- 중요성: 이는 데이터 기반의 발견(discovery)과 인간이 설계한 요구사항(requirements)이 서로 연결되어 있도록 보장합니다. 즉, 미래를 설계할 때 데이터의 "진실"을 잃어버리지 않게 해줍니다.
이 논문이 실제로 주장하는 것 (그리고 주장하지 않는 것)
- 주장하는 바: 이 도구는 가공되지 않은 데이터 로그를 UCM 지도로 변환하고, 이를 관리 가능한 단위로 분해하며, "누가 무엇을 하는지" 할당하고, 전문적인 환경에서 편집하여 다시 가져올 수 있는 도구를 성공적으로 구축했습니다.
- 주장하는 바: 이 도구는 두 가지 사례, 즉 합성된 "이슈 트래킹(Issue Tracking)" 로그(버그 보고 시스템과 유사)와 실제 "클레임 지급(Claims Payment)" 로그를 통해 테스트되었습니다.
- 주장하지 않는 바: 이 도구가 모든 비즈니스에 완벽한 솔루션이라고 주장하지는 않습니다. 저자는 다음과 같은 한계점을 인정합니다:
- 현재 이 도구는 프로세스가 "잘 정돈된(well-behaved)" 구조(깔끔하게 중첩된 구조)라고 가정하는데, 이는 혼란스러운 실제 프로세스에서는 사실이 아닐 수 있습니다.
- "누가 무엇을 하는지"를 그룹화하는 결정은 여전히 휴리스틱(경험적 추측)에 의존하며, 더 많은 미세 조정이 필요합니다.
- 아직 UCM 언어의 모든 세부 사항(예: 타이머나 실패 지점)을 처리하지는 못합니다.
요약하자면:
이 논문은 데이터 과학(프로세스 마이닝)과 시스템 설계(요구사항 공학) 사이의 가교를 제시합니다. 엔지니어들에게 "데이터를 통해 우리 시스템이 실제로 어떻게 작동하는지 살펴보고, 자동으로 책임자를 명시한 청사진(UCM)을 그려서, 미래를 위한 더 나은 시스템을 설계할 수 있는 방법"을 제공합니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.