[2021년 정보시스템감리사][소프트웨어공학] 39번
39. 다음에서 설명하는 UML 상태머신 다이어그램의 (가) 위치에 나타낼 표기법으로 가장 적절한 것은?
| trigger 이벤트가 발생하였을 때 guard 조건이 만족하면 전이가 일어나는데 전이하면서 effect를 수행한다. |
① trigger [guard] effect
② trigger [guard] / effect
③ trigger / [guard] effect
④ trigger / [guard] / effect
[해설]
▣ 상태 머신 다이어그램 개요
1) 상태 머신 다이어그램
-
시스템의 단일 객체에 대한 행위를 모델링
-
객체가 생성되어 소멸되기까지의 전 과정에서 이벤트 발생과 상태 변화를 다룸
-
동적 행위를 모델링하나 특정 객체만을 다룸
-
실시간 임베디드 시스템, 게임, 프로토콜 설계에 이용됨
2) 표기법
-
상태는 모서리가 둥근 사각형으로 나타내며 안에 상태의 이름을 표시
-
상태 전이는 화살표로 표시
-
상태는 전이되는 순간에 활성화되고 벗어나면서 비활성화됨
-
상태 변화를 일으키는 이벤트를 트리거(trigger)라고
하며 화살표 위에 텍스트로 표시
-
현재 상태와 트리거에 의해 다음 상태가 정해짐
-
시작 노드와 종료 노드를 가짐
▣ 상태
-
특정 시점에서 객체나 시스템의 상황으로 특정 값으로 표현됨
-
상태 내부의 행위 명세
• entry/행위 : 특정 상태로 바뀔 때 최초 한 번 일어나는 행위
• do/행위 : 상태의 활성화 중에 일어나는 행위. 행위는 완료되거나 트리거에
의해 중단될 수있음
• exit/행위 : 특정 상태가 비활성화되기 직전에 마지막으로 동작하는 행위
▣ 전이
-
상태의 변화를 의미
-
상태가 변화되는 경로로 화살표로 표시함
-
화살표 위에 ‘트리거[조건문]/효과’를 표시하며 각 요소는 생략될 수 있음
-
트리거는 전이를 일으키는 이벤트로 조건문이 있다면 만족되어야 전이가 됨
-
트리거없이 상태 내부에서 일어나는 행위가 종료되어 상태가 전이될 수도 있음
-
조건문
•
트리거가 발생해도 조건이 만족되어야만 상태
전이가 일어남
•
상태 전이를 막거나 여러 상태 전이 중 하나를
선택하는 상황을 모델링할 때 사용
-
효과 (또는 행위)
• 상태
전이가 승인된 후 수행되는 행위로 인터럽트될 수 없는 행위
• 상태
전이의 결과로 생기는 효과로 볼 수 있음
-
전이의 여러 표현
• 트리거만
표시되는 경우 : 트리거가 발생할 대마다 전이 발생
• 트리거와
조건이 명시된 경우 : 트리거가 발생해도 조건이 참인 경우에만 전이 발생
• 트리거와
조건이 모두 없는 경우 : 이전 상태의 내부 동작이 완료 시 다음 상태로 전이
▣ 상태 제어를 위한 추가적인 요소
-
시작 노드, 종료 노드
-
선택 노드
-
포크와 조인
-
시그널
- 복합 상태(2개 이상의 상태 다이어그램 포함)


댓글
댓글 쓰기