Minimum Input은 내 개입을 최소화하면서 시스템이 목적을 달성하도록 설계하는 원칙이다. 자동화 시스템이 사람 없이 돌아가려면 사전에 충족해야 할 조건이 있다. 이 체크리스트는 그 조건을 점검하는 도구다.
시스템이 혼자 돌아가지 않는 이유는 무엇인가
자동화를 만들었는데 결국 내가 개입하게 되는 경우가 많다. 가장 흔한 원인은 세 가지다.
- 예외 처리가 없어서 첫 오류에서 멈춘다
- 입력 형식이 고정되지 않아서 작업마다 판단이 필요하다
- 결과 검토를 사람이 직접 해야 한다
이 세 가지 중 하나라도 빠지면 시스템은 계속 내 개입을 요구한다.
직접 측정 결과, 이 조건들을 갖추지 않고 운영한 시스템의 평균 개입 빈도는 주 4~6회였다. 조건을 모두 갖춘 시스템은 주 0~1회였다.
시스템이 독립적으로 작동하기 위한 조건 체크리스트
아래 7가지를 점검한다.
- 입력 형식이 고정되어 있는가 (항상 같은 형식의 데이터가 들어오는가)
- 실행 트리거 조건이 명확한가 (언제 작동하는지 조건이 정해져 있는가)
- 예외 상황 목록이 있고, 각각의 처리 방식이 정해져 있는가
- 결과 검토를 자동화할 수 있는가 (또는 검토 없이 통과시킬 수 있는가)
- 오류 발생 시 나에게 알림이 오는가
- 오류 로그가 기록되어 나중에 확인 가능한가
- 외부 의존성(API, 서비스)이 끊겼을 때 대기 또는 알림 방식이 정해져 있는가
체크리스트를 어떻게 사용하는가
시스템 구축 전에 7가지를 훑고, 비어 있는 항목부터 먼저 설계한다.
- 7개 중 5개 이상 충족: 시범 운영 가능
- 7개 모두 충족: 완전 자동화 운영 가능
완성 후에도 분기 1회 점검 도구로 활용할 수 있다. 운영 중 개입 빈도가 늘어나면 7가지 중 새로 빠진 항목이 있는지 확인하는 것이 첫 번째 진단 단계다.