[SWAD] Ep. 11 OOD(6)

GLICO·2024년 10월 25일

SWAD

목록 보기
11/12

Contents

  • State Machine Diagram
  • Activity Diagram

State Machine Diagram

State Machine Diagram

상태(State)

  • 시스템이나 객체는 보통 주어진 시점에 어떠한 상태(state)에 있음
  • 상태에 변화를 줄 만한 이벤트가 발생하지 않으면 변하지 않으며, 이벤트가 발생하면 상태에 변경이 생길 수 있음

상태 머신 다이어그램 (상태 다이어그램)

  • 시스템이나 객체의 상태가 어떤 오퍼레이션에 의해 어떻게 동적으로 변하는지를 표현한 것

상태 머신 다이어그램의 기본 구성 요소

  • 상태 (State)
    시스템이나 객체의 특정 상태를 나타냄
    Rounded rectangle로 표현하고 text로 상태를 표현

  • 전이 (Transition)
    상태의 변경을 표현하는 것으로 화살표와 이벤트로 표기

상태 머신 다이어그램의 기본 구성 요소

  • 초기(Initial) 및 최종(Final) 상태
    초기 상태 : 시작하는 시점의 상태 (Filled black circle로 표현)
    최종 상태 : 종료하는 시점의 상태 (circled dot으로 표현)

passive / active 상태(state)

  • 특정 시점에서의 컨디션으로 passive / active로 분류됨
    Doing state는 active임

  • Doing state의 경우 상태 내부에 행위를 기술 할 수 있음
    Notation : do/behavior

전이(Transition)

  • 이전 상태(source)에서 다음 상태(target)로 변경 될 때 이를 유발(trigger)하는 조건이나 이벤트(event)를 간선에 표기

Notation : Trigger[Guard] / Action

  • Trigger : 전이를 발생시키는 event
  • Guard : transition을 permit 하거나 block하는 boolean condition
  • Action : 전이 이후 수행되는 행위 (uninterruptible action)로, 상태 전이의 결과/효과로 볼 수 있음

Example

Internal behavior of state

  • State 내부에서 발생할 수 있는 행위를 표현 (label/behavior)
    do/behavior
    entry/behavior : 해당 state가 active될 때 수행
    exit/behavior : 해당 state가 inactive될 때 수행

Internal transition of state

  • State 내에서 reaction을 유발하는 전이 (다른 상태로 이동은 없음)
    Self transition과는 다름 (self는 entry/exit behavior를 유발함)

Composite States

Example

Activity Diagram

활동 다이어그램

  • 시스템 내에서 수행되는 작업이나 동작의 흐름을 시각적으로 표현
    Advanced version of flow chart

활동 다이어그램의 기본 구성 요소

Example

Swimlane(스윔레인)

  • 활동 다이어그램은 여러 클래스와 연관 될 수 있기 때문에, 클래스 별로 나우어서 활동 흐름을 표시할 때 사용

Example

신호 (Signal)

  • 특정 조건 하에서 시작된은 활동을 신호라고 함

Loop를 표현하는 방법 - Plain notation

Loop를 표현하는 방법 - Loop Node

  • Setup : loop의 초기 조건을 정의
  • Test : loop가 계속 진행될 조건을 정의
  • Body : test가 통과되면 수행하게될 활동

Loop를 표현하는 방법 - Extension region(확장 영역)

  • Collection의 개별 entry의 대해서 반복적으로 수행 (for each)

Recap.

Behavior diagrams for dynamic modeling

  • State machine diagram (상태 머신 다이어그램)
    시스템이나 객체의 상태가 어떤 오퍼레이션에 의해 어떻게 동적으로 변하는지를 표현한 것

  • Activity diagram (활동 다이어그램)
    시스템 내에서 수행되는 작업이나 동작의 흐름을 시각적으로 표현한 것

profile
Its me Glico

0개의 댓글