Introduction
•
유한 상태 기계(finite-state machine, FSM)는 컴퓨터 프로그램과 전자 논리 회로를 설계하는 데에 쓰이는 수학적 모델
•
어떤 상태를 다른 상태로 변환하는 방법을 기술함
•
상태 전이 다이어그램(state transition diagram, STD)는 유한 상태 기계에서 상태와 상태전이를 표현하기 위해 도식화 해서 표현하는 그림을 말함
노테이션
상태(state)
•
상태: 모서리가 둥근 사각형
•
상태이름: 사각형의 윗 부분
•
이벤트에 따른 행동: 사각형 아래 부분
전이(transition)
•
전이: [이벤트이름] / [수행할 행동]
특수 이벤트
•
들어옴(entry) 이벤트와 나감(exit) 이벤트는 표준 이벤트
•
원한다면 자신만의 이벤트를 추가할 수 있음
상위 상태(superstate)
•
상위 상태: 여러 상태를 감싸고 있는 모서리가 둥근 사각형
•
여러 상태가 동일한 이벤트에 반응하는 경우, 상위 상태를 사용하여 동일한 화살표의 중복을 피할 수 있음
상위 상태의 전이를 재정의
•
하위 상태에 명시적으로 전이를 그려 넣으면 상위 상태의 전이보다 우선순위가 앞섬
들어옴 행동과 나감 행동의 계층적 호출
•
상위 상태도 보통상태처럼 들어옴 이벤트, 나감 이벤트, 특수 이벤트를 가질 수 있음
•
어떤 상태(Some State)에서 Sub 상태로 전이되어 들어오면 먼저 enterSuper 행동을 호출하고 그 다음 enterSub 행동을 호출함
•
하지만, Sub에서 Sub2로 가는 e2 전이는 상위 상태 바깥으로 나가지 않기 때문에, 단지 exitSub와 enterSub2만 호출함
최초 의사-상태와 최종 의사-상태
•
최초 의사-상태(initial pseudo state): 색칠된 동그라미
◦
FSM의 생명은 최초 의사-상태에서 전이해 나오며 시작
•
최종 의사-상태(final pseudo state): 반만 칠해진 동그라미
◦
FSM은 최종 의사-상태로 전이되는 과정에서 소멸