상태 차트

상태 차트는 기본적으로 외부 자극에 대한 오브젝트 응답을 판별하는 논리 상태 또는 모드 관점에서 오브젝트 라이프사이클을 지정합니다. 오브젝트 상태는 시퀀스 다이어그램의 오브젝트 라이프라인과 문제점 문장 둘 다에서 야기됩니다.

다음 그림은 HomeHeatingSystem 예제에서 Room의 상태 차트를 보여줍니다.

SomeoneEntersTheRoom 시퀀스 다이어그램에 있는 Room의 라이프라인에서 Room은 방을 사용하는지 여부를 보기 위해 해당되는 occupancy 속성을 폴링합니다. 사용하는 경우, 거주자가 온도 조절 장치에서 원하는 온도를 설정한 경우 필요한 열을 Furnace에 보냅니다. RoomFurnace에서 시작되었음을 알리는 메시지를 수신하면 Room은 열도록 지시하기 위해 Valve에 메시지를 보냅니다. 방이 충분히 따뜻해지면 Room은 열 생성을 중지하도록 Furnace에 지시한 후 Valve를 닫습니다. 마지막으로, RoomFurnace가 중지되었음을 알도록 하는 Furnace의 수신확인을 수신합니다.

이 이벤트 시퀀스에서 Room이 네 가지의 책임 영역 또는 동시 상태를 보유함을 알 수 있습니다.

영역 책임
mode 거주를 기반으로 작동 온도를 판별합니다.
heatMode 열 필요성을 판별합니다.
FurnaceMode 난방로의 상태를 모니터합니다.
sampling 정기적으로 열 및 거주 센서를 샘플링합니다.

피드백