상태 전이 모델링
상태 전이(State Transition) 관점은 시스템을 분석·설명하는 여러 방식 중 하나로, 세상을 상태(State), 사건(Event), 액션(Action), 상태 전이 네 가지 요소로 분해해 체계적으로 이해한다. 기획서의 행간을 채우고 누락된 케이스를 발견하는 데 특히 유용하다.
네 가지 요소:
- 상태(State): 시스템의 한 순간을 나타내는 값. 예: '비회원', '회원', '배송 중'
- 사건(Event): 상태 변화의 계기. 예: '가입', '탈퇴', '배송 완료'
- 상태 전이: 특정 상태에서 특정 사건이 발생해 다른 상태로 이동하는 과정
- 액션(Action): 상태 전이 시 시스템이 수행하는 작용. 예: '환영 메일 발송'
상태 전이 표의 진짜 가치는 기획 변경 시 드러난다. 예를 들어 카드결제만 받던 쇼핑몰에 '무통장입금'을 추가하면, 표에는 새로운 상태('입금대기 중')와 새로운 사건('무통장입금 주문')이 추가되고 여러 빈 칸이 생긴다. 이 빈 칸을 하나씩 검토하면 "입금대기 중에 주문 취소를 하면 어떻게 처리해야 하는가?" 같은 질문이 자연스럽게 떠오른다. 즉, 추가된 내용이 기존 기획에 미치는 영향을 빠짐없이 파악하는 데 상태 전이 표만큼 효과적인 도구가 없다.
낙서의 힘. 거창한 도구보다 종이나 태블릿에 간단히 낙서하는 방식이 더 유용할 때가 많다. 도식화 방법은 '확정된 기획을 정리하는 도구'로도 쓰이지만, 기획 중 생각을 다듬는 도구로 쓸 때 더 큰 가치가 있다.
한계: 상태가 10개, 사건이 10개만 되어도 고려해야 할 전이는 100개로 폭증한다. 복잡한 기획을 다루려면 계층적 상태나 직교 상태 같은 확장 개념이 필요하다.
핵심 내용
- 4요소: 상태 · 사건 · 액션 · 상태 전이
- 두 가지 표기: 다이어그램과 상태 전이 표
- 상태 전이 표의 X 표시가 기획의 빈틈을 드러냄
- 기획 변경 시 빈 칸 하나씩 점검으로 누락 방지
- 낙서 수준의 간단한 도식화가 실무에서 가장 유용
- 한계: 상태·사건 수가 늘면 전이 조합이 폭증
관련 개념
- 순서도와 프로그래밍 사고 — 시스템을 시각화하는 또 다른 도구
- 정보 구조 설계 IA — 시스템 구조 분석의 상위 개념
- 키스크린과 인터랙션 프레임웍 — 상태 전이와 결합해 화면 설계의 완성도 높임
출처
- 시스템의 상태 변화를 표현하기 — gunggmee, UX 가벼운 이야기