Deterministic는 같은 입력, 같은 상태, 같은 절차라면 매번 같은 결과가 나오는 성질이다.
IT 문맥에서는 알고리즘의 출력뿐 아니라 작업 실행 순서, 상태 전이, shutdown 절차 같은 운영 플로우에도 쓴다. 예를 들어 deterministic한 shutdown flow라고 하면 누가 먼저 멈추고, 무엇을 기다리며, 어디에서 종료로 판단하는지가 고정돼 있어 종료 결과가 흔들리지 않는 설계를 뜻한다.
가까운 문맥
- deterministic build
- deterministic test
- deterministic shutdown
참고
반대 개념은 non-deterministic이다. 병렬 처리와 외부 의존성이 늘어날수록 결정성을 유지하는 설계가 중요해진다.
실무 메모
Deterministic(결정적)는 architecture, systems, software, testing 문맥에서 자주 나온다. 사전식 정의만 외우기보다, 이 말로 무엇을 짧게 가리키려는지까지 맞춰 두면 문서와 대화가 덜 흔들린다.
가까운 용어와 섞이면 설명이 흐려지기 쉬우므로, 대상과 역할, 쓰이는 장면을 한 단계만 더 구체적으로 잡아 두는 편이 낫다. 용어집에서는 그 출발점을 정리해 두면 충분하다.
hsb.horse